pulumi-kubernetes icon indicating copy to clipboard operation
pulumi-kubernetes copied to clipboard

CustomResource panic when changing name field in Tekton Pipeline

Open jsravn opened this issue 3 years ago • 4 comments

What happened?

I'm trying to modify a Tekton Pipeline via kubernetes.apiextensions.CustomResource. If I try changing a step name, I get a panic.

pulumi up
Previewing update (extended-test):
     Type                                       Name                         Plan     Info
     pulumi:pulumi:Stack                        extended-test-extended-test           44 messages     └─ kubernetes:tekton.dev/v1beta1:Pipeline  test-pipeline                         1 error
 
Diagnostics:
  kubernetes:tekton.dev/v1beta1:Pipeline (test-pipeline):
    error: transport is closing
 
  pulumi:pulumi:Stack (extended-test-extended-test):
    panic: fatal: An assertion has failed: path: [spec tasks 0 taskSpec spec]  |  v: <nil>  | old: <nil>  |  oldInput: <nil>
    goroutine 308 [running]:
    github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.failfast(...)
    	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/go/common/util/contract/failfast.go:23
    github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.Assertf(0x80, {0x2204c9c, 0x8}, {0xc003129cc8, 0x203000, 0x203000})
    	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/go/common/util/contract/assert.go:33 +0xf4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc00312b398, {0xc003422c80, 0x1db06a0, 0x8}, {0x0, 0x0}, {0x0, 0x0}, {0x0, 0x0}, ...)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2887 +0x188
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc003219540, {0xc003219540, 0x4, 0x4}, 0x2, 0x46acb9, 0x1d55fe0, 0x1f79ea0, 0x1)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc00312b398, {0xc003219540, 0x1e4e5a0, 0x4}, {0x1e8cb00, 0xc002ce5800}, {0x1e8cb00, 0xc002bea930}, {0x1e8cb00, 0xc000aad620}, ...)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc003219540, {0xc003219540, 0x3, 0x4}, 0x203000, 0x203000, 0xc003219540, 0x1d5c9e0, 0x1)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc00312b398, {0xc003219540, 0x8, 0x4}, {0x1e8cb00, 0xc002ce57d0}, {0x1e8cb00, 0xc002bea900}, {0x1e8cb00, 0xc000aad5f0}, ...)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchArrayToDiff(0x0, {0xc00321cee0, 0x2, 0x2}, {0xc00149ce30, 0x1, 0xc00312a920}, {0xc0024123c0, 0x1, 0x1}, ...)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3020 +0x23e
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc00312b398, {0xc00321cee0, 0x0, 0x2}, {0x1d5c9e0, 0xc00316f188}, {0x1d5c9e0, 0xc002416168}, {0x1d5c9e0, 0xc0014724e0}, ...)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2917 +0x405
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc00149cf00, {0xc00149cf00, 0x1, 0x1}, 0xc00312ae80, 0xc00149cec0, 0x1e4e5a0, 0xc00316f1b8, 0x0)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc00312b398, {0xc00149cf00, 0x1e8cb00, 0x1}, {0x1e8cb00, 0xc003d90900}, {0x1e8cb00, 0xc000aad7a0}, {0x1e8cb00, 0xc000aad5c0}, ...)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0x7, {0x0, 0x0, 0x0}, 0x20, 0x1db06a0, 0x70000c002d09401, 0xffffffffffffffff, 0x0)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.convertPatchToDiff(0xc003d908a0, 0xc000aad6e0, 0x1e8cb00, 0xc002cd1bf0, {0xc00321cec0, 0x2, 0x2})
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2815 +0x105
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*kubeProvider).Diff(0xc000162180, {0x2546728, 0xc00348b380}, 0xc0030f4310)
    	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:1541 +0x1cf9
    github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler.func1({0x2546728, 0xc00348b380}, {0x2095b60, 0xc0030f4310})
    	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/proto/go/provider.pb.go:2611 +0x78
    github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc.OpenTracingServerInterceptor.func1({0x2546728, 0xc000477680}, {0x2095b60, 0xc0030f4310}, 0xc0031313e0, 0xc00113d320)
    	/home/runner/go/pkg/mod/github.com/grpc-ecosystem/[email protected]/go/otgrpc/server.go:57 +0x425
    github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler({0x2130340, 0xc000162180}, {0x2546728, 0xc000477680}, 0xc00147f500, 0xc000814e40)
    	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/proto/go/provider.pb.go:2613 +0x138
    google.golang.org/grpc.(*Server).processUnaryRPC(0xc0003c9500, {0x2586c48, 0xc0006031e0}, 0xc002ae7560, 0xc0008f8510, 0x3962a48, 0x0)
    	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:1282 +0xccf
    google.golang.org/grpc.(*Server).handleStream(0xc0003c9500, {0x2586c48, 0xc0006031e0}, 0xc002ae7560, 0x0)
    	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:1619 +0xa2a
    google.golang.org/grpc.(*Server).serveStreams.func1.2()
    	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:921 +0x98
    created by google.golang.org/grpc.(*Server).serveStreams.func1
    	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:919 +0x294

