glib/.gitlab-ci
Marco Trevisan (Treviño) 3ddfb10b0b ci: Generate Cobertura XML and use it to feed gitlab for MR integration
gitlab has coverage integration in MRs, but we need a cobertura
formatted XML files (each must be less than 10 MB [1]) to show it, so
generate it using a python script and inform gitlab about it.

See https://docs.gitlab.com/ee/ci/testing/test_coverage_visualization.html

[1] https://gitlab.com/gitlab-org/gitlab/-/issues/328772#note_840831654
2022-09-15 03:16:52 +02:00
..
android-ndk.sh ci: Update to latest Android NDK 2022-05-11 10:52:19 +01:00
cache-subprojects.sh build: Move gvdb to a subproject 2022-06-16 10:12:07 +01:00
check-todos.py python: Reformat some files to keep style-check-diff happy 2020-12-12 18:40:57 +00:00
clang-format-diff.py ci: Move clang-format-diff.py into CI directory 2022-05-11 12:43:27 +01:00
coverage-docker.sh ci: Generate Cobertura XML and use it to feed gitlab for MR integration 2022-09-15 03:16:52 +02:00
coverity-model.c ci: Add model file for Coverity 2020-09-08 10:34:54 +01:00
coverity.Dockerfile replace pcre1 with pcre2 2022-07-12 11:46:34 +00:00
cross_file_android_arm64_31.txt ci: Update to latest Android NDK 2022-05-11 10:52:19 +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 ci: Add -fstack-protector to mingw64 cross file 2021-10-13 10:44:23 +01:00
debian-stable.Dockerfile replace pcre1 with pcre2 2022-07-12 11:46:34 +00:00
fedora.Dockerfile ci: Install lcov-cobertura and cobertura-split script in coverage images 2022-09-15 03:12:08 +02:00
fixup-cov-paths.py CI: Re-enable code coverage reporting for MSYS2 builds 2020-10-01 14:07:14 +02:00
install-gitlab-cobertura-tools.sh ci: Install lcov-cobertura and cobertura-split script in coverage images 2022-09-15 03:12:08 +02:00
mingw.Dockerfile replace pcre1 with pcre2 2022-07-12 11:46:34 +00: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 ci: Move clang-format-diff.py into CI directory 2022-05-11 12:43:27 +01:00
run-tests.sh gitlab-ci: left-over from junit cleanup 2022-05-25 15:27:37 +02:00
search-common-ancestor.sh ci: Improve style check script 2022-09-09 20:23:44 -04:00
show-execution-environment.sh ci: Include details of machine ID in CI output 2021-03-01 13:54:09 +00:00
test-msvc.bat gitlab-ci: remove meson-junit-report.py conversion 2022-05-25 14:10:35 +02:00
test-msys2.sh replace pcre1 with pcre2 2022-07-12 11:46:34 +00: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