For agencies like Morpht, especially when delivering complex, enterprise or government projects, a workflow that standardises builds, tests, and deployments is not just “nice to have,” but often essential to meet stakeholder expectations and compliance demands. Marji’s presentation touched on the following key areas:
Real-world Drupal delivery
When building projects, having a reliable build process improves quality by catching problems early.
- Automated CI/CD with modern tools: A CI/CD pipeline using GitHub Actions, Docker and Cypress was recommended. This pipeline can validate dependencies (Composer, PHP, Drush), handle secure credentials, and set up environments automatically.
- Parallel, containerised test environments: By leveraging Docker and containerised MySQL services, the setup supports safe, repeatable test builds across branches or environments, avoiding “works on my machine” problems.
- Automated end-to-end testing: As part of the CI workflow, Cypress-based full-stack/frontend tests run automatically. This ensures that UI and functional regressions get caught before deployment, improving overall stability.
- Flexible, multi-platform deployment workflows: The setup supports deployment to different hosting providers (e.g. Pantheon or Acquia) using versatile scripts, ideal for projects that operate across staging, production or custom environments
- Scalable and reusable workflows: The same CI/CD setup can be adapted across multiple projects, reducing setup overhead and making it easier to maintain standard practices across a team.
Repeatability and quality
Given our track record with complex CMS builds, stakeholder collaboration and phased delivery, for example, with government clients, this approach Marji presented aligns closely with our needs:
- Deployments become predictable and repeatable, reducing risk when moving between environments (dev → staging → production).
- Automated testing and containerised environments offer confidence in release quality, particularly when projects involve multiple stakeholders, strict requirements, or compliance constraints.
- Workflows can be standardised across projects, enabling efficient reuse and reducing ramp-up time for new engagements.
- The approach supports scalability - whether for smaller modules, full site builds, or complex enterprise-grade sites, without requiring ad-hoc manual processes.
Practical advice
Testing needs to be built into the normal project workflows for best results:
- For new Drupal projects or major rewrites, adopt a CI/CD pipeline using GitHub Actions + Docker + Cypress.
- Define containerised environments (PHP, MySQL, services) early in the project; treat environment setup and database syncing as part of the CI process rather than ad-hoc ops tasks.
- Write and maintain a core set of automated end-to-end tests (e.g. login, role-based access, critical forms/workflows) from the start. This helps protect against regressions as the site evolves.
- Use modular, reusable scripts for deployments to different hosting targets (e.g. Pantheon, Acquia). This helps when working on multiple client projects with different infrastructures.
- Incorporate the CI workflow into your release process, ensure that every merge/feature push goes through the pipeline, not only for code validation but for environment build and testing.