Loading nixos/tests/gvisor.nix +15 −21 Original line number Diff line number Diff line Loading @@ -31,13 +31,7 @@ import ./make-test-python.nix ({ pkgs, ...} : { gvisor.wait_for_unit("network.target") gvisor.wait_for_unit("sockets.target") # Start by verifying that gvisor itself works output = gvisor.succeed( "${pkgs.gvisor}/bin/runsc -alsologtostderr do ${pkgs.coreutils}/bin/echo hello world" ) assert output.strip() == "hello world" # Also test the Docker runtime # Test the Docker runtime gvisor.succeed("tar cv --files-from /dev/null | docker import - scratchimg") gvisor.succeed( "docker run -d --name=sleeping --runtime=runsc -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10" Loading pkgs/applications/virtualization/gvisor/default.nix +8 −5 Original line number Diff line number Diff line { lib , nixosTests , buildGoModule , fetchFromGitHub , iproute2 Loading @@ -7,9 +8,9 @@ , procps }: buildGoModule rec { buildGoModule { pname = "gvisor"; version = "20221102.1"; version = "20231113.0"; # gvisor provides a synthetic go branch (https://github.com/google/gvisor/tree/go) # that can be used to build gvisor without bazel. Loading @@ -18,11 +19,11 @@ buildGoModule rec { src = fetchFromGitHub { owner = "google"; repo = "gvisor"; rev = "bf8eeee3a9eb966bc72c773da060a3c8bb73b8ff"; sha256 = "sha256-rADQsJ+AnBVlfQURGJl1xR6Ad5NyRWSrBSpOFMRld+o="; rev = "cdaf5c462c4040ed4cc88989e43f7d373acb9d24"; hash = "sha256-9d2AJXoGFRCSM6900gOBxNBgL6nxXqz/pPan5EeEdsI="; }; vendorHash = "sha256-iGLWxx/Kn1QaJTNOZcc+mwoF3ecEDOkaqmA0DH4pdgU="; vendorHash = "sha256-QdsVELNcIVsZv2gA05YgQfMZ6hmnfN2GGqW6r+mHqbs="; nativeBuildInputs = [ makeWrapper ]; Loading @@ -39,6 +40,8 @@ buildGoModule rec { mv $out/bin/shim $out/bin/containerd-shim-runsc-v1 ''; passthru.tests = { inherit (nixosTests) gvisor; }; meta = with lib; { description = "Application Kernel for Containers"; homepage = "https://github.com/google/gvisor"; Loading Loading
nixos/tests/gvisor.nix +15 −21 Original line number Diff line number Diff line Loading @@ -31,13 +31,7 @@ import ./make-test-python.nix ({ pkgs, ...} : { gvisor.wait_for_unit("network.target") gvisor.wait_for_unit("sockets.target") # Start by verifying that gvisor itself works output = gvisor.succeed( "${pkgs.gvisor}/bin/runsc -alsologtostderr do ${pkgs.coreutils}/bin/echo hello world" ) assert output.strip() == "hello world" # Also test the Docker runtime # Test the Docker runtime gvisor.succeed("tar cv --files-from /dev/null | docker import - scratchimg") gvisor.succeed( "docker run -d --name=sleeping --runtime=runsc -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10" Loading
pkgs/applications/virtualization/gvisor/default.nix +8 −5 Original line number Diff line number Diff line { lib , nixosTests , buildGoModule , fetchFromGitHub , iproute2 Loading @@ -7,9 +8,9 @@ , procps }: buildGoModule rec { buildGoModule { pname = "gvisor"; version = "20221102.1"; version = "20231113.0"; # gvisor provides a synthetic go branch (https://github.com/google/gvisor/tree/go) # that can be used to build gvisor without bazel. Loading @@ -18,11 +19,11 @@ buildGoModule rec { src = fetchFromGitHub { owner = "google"; repo = "gvisor"; rev = "bf8eeee3a9eb966bc72c773da060a3c8bb73b8ff"; sha256 = "sha256-rADQsJ+AnBVlfQURGJl1xR6Ad5NyRWSrBSpOFMRld+o="; rev = "cdaf5c462c4040ed4cc88989e43f7d373acb9d24"; hash = "sha256-9d2AJXoGFRCSM6900gOBxNBgL6nxXqz/pPan5EeEdsI="; }; vendorHash = "sha256-iGLWxx/Kn1QaJTNOZcc+mwoF3ecEDOkaqmA0DH4pdgU="; vendorHash = "sha256-QdsVELNcIVsZv2gA05YgQfMZ6hmnfN2GGqW6r+mHqbs="; nativeBuildInputs = [ makeWrapper ]; Loading @@ -39,6 +40,8 @@ buildGoModule rec { mv $out/bin/shim $out/bin/containerd-shim-runsc-v1 ''; passthru.tests = { inherit (nixosTests) gvisor; }; meta = with lib; { description = "Application Kernel for Containers"; homepage = "https://github.com/google/gvisor"; Loading