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

Refresh shows permanent diff for tagsAll in [email protected]

Open corymhall opened this issue 8 months ago • 0 comments

Describe what happened

With the new refresh logic in [email protected] some resources have a permanent diff on tagsAll when that is not provided.

This is causing some of our tests to fail https://github.com/pulumi/pulumi-aws/actions/runs/9510947700/job/26232303592?pr=4077

Sample program

name: test-aws-1655-pf
runtime: yaml
description: |
    Initial deployment without tags
outputs:
    actual: ${res.tags}
resources:
    app:
        properties:
            name: pf-tags-test-app
        type: aws:appconfig:Application
    aws-provider:
        type: pulumi:providers:aws
    res:
        options:
            provider: ${aws-provider}
        properties:
            applicationId: ${app.id}
            name: pf-tags-test
        type: aws:appconfig:Environment

Log output

grpc logs

{
  "method": "/pulumirpc.ResourceProvider/Diff",
  "request": {
    "id": "e2suou4:3u5gdcd",
    "urn": "urn:pulumi:dev::test-aws-1655-pf::aws:appconfig/environment:Environment::res",
    "olds": {
      "applicationId": "3u5gdcd",
      "arn": "arn:aws:appconfig:us-east-2:123456789012:application/3u5gdcd/environment/e2suou4",
      "description": "",
      "environmentId": "e2suou4",
      "id": "e2suou4:3u5gdcd",
      "monitors": [],
      "name": "pf-tags-test",
      "state": "ReadyForDeployment",
      "tagsAll": {}
    },
    "news": {
      "applicationId": "3u5gdcd",
      "name": "pf-tags-test"
    },
    "oldInputs": {
      "applicationId": "3u5gdcd",
      "name": "pf-tags-test"
    }
  },
  "response": {
    "changes": "DIFF_SOME",
    "diffs": [
      "tagsAll"
    ]
  },
  "metadata": {
    "kind": "resource",
    "mode": "client",
    "name": "aws"
  }
}

CLI output

Previewing refresh (dev)

View in Browser (Ctrl+O): https://app.pulumi.com/chall-pulumi-corp/test-aws-1655-pf/dev/previews/ebd560c7-3b68-4616-adfc-27d68ceb1c4c

     Type                          Name                  Plan
     pulumi:pulumi:Stack           test-aws-1655-pf-dev
 ~   ├─ aws:appconfig:Environment  res                   update
     ├─ aws:appconfig:Application  app
     └─ pulumi:providers:aws       aws-provider

Resources:
    ~ 1 to update
    3 unchanged

Do you want to perform this refresh?
No resources will be modified as part of this refresh; just your stack's state will be.
 details
  pulumi:pulumi:Stack: (same)
    [urn=urn:pulumi:dev::test-aws-1655-pf::pulumi:pulumi:Stack::test-aws-1655-pf-dev]
    ~ aws:appconfig/environment:Environment: (update)
        [id=e2suou4:3u5gdcd]
        [urn=urn:pulumi:dev::test-aws-1655-pf::aws:appconfig/environment:Environment::res]
        [provider=urn:pulumi:dev::test-aws-1655-pf::pulumi:providers:aws::aws-provider::4846d995-be31-41cf-8a47-f33b54bdde22]
        applicationId: "3u5gdcd"
        name         : "pf-tags-test"

Do you want to perform this refresh?
No resources will be modified as part of this refresh; just your stack's state will be.

Affected Resource(s)

No response

Output of pulumi about

CLI          
Version      3.120.0
Go Version   go1.22.4
Go Compiler  gc

Plugins
KIND      NAME  VERSION
resource  aws   unknown
language  yaml  unknown

Host     
OS       darwin
Version  14.5
Arch     arm64

This project is written in yaml

Current Stack: chall-pulumi-corp/test-aws-1655-pf/dev

TYPE                                   URN
pulumi:pulumi:Stack                    urn:pulumi:dev::test-aws-1655-pf::pulumi:pulumi:Stack::test-aws-1655-pf-dev
pulumi:providers:aws                   urn:pulumi:dev::test-aws-1655-pf::pulumi:providers:aws::aws-provider
pulumi:providers:aws                   urn:pulumi:dev::test-aws-1655-pf::pulumi:providers:aws::default
aws:appconfig/application:Application  urn:pulumi:dev::test-aws-1655-pf::aws:appconfig/application:Application::app
aws:appconfig/environment:Environment  urn:pulumi:dev::test-aws-1655-pf::aws:appconfig/environment:Environment::res


Found no pending operations associated with dev

Backend        
Name           pulumi.com
URL            https://app.pulumi.com/chall-pulumi-corp
User           chall-pulumi-corp
Organizations  chall-pulumi-corp, pulumi
Token type     personal

No dependencies found

Pulumi locates its logs in /var/folders/3b/6mr1jkqx7r797ff75k27jfjc0000gn/T/ by default

Additional context

No response

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).

corymhall avatar Jun 14 '24 16:06 corymhall