最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

kubernetes - Terraform: Error: Provider produced inconsistent result after apply -- rabbitmqCluster default_user.conf - Stack Ov

programmeradmin1浏览0评论

I faced this issue when deploying a Secret resource using kubernetes_manifest in terraform, which I am using for a rabbitmqCluster deployment.

╷
│ Error: Provider produced inconsistent result after apply
│ 
│ When applying changes to kubernetes_manifest.default_user_config, provider
│ "provider[\"registry.opentofu/hashicorp/kubernetes\"]" produced an
│ unexpected new value: .object.stringData: was
│ cty.MapVal(map[string]cty.Value{"default_user.conf":cty.StringVal("default_user
│ = user\ndefault_pass = password\n")}), but now null.
│ 
│ This is a bug in the provider, which should be reported in the provider's
│ own issue tracker.

in this kubernetes_manifest

resource "kubernetes_manifest" "default_user_config" {
  manifest = yamldecode(<<EOF
apiVersion: v1
kind: Secret
metadata:
  name: "default-user-config"
  namespace: ${var.namespace}
type: Opaque
stringData:
  default_user.conf: |
    default_user = user
    default_pass = password
  # host: dmF1bHQtZGVmYXVsdC11c2VyLmRlZmF1bHQuc3Zj
  # username: my-admin
  # password: super-secure-password
  # port: "5672"
  # provider: rabbitmq
  # type: rabbitmq
EOF
  )
}

I faced this issue when deploying a Secret resource using kubernetes_manifest in terraform, which I am using for a rabbitmqCluster deployment.

╷
│ Error: Provider produced inconsistent result after apply
│ 
│ When applying changes to kubernetes_manifest.default_user_config, provider
│ "provider[\"registry.opentofu./hashicorp/kubernetes\"]" produced an
│ unexpected new value: .object.stringData: was
│ cty.MapVal(map[string]cty.Value{"default_user.conf":cty.StringVal("default_user
│ = user\ndefault_pass = password\n")}), but now null.
│ 
│ This is a bug in the provider, which should be reported in the provider's
│ own issue tracker.

in this kubernetes_manifest

resource "kubernetes_manifest" "default_user_config" {
  manifest = yamldecode(<<EOF
apiVersion: v1
kind: Secret
metadata:
  name: "default-user-config"
  namespace: ${var.namespace}
type: Opaque
stringData:
  default_user.conf: |
    default_user = user
    default_pass = password
  # host: dmF1bHQtZGVmYXVsdC11c2VyLmRlZmF1bHQuc3Zj
  # username: my-admin
  # password: super-secure-password
  # port: "5672"
  # provider: rabbitmq
  # type: rabbitmq
EOF
  )
}
Share Improve this question asked Mar 3 at 8:40 Estifanos BiredaEstifanos Bireda 254 bronze badges 1
  • 1 Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. – Community Bot Commented Mar 6 at 2:25
Add a comment  | 

1 Answer 1

Reset to default 0

Adding the computed_fields field in the manifest resource and appending the stringData solved the issue. The resulting kubernetes_manifest is

resource "kubernetes_manifest" "default_user_config" {
  computed_fields = ["stringData"]
  manifest = yamldecode(<<EOF
apiVersion: v1
kind: Secret
metadata:
  name: "default-user-config"
  namespace: ${var.namespace}
type: Opaque
stringData:
  default_user.conf: |
    default_user = user
    default_pass = password
  # host: dmF1bHQtZGVmYXVsdC11c2VyLmRlZmF1bHQuc3Zj
  # username: my-admin
  # password: super-secure-password
  # port: "5672"
  # provider: rabbitmq
  # type: rabbitmq
EOF
  )
}

reference: https://github/hashicorp/terraform-provider-kubernetes/issues/1769#issuecomment-1176795535

发布评论

评论列表(0)

  1. 暂无评论