Open freimer opened 3 years ago
@freimer Hey! Thanks for reporting. I've heard this before elsewhere, but was unable to reproduce it myself in recent versions of the provider.
So - would you mind sharing me your version of the provider? If it's old, I'd appreciate if you could test out more recent version(s) of it.
My lock file says this:
provider "registry.terraform.io/mumoshu/eksctl" {
version = "0.14.6"
constraints = ">= 0.14.0"
hashes = [
"h1:2WrKJd15klykLVK4/GyYqpxUfAKJpSXynGDadNl1IaA=",
"zh:0fea476b3506a9e4563f22814a797e39a8e78a46861e2e764dd272c644ec672d",
"zh:13721cea2f695e11fd89d767c34756fc4aad2b5f9f97aaa9d4497816da77a674",
"zh:30b4b418a397d68623b42aaa4f57d0664e3129a4ecab96122d693f38642054ad",
"zh:3a66abcc989763a75adf27d07e512f450f12893ad8b0c1d0750b531eb841f671",
"zh:4cec4341a4cf14c7065843881848be814bd2a4afa7c595fe9591e63cbac43559",
"zh:4e974a47fa053bccf1a9de67cb7208e599d00533419c946ee1f8534b5e64f30b",
"zh:db885810e3e39850270cb733231eed5f01145606b1ce7bba1c224b18db1db83a",
"zh:e53460a36678ac8233c551aa15cfa77762dd771b1a4e8b465263c61275a624c2",
"zh:f5d71b9cecd0b1b5d41eb4f810c715124e4b0c548955c82e4ef20731649be0d2",
"zh:f93147408f2506b9dafcb54594eb7a1a9097538ba33620e26908e32593cb073a",
]
}
Same over here.
version:
provider "registry.terraform.io/mumoshu/eksctl" {
version = "0.15.2"
constraints = "0.15.2"
hashes = [
"h1:AwrWTLusDsAAbGq9NXabtKRUxpegdv+YEyx6c5tE+58=",
]
}
Here's the snippet that's failing for me:
resource "eksctl_cluster" "this" {
name = var.cluster_name
region = var.region
version = var.kubernetes_version
api_version = "eksctl.io/v1alpha5"
eksctl_version = "0.41.0"
spec = <<-EOS
vpc:
cidr: "${var.cidr}"
nat:
gateway: Disable
EOS
lifecycle {
ignore_changes = [
kubeconfig_path,
]
}
}
Ended up ignoring kubeconfig_path
due to a similar behavior, but that's simpler since it's meant to be overwritten during CI and whatnot.
i see it too, on terraform 0.15.2 and mumoshu/eksctl 0.16.2
i recall it was present months ago also
In my log too, every time, very confusing, in fact, if you try to set it directly as a resource field, it refused to be set.
Terraform will perform the following actions:
# eksctl_cluster.cluster will be updated in-place
~ resource "eksctl_cluster" "cluster" {
id = "c39njhh6grhs07fppcug"
name = "cluster"
+ security_group_ids = (known after apply)
# (9 unchanged attributes hidden)
# (1 unchanged block hidden)
}
Plan: 0 to add, 1 to change, 0 to destroy.
Same for me, I have a cluster that was created with eksctl
and I used terraform import
. I see updates for kuebconfig_path
and securtiy_group_ids
everytime.
Terraform v0.14.4 mumoshu/eksctl version = "0.16.2"
@mumoshu any idea what could be causing this?
Terraform will perform the following actions:
# eksctl_cluster.eks_cluster will be updated in-place
~ resource "eksctl_cluster" "eks_cluster" {
id = "c4022mo6n88lg0gjavrg"
- kubeconfig_path = "/var/folders/cq/lz76_n1n4wgg_xzzd3c9szb1kygwws/T/tf-eksctl-kubeconfig887298127" -> null
name = "test-cluster"
+ security_group_ids = (known after apply)
# (8 unchanged attributes hidden)
}
Plan: 0 to add, 1 to change, 0 to destroy.
I'm facing the same issue
~ resource "eksctl_cluster" "eks" { id = "ca8dgclvqc7sjc7q02dg" name = "anekam-dev-eks"
security_group_ids = (known after apply) tags = { "Environment" = "dev" }
# (3 unchanged blocks hidden)
}
Solved kubectl_path issue by adding to lifecycle.ignore_changes
A plan (or apply) always seems to show a change, when there is no change. Here's the output:
If I dump the state, security_group_ids is not shown. You can't set the security group IDs either, so I don't know the purpose for this.