Steps to reproduce

     const testPipeline = new kubernetes.apiextensions.CustomResource(
      "test-pipeline",
      {
        apiVersion: "tekton.dev/v1beta1",
        kind: "Pipeline",
        metadata: {},
        spec: {
          description: "test pipeline",
          tasks: [
            {
              name: "do-something-again",
              taskSpec: {
                steps: [
                  {
                    name: "do-something",
                    image: "busybox",
                    script: "/bin/whoami",
                  },
                ],
              },
            },
          ],
        },
      },
      {
        parent: this,
      }
    );
  1. Have tekton CRDs installed
  2. Run pulumi up to apply
  3. Change step name from "do-something" to "do-something-else"
  4. Run pulumi up to apply

Expected Behavior

It should successfully change the step name.

Actual Behavior

It panics.

Versions used

pulumi about
CLI          
Version      3.28.0
Go Version   go1.17.8
Go Compiler  gc

Plugins
NAME        VERSION
gcp         6.17.0
gcp         6.17.0
kubernetes  3.18.1
kubernetes  3.18.1
nodejs      unknown
random      4.4.2
random      4.4.2

Host     
OS       nixos
Version  21.11 (Porcupine)
Arch     x86_64

This project is written in nodejs (/nix/store/46g0dmf6rcpikbzs22y7w4amyg0ciksi-nodejs-16.14.2/bin/node v16.14.2)

Additional context

Using plain kubectl edit I can change the step name without issue.

Contributing

Vote on this issue by adding a 👍 reaction. To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

jsravn avatar Apr 19 '22 10:04 jsravn

Thanks for filing this issue! Well take a look as soon as we can.

guineveresaenger avatar Apr 22 '22 17:04 guineveresaenger

Seems to happen when I change other fields as well, it's not clear what exactly triggers this bug. For example, I made this change to a Pipeline today:

modified   genesis/src/index.ts
@@ -693,6 +693,10 @@ const cdPipeline = new kubernetes.apiextensions.CustomResource(
               name: "builder-image",
               value: "$(params.builder-image):$(params.git-revision)",
             },
