Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unnecessary ForceNew On Container Node Pool / Cluster gcfs_config #18417

Open
tgoodsell-tempus opened this issue Jun 12, 2024 · 2 comments
Open

Comments

@tgoodsell-tempus
Copy link

tgoodsell-tempus commented Jun 12, 2024

Community Note

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request.
  • Please do not leave +1 or me too comments, they generate extra noise for issue followers and do not help prioritize the request.
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment.
  • If an issue is assigned to a user, that user is claiming responsibility for the issue.
  • Customers working with a Google Technical Account Manager or Customer Engineer can ask them to reach out internally to expedite investigation and resolution of this issue.

Terraform Version & Provider Version(s)

Terraform v1.5.7
on darwin_arm64

  • provider registry.terraform.io/hashicorp/google v5.33.0
  • provider registry.terraform.io/hashicorp/google-beta v5.33.0

Affected Resource(s)

  • google_container_cluster
  • google_container_node_pool

Terraform Configuration

resource "google_container_node_pool" "main" {

  project     = "project"
  cluster     = "name"
  location    = "location"
  name_prefix = "${var.name}-"

  timeouts {
    update = "60m"
  }

  autoscaling {
    total_min_node_count = 0
    total_max_node_count = var.total_max_node_count
  }

  upgrade_settings {
    max_surge       = min(ceil(var.total_max_node_count / 2), 20)
    max_unavailable = 0
    strategy        = "SURGE"

  }

  node_config {
    disk_size_gb = var.disk_size_gb
    disk_type    = var.disk_type

    gcfs_config {
      enabled = false -> true (or vice versa)
    }
}

Debug Output

No response

Expected Behavior

The documentation for disabling the image streaming / gcfs_config option states that this can be performed in place on a standard cluster or specific node pool.

See: https://cloud.google.com/kubernetes-engine/docs/how-to/image-streaming#disable

This can be confirmed by running their gcloud command manually.

Actual Behavior

The Terraform provider considers this change as requiring the full destroy and re-creation of the resource.

          ~ gcfs_config {
              ~ enabled = true -> false # forces replacement
            }

Steps to reproduce

  1. Create node pool with the gcfs_config set enabled true or false and apply
  2. Change that config and apply

Important Factoids

No response

References

b/347091584

@github-actions github-actions bot added forward/review In review; remove label to forward service/container labels Jun 12, 2024
@tgoodsell-tempus tgoodsell-tempus changed the title Unnecessary ForceNew On gcfs_config Unnecessary ForceNew On Container Node Pool / Cluster gcfs_config Jun 13, 2024
@ggtisc ggtisc self-assigned this Jun 13, 2024
@ggtisc
Copy link
Collaborator

ggtisc commented Jun 13, 2024

This could be an enhancement changing the forces replacement for an update-in-place

@wyardley
Copy link

wyardley commented Sep 4, 2024

Looks like this can be closed now, though I believe updates in-place for some or all cases may not actually work properly until #19225 is resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants