1010 callPackage ,
1111 testers ,
1212 pulumi ,
13+ pulumiPackages ,
14+ python3Packages ,
15+ nix-update-script ,
16+ _experimental-update-script-combinators ,
1317} :
1418buildGoModule rec {
1519 pname = "pulumi" ;
16- version = "3.156 .0" ;
20+ version = "3.162 .0" ;
1721
1822 src = fetchFromGitHub {
1923 owner = "pulumi" ;
2024 repo = "pulumi" ;
2125 tag = "v${ version } " ;
22- hash = "sha256-1iML+WCEkLMdAJ7e+F5XwBzM+pn3eZQsCaSi3Ui/JdM =" ;
26+ hash = "sha256-avtqURmj3PL82j89kLmVsBWqJJHnOFqR1huoUESt4L4 =" ;
2327 # Some tests rely on checkout directory name
2428 name = "pulumi" ;
2529 } ;
2630
27- vendorHash = "sha256-2hpn1IKJvWtXgNKgf56dZABA4VO1aT0cDsHOmCEPrGo =" ;
31+ vendorHash = "sha256-fJFpwhbRkxSI2iQfNJ9qdL9oYM1SVVMJ30VIymoZBmg =" ;
2832
2933 sourceRoot = "${ src . name } /pkg" ;
3034
@@ -56,6 +60,11 @@ buildGoModule rec {
5660 # Skip tests that fail in Nix sandbox.
5761 "-skip=^${
5862 lib . concatStringsSep "$|^" [
63+ # Concurrent map modification in test case.
64+ # TODO: remove after the fix is merged and released.
65+ # https://github.com/pulumi/pulumi/pull/19200
66+ "TestGetDocLinkForPulumiType"
67+
5968 # Seems to require TTY.
6069 "TestProgressEvents"
6170
@@ -68,6 +77,10 @@ buildGoModule rec {
6877 "TestGenerateOnlyProjectCheck"
6978 "TestPulumiNewSetsTemplateTag"
7079 "TestPulumiPromptRuntimeOptions"
80+ "TestPulumiNewOrgTemplate"
81+ "TestPulumiNewWithOrgTemplates"
82+ "TestPulumiNewWithoutPulumiAccessToken"
83+ "TestPulumiNewWithoutTemplateSupport"
7184
7285 # Connects to https://pulumi-testing.vault.azure.net/…
7386 "TestAzureCloudManager"
@@ -117,12 +130,39 @@ buildGoModule rec {
117130 passthru = {
118131 pkgs = callPackage ./plugins.nix { } ;
119132 withPackages = callPackage ./with-packages.nix { } ;
133+ updateScript = _experimental-update-script-combinators . sequence [
134+ ( nix-update-script { } )
135+ ( nix-update-script {
136+ attrPath = "pulumiPackages.pulumi-go" ;
137+ extraArgs = [ "--version=skip" ] ;
138+ } )
139+ ( nix-update-script {
140+ attrPath = "pulumiPackages.pulumi-nodejs" ;
141+ extraArgs = [ "--version=skip" ] ;
142+ } )
143+ ( nix-update-script {
144+ attrPath = "pulumiPackages.pulumi-python" ;
145+ extraArgs = [ "--version=skip" ] ;
146+ } )
147+ ] ;
120148 tests = {
121149 version = testers . testVersion {
122150 package = pulumi ;
123151 version = "v${ version } " ;
124152 command = "PULUMI_SKIP_UPDATE_CHECK=1 pulumi version" ;
125153 } ;
154+ # Test building packages that reuse our version and src.
155+ inherit ( pulumiPackages ) pulumi-go pulumi-nodejs pulumi-python ;
156+ # Pulumi currently requires protobuf4, but Nixpkgs defaults to a newer
157+ # version. Test that we can actually build the package with protobuf4.
158+ # https://github.com/pulumi/pulumi/issues/16828
159+ # https://github.com/NixOS/nixpkgs/issues/351751#issuecomment-2462163436
160+ pythonPackage =
161+ ( python3Packages . overrideScope (
162+ final : _ : {
163+ protobuf = final . protobuf4 ;
164+ }
165+ ) ) . pulumi ;
126166 pulumiTestHookShellcheck = testers . shellcheck {
127167 name = "pulumi-test-hook-shellcheck" ;
128168 src = ./extra/pulumi-test-hook.sh ;
0 commit comments