+            {
+              name: "stack-name",
+              value: "$(params.stack-name)",
+            },
           ],
           runAfter: ["npm-install"],
           workspaces: [
@@ -705,7 +709,9 @@ const cdPipeline = new kubernetes.apiextensions.CustomResource(
             params: [
               {
                 name: "builder-image",
-                type: "string",
+              },
+              {
+                name: "stack-name",
               },
             ],
             workspaces: [

In other words, I simply added a param item. But now it always fails with a panic when trying to do a pulumi up:

Diagnostics:
        pulumi:pulumi:Stack ([genesis-genesis.ci](http://genesis-genesis.ci/)):
          panic: fatal: An assertion has failed: path: [spec tasks 4 taskSpec spec]  |  v: <nil>  | old: <nil>  |  oldInput: <nil>
          goroutine 348 [running]:
          [github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.failfast(...)](http://github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.failfast(...))
          	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/go/common/util/contract/failfast.go:23
          [github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.Assertf](http://github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.Assertf)(0x80, {0x2207a62, 0x8}, {0xc003149cc8, 0x203000, 0x203000})
          	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/go/common/util/contract/assert.go:33 +0xf4
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchValueToDiff(0xc00314b398, {0xc00358c580, 0xc003149f08, 0x8}, {0x0, 0x0}, {0x0, 0x0}, {0x0, 0x0}, ...)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2898 +0x188
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchMapToDiff(0xc0032f3200, {0xc0032f3200, 0x4, 0x4}, 0x1, 0x1, 0xc00322c080, 0x1, 0x1)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3000 +0x3f4
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchValueToDiff(0xc00314b398, {0xc0032f3200, 0x1e507a0, 0x4}, {0x1e8ed60, 0xc0032f7f80}, {0x1e8ed60, 0xc003201c20}, {0x1e8ed60, 0xc003365080}, ...)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2921 +0x2b0
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchMapToDiff(0xc0032f3200, {0xc0032f3200, 0x3, 0x4}, 0x203000, 0x203000, 0xc0032f3200, 0x1d5eac0, 0x1)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3000 +0x3f4
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchValueToDiff(0xc00314b398, {0xc0032f3200, 0x8, 0x4}, {0x1e8ed60, 0xc0032f7ef0}, {0x1e8ed60, 0xc003201bc0}, {0x1e8ed60, 0xc003364ff0}, ...)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2921 +0x2b0
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchArrayToDiff(0x0, {0xc0032eed20, 0x2, 0x2}, {0xc0032f1680, 0x5, 0x110}, {0xc0031e7200, 0x5, 0x8}, ...)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3031 +0x23e
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchValueToDiff(0xc00314b398, {0xc0032eed20, 0xfbdcc818e97db27, 0x2}, {0x1d5eac0, 0xc003584408}, {0x1d5eac0, 0xc0031e3830}, {0x1d5eac0, 0xc003362ca8}, ...)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2928 +0x405
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchMapToDiff(0xc0032ff8a0, {0xc0032ff8a0, 0x1, 0x1}, 0xc00314ae80, 0xc0032ff830, 0x1e507a0, 0xc003584438, 0x0)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3000 +0x3f4
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchValueToDiff(0xc00314b398, {0xc0032ff8a0, 0x1e8ed60, 0x1}, {0x1e8ed60, 0xc0033919b0}, {0x1e8ed60, 0xc0033653b0}, {0x1e8ed60, 0xc003364840}, ...)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2921 +0x2b0
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter)).addPatchMapToDiff(0x7, {0x0, 0x0, 0x0}, 0x20, 0x1db2780, 0x20000c0033a6301, 0xffffffffffffffff, 0x0)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3000 +0x3f4
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.convertPatchToDiff](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.convertPatchToDiff)(0xc003391980, 0xc0033652f0, 0x1e8ed60, 0xc0032f7a10, {0xc0032eece0, 0x2, 0x2})
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2826 +0x105
          [github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*kubeProvider](http://github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*kubeProvider)).Diff(0xc000137380, {0x2549a08, 0xc003306ff0}, 0xc00278fc00)
          	/home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:1552 +0x1cf9
          [github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler.func1](http://github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler.func1)({0x2549a08, 0xc003306ff0}, {0x2098820, 0xc00278fc00})
          	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/proto/go/provider.pb.go:2596 +0x78
          [github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc.OpenTracingServerInterceptor.func1](http://github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc.OpenTracingServerInterceptor.func1)({0x2549a08, 0xc00285cea0}, {0x2098820, 0xc00278fc00}, 0xc00281d280, 0xc0029f21f8)
          	/home/runner/go/pkg/mod/github.com/grpc-ecosystem/[email protected]/go/otgrpc/server.go:57 +0x425
          [github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler](http://github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler)({0x21356c0, 0xc000137380}, {0x2549a08, 0xc00285cea0}, 0xc00283b560, 0xc00054bba0)
          	/home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/proto/go/provider.pb.go:2598 +0x138
          [google.golang.org/grpc.(*Server](http://google.golang.org/grpc.(*Server)).processUnaryRPC(0xc00015cc40, {0x2589f68, 0xc0006024e0}, 0xc0032ab200, 0xc0001444e0, 0x3966c48, 0x0)
          	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:1282 +0xccf
          [google.golang.org/grpc.(*Server](http://google.golang.org/grpc.(*Server)).handleStream(0xc00015cc40, {0x2589f68, 0xc0006024e0}, 0xc0032ab200, 0x0)
          	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:1619 +0xa2a
          [google.golang.org/grpc.(*Server](http://google.golang.org/grpc.(*Server)).serveStreams.func1.2()
          	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:921 +0x98
          created by [google.golang.org/grpc.(*Server](http://google.golang.org/grpc.(*Server)).serveStreams.func1
          	/home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:919 +0x294
       
        kubernetes:tekton.dev/v1beta1:Pipeline (cd):
          error: error reading from server: EOF

jsravn avatar Jun 06 '22 09:06 jsravn

Okay, I think I figured out the cause.

After applying the Pipeline, the resource in Kubernetes ends up with a null spec field inside of TaskSpec:

    taskSpec:
      metadata: {}
      params:
      - name: builder-image
        type: string
      spec: null
      steps:
      - image: $(params.builder-image)
<snip>

Unsure where this is coming from - it's an optional field and should be omitted if empty (https://github.com/tektoncd/pipeline/blob/7de70f1c095a12c10e81932ab3b0e2268dd80ec5/pkg/apis/pipeline/v1beta1/pipeline_types.go#L149). Could be a Tekton bug that is causing this to get set to null somewhere rather than being omitted.

Anyways, it seems the kubernetes differ can't handle this properly. It encounters "spec: null" and ends up passing a nil object to the diff logic for both old and new value, and the assertion blows up. Seems to also only happen when modifying a Task with a taskSpec field present.

A workaround is to specify an empty spec: {} for the taskSpec. But the differ should also ignore such nil objects I think.

jsravn avatar Jun 06 '22 10:06 jsravn

I'm facing same issue with podTemplate in elasticsearch CR object:

podTemplate:
      metadata:
        creationTimestamp: nul

Error:

    panic: fatal: An assertion has failed: path: [spec nodeSets 0 podTemplate metadata creationTimestamp]  |  v: <nil>  | old: <nil>  |  oldInput: <nil>
    goroutine 2976 [running]:
    github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.failfast(...)
        /home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/go/common/util/contract/failfast.go:23
    github.com/pulumi/pulumi/sdk/v3/go/common/util/contract.Assertf(0x80, {0x221d689, 0x8}, {0xc004ecd768, 0x1e99f80, 0xc002bd1e30})
        /home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/go/common/util/contract/assert.go:33 +0xf4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc004ecf398, {0xc00608a980, 0x100000001d6ae20, 0x8}, {0x0, 0x0}, {0x0, 0x0}, {0x0, 0x0}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2887 +0x188
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc00608a980, {0xc00608a980, 0x5, 0x8}, 0x203001, 0x203001, 0xc00608a980, 0x3, 0x1)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2998 +0x65a
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc004ecf398, {0xc00608a980, 0xc004ecdf08, 0x8}, {0x1ea25c0, 0xc0060910e0}, {0x1ea25c0, 0xc00307fce0}, {0x1ea25c0, 0xc002964690}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc0060a2200, {0xc0060a2200, 0x4, 0x4}, 0x2, 0xffffffffffffffff, 0x1d6ae20, 0x1f902c0, 0x1)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc004ecf398, {0xc0060a2200, 0xcb40, 0x4}, {0x1ea25c0, 0xc0060910b0}, {0x1ea25c0, 0xc00307fcb0}, {0x1ea25c0, 0xc002964660}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc0060a2200, {0xc0060a2200, 0x3, 0x4}, 0x203001, 0x203001, 0xc0060a2200, 0xaaaaaaaaaaaaaa, 0x1)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc004ecf398, {0xc0060a2200, 0x8, 0x4}, {0x1ea25c0, 0xc006090f30}, {0x1ea25c0, 0xc00307fb30}, {0x1ea25c0, 0xc0029644e0}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchArrayToDiff(0x0, {0xc00608e980, 0x2, 0x2}, {0xc00608a900, 0x6, 0xc004ece920}, {0xc003165980, 0x6, 0x8}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:3020 +0x23e
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc004ecf398, {0xc00608e980, 0x45aca8e2535d7604, 0x2}, {0x1d718e0, 0xc0060872d8}, {0x1d718e0, 0xc003059ef0}, {0x1d718e0, 0xc002972c78}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2917 +0x405
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0xc006093470, {0xc006093470, 0x1, 0x1}, 0xc004ecee80, 0x40d0b4, 0x0, 0x7f1b1647cf40, 0x0)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchValueToDiff(0xc004ecf398, {0xc006093470, 0x1dc57a0, 0x1}, {0x1ea25c0, 0xc006090f00}, {0x1ea25c0, 0xc002976d50}, {0x1ea25c0, 0xc0029643c0}, ...)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2910 +0x2b0
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*patchConverter).addPatchMapToDiff(0x2, {0x0, 0x0, 0x0}, 0x20, 0x1dc57a0, 0x30000c0060a8101, 0xffffffffffffffff, 0x0)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2989 +0x3f4
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.convertPatchToDiff(0xc002a04690, 0xc002976c90, 0x1ea25c0, 0xc006090390, {0xc00608e960, 0x2, 0x2})
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:2815 +0x105
    github.com/pulumi/pulumi-kubernetes/provider/v3/pkg/provider.(*kubeProvider).Diff(0xc000739e00, {0x2568da8, 0xc002782de0}, 0xc00315b3b0)
        /home/runner/work/pulumi-kubernetes/pulumi-kubernetes/provider/pkg/provider/provider.go:1535 +0x1cf9
    github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler.func1({0x2568da8, 0xc002782de0}, {0x20ad2c0, 0xc00315b3b0})
        /home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/proto/go/provider.pb.go:2604 +0x78
    github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc.OpenTracingServerInterceptor.func1({0x2568da8, 0xc0026df9e0}, {0x20ad2c0, 0xc00315b3b0}, 0xc0026fff00, 0xc0026ee360)
        /home/runner/go/pkg/mod/github.com/grpc-ecosystem/[email protected]/go/otgrpc/server.go:57 +0x406
    github.com/pulumi/pulumi/sdk/v3/proto/go._ResourceProvider_Diff_Handler({0x214a960, 0xc000739e00}, {0x2568da8, 0xc0026df9e0}, 0xc0027129c0, 0xc0002352c0)
        /home/runner/go/pkg/mod/github.com/pulumi/pulumi/sdk/[email protected]/proto/go/provider.pb.go:2606 +0x138
    google.golang.org/grpc.(*Server).processUnaryRPC(0xc0006e3340, {0x25a9388, 0xc0004d64e0}, 0xc0026c46c0, 0xc0003217a0, 0x398dd48, 0x0)
        /home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:1282 +0xccf
    google.golang.org/grpc.(*Server).handleStream(0xc0006e3340, {0x25a9388, 0xc0004d64e0}, 0xc0026c46c0, 0x0)
        /home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:1619 +0xa2a
    google.golang.org/grpc.(*Server).serveStreams.func1.2()
        /home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:921 +0x98
    created by google.golang.org/grpc.(*Server).serveStreams.func1
        /home/runner/go/pkg/mod/google.golang.org/[email protected]/server.go:919 +0x294

Config:

CLI
Version      3.33.2
Go Version   go1.17.10
Go Compiler  gc

Plugins
NAME        VERSION
aws         4.38.1
eks         0.35.0
kubernetes  3.19.3
python      unknown

Host
OS       debian
Version  11.3
Arch     x86_64

NAME        VERSION
pip         21.3.1
pulumi-eks  0.35.0
setuptools  52.0.0

eliskovets avatar Jun 08 '22 19:06 eliskovets