linode/terraform-provider-linode

[Bug]: Bad/missing error message when pool.type = "g6-standard-1"

Closed this issue · 3 comments

Terraform Version

Terraform v1.2.7 on linux_amd64

Linode Provider Version

v1.29.2

Effected Terraform Resources

linode_lke_cluster

Terraform Config Files

terraform {
required_version = ">= 0.15"

required_providers {
  linode = {
    source = "linode/linode"
    version = "1.29.2"
  }
}

}

provider "linode" {
token = var.linode_pat_token
}

resource "linode_lke_cluster" "my-cluster" {
label = "my-cluster"
k8s_version = "1.23"
region = "eu-west"
tags = ["dev"]

pool {
    type  = "g6-standard-1"
    count = 2

    autoscaler {
      min = 2
      max = 3
    }
}

Prevent the count field from overriding autoscaler-created nodes

lifecycle {
ignore_changes = [
pool.0.count
]
}
}

Debug Output


│ Error: failed to create LKE Cluster 70228 Pool: [400] [count] Must be 1-100

│ with linode_lke_cluster.my-cluster,
│ on main.tf line 18, in resource "linode_lke_cluster" "my-cluster":
│ 18: resource "linode_lke_cluster" "my-cluster" {

Panic Output

No response

Expected Behavior

I have successfully run terraform apply with pool.type = "g6-standard-2", and when i set type = "g6-nanode-1" i get a helpful error message saying its not sported. But for g6-standard-1 it complains about pool.count not being valid.

Actual Behavior

.

Steps to Reproduce

I just created a linode account so I don't beleve i have configured anything beyond the minimal needed to get this running.

Thanks for the bug report! 🙂

The g6-standard-1 plan type is currently supported for LKE Node Pools. Since the provider seems to be submitting a 0 value for count in this case, it looks like there might be some sort of issue relating to the ignore_changes list.

Could you check if the apply succeeds with the lifecycle block removed?

e.g.

resource "linode_lke_cluster" "my-cluster" {
  label = "my-cluster"
  k8s_version = "1.23"
  region = "eu-west"
  tags = ["dev"]

  pool {
    type  = "g6-standard-1"
    count = 2
    
    autoscaler {
      min = 2
      max = 3
    }
  }
}

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days

This has been solved. The original example now works. Thanks