README
Vortex offers GitHub Actions and CircleCI CI configurations to automate the process of building, testing, and deploying your site.
The workflow configuration is identical for both CI providers. You would need to choose one of them and follow the setup instructions.
The CI pipeline consists of multiple jobs executed in a containerized environment to ensure consistency across runs.
Trigger Conditions
The CI pipeline is triggered by:
- Push events to the following branches:
production
,main
,master
,develop
release/**
,hotfix/**
,project/**
- Pull requests to these branches
- Scheduled runs for automatic database caching
Workflow Structure
1. Database
- Runs in a
drevops/ci-runner
runner container - Downloads the latest DB version based on a caching strategy
- Caches database dumps to speed up the follow-up runs
2. Build
- Runs after the
database
job - Uses Docker Compose to set up the environment
- Provisions a website
- Lints code
- Runs unit tests
- Runs BDD tests
- Generates code coverage reports
- Collects and stores test results and artifacts
3. Deployment
- Runs after successful completion of a previous
build
job - Uses the built codebase without development dependencies from the
build
step - Adds required secrets and environment variables
- Triggers a deployment using a router script
Caching Strategy
Database is downloaded overnight and cached so that the next CI run on the same day uses the cached database dump.
By default, the database is cached per-branch for 24 hours. Of cache is not available, the fallback default branch is used.