promote gke sandbox to ga
Fixes https://github.com/hashicorp/terraform-provider-google/issues/25142
The GKE Sandbox configuration - https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/NodeConfig#sandboxconfig is available in the v1 Kubernetes engine API and hence should be available in the non-beta Terraform provider.
Release Note Template for Downstream PRs (will be copied)
See Write release notes for guidance.
container: promoted `sandbox_config` field in `google_container_cluster` and `google_container_node_pool` resources to GA
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
View this failed invocation of the CLA check for more information.
For the most up to date status, view the checks section at the bottom of the pull request.
Hello! I am a robot. Tests will require approval from a repository maintainer to run.
Googlers: For automatic test runs see go/terraform-auto-test-runs.
@melinath, a repository maintainer, has been assigned to review your changes. If you have not received review feedback within 2 business days, please leave a comment on this PR asking them to take a look.
You can help make sure that review is quick by doing a self-review and by running impacted tests locally.
@melinath This PR has been waiting for review for 3 weekdays. Please take a look! Use the label disable-review-reminders to disable these notifications.
Hi there, I'm the Modular magician. I've detected the following information about your changes:
Diff report
Your PR generated some diffs in downstreams - here they are.
google provider: Diff ( 6 files changed, 308 insertions(+), 4 deletions(-))
google-beta provider: Diff ( 2 files changed, 6 insertions(+), 3 deletions(-))
Non-exercised tests
🔴 Tests were added that are GA-only additions and require manual runs:
- TestAccContainerCluster_withSandboxConfig
- TestAccContainerNodePool_withSandboxConfig
Tests analytics
Total tests: 267 Passed tests: 250 Skipped tests: 11 Affected tests: 6
Click here to see the affected service packages
- container
Action taken
Found 6 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
- TestAccContainerCluster_networkPerformanceConfig
- TestAccContainerCluster_withSandboxConfig
- TestAccContainerCluster_withTPUConfig
- TestAccContainerCluster_withTpu
- TestAccContainerNodePool_secondaryBootDisks
- TestAccContainerNodePool_withSandboxConfig
🔴 Tests failed during RECORDING mode:
TestAccContainerCluster_networkPerformanceConfig [Error message] [Debug log]
TestAccContainerCluster_withSandboxConfig [Error message] [Debug log]
TestAccContainerCluster_withTPUConfig [Error message] [Debug log]
TestAccContainerCluster_withTpu [Error message] [Debug log]
TestAccContainerNodePool_secondaryBootDisks [Error message] [Debug log]
TestAccContainerNodePool_withSandboxConfig [Error message] [Debug log]
🔴 Errors occurred during RECORDING mode. Please fix them to complete your PR.
Thanks for taking a look @melinath, unfortunately I can't view the error messages/debug logs from the test failures (I receive a 403 Forbidden) - are you able to provide these and/or provide some guidance on how to get the tests passing?
Thank you @melinath for the comprehensive review! I'll start working on this and get back to you if I've got any questions
@melinath I've pushed a new commit addressing the feedback.
One thing to note: I didn't find a nice way in the beta provider to make either sandbox_type or type required, as well as ensuring that only one is set. I tried using ConflictsWith and ExactlyOneOf, but due to the NodeConfig schema being reused I can't use these fields (the field paths change depending on whether it's being used in a cluster or a nodepool resource).
@melinath This PR has been waiting for review for 3 weekdays. Please take a look! Use the label disable-review-reminders to disable these notifications.
I didn't find a nice way in the beta provider to make either
sandbox_typeortyperequired, as well as ensuring that only one is set. I tried usingConflictsWithandExactlyOneOf, but due to the NodeConfig schema being reused I can't use these fields (the field paths change depending on whether it's being used in a cluster or a nodepool resource).
👍 Acknowledged; it's okay to not have client-side constraints in that case.
most likely.
most likely.
Apologies @melinath was there a bit more to this comment? Not sure if it got cut off
sorry for the confusion - it's a continuation of the previous message. it's most likely okay to not have client-side constraints in that case.
@melinath Thank you! Will work on those changes
Thank you for the review @melinath - all changes addressed
@melinath This PR has been waiting for review for 3 weekdays. Please take a look! Use the label disable-review-reminders to disable these notifications.
Hi there, I'm the Modular magician. I've detected the following information about your changes:
Diff report
Your PR generated some diffs in downstreams - here they are.
google provider: Diff ( 6 files changed, 307 insertions(+), 5 deletions(-))
google-beta provider: Diff ( 7 files changed, 429 insertions(+), 14 deletions(-))
Missing test report
Your PR includes resource fields which are not covered by any test.
Resource: google_container_cluster (520 total tests)
Please add an acceptance test which includes these fields. The test should include the following:
resource "google_container_cluster" "primary" {
node_pool {
node_config {
sandbox_config {
sandbox_type = # value needed
type = # value needed
}
}
}
}
Missing doc report (experimental)
The following resources have fields missing in documents.
google_container_cluster- Expected Document Path:
/website/docs/r/container_cluster.html.markdown - Fields:
[node_pool.node_config.sandbox_config.type]
- Expected Document Path:
google_container_node_pool- Expected Document Path:
/website/docs/r/container_node_pool.html.markdown - Fields:
[node_config.sandbox_config.type]
- Expected Document Path:
Tests analytics
Total tests: 272 Passed tests: 255 Skipped tests: 11 Affected tests: 6
Click here to see the affected service packages
- container
Action taken
Found 6 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
- TestAccContainerCluster_networkPerformanceConfig
- TestAccContainerCluster_withSandboxConfigType
- TestAccContainerCluster_withTPUConfig
- TestAccContainerCluster_withTpu
- TestAccContainerNodePool_secondaryBootDisks
- TestAccContainerNodePool_withSandboxConfigType
🔴 Tests failed during RECORDING mode:
TestAccContainerCluster_networkPerformanceConfig [Error message] [Debug log]
TestAccContainerCluster_withSandboxConfigType [Error message] [Debug log]
TestAccContainerCluster_withTPUConfig [Error message] [Debug log]
TestAccContainerCluster_withTpu [Error message] [Debug log]
TestAccContainerNodePool_secondaryBootDisks [Error message] [Debug log]
TestAccContainerNodePool_withSandboxConfigType [Error message] [Debug log]
🔴 Errors occurred during RECORDING mode. Please fix them to complete your PR.
Manual GA test run (you won't have access to this): https://hashicorp.teamcity.com/buildConfiguration/TerraformProviders_GoogleCloud_GOOGLE_MMUPSTREAMTESTS_GOOGLE_PACKAGE_CONTAINER/553472