top-level/release-haskell.nix: test writers on all platforms

Since the rust writer doesn't seem to get fixed on darwin, we'll just
wrap the haskell writer test in our own derivation (which is possible
since tests.writers exposes a bunch of internals via passthru) and
expose it via tests.haskell which are already in mergeable.

Finally a way to test the (hopefully) working haskell writer on darwin
again!
This commit is contained in:
sternenseemann 2021-07-13 15:19:36 +02:00
parent b7a0833e68
commit 52acca72bf
3 changed files with 22 additions and 10 deletions

View file

@ -4,4 +4,5 @@ lib.recurseIntoAttrs {
shellFor = callPackage ./shellFor { };
documentationTarball = callPackage ./documentationTarball { };
setBuildTarget = callPackage ./setBuildTarget { };
writers = callPackage ./writers { };
}

View file

@ -0,0 +1,20 @@
# Wrap only the haskell-related tests from tests.writers
# in their own derivation for Hydra CI in the haskell-updates
# jobset. Can presumably removed as soon as tests.writers is
# always green on darwin as well:
# https://github.com/NixOS/nixpkgs/issues/126182
{ runCommand, tests }:
let
inherit (tests.writers)
writeTest
bin
simple
;
in
runCommand "test-haskell-writers" {} ''
${writeTest "success" "test-haskell-bin-writer" "${bin.haskell}/bin/${bin.haskell.name}"}
${writeTest "success" "test-haskell-simple-writer" simple.haskell}
touch $out
''

View file

@ -89,12 +89,7 @@ let
haskellPackages = packagePlatforms pkgs.haskellPackages;
haskell.compiler = packagePlatforms pkgs.haskell.compiler;
tests = let
testPlatforms = packagePlatforms pkgs.tests;
in {
haskell = testPlatforms.haskell;
writers = testPlatforms.writers;
};
tests.haskell = packagePlatforms pkgs.tests.haskell;
pkgsMusl.haskell.compiler = packagePlatforms pkgs.pkgsMusl.haskell.compiler // {
# remove musl ghc865Binary since it is known to be broken and
@ -255,10 +250,6 @@ let
constituents = accumulateDerivations [
# haskell specific tests
jobs.tests.haskell
# writeHaskell and writeHaskellBin
# TODO: writeHaskell currently fails on darwin
jobs.tests.writers.x86_64-linux
jobs.tests.writers.aarch64-linux
# important top-level packages
jobs.cabal-install
jobs.cabal2nix