summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2023-01-28 10:17:37 +0000
committerMatthew Pickering <matthewtpickering@gmail.com>2023-01-28 10:22:27 +0000
commit2529c9859d3315e4bd62e06b3017a34ead222e20 (patch)
tree86a007e4f233ada71b06fb8752fdd3a0fdaba8ab
parent4ca7eec6afd10fc3993aa10b659e7d8bfa44f4b3 (diff)
downloadhaskell-wip/fix_rel_eng-ubuntu.tar.gz
gen_ci: Only consider release jobs for job metadatawip/fix_rel_eng-ubuntu
In particular we do not have a release job for FreeBSD so the generation of the platform mapping was failing.
-rw-r--r--.gitlab-ci.yml2
-rwxr-xr-x.gitlab/gen_ci.hs5
2 files changed, 3 insertions, 4 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8a616a71ad..896b2858e8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -277,6 +277,8 @@ lint-ci-config:
- .gitlab/generate_jobs
# 1 if .gitlab/generate_jobs changed the output of the generated config
- nix shell nixpkgs#git -c git diff --exit-code
+ # And run this to just make sure that works
+ - .gitlab/generate_job_metadata
dependencies: []
lint-submods:
diff --git a/.gitlab/gen_ci.hs b/.gitlab/gen_ci.hs
index 10e7797bc8..229565f4b6 100755
--- a/.gitlab/gen_ci.hs
+++ b/.gitlab/gen_ci.hs
@@ -17,7 +17,6 @@ import Data.List (intercalate)
import Data.Set (Set)
import qualified Data.Set as S
import System.Environment
-import Data.Maybe
{-
Note [Generating the CI pipeline]
@@ -932,7 +931,7 @@ mkPlatform arch opsys = archName arch <> "-" <> opsysName opsys
-- * Explicitly require tie-breaking for other cases.
platform_mapping :: Map String (JobGroup BindistInfo)
platform_mapping = Map.map go $
- Map.fromListWith combine [ (uncurry mkPlatform (jobPlatform (jobInfo $ v j)), j) | j <- job_groups ]
+ Map.fromListWith combine [ (uncurry mkPlatform (jobPlatform (jobInfo $ v j)), j) | j <- filter hasReleaseBuild job_groups ]
where
whitelist = [ "x86_64-linux-alpine3_12-int_native-validate+fully_static"
, "x86_64-linux-deb10-validate"
@@ -943,8 +942,6 @@ platform_mapping = Map.map go $
combine a b
| name (v a) `elem` whitelist = a -- Explicitly selected
| name (v b) `elem` whitelist = b
- | hasReleaseBuild a, not (hasReleaseBuild b) = a -- Has release build, but other doesn't
- | hasReleaseBuild b, not (hasReleaseBuild a) = b
| otherwise = error (show (name (v a)) ++ show (name (v b)))
go = fmap (BindistInfo . unwords . fromJust . mmlookup "BIN_DIST_NAME" . jobVariables)