Add pipeline stages for manual testing
Related: #240 (closed)
Context
Adds pipeline stages for provisioning, assembly, and orchestration with automatic cleanup (currently set to 1 day).
Example flow
- Developer submits a merge request
- Maintainer manually triggers testing stage to deploy to environment
- Maintainer and developer confirm functionality in test environment
- Environment automatically stops after MR is closed/merged, or 1 week (whichever comes first)
To do
-
Add protected environment: test
(must be done by maintainer) -
Add relevant project-level CI variables (listed in .gitlab-ci.yml) -
Discuss how to handle deploying Geo and/or multi-node clusters (do we deploy both separately, or one at a time with an optional override to pick the type?) -
Create bot/service account for accessing GitLab for Terraform backend and for accessing GCP for Terraform resource creation -
Validate that the manually-triggered testing jobs work as expected
References
Edited by Robert Marshall