Continuous Delivery
Evolve ships with GitHub Actions pipelines that deliver the platform from day one. When you fork the repository, the workflows come along — this page describes what each one does so you can adapt them to your own environments.
Overview
Section titled “Overview”The continuous delivery setup automates the build, test, and deployment process across multiple cloud platforms (AWS, GCP, and Azure).
Key Components
Section titled “Key Components”-
Monorepo Structure: the codebase is organized as a monorepo, which allows for easier management of dependencies and shared code across different parts of the platform.
-
pnpm and Turborepo: pnpm is the package manager and Turborepo optimizes builds across the workspace.
-
MACH Composer: manages and deploys the microservices architecture.
-
Multi-Cloud Support: the pipelines support deployments to AWS, GCP, and Azure, as well as specialized platforms like Vercel for frontend hosting.
Main Workflows
Section titled “Main Workflows”CI/CD Pipeline
Section titled “CI/CD Pipeline”The main CI/CD pipeline (ci-cd.yaml) includes the following key steps:
- Validation: code checks (
validate-code.yaml), dependency review (validate-dependencies.yaml), and pull-request standards (validate-pull-request.yaml). - Testing: runs unit tests and reports coverage; Storybook is
validated through
validate-storybook.yamlandvalidate-storybook-vitest.yaml. - MACH Composer Validation:
validate-mach-composer-config.yamlchecks the configurations for the different cloud environments. - Service-Specific Builds: the
service-common-*.yamlandservice-site.yamlworkflows build individual services when their files change.
Deployments
Section titled “Deployments”deploy-test.yaml deploys the MACH Composer configurations to the test
environment; deploy-production.yaml promotes to production. The
monolith variant (deploy-monolith.yaml) covers single-container
deployments.
Storybook deployment
Section titled “Storybook deployment”A separate workflow (deploy-storybook.yaml) handles the deployment of
Storybook to ensure the component library is always up-to-date.
Optimization Strategies
Section titled “Optimization Strategies”- Caching: pnpm, Turborepo, and Terraform plugin caches speed up builds.
- Conditional Job Execution: jobs only run when relevant files have changed, reducing unnecessary builds.
- Parallel Execution: where possible, jobs run in parallel to minimize overall pipeline duration.
Security Considerations
Section titled “Security Considerations”- CODEOWNERS: a CODEOWNERS file ensures the right teams review changes to critical parts of the codebase.
- Secrets Management: sensitive information is stored as GitHub Secrets and accessed securely within workflows.
- Pull Request Validation: automated checks
(
validate-pull-request.yaml) ensure pull requests meet standards before merging.
For more detailed information on optimizing deployments as your project grows, please refer to the Optimizing Deployments guide.

