The CI/CD for this project uses reusable Github Actions workflows.
Each app should have:
ci-[app_name]: must be created; should run linting and testingci-[app_name]-vulnerability-scans: callsvulnerability-scans- Based on ci-app-vulnerability-scans
ci-[app_name]-pr-environment-checks.yml: callspr-environment-checks.ymlto create or update a pull request environment (see pull request environments)- Based on ci-app-pr-environment-checks.yml
ci-[app_name]-pr-environment-destroy.yml: callspr-environment-destroy.ymlto destroy the pull request environment (see pull request environments)- Based on ci-app-pr-environment-destroy.yml
ci-docs: runs markdown linting on all markdown files in the file- Configure in markdownlint-config.json
ci-infra: run infrastructure CI checks
Each app should have:
cd-[app_name]: deploys an application- Based on
cd-app
- Based on
The CD workflow uses these reusable workflows:
deploy: deploys an applicationdatabase-migrations: runs database migrations for an applicationbuild-and-publish: builds a container image for an application and publishes it to an image repository
graph TD
cd-app
deploy
database-migrations
build-and-publish
cd-app-->|calls|deploy-->|calls|database-migrations-->|calls|build-and-publish
check-ci-cd-auth: verifes that the project's Github repo is able to connect to AWS