glib/.gitlab-ci
Frederic Martinsons bbe47331a5 It seems the gitlab CI performs only a shallow clone of 1-depth
and so checkout only the HEAD of the branch.
This leads to not being able to find an ancestor since there is only one
new commit. I presume that when it worked, it was because of specific
settings of some users.

Now we fetch (with the same depth as the target branch) the source branch
and use it to compare sha1 and find the common ancestor.

Closes #2292

Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
2021-01-11 17:04:52 +01:00
..
android-download-ndk.sh ci: Fix various shellcheck warnings in the shell scripts 2020-02-27 10:33:45 +00:00
android-ndk.Dockerfile ci: Cache subprojects in docker images 2020-01-15 21:36:57 -05:00
android-setup-env.sh ci: growing_stack should be true for android and ios 2020-05-29 02:44:44 +05:30
cache-subprojects.sh ci: Limit depth of subprojects when cloning 2020-07-09 12:51:21 +01:00
check-todos.py python: Reformat some files to keep style-check-diff happy 2020-12-12 18:40:57 +00:00
coverage-docker.sh ci: Fix various shellcheck warnings in the shell scripts 2020-02-27 10:33:45 +00:00
coverity-model.c ci: Add model file for Coverity 2020-09-08 10:34:54 +01:00
coverity.Dockerfile ci: Support building a CI image for Coverity Scan builds 2020-07-27 15:41:09 +01:00
cross_file_ios_example.txt ci: growing_stack should be true for android and ios 2020-05-29 02:44:44 +05:30
cross_file_mingw64.txt Make ld executable configurable 2019-11-04 15:08:33 +00:00
debian-stable.Dockerfile add 2 new stages: sh-check (which run shellcheck) and py-check (which run black and flake8) 2020-11-15 17:34:21 +01:00
fedora.Dockerfile ci: Add python3-pip to Fedora dependencies 2020-05-22 09:32:44 +01:00
fixup-cov-paths.py CI: Re-enable code coverage reporting for MSYS2 builds 2020-10-01 14:07:14 +02:00
lcovrc ci: Add lcov configuration to ignore g_return_*if_fail()/g_assert*() 2018-10-06 00:19:20 +01:00
meson-junit-report.py py: Various flake8 cleanups 2020-11-17 15:50:07 +00:00
mingw.Dockerfile ci: Cache subprojects in docker images 2020-01-15 21:36:57 -05:00
README.md ci: Support building a CI image for Coverity Scan builds 2020-07-27 15:41:09 +01:00
run-black.sh Correct shellcheck errors (and ignore world splitting when we want it) 2020-11-15 17:34:27 +01:00
run-check-todos.sh Move common code for searching common ancestor in a dedicated script 2021-01-11 17:04:01 +01:00
run-docker.sh ci: Fix backslash escaping in run-docker.sh 2020-11-20 14:48:14 +00:00
run-flake8.sh ci: Disable formatting warnings in flake8 2020-11-17 15:50:07 +00:00
run-shellcheck.sh Correct shellcheck errors (and ignore world splitting when we want it) 2020-11-15 17:34:27 +01:00
run-style-check-diff.sh Move common code for searching common ancestor in a dedicated script 2021-01-11 17:04:01 +01:00
run-tests.sh ci: Fix various shellcheck warnings in the shell scripts 2020-02-27 10:33:45 +00:00
search-common-ancestor.sh It seems the gitlab CI performs only a shallow clone of 1-depth 2021-01-11 17:04:52 +01:00
show-execution-environment.sh CI: Show execution environment before we start 2020-03-04 15:25:47 +00:00
test-msvc.bat CI: Switch to new Windows runners 2020-04-29 08:56:56 +02:00
test-msys2.sh CI: Re-enable code coverage reporting for MSYS2 builds 2020-10-01 14:07:14 +02:00

CI support stuff

Docker image

GitLab CI jobs run in a Docker image, defined here. To update that image (perhaps to install some more packages):

  1. Edit .gitlab-ci/Dockerfile with the changes you want
  2. Run .gitlab-ci/run-docker.sh build --base=debian-stable --base-version=1 to build the new image (bump the version from the latest listed for that base on https://gitlab.gnome.org/GNOME/glib/container_registry). If rebuilding the coverity.Dockerfile image, youll need to have access to Coverity Scan and will need to specify your project name and access token as the environment variables COVERITY_SCAN_PROJECT_NAME and COVERITY_SCAN_TOKEN.
  3. Run .gitlab-ci/run-docker.sh push --base=debian-stable --base-version=1 to upload the new image to the GNOME GitLab Docker registry
    • If this is the first time you're doing this, you'll need to log into the registry
    • If you use 2-factor authentication on your GNOME GitLab account, you'll need to create a personal access token and use that rather than your normal password — the token should have read_registry and write_registry permissions
  4. Edit .gitlab-ci.yml (in the root of this repository) to use your new image