From 35bde24daa2975c4172e083dcb9647ab317670af Mon Sep 17 00:00:00 2001 From: Bruno Lopes Date: Mon, 12 May 2025 22:08:16 -0300 Subject: [PATCH] devel-docs: Remove outdated CI explanation in favor of gitlab-ci.yml This is already documented and updated on gitlab-ci.yml's "There are five "TYPES" of pipelines on our CI" section so maintaining two explanations is pointless and not future-proof. --- .gitlab-ci.yml | 10 +++--- devel-docs/README.md | 77 -------------------------------------------- 2 files changed, 5 insertions(+), 82 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8ec8e0d5e2..936f44035b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -19,15 +19,14 @@ spec: default: 'none' --- - -# Our pipelines are auto cancelable when explicity set in 'rules'. -# GitLab is quite sensitive about rules 'if' order so be careful. workflow: auto_cancel: on_new_commit: interruptible -# There are five "TYPES" of pipelines on our CI: +################################################## +# There are five "TYPES" of pipelines on our CI: # +################################################## ## 1. On MERGE REQUESTS, the following are triggered: ## - Abbreviated Linux Clang build (base & fast) @@ -39,7 +38,8 @@ workflow: variables: {} ## 2. LABELED MERGE REQUESTS (search for 'CI_MERGE_REQUEST_LABELS'). - #'interruptible: true' needs to be hardcoded on job + #'interruptible: true' needs to be hardcoded on job rules + # GitLab is quite sensitive about rules 'if' order so be careful ## 3. On COMMITS except tags. ## - Linux Clang build (base & fast) diff --git a/devel-docs/README.md b/devel-docs/README.md index 90c7315b06..4d7ff05b47 100644 --- a/devel-docs/README.md +++ b/devel-docs/README.md @@ -175,83 +175,6 @@ information. ## TODO: GIMP extensions (*.gex*) -## Continuous Integration - -For most of its continuous integration (macOS excepted), GIMP project -uses Gitlab CI. We recommend looking the file -[.gitlab-ci.yml](/.gitlab-ci.yml) which is the startup script. - -The main URL for our CI system is -[build.gimp.org](https://build.gimp.org) which redirects to Gitlab -pipelines page. - -Note that it is important to keep working CI jobs for a healthy code -source. Therefore when you push some code which breaks the CI (you -should receive a notification email when you do so), you are expected to -look at the failed jobs' logs, try and understand the issue(s) and fix -them (or ask for help). Don't just shrug this because it works locally -(the point of the CI is to build in more conditions than developers -usually do locally). - -Of course, sometimes CI failures are out of our control, for instance -when downloaded dependencies have issues, or because of runner issues. -You should still check that these were reported and that -packagers/maintainers of these parts are aware and working on a fix. - -### Automatic pipelines - -At each commit pushed to the repository, several pipelines are currently -running, such as: - -- Debian testing builds -- Windows builds (cross compiled). - -Additionally, we test build with alternative tools or options (e.g. with -`GCC` instead of `Clang` compiler) or jobs which may take much longer, -such as package creation as scheduled pipelines (once every few days). - -The above listing is not necessarily exhaustive nor is it meant to be. -Only the [.gitlab-ci.yml](/.gitlab-ci.yml) script is meant to be -authoritative. The top comment in this file should stay as exhaustive -as possible. - -### Manual pipelines - -It is possible to trigger pipelines manually, for instance with specific -jobs, if you have the "*Developer*" Gitlab role: - -1. go to the [Pipelines](https://gitlab.gnome.org/GNOME/gimp/-/pipelines) - page. -2. Hit the "*Run pipeline*" button. -3. Choose the branch or tag you wish to build. -4. Add relevant variables. A list of variables named `GIMP_CI_*` are - available (just set them to any value) and will trigger specific job - lists. These variables are listed in the top comment of - [.gitlab-ci.yml](/.gitlab-ci.yml). - -### Merge request pipelines - -Special pipelines happen for merge request code. For instance, these -also include a (non-perfect) code style check. - -Additionally you can trigger flatpak standalone packages, Windows -installer or Microsoft Store/.msixbundle to be generated -with the MR code as explained in [gitlab-mr.md](gitlab-mr.md). - -### Release pipeline - -Special pipelines happen when pushing git `tags`. These should be tested -before a release to avoid unexpected release-time issues, as explained -in [our release procedure](https://developer.gimp.org/core/maintainer/release/). - -### Exception: macOS - -As an exception, macOS is currently built with the `Circle-CI` service. -The whole CI scripts and documentation can be found in the dedicated -[gimp-macos-build](https://gitlab.gnome.org/Infrastructure/gimp-macos-build) -repository. - -Eventually we want to move this pipeline to Gitlab as well. ## Core development