Skip to content

Increase GCP network infrastructure timeout to 30 minutes - #10729

Open
TheCodeSummoner wants to merge 1 commit into
openshift:mainfrom
TheCodeSummoner:kflorianski/fix-gcp-infra-timeout
Open

Increase GCP network infrastructure timeout to 30 minutes#10729
TheCodeSummoner wants to merge 1 commit into
openshift:mainfrom
TheCodeSummoner:kflorianski/fix-gcp-infra-timeout

Conversation

@TheCodeSummoner

@TheCodeSummoner TheCodeSummoner commented Jul 29, 2026

Copy link
Copy Markdown

Overview

GCP CAPI network infrastructure provisioning intermittently hangs on backendServices.insert, exhausting the default 15 minute timeout and failing the install with "infrastructure was not ready within 15m0s".

IBM Cloud and PowerVS already override this to 30 minutes for similar reasons; my proposed approach is to do the same for GCP. ProvisionTimeout is set explicitly to the default 15 minutes since only network provisioning is affected.

Testing

  • Added TestProviderTimeouts unit test asserting the returned values.
  • go build, go vet, and gofmt pass on the changed package.

Summary by CodeRabbit

  • New Features
    • Added defined timeout settings for network operations and resource provisioning.
    • Network operations now allow up to 30 minutes.
    • Provisioning operations now allow up to 15 minutes.

…itly set the provision timeout to 15 minutes.
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 3ed4cb93-6208-4b7d-b445-2cc85a0fe2ac

📥 Commits

Reviewing files that changed from the base of the PR and between 22ddf07 and 62b16a1.

📒 Files selected for processing (2)
  • pkg/infrastructure/gcp/clusterapi/clusterapi.go
  • pkg/infrastructure/gcp/clusterapi/clusterapi_test.go

📝 Walkthrough

Walkthrough

Changes

Cluster API timeouts

Layer / File(s) Summary
Timeout contract and validation
pkg/infrastructure/gcp/clusterapi/clusterapi.go, pkg/infrastructure/gcp/clusterapi/clusterapi_test.go
Provider implements clusterapi.Timeouts, returning 30 minutes for network operations and 15 minutes for provisioning; unit tests verify both values.

Estimated code review effort: 2 (Simple) | ~5 minutes

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: increasing the GCP network timeout to 30 minutes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The new test uses a static Go test name; no Ginkgo titles or dynamic values are introduced in the changed files.
Test Structure And Quality ✅ Passed This is a small stdlib unit test, not Ginkgo; it has one focused behavior, no resource setup, and no waits/timeouts to review.
Microshift Test Compatibility ✅ Passed Only a unit test was added; the touched files contain no Ginkgo e2e tests or MicroShift-unsupported OpenShift API usage.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo e2e tests were added; the PR only changes a provider timeout method and a unit test.
Topology-Aware Scheduling Compatibility ✅ Passed Only GCP timeout methods and a unit test changed; no manifests, controllers, or scheduling constraints were added.
Ote Binary Stdout Contract ✅ Passed The PR only adds timeout methods and a plain unit test; no main/init/TestMain/suite setup stdout writes were introduced.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No new Ginkgo e2e tests were added; the only test is a unit test and contains no IPv4 or external connectivity assumptions.
No-Weak-Crypto ✅ Passed The PR only adds timeout methods and a unit test; no weak crypto, custom crypto, or secret comparisons appear in the changed files.
Container-Privileges ✅ Passed Changes only add timeout methods/tests in Go; no manifests or privilege flags (privileged, hostNetwork, allowPrivilegeEscalation, SYS_ADMIN) were added.
No-Sensitive-Data-In-Logs ✅ Passed PR only adds timeout methods and a unit test; no new logging statements or sensitive values are introduced in the changed files.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 golangci-lint (2.12.2)

Error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions
The command is terminated due to an error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Warning

⚠️ This pull request shows signs of AI-generated slop (trivial_assertion). It has been flagged by CodeRabbit slop detection and should be reviewed carefully.

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Jul 29, 2026
@openshift-ci

openshift-ci Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Hi @TheCodeSummoner. Thanks for your PR.

I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci
openshift-ci Bot requested review from barbacbd and patrickdillon July 29, 2026 11:12
@openshift-ci

openshift-ci Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign patrickdillon for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@patrickdillon

Copy link
Copy Markdown
Contributor

GCP CAPI network infrastructure provisioning intermittently hangs on backendServices.insert, exhausting the default 15 minute timeout and failing the install with "infrastructure was not ready within 15m0s".

Increasing the timeout does not seem like a fix for this problem, instead we need to fix the backendServices.insert problem in CAPG. If you can post logs with the errors it would be helpful.

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

Labels

needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants