Skip to content

Add support for user-triggered rollouts#17756

Draft
MikolajLuczko wants to merge 4 commits into
GoogleCloudPlatform:mainfrom
MikolajLuczko:add-user-triggered-rollouts-support
Draft

Add support for user-triggered rollouts#17756
MikolajLuczko wants to merge 4 commits into
GoogleCloudPlatform:mainfrom
MikolajLuczko:add-user-triggered-rollouts-support

Conversation

@MikolajLuczko
Copy link
Copy Markdown
Contributor

@MikolajLuczko MikolajLuczko commented May 28, 2026

Fixes hashicorp/terraform-provider-google#27578.

This PR introduces the following changes:

  1. Adds min_control_plane_version and min_node_version optional virtual fields, which allow the user to specify a GKE version for which a rollout should be created.
  2. Adds target_control_plane_version and target_node_version output fields, which store information about the current target versions of the RolloutSequence, and allow us to make a decision on whether a rollout should be created in response to the user setting / updating the min_control_plane_version and min_node_version fields (the rollout will be created only if the version specified by the user is strictly higher than the corresponding target version stored in the RolloutSequence).
  3. Adds an operational_state output field, which stores information about the current state of the RolloutSequence (INITIALIZING, WARNING, ERROR).
  4. Adds custom post_create and post_update hooks, which execute code if the user has set or updated either of the (min_control_plane_version, min_node_version) fields and call the UpgradeRolloutSequence endpoint to create a new rollout if necessary.
  5. Adds a post_create_failure hook, so that a RolloutSequence which encountered an error during its creation is immediately deleted instead of marked as "tainted" by Terraform.
  6. Migrates existing acceptance tests from hand-written to the new "samples" block.

Release Note Template for Downstream PRs (will be copied)

See Write release notes for guidance.

gkehub: added `min_control_plane_version`, `min_node_version`, `target_control_plane_version`, `target_node_version` and `operational_state` fields to `google_gke_hub_rollout_sequence` resource (beta)

@modular-magician modular-magician added the awaiting-approval Pull requests that need reviewer's approval to run presubmit tests label May 28, 2026
@MikolajLuczko MikolajLuczko force-pushed the add-user-triggered-rollouts-support branch from 4a00b72 to f57c9d0 Compare May 28, 2026 10:49
@modular-magician modular-magician added service/gkehub and removed awaiting-approval Pull requests that need reviewer's approval to run presubmit tests labels May 28, 2026
@modular-magician
Copy link
Copy Markdown
Collaborator

modular-magician commented May 28, 2026

Hi there, I'm the Modular magician. I've detected the following information about your changes for commit f57c9d0:

Diff report

Your PR generated the following diffs in downstream repositories:

Repository Diff Link Changes
google provider View Diff 2 files changed, 186 insertions(+), 2 deletions(-)
google-beta provider View Diff 5 files changed, 797 insertions(+), 129 deletions(-)
terraform-google-conversion View Diff 1 file changed, 198 insertions(+)

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_gke_hub_rollout_sequence (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_gke_hub_rollout_sequence" "primary" {
  min_control_plane_version = # value needed
  min_node_version          = # value needed
}

Missing doc report (experimental)

The following resources have fields missing in documents.

  • google_gke_hub_rollout_sequence
    • Expected Document Path: /website/docs/r/gke_hub_rollout_sequence.html.markdown
    • Fields: [min_control_plane_version min_node_version]

Test report

Analytics

Total Tests Passed Skipped Affected
29 23 5 1
Affected Service Packages
  • gkehub2

Learn how VCR tests work


Step 1: Replaying Mode

Action taken

Found 1 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit.

Click here to see the affected tests
  • TestAccGKEHub2RolloutSequence_gkeHubRolloutSequenceExample

View the replaying VCR build log


Step 2: Recording Mode

Recording Mode Replaying Rerun Test Name
✅ Log TestAccGKEHub2RolloutSequence_gkeHubRolloutSequenceExample

🟢 All tests passed!

