Magnus pushed to branch wip/mangoiv/ci-stages at Glasgow Haskell Compiler / GHC Commits: a1f9aa34 by mangoiv at 2026-08-07T16:49:06+02:00 fixup! ci: build and test stage - - - - - 2 changed files: - .gitlab/generate-ci/gen_ci.hs - .gitlab/jobs.yaml Changes: ===================================== .gitlab/generate-ci/gen_ci.hs ===================================== @@ -1032,7 +1032,7 @@ releaseRule = setJobRule ReleaseOnly -- | Make a normal nightly CI job nightly :: Arch -> Opsys -> BuildConfig -> BuildAndTestJob Job nightly arch opsys bc = - let MkBuildAndTestJob {buildJob, testJobs} = job arch opsys bc { extendName = ("nightly-" <>) } + let MkBuildAndTestJob {buildJob, testJobs} = job arch opsys bc { extendName = ("nightly-" <>) . bc.extendName } mkJob NamedJob {name, jobInfo} = NamedJob { name , jobInfo = nightlyRule @@ -1044,7 +1044,7 @@ nightly arch opsys bc = -- | Make a normal release CI job release :: Arch -> Opsys -> BuildConfig -> BuildAndTestJob Job release arch opsys bc = - let MkBuildAndTestJob {buildJob, testJobs} = job arch opsys (bc { buildFlavour = Release, extendName = ("release-" <>) }) + let MkBuildAndTestJob {buildJob, testJobs} = job arch opsys (bc { buildFlavour = Release, extendName = ("release-" <>) . bc.extendName }) mkJob NamedJob {name, jobInfo} = NamedJob { name , jobInfo = releaseRule . keepArtifacts "1 year" @@ -1245,7 +1245,7 @@ fedora_x86 = -- validate pipeline which is built with perf. fastCI (standardBuildsWithConfig Amd64 (Linux Fedora43) releaseConfig) -- This job is only for generating head.hackage docs - , hackage_doc_job (disableValidate (standardBuildsWithConfig Amd64 (Linux Fedora43) releaseConfig { extendName = (<> "-hackage")})) + , hackage_doc_job , disableValidate (standardBuildsWithConfig Amd64 (Linux Fedora43) dwarf) , disableValidate (standardBuilds Amd64 (Linux Fedora43)) -- For UBSan jobs, only enable for validate/nightly pipelines. @@ -1259,7 +1259,10 @@ fedora_x86 = $ validateBuilds Amd64 (Linux Fedora43) enableUBSan ] where - hackage_doc_job = modifyJobs (addVariable "HADRIAN_ARGS" "--haddock-for-hackage") + hackage_doc_job + = modifyJobs (addVariable "HADRIAN_ARGS" "--haddock-for-hackage") $ + disableValidate (standardBuildsWithConfig Amd64 (Linux Fedora43) + releaseConfig { extendName = (<> "-hackage") . releaseConfig.extendName }) windows_x86 :: [JobGroup Job] windows_x86 = ===================================== .gitlab/jobs.yaml ===================================== @@ -6154,6 +6154,68 @@ } }, "nightly-x86_64-linux-fedora43-release": { + "after_script": [ + ".gitlab/ci.sh save_cache", + ".gitlab/ci.sh save_test_output", + ".gitlab/ci.sh clean", + "cat ci_timings.txt" + ], + "allow_failure": false, + "artifacts": { + "expire_in": "8 weeks", + "paths": [ + "ghc-x86_64-linux-fedora43-release.tar.xz", + "junit.xml", + "unexpected-test-output.tar.gz" + ], + "reports": { + "junit": "junit.xml" + }, + "when": "always" + }, + "cache": { + "key": "x86_64-linux-fedora43-$CACHE_REV", + "paths": [ + "cabal-cache", + "toolchain" + ] + }, + "image": "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-fedora43:$DOCKER_REV", + "needs": [ + { + "artifacts": false, + "job": "hadrian-ghc-in-ghci" + } + ], + "rules": [ + { + "if": "(\"true\" == \"true\") && ($RELEASE_JOB != \"yes\") && ($NIGHTLY)", + "when": "on_success" + } + ], + "script": [ + "sudo chown ghc:ghc -R .", + ".gitlab/ci.sh setup", + ".gitlab/ci.sh configure", + ".gitlab/ci.sh build_hadrian" + ], + "stage": "full-build", + "tags": [ + "x86_64-linux" + ], + "variables": { + "BIGNUM_BACKEND": "gmp", + "BIN_DIST_NAME": "ghc-x86_64-linux-fedora43-release", + "BUILD_FLAVOUR": "release", + "CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "RUNTEST_ARGS": "", + "TEST_ENV": "x86_64-linux-fedora43-release", + "TEST_WAYS": "", + "XZ_OPT": "-9" + } + }, + "nightly-x86_64-linux-fedora43-release-hackage": { "after_script": [ ".gitlab/ci.sh save_cache", ".gitlab/ci.sh save_test_output", @@ -6216,6 +6278,67 @@ "XZ_OPT": "-9" } }, + "nightly-x86_64-linux-fedora43-release-hackage-test": { + "after_script": [ + ".gitlab/ci.sh save_cache", + ".gitlab/ci.sh save_test_output", + ".gitlab/ci.sh clean", + "cat ci_timings.txt" + ], + "allow_failure": false, + "artifacts": { + "expire_in": "8 weeks", + "paths": [ + "ghc-x86_64-linux-fedora43-release.tar.xz", + "junit.xml", + "unexpected-test-output.tar.gz" + ], + "reports": { + "junit": "junit.xml" + }, + "when": "always" + }, + "cache": { + "key": "x86_64-linux-fedora43-$CACHE_REV", + "paths": [ + "cabal-cache", + "toolchain" + ] + }, + "image": "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-fedora43:$DOCKER_REV", + "needs": [ + { + "artifacts": true, + "job": "nightly-x86_64-linux-fedora43-release-hackage" + } + ], + "rules": [ + { + "if": "(\"true\" == \"true\") && ($RELEASE_JOB != \"yes\") && ($NIGHTLY)", + "when": "on_success" + } + ], + "script": [ + ".gitlab/ci.sh setup", + ".gitlab/ci.sh test_hadrian" + ], + "stage": "testing", + "tags": [ + "x86_64-linux" + ], + "variables": { + "BIGNUM_BACKEND": "gmp", + "BIN_DIST_NAME": "ghc-x86_64-linux-fedora43-release", + "BUILD_FLAVOUR": "release", + "CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "HADRIAN_ARGS": "--haddock-for-hackage", + "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "RUNTEST_ARGS": "", + "TEST_ENV": "x86_64-linux-fedora43-release", + "TEST_WAYS": "", + "XZ_OPT": "-9" + } + }, "nightly-x86_64-linux-fedora43-release-test": { "after_script": [ ".gitlab/ci.sh save_cache", @@ -6269,7 +6392,6 @@ "BIN_DIST_NAME": "ghc-x86_64-linux-fedora43-release", "BUILD_FLAVOUR": "release", "CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", - "HADRIAN_ARGS": "--haddock-for-hackage", "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", "RUNTEST_ARGS": "", "TEST_ENV": "x86_64-linux-fedora43-release", @@ -9845,6 +9967,132 @@ "XZ_OPT": "-9" } }, + "release-x86_64-linux-fedora43-release-hackage": { + "after_script": [ + ".gitlab/ci.sh save_cache", + ".gitlab/ci.sh save_test_output", + ".gitlab/ci.sh clean", + "cat ci_timings.txt" + ], + "allow_failure": false, + "artifacts": { + "expire_in": "1 year", + "paths": [ + "ghc-x86_64-linux-fedora43-release.tar.xz", + "junit.xml", + "unexpected-test-output.tar.gz" + ], + "reports": { + "junit": "junit.xml" + }, + "when": "always" + }, + "cache": { + "key": "x86_64-linux-fedora43-$CACHE_REV", + "paths": [ + "cabal-cache", + "toolchain" + ] + }, + "image": "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-fedora43:$DOCKER_REV", + "needs": [ + { + "artifacts": false, + "job": "hadrian-ghc-in-ghci" + } + ], + "rules": [ + { + "if": "(\"true\" == \"true\") && ($RELEASE_JOB == \"yes\") && ($NIGHTLY == null)", + "when": "on_success" + } + ], + "script": [ + "sudo chown ghc:ghc -R .", + ".gitlab/ci.sh setup", + ".gitlab/ci.sh configure", + ".gitlab/ci.sh build_hadrian" + ], + "stage": "full-build", + "tags": [ + "x86_64-linux" + ], + "variables": { + "BIGNUM_BACKEND": "gmp", + "BIN_DIST_NAME": "ghc-x86_64-linux-fedora43-release", + "BUILD_FLAVOUR": "release", + "CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "HADRIAN_ARGS": "--haddock-for-hackage", + "IGNORE_PERF_FAILURES": "all", + "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "RUNTEST_ARGS": "", + "TEST_ENV": "x86_64-linux-fedora43-release", + "TEST_WAYS": "", + "XZ_OPT": "-9" + } + }, + "release-x86_64-linux-fedora43-release-hackage-test": { + "after_script": [ + ".gitlab/ci.sh save_cache", + ".gitlab/ci.sh save_test_output", + ".gitlab/ci.sh clean", + "cat ci_timings.txt" + ], + "allow_failure": false, + "artifacts": { + "expire_in": "1 year", + "paths": [ + "ghc-x86_64-linux-fedora43-release.tar.xz", + "junit.xml", + "unexpected-test-output.tar.gz" + ], + "reports": { + "junit": "junit.xml" + }, + "when": "always" + }, + "cache": { + "key": "x86_64-linux-fedora43-$CACHE_REV", + "paths": [ + "cabal-cache", + "toolchain" + ] + }, + "image": "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-fedora43:$DOCKER_REV", + "needs": [ + { + "artifacts": true, + "job": "release-x86_64-linux-fedora43-release-hackage" + } + ], + "rules": [ + { + "if": "(\"true\" == \"true\") && ($RELEASE_JOB == \"yes\") && ($NIGHTLY == null)", + "when": "on_success" + } + ], + "script": [ + ".gitlab/ci.sh setup", + ".gitlab/ci.sh test_hadrian" + ], + "stage": "testing", + "tags": [ + "x86_64-linux" + ], + "variables": { + "BIGNUM_BACKEND": "gmp", + "BIN_DIST_NAME": "ghc-x86_64-linux-fedora43-release", + "BUILD_FLAVOUR": "release", + "CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "HADRIAN_ARGS": "--haddock-for-hackage", + "IGNORE_PERF_FAILURES": "all", + "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "RUNTEST_ARGS": "", + "TEST_ENV": "x86_64-linux-fedora43-release", + "TEST_WAYS": "", + "XZ_OPT": "-9" + } + }, "release-x86_64-linux-fedora43-release-test": { "after_script": [ ".gitlab/ci.sh save_cache", View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/a1f9aa34aaefae90b460133be3bfe685... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/a1f9aa34aaefae90b460133be3bfe685... You're receiving this email because of your account on gitlab.haskell.org. Manage all notifications: https://gitlab.haskell.org/-/profile/notifications | Help: https://gitlab.haskell.org/help
participants (1)
-
Magnus (@MangoIV)