Use docker base image across CI steps
Use a base image for all CI steps to reduce server load and repetitive steps. Base image is used for both generated project as well as the template itself by having different files across directory paths that will match once generated (docker/ci-runner/Dockerfile
).
In addition we override one job in the template to change the include path to the prepare job yaml.
The base image is updated to use Python 3.11 (updating the template to support Python 3.11) and all unit tests are configured to manually install required dependencies as there are no base images for these Python versions.
This work is largely copied from @feldt their previous work on base images across various ASTRON repositories.
Merge request reports
Activity
requested review from @feldt
added 1 commit
- 61e9ae84 - Reuse directory structure to differentiate cookiecutter / template
added 1 commit
- ee0c5915 - Reuse directory structure to differentiate cookiecutter / template
added 1 commit
- ab88dd53 - Install requirements for none base image jobs
requested review from @kliffen
- Resolved by Klaas Kliffen
- Resolved by Corné Lukken
- Resolved by Klaas Kliffen
Overall seems like a good improvement to me. At a first glance I was a bit confused by the Gitlab GUI, on the order over operations. This might need some explaining in the outer README (or a link to the gitlab docs).
Here the
build
runs before the steps on the left (triggered by theprepare
)Edited by Klaas Kliffen
- Resolved by Klaas Kliffen
mentioned in commit edd53340