FAQ | This is a LIVE service | Changelog

Skip to content
Commits on Source (3)
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [2.2.2] - 2023-06-16
### Modified
- `terraform-pipeline.yml`: add `needs` relationships to speed up pipeline.
## [2.2.1] - 2023-06-15
### Modified
......@@ -29,95 +36,131 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Add `terraform-pipeline.yml` template for deploying Terraform projects via the DevOps GKE Gitlab Runner.
## [2.0.0] - 2023-03-27
### Modified
- Update the Docker image version tags to use the latest release, and the `auto-build-image`
image version tag to use v1.31.0. This is a major change as the previous `stable` tags haven't
updated for over a year so the latest versions may include backwards-incompatible changes. This
impacts the templates: `extra-tags`, `terraform-deployment`, `terraform-lint` and `tox-tests`.
- Update the Docker image version tags to use the latest release, and the `auto-build-image`
image version tag to use v1.31.0. This is a major change as the previous `stable` tags haven't
updated for over a year so the latest versions may include backwards-incompatible changes. This
impacts the templates: `extra-tags`, `terraform-deployment`, `terraform-lint` and `tox-tests`.
## [1.7.3] - 2022-06-22
### Bugfix
- Fix incompatibility with GitLab 15
- Fix incompatibility with GitLab 15
## [1.7.2] - 2022-02-16
### Modified
- Add a template for terraform deployment to staging and production.
- Add a template for terraform deployment to staging and production.
## [1.7.1] - 2022-01-21
### Modified
- PyPi release: ensure that dangling publish jobs are not created on MR pipelines.
- PyPi release: allow distribution location to be updated using variables.
- PyPi release: ensure that dangling publish jobs are not created on MR pipelines.
- PyPi release: allow distribution location to be updated using variables.
## [1.7.0] - 2021-10-27
### Modified
- Tox tests: removing the usage of a custom gemnasium image as this is no longer needed.
- Tox tests: removing the usage of a custom gemnasium image as this is no longer needed.
## [1.6.0] - 2021-08-10
### Modified
- Make terraform lint use variables and thus allow overriding of version and/or docker image
- Update default lint version to 1.0.4
- Make terraform lint use variables and thus allow overriding of version and/or docker image
- Update default lint version to 1.0.4
## [1.5.0] - 2021-03-24
### Modified
- Tox tests: allow a custom image to be used in tox test job through `TOX_IMAGE_BUILD_COMMAND`.
- Tox tests: allow a custom image to be used in tox test job through `TOX_IMAGE_BUILD_COMMAND`.
## [1.4.0] - 2021-03-18
### Modified
- Deployment: perform Django migrations before deploying to cloud run.
- Deployment: perform Django migrations before deploying to cloud run.
## [1.3.0] - 2021-02-08
### Modified
- Terraform lint: Fixed the version of Terraform used for linting to 0.14.6.
- Terraform lint: Fixed the version of Terraform used for linting to 0.14.6.
## [1.2.0] - 2020-12-17
### Added
- Deployment: A new template added to allow multiple cloud run services to be deployed as part
of a single deployment project.
- Deployment: A new template added to allow multiple cloud run services to be deployed as part
of a single deployment project.
## [1.1.5] - 2020-12-11
### Added
- Terraform lint: Added `-diff` flag
- Terraform lint: Added `-diff` flag
## [1.1.4] - 2020-12-04
### Modified
- Terraform lint: Fixed the version of Terraform used for linting to 0.13.5.
- Terraform lint: Fixed the version of Terraform used for linting to 0.13.5.
## [1.1.3] - 2020-12-02
### Added
- Deployment: allow gitlab deploy environment to be overridden by downstream jobs in
[deployment CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/deploy.yml)
- Deployment: allow gitlab deploy environment to be overridden by downstream jobs in
[deployment CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/deploy.yml)
## [1.1.2] - 2020-11-24
### Fixed
- Deployment: fixed variable interpolation so that `SERVICE_PREFIX` is used for all variables
which are required to be set downstream in [deployment CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/deploy.yml)
- Deployment: fixed variable interpolation so that `SERVICE_PREFIX` is used for all variables
which are required to be set downstream in [deployment CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/deploy.yml)
## [1.1.1] - 2020-09-21
### Added
- Deployment: Added a
[deployment CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/deploy.yml)
that provides jobs for deploying a previously built Docker image to Cloud Run on Google Cloud Platform (GCP).
- Terraform lint: Added a
[Terraform lint CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/terraform-lint.yml)
to run `terraform fmt` on Terraform configuration files in the local repository.
- Deployment: Added a
[deployment CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/deploy.yml)
that provides jobs for deploying a previously built Docker image to Cloud Run on Google Cloud Platform (GCP).
- Terraform lint: Added a
[Terraform lint CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/terraform-lint.yml)
to run `terraform fmt` on Terraform configuration files in the local repository.
## [1.1.0] - 2020-08-26
### Modified
- PEP8: Modified the
[PEP8 CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/pep8.yml)
to be uninterruptible, and to only run for pipelines other than merge
request pipelines.
- Tox tests: Modified the
[Tox tests template](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/tox-tests.yml)
to make the `documentation` job run for pipelines other than merge request
pipelines (previously the job was never running due to a bug in the job
rules).
- PEP8: Modified the
[PEP8 CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/pep8.yml)
to be uninterruptible, and to only run for pipelines other than merge
request pipelines.
- Tox tests: Modified the
[Tox tests template](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/tox-tests.yml)
to make the `documentation` job run for pipelines other than merge request
pipelines (previously the job was never running due to a bug in the job
rules).
## [1.0.1] - 2020-08-06
### Added
- pypi-release: Added generic stand along jobs designed to allow easy upload of
Python packages to PyPI.
- pypi-release: Added generic stand along jobs designed to allow easy upload of
Python packages to PyPI.
## [1.0.0] - 2020-07-16
### Added
- PEP8: Added a [CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/pep8.yml) to check for [PEP8](https://www.python.org/dev/peps/pep-0008/) violations in Pyhon files. The CI template generates junit.xml reports that feed back to [GitLab CI](https://docs.gitlab.com/ee/ci/junit_test_reports.html) for interpretation and storage as artifacts. The PEP8 CI template job uses the python tool flake8.
- PEP8: Added a [CI template job](https://gitlab.developers.cam.ac.uk/uis/devops/continuous-delivery/ci-templates/-/blob/master/auto-devops/pep8.yml) to check for [PEP8](https://www.python.org/dev/peps/pep-0008/) violations in Pyhon files. The CI template generates junit.xml reports that feed back to [GitLab CI](https://docs.gitlab.com/ee/ci/junit_test_reports.html) for interpretation and storage as artifacts. The PEP8 CI template job uses the python tool flake8.
......@@ -113,6 +113,15 @@ variables:
- ${TF_DATA_DIR}/${CI_COMMIT_REF_SLUG}-${DEPLOYMENT_ENVIRONMENT}.tfplan
reports:
terraform: ${TF_DATA_DIR}/${CI_COMMIT_REF_SLUG}-${DEPLOYMENT_ENVIRONMENT}.tfplan.report
needs:
- job: terraform-validate
optional: true
- job: terraform-fmt
optional: true
- job: tflint
optional: true
- job: tfsec
optional: true
# This job takes a plan object generated by a .terraform-plan job and applies it to the relevant workspace.
# The job only runs if the commit branch is the default branch. If the deployment environment is "staging", the job
......@@ -284,4 +293,6 @@ terraform-apply-production:
variables:
DEPLOYMENT_ENVIRONMENT: production
needs:
- job: terraform-apply-staging
optional: true
- terraform-plan-production