diff options
Diffstat (limited to 'tvix')
-rw-r--r-- | tvix/cli/default.nix | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/tvix/cli/default.nix b/tvix/cli/default.nix index 7cb91979fd62..82e6c17c8268 100644 --- a/tvix/cli/default.nix +++ b/tvix/cli/default.nix @@ -1,5 +1,29 @@ { depot, pkgs, lib, ... }: -depot.tvix.crates.workspaceMembers.tvix-cli.build.override { +(depot.tvix.crates.workspaceMembers.tvix-cli.build.override { runTests = true; -} +}).overrideAttrs (_: { + meta = { + ci.extraSteps.eval-nixpkgs-stdenv = { + label = ":nix: evaluate nixpkgs.stdenv in tvix"; + needsOutput = true; + + command = pkgs.writeShellScript "tvix-eval-stdenv" '' + # Ensure tvix can find <nix/fetchurl.nix> + COREPKGS=$(${pkgs.nix}/bin/nix-instantiate --eval -E '<nix>') + export NIX_PATH="nix=''${COREPKGS}:''${NIX_PATH}" + + TVIX_OUTPUT=$(result/bin/tvix -E '(import ${pkgs.path} {}).stdenv.drvPath') + EXPECTED='${/* the verbatim expected Tvix output: */ "=> \"${pkgs.stdenv.drvPath}\" :: string"}' + + echo "Tvix output: ''${TVIX_OUTPUT}" + if [ "$TVIX_OUTPUT" != "$EXPECTED" ]; then + echo "Correct would have been ''${EXPECTED}" + exit 1 + fi + + echo "Output was correct." + ''; + }; + }; +}) |