Skip to content

CI: build-9.4 job fails due to not checking all possible bindist URLs

(Originally spun off of a discussion at !250 (comment 460503).)

The build-9.4 CI job is consistently failing with:

$ nix build \ # collapsed multi-line command
builder for '/nix/store/jd6a09cw7dssldzh3nd2jkl8w7gywrzz-bindist-version.drv' failed with exit code 1; last 6 log lines:
  unpacking sources
  unpacking source archive /nix/store/0030d9nfajil7lbb5pky2jmpsp1n620z-ghc.tar.xz
  xz: (stdin): File format not recognized
  tar: This does not look like a tar archive
  tar: Exiting with failure status due to previous errors
  do not know how to unpack source archive /nix/store/0030d9nfajil7lbb5pky2jmpsp1n620z-ghc.tar.xz
error: build of '/nix/store/jd6a09cw7dssldzh3nd2jkl8w7gywrzz-bindist-version.drv' failed
(use '--show-trace' to show detailed location information)

This is because it is attempting to download the GHC 9.4 bindist at this URL:

But currently, the URL is actually:

Note the extra release- at the front of the job name. The ghc-9.4 branch seems to constantly fluctuate on whether its bindist URL requires release- or not. I've encountered build failures in the past because of the URL not including release-:

On the other hand, I've also encountered a build failure because of the URL including release- when it shouldn't have:

@mpickering suggests that in order to make this robust, the CI needs to check for both URL variants.