diff options
author | Emmanuele Bassi <ebassi@gnome.org> | 2020-01-29 11:01:10 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@gnome.org> | 2020-02-11 13:39:52 +0000 |
commit | 9e38a70c6b526285fa6e49857606107c7ef49fea (patch) | |
tree | 98709fcbd4a6765f5cabd23d50cc3f7b36805dd3 /.gitlab-ci/README.md | |
parent | 56f9cdd99d7f18b0bad1d491108571e5307d6836 (diff) | |
download | gtk+-9e38a70c6b526285fa6e49857606107c7ef49fea.tar.gz |
ci: Replicate the CI image scripts from GLib
They are easier to use and document, and allow us to add new base images
in the future without making a mess.
Diffstat (limited to '.gitlab-ci/README.md')
-rw-r--r-- | .gitlab-ci/README.md | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/.gitlab-ci/README.md b/.gitlab-ci/README.md new file mode 100644 index 0000000000..3958faf001 --- /dev/null +++ b/.gitlab-ci/README.md @@ -0,0 +1,38 @@ +## GTK CI infrastructure + +GTK uses different CI images depending on platform and jobs. + +The CI images are Docker containers, generated either using `docker` or +`podman`, and pushed to the GitLab [container registry][registry]. + +Each Docker image has a tag composed of two parts: + + - `${image}`: the base image for a given platform, like "fedora" or + "debian-stable" + - `${number}`: an incremental version number, or `latest` + +See the [container registry][registry] for the available images for each +branch, as well as their available versions. + +### Checklist for Updating a CI image + + - [ ] Update the `${image}.Dockerfile` file with the dependencies + - [ ] Run `./run-docker.sh build --base ${image} --base-version ${number}` + - [ ] Run `./run-docker.sh push --base ${image} --base-version ${number}` + once the Docker image is built; you may need to log in by using + `docker login` or `podman login` + - [ ] Update the `image` keys in the `.gitlab-ci.yml` file with the new + image tag + - [ ] Open a merge request with your changes and let it run + +### Checklist for Adding a new CI image + + - [ ] Write a new `${image}.Dockerfile` with the instructions to set up + a build environment + - [ ] Add the `pip3 install meson` incantation + - [ ] Run `./run-docker.sh build --base ${image} --base-version ${number}` + - [ ] Run `./run-docker.sh push --base ${image} --base-version ${number}` + - [ ] Add the new job to `.gitlab-ci.yml` referencing the image + - [ ] Open a merge request with your changes and let it run + +[registry]: https://gitlab.gnome.org/GNOME/gtk/container_registry |