Skip to content

postrender breaking change in v3 not documented #1727

@mapu77

Description

@mapu77

Terraform, Provider, Kubernetes and Helm Versions

Terraform v1.14.0
on darwin_arm64
+ provider registry.terraform.io/hashicorp/helm v3.1.1
+ provider registry.terraform.io/hashicorp/kubernetes v2.38.0

Affected Resource(s)

  • helm_release

Terraform Configuration Files

On helm v2

resource "helm_release" "my_release" {
  name       = "nginx-ingress-controller"

  repository = "https://charts.bitnami.com/bitnami"
  chart      = "nginx-ingress-controller"

  postrender {
    binary_path = "./my-postrender.sh"
    args = ["Hello World"]
  }
}

On helm v3 if running the same Terraform code, terraform validation check fails with

Blocks of type "postrender" are not expected here.

Instead, the same chart must be defined as the following now:

resource "helm_release" "my_release" {
  name       = "nginx-ingress-controller"

  repository = "https://charts.bitnami.com/bitnami"
  chart      = "nginx-ingress-controller"

  postrender = {
    binary_path = "./my-postrender.sh"
    args = ["Hello World"]
  }
}

*Don't take the example as a working example, I can't provide a the exact code for confidentiality reasons

Debug Output

NOTE: In addition to Terraform debugging, please set HELM_DEBUG=1 to enable debugging info from helm.

Panic Output

Steps to Reproduce

  1. terraform validate

Expected Behavior

Success

Actual Behavior

Blocks of type "postrender" are not expected here.

Important Factoids

According to v3, postrender is now a SingleNestedAttribute (see ref); while on latest v2 postrender was of TypeList (see ref)

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

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions