From 5847cbf464116398f38e29550a57ee757e5c1938 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Thu, 20 Feb 2025 11:50:05 +0700 Subject: [PATCH] feat(tvix): add //tvix:shell-integration This provides a shell containing the necessary packages to run the integration tests too. //tvix:shell stays the same. Change-Id: Iac7977cbb7dc085da698993be9baca662d09ff5f Reviewed-on: https://cl.tvl.fyi/c/depot/+/13164 Tested-by: BuildkiteCI Autosubmit: flokli Reviewed-by: Connor Brewster --- tvix/default.nix | 4 ++++ tvix/shell.nix | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/tvix/default.nix b/tvix/default.nix index 3f32b672c..1b103c89b 100644 --- a/tvix/default.nix +++ b/tvix/default.nix @@ -59,6 +59,9 @@ in # workspace too. shell = (import ./shell.nix { inherit pkgs; }); + # Shell, but with tools necessary to run the integration tests + shell-integration = (import ./shell.nix { inherit pkgs; withIntegration = true; }); + # Build the Rust documentation for publishing on docs.tvix.dev. rust-docs = pkgs.stdenv.mkDerivation { inherit cargoDeps src; @@ -120,6 +123,7 @@ in meta.ci.targets = [ "clippy" "shell" + "shell-integration" "rust-docs" "crate2nix-check" ]; diff --git a/tvix/shell.nix b/tvix/shell.nix index bc4d8627c..284a323bd 100644 --- a/tvix/shell.nix +++ b/tvix/shell.nix @@ -25,6 +25,7 @@ }) ]; }) +, withIntegration ? false , ... }: @@ -61,6 +62,9 @@ pkgs.mkShell { # `cargo build` on MacOS. pkgs.libiconv pkgs.buildPackages.darwin.apple_sdk.frameworks.Security + ] ++ pkgs.lib.optionals withIntegration [ + pkgs.cbtemulator + pkgs.google-cloud-bigtable-tool ]; # Set TVIX_BENCH_NIX_PATH to a somewhat pinned nixpkgs path.