diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index ff75a5f5cce..8856b07e2a4 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -21,12 +21,12 @@ steps: system: x86_64-linux - label: 'Check Stylish Haskell' - command: 'nix-shell --run .buildkite/check-stylish.sh' + command: 'nix-shell -A ci-shell --run .buildkite/check-stylish.sh' agents: system: x86_64-linux - label: 'HLint' - command: 'nix-shell --run "hlint lib"' + command: 'nix-shell -A ci-shell --run "hlint lib"' agents: system: x86_64-linux diff --git a/release.nix b/release.nix index 4a6b6633c0b..b45a7d0dfcb 100644 --- a/release.nix +++ b/release.nix @@ -25,6 +25,12 @@ let "${mingwW64.config}" = mapTestOnCross mingwW64 (packagePlatformsCross project); } // { + ci-tools = { + inherit (import ./nix/iohk-common.nix {}) hlint; + inherit ((import ./nix/nixpkgs-haskell.nix {}).haskellPackages) stylish-haskell; + }; + inherit ((import ./. {}).pkgs.haskell-nix) haskellNixRoots; + # This aggregate job is what IOHK Hydra uses to update # the CI status in GitHub. required = mkRequiredJob ( diff --git a/shell.nix b/shell.nix index 82fb296083f..2812f2248e4 100644 --- a/shell.nix +++ b/shell.nix @@ -1 +1,8 @@ -(import ./default.nix {}).shell +let + self = import ./default.nix {}; + # a shell that only has basic CI tools, and no dependencies + ci-shell = self.pkgs.stdenv.mkDerivation { + name = "ci-shell"; + buildInputs = [ self.pkgs.haskellPackages.stylish-haskell self.iohkLib.hlint ]; + }; +in self.shell // { inherit ci-shell; }