View the recording VCR build log or the debug logs folder for detailed results.

@MikolajLuczko VCR tests complete for f57c9d0!

@modular-magician
Copy link
Copy Markdown
Collaborator

modular-magician commented May 28, 2026

Hi there, I'm the Modular magician. I've detected the following information about your changes for commit 565bd7c:

Diff report

Your PR generated the following diffs in downstream repositories:

Repository Diff Link Changes
google provider View Diff 2 files changed, 57 insertions(+), 1 deletion(-)
google-beta provider View Diff 5 files changed, 796 insertions(+), 128 deletions(-)
terraform-google-conversion View Diff 1 file changed, 198 insertions(+)

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_gke_hub_rollout_sequence (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_gke_hub_rollout_sequence" "primary" {
  min_control_plane_version = # value needed
  min_node_version          = # value needed
}

Missing doc report (experimental)

The following resources have fields missing in documents.

  • google_gke_hub_rollout_sequence
    • Expected Document Path: /website/docs/r/gke_hub_rollout_sequence.html.markdown
    • Fields: [min_control_plane_version min_node_version]

Test report

Analytics

Total Tests Passed Skipped Affected
29 24 5 0
Affected Service Packages
  • gkehub2

Learn how VCR tests work


Step 1: Replaying Mode

🟢 All tests passed in Replaying mode! No Recording was needed.

View the replaying VCR build log

@MikolajLuczko VCR tests complete for 565bd7c!

@MikolajLuczko MikolajLuczko force-pushed the add-user-triggered-rollouts-support branch from 248eceb to 091c20c Compare May 28, 2026 14:15
@modular-magician
Copy link
Copy Markdown
Collaborator

modular-magician commented May 28, 2026

Hi there, I'm the Modular magician. I've detected the following information about your changes for commit 091c20c:

Diff report

Your PR generated the following diffs in downstream repositories:

Repository Diff Link Changes
google provider View Diff 2 files changed, 57 insertions(+), 1 deletion(-)
google-beta provider View Diff 5 files changed, 796 insertions(+), 128 deletions(-)
terraform-google-conversion View Diff 1 file changed, 148 insertions(+)

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_gke_hub_rollout_sequence (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_gke_hub_rollout_sequence" "primary" {
  min_control_plane_version = # value needed
  min_node_version          = # value needed
}

Missing doc report (experimental)

The following resources have fields missing in documents.

  • google_gke_hub_rollout_sequence
    • Expected Document Path: /website/docs/r/gke_hub_rollout_sequence.html.markdown
    • Fields: [min_control_plane_version min_node_version]

Test report

Analytics

Total Tests Passed Skipped Affected
29 24 5 0
Affected Service Packages
  • gkehub2

Learn how VCR tests work


Step 1: Replaying Mode

🟢 All tests passed in Replaying mode! No Recording was needed.

View the replaying VCR build log

@MikolajLuczko VCR tests complete for 091c20c!

@modular-magician
Copy link
Copy Markdown
Collaborator

modular-magician commented May 28, 2026

Hi there, I'm the Modular magician. I've detected the following information about your changes for commit 8bb32ab:

Diff report

Your PR generated the following diffs in downstream repositories:

Repository Diff Link Changes
google provider View Diff 2 files changed, 57 insertions(+), 1 deletion(-)
google-beta provider View Diff 5 files changed, 796 insertions(+), 128 deletions(-)
terraform-google-conversion View Diff 1 file changed, 148 insertions(+)

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_gke_hub_rollout_sequence (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_gke_hub_rollout_sequence" "primary" {
  min_control_plane_version = # value needed
  min_node_version          = # value needed
}

Test report

Analytics

Total Tests Passed Skipped Affected
29 24 5 0
Affected Service Packages
  • gkehub2

Learn how VCR tests work


Step 1: Replaying Mode

🟢 All tests passed in Replaying mode! No Recording was needed.

View the replaying VCR build log

@MikolajLuczko VCR tests complete for 8bb32ab!

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for user-triggered rollouts to RolloutSequence resource.

2 participants