From 128563bef5927e079230f8278cb259fae7dd1a25 Mon Sep 17 00:00:00 2001 From: Pierre-Marie de Rodat Date: Wed, 25 Oct 2023 09:40:30 +0000 Subject: [PATCH 1/2] CI: build Libadalang-doc Building Libadalang-doc should not take too much time for our CI time budget, and it brings extra safety in the development pipeline. --- .gitlab-ci.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c7953f8fc..75eb763bd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -52,8 +52,7 @@ build_and_test: - touch fingerprints/x86_64-linux.langkit_support.install.json.assume-unchanged - touch fingerprints/x86_64-linux.langkit.install.json.assume-unchanged - anod build --minimal libadalang - # Protect us against the potential build failure of libadalang-doc this day - - anod install --latest libadalang-doc + - anod build --minimal libadalang-doc - anod build --minimal libadalang_for_customers # Run the testsuite From 6142833ea351968df1d0cc4e79a1df1a7deb7a91 Mon Sep 17 00:00:00 2001 From: Pierre-Marie de Rodat Date: Wed, 25 Oct 2023 09:40:49 +0000 Subject: [PATCH 2/2] Do not run CBs in scheduled pipelines The purpose of the only scheduled pipeline we have for now is to create a pre-built Langkit package used to speed up the Libadalang CI. There is no need to run the CB in this pipeline. --- utils/gitlab-ci-common.yml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/utils/gitlab-ci-common.yml b/utils/gitlab-ci-common.yml index 5ff54435d..0625f9bdd 100644 --- a/utils/gitlab-ci-common.yml +++ b/utils/gitlab-ci-common.yml @@ -21,15 +21,19 @@ .cb: # Items to create continuous builders (CB). # - # Such jobs are meant to be run only after all updates on the "master" - # branch. Their purpose is to check that recent work the - # Libadalang/Langkit/AdaSAT repositories does not break the build of GNAT. In - # this context, we are only interested in builds: we think that a situation - # where LAL changes do not break builds but create serious regressions at - # runtime are very unlikely, and running relevant testing is very costly. + # Such jobs are meant to be run after all updates on the "master" branch and + # optionally when manually triggered from the web interface. + # + # Their purpose is to check that recent work the Libadalang/Langkit/AdaSAT + # repositories does not break the build of GNAT. In this context, we are only + # interested in builds: we think that a situation where LAL changes do not + # break builds but create serious regressions at runtime are very unlikely, + # and running relevant testing is very costly. extends: .basic rules: - - if: '$CI_COMMIT_BRANCH == "master"' + - if: '$CI_COMMIT_BRANCH != "master"' + when: never + - if: '$CI_PIPELINE_SOURCE == "push" || $CI_PIPELINE_SOURCE == "web"' services: - image:sandbox - cpu:8