From 32c50daa1355a408bf32b801156e9f549ce3eb70 Mon Sep 17 00:00:00 2001 From: Matthew Pickering <matthewtpickering@gmail.com> Date: Thu, 20 Jul 2023 12:31:15 +0100 Subject: [PATCH] Add test-primops label support The test-primops CI job requires some additional builds in the validation pipeline, so we make sure to enable these jobs when test-primops label is set. --- .gitlab/generate-ci/gen_ci.hs | 6 ++++-- .gitlab/jobs.yaml | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitlab/generate-ci/gen_ci.hs b/.gitlab/generate-ci/gen_ci.hs index 563023fe2c9c..8b5f1813fd30 100644 --- a/.gitlab/generate-ci/gen_ci.hs +++ b/.gitlab/generate-ci/gen_ci.hs @@ -595,6 +595,7 @@ data ValidateRule = | FreeBSDLabel -- ^ Run this job when the "FreeBSD" label is set. | NonmovingGc -- ^ Run this job when the "non-moving GC" label is set. | IpeData -- ^ Run this job when the "IPE" label is set + | TestPrimops -- ^ Run this job when "test-primops" label is set deriving (Show, Enum, Bounded, Ord, Eq) -- A constant evaluating to True because gitlab doesn't support "true" in the @@ -639,6 +640,7 @@ validateRuleString LLVMBackend = labelString "LLVM backend" validateRuleString FreeBSDLabel = labelString "FreeBSD" validateRuleString NonmovingGc = labelString "non-moving GC" validateRuleString IpeData = labelString "IPE" +validateRuleString TestPrimops = labelString "test-primops" -- | A 'Job' is the description of a single job in a gitlab pipeline. The -- job contains all the information about how to do the build but can be further @@ -953,7 +955,7 @@ jobs = Map.fromList $ concatMap (flattenJobGroup) job_groups job_groups :: [JobGroup Job] job_groups = [ disableValidate (standardBuilds Amd64 (Linux Debian10)) - , standardBuildsWithConfig Amd64 (Linux Debian10) dwarf + , addValidateRule TestPrimops (standardBuildsWithConfig Amd64 (Linux Debian10) dwarf) , validateBuilds Amd64 (Linux Debian10) nativeInt , validateBuilds Amd64 (Linux Debian10) unreg , fastCI (validateBuilds Amd64 (Linux Debian10) debug) @@ -980,7 +982,7 @@ job_groups = , disableValidate (standardBuildsWithConfig Amd64 (Linux Fedora33) dwarf) , fastCI (standardBuildsWithConfig Amd64 Windows vanilla) , disableValidate (standardBuildsWithConfig Amd64 Windows nativeInt) - , standardBuilds Amd64 Darwin + , addValidateRule TestPrimops (standardBuilds Amd64 Darwin) , allowFailureGroup (onlyRule FreeBSDLabel (validateBuilds Amd64 FreeBSD13 vanilla)) , fastCI (standardBuilds AArch64 Darwin) , fastCI (standardBuildsWithConfig AArch64 (Linux Debian10) (splitSectionsBroken vanilla)) diff --git a/.gitlab/jobs.yaml b/.gitlab/jobs.yaml index ce87a1a0310b..abf11e680d75 100644 --- a/.gitlab/jobs.yaml +++ b/.gitlab/jobs.yaml @@ -3802,7 +3802,7 @@ ], "rules": [ { - "if": "((($CI_MERGE_REQUEST_LABELS =~ /.*full-ci.*/) || ($CI_MERGE_REQUEST_LABELS =~ /.*marge_bot_batch_merge_job.*/) || ($CI_COMMIT_BRANCH == \"master\") || ($CI_COMMIT_BRANCH =~ /ghc-[0-9]+\\.[0-9]+/))) && ($RELEASE_JOB != \"yes\") && ($NIGHTLY == null)", + "if": "((($CI_MERGE_REQUEST_LABELS =~ /.*full-ci.*/) || ($CI_MERGE_REQUEST_LABELS =~ /.*marge_bot_batch_merge_job.*/) || ($CI_COMMIT_BRANCH == \"master\") || ($CI_COMMIT_BRANCH =~ /ghc-[0-9]+\\.[0-9]+/)) || ($CI_MERGE_REQUEST_LABELS =~ /.*test-primops.*/)) && ($RELEASE_JOB != \"yes\") && ($NIGHTLY == null)", "when": "on_success" } ], @@ -4434,7 +4434,7 @@ ], "rules": [ { - "if": "((($CI_MERGE_REQUEST_LABELS =~ /.*full-ci.*/) || ($CI_MERGE_REQUEST_LABELS =~ /.*marge_bot_batch_merge_job.*/) || ($CI_COMMIT_BRANCH == \"master\") || ($CI_COMMIT_BRANCH =~ /ghc-[0-9]+\\.[0-9]+/))) && ($RELEASE_JOB != \"yes\") && ($NIGHTLY == null)", + "if": "((($CI_MERGE_REQUEST_LABELS =~ /.*full-ci.*/) || ($CI_MERGE_REQUEST_LABELS =~ /.*marge_bot_batch_merge_job.*/) || ($CI_COMMIT_BRANCH == \"master\") || ($CI_COMMIT_BRANCH =~ /ghc-[0-9]+\\.[0-9]+/)) || ($CI_MERGE_REQUEST_LABELS =~ /.*test-primops.*/)) && ($RELEASE_JOB != \"yes\") && ($NIGHTLY == null)", "when": "on_success" } ], -- GitLab