Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Github etag reference is not ignored properly in pulumi #230

Open
joey-jonko-paypal opened this issue Aug 16, 2022 · 3 comments
Open

Github etag reference is not ignored properly in pulumi #230

joey-jonko-paypal opened this issue Aug 16, 2022 · 3 comments
Labels
kind/bug Some behavior is incorrect or out of spec

Comments

@joey-jonko-paypal
Copy link

joey-jonko-paypal commented Aug 16, 2022

What happened?

The github etag reference for resources changes constantly. Using pulumi.IgnoreChanges([]string{"etag"}), has no effect on any of the resources causing long running times for refresh and updates as etag gets updated and outputted during every run for every resource. We have over 1700 resources where this etag changes and sent as an output. The stack itself has zero outputs but for whatever reason, these Github resources are reporting outputs.

              --outputs:--
              id        : "repo1"
  
              --outputs:--
              etag      : "W/\"<<ETAG_ID>>\""
              id        : "123456:repo1"
  
              --outputs:--
              etag      : "W/\"<<ETAG_ID>>\""
              id        : "123456:rep1"
  
              --outputs:--
              etag      : "W/\"[193](https://github.com/<<REPO_ETAG_ID>>\""
              id        : "123456:repo1"
  
  @ updating...
  .
  
              --outputs:--
              etag      : "W/\"<<ETAG_ID>>\""
              id        : "123456:repo1"```

Steps to reproduce

Pulumi Refresh identifies all the etag updates/changes
Pulumi up then runs forever apply all the updates (outputs) of the etag references

Expected Behavior

pulumi.IgnoreChanges([]string{"etag"}),
Should properly ignore the etag on all resources where applied.

Actual Behavior

The pulumi.IgnoreChanges([]string{"etag"}), is seemingly not working as the etag references are always showing updates/changes.

Versions used

Pulumi version 3.37.2
Github Pulumi SDK 4.11.0

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

@joey-jonko-paypal joey-jonko-paypal added kind/bug Some behavior is incorrect or out of spec needs-triage Needs attention from the triage team labels Aug 16, 2022
@lblackstone
Copy link
Member

lblackstone commented Aug 18, 2022

Hi @joey-jonko-paypal -- the ignoreChanges option only applies to resource inputs, not outputs. I'll update the docs to make this distinction clearer.

The feature request to ignore certain output changes is tracked in pulumi/pulumi#8953

@lblackstone lblackstone added kind/enhancement Improvements or new features and removed kind/bug Some behavior is incorrect or out of spec needs-triage Needs attention from the triage team labels Aug 18, 2022
@RobCannon
Copy link

I don't think the issue in pulumi/pulumi#8953 is that same. In that issues, they want "however, instead of ignoring the changes, the desired value would always be applied and not reported as a change." For this, pulumi should ignore etag as an output and NOT apply a change to the corresponding GitHub resource. The etag value should not be stored in state, probably.

This is causing our pulumi jobs to invoke hundreds of changes and they end up failing due to a rate limit error because of all of the changes.

@lblackstone lblackstone added kind/bug Some behavior is incorrect or out of spec and removed kind/enhancement Improvements or new features labels Sep 26, 2022
@lblackstone
Copy link
Member

Thanks for the additional info, @RobCannon. I marked this as a bug, and added it to our backlog.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Some behavior is incorrect or out of spec
Projects
None yet
Development

No branches or pull requests

3 participants