All CI/CD automation in this project is executed via GitHub Actions, whose workflow files live in this directory.
While we're using GCP Composer, "deployment" of Airflow consists of two parts:
- Calling
gcloud composer environments update ...
to update the Composer environment with new (or specific versions of) packages - Copying the
dags
andplugins
folders to a GCS bucket that Composer reads (this is specified in the Composer Environment)
This workflow builds a static website from the Svelte app and deploys it to Netlify.
This workflow deploys changes to the production Kubernetes cluster when they get merged into the main
branch.
Workflows prefixed with build-
generally lint, test, and (usually) publish either a Python package or a Docker image.
Workflows prefixed with preview-
deal with generating previews for pull request changes
preview-kubernetes.yml
renders kubectl diffs on PRs changing cluster content
Some of these workflows use hologit or invoke. See the READMEs in .holo and ci for documentation regarding hologit and invoke, respectively.