Skip to content

Helm Application 'parameter' block conflict with ArgoCD Image Updater #672

@rlees85

Description

@rlees85

When deploying a Helm ArgoCD application with the ArgoCD Terraform provider, if ArgoCD Image Updater is also running in the cluster and has set some overrides, Terraform is always in conflict - even when there are no parameter blocks set in the Terraform configuration.

One (dirty) workaround is:

  lifecycle {
    ignore_changes = [
      spec[0].source[0].helm[0].parameter
    ]
  }

But if you want to have dynamic amount of sources etc then you have absolutely no chance.

If a parameter block is not defined in Terraform, surely it should ignore that field?

Terraform Version, ArgoCD Provider Version and ArgoCD Version

Terraform version: 1.6.4
ArgoCD provider version: 7.8.2
ArgoCD version: 3.0.5

Affected Resource(s)

  • argocd_application

Terraform Configuration Files

# Copy-paste your Terraform configurations here - for large Terraform configs,
# please use a service like Dropbox and share a link to the ZIP file. For
# security, you can also encrypt the files using our GPG public key.
  1. terraform apply
  2. apply a parameter to the application in the argo gui (or if you have image updater running, just wait a moment)
  3. terraform apply

Expected Behavior

If no parameter block in Terraform configuration, the blocks set by ArgoCD Image Updater/GUI should be ignored.

Actual Behavior

Terraform wants to strip the parameters.

Important Factoids

References

Community Note

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinghelp wantedCommunity help wanted!

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions