Skip to content

ci: add step-level timeouts to functional_test workflow#23102

Open
tanikush wants to merge 1 commit into
kubernetes:masterfrom
tanikush:add-workflow-timeouts-functional-test
Open

ci: add step-level timeouts to functional_test workflow#23102
tanikush wants to merge 1 commit into
kubernetes:masterfrom
tanikush:add-workflow-timeouts-functional-test

Conversation

@tanikush

@tanikush tanikush commented Jun 4, 2026

Copy link
Copy Markdown

Added step-level timeouts to functional_test.yml to prevent CI runs
from getting stuck for hours (e.g. the 6-hour apt-get hang).

Timeouts are based on stats from 241 runs (last 30 days) using the recommended timeout from workflow-stats tool (p95*3):

Step N Min Avg P50 P90 P95 Max Timeout
Run Functional Test 1387 2m47s 4m13s 4m07s 5m23s 5m48s 10m43s 18m00s
Build minikube and e2e test binaries 296 1m07s 1m40s 1m38s 2m08s 2m11s 2m21s 7m00s
Set up Rootless Docker (rootless) 133 42s 48s 47s 54s 56s 1m26s 3m00s
Run actions/setup-go@4a36011 1683 7s 20s 21s 26s 29s 1m01s 2m00s
Update apt-get package index (ubuntu) 704 5s 11s 10s 19s 23s 48s 2m00s
Upload Test Binaries 296 8s 10s 10s 13s 13s 14s 1m00s
Run actions/checkout@df4cb1c 24 3s 9s 4s 24s 46s 1m08s 3m00s
Install podman 139 5s 8s 8s 11s 12s 23s 1m00s
Install containerd (baremetal only) 283 5s 7s 7s 9s 10s 25s 1m00s
Install conntrack & socat (baremetal only) 565 3s 6s 6s 11s 15s 24s 1m00s
Download Test Binaries 1387 2s 4s 4s 8s 9s 40s 1m00s
Run actions/checkout@de0fac2 1659 2s 3s 3s 4s 5s 1m06s 1m00s
Install docker-cli 1387 0s 3s 3s 8s 11s 23s 1m00s
Download Dependencies 296 0s 3s 2s 10s 12s 28s 1m00s
Install socat (baremetal only) 565 2s 3s 3s 5s 6s 10s 1m00s
Set up job 1683 0s 2s 2s 3s 4s 9s 1m00s
Run medyagh/info-block@f5c0426 1387 1s 1s 2s 2s 3s 7s 1m00s
Generate Gopogh HTML Report 1387 0s 1s 2s 2s 2s 3s 1m00s
Install container networking plugins (baremetal only) 565 0s 1s 1s 2s 2s 3s 1m00s
Install cri_dockerd (baremetal only) 282 0s 0s 1s 1s 2s 2s 1m00s
Install kubectl 1387 0s 0s 1s 1s 1s 2m50s 1m00s
Install gopogh 1387 0s 0s 1s 1s 1s 2s 1m00s
Install crictl (baremetal only) 565 0s 0s 1s 1s 1s 2s 1m00s
Convert Test Output to JSON 1387 0s 0s 0s 1s 1s 5s 1m00s
Post Run actions/setup-go@4a36011 1683 0s 0s 0s 1s 1s 15s 1m00s
Set up cgroup v2 delegation (rootless) 133 0s 0s 0s 1s 1s 1s 1m00s
Post Run actions/checkout@de0fac2 1659 0s 0s 0s 1s 1s 1s 1m00s
Post Run actions/checkout@df4cb1c 24 0s 0s 0s 1s 1s 1s 1m00s
Disable AppArmor for MySQL 1387 0s 0s 0s 0s 1s 1s 1m00s
Complete job 1683 0s 0s 0s 0s 0s 1s 1m00s

Part of #23041

@k8s-ci-robot k8s-ci-robot requested review from nirs and prezha June 4, 2026 16:21
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

Welcome @tanikush!

It looks like this is your first PR to kubernetes/minikube 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes/minikube has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. 😃

@k8s-ci-robot k8s-ci-robot added needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Jun 4, 2026
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

Hi @tanikush. Thanks for your PR.

I'm waiting for a kubernetes 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.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Jun 4, 2026
@minikube-bot

Copy link
Copy Markdown
Collaborator

Can one of the admins verify this patch?

@nirs

This comment was marked as outdated.

@nirs nirs left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tanikush thanks for the PR! see comments on how to complete it.

The main issue is missing timeouts - all steps must have a timeout.

Comment thread .github/workflows/functional_test.yml
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml Outdated
@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Jun 12, 2026
@tanikush tanikush requested a review from nirs June 12, 2026 17:41

@nirs nirs left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tanikush Thanks for the update.

To complete this:

  • Revert the needed comment changes. Anything which is not required to add step timeouts should not be in this PR.
  • Squash the commits to single commit - this is one logical change, no need for multiple commits.
  • Add a comment for disabling -test.timeout.

Comment thread .github/workflows/functional_test.yml
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml Outdated
Comment thread .github/workflows/functional_test.yml
@tanikush tanikush force-pushed the add-workflow-timeouts-functional-test branch from b1aa775 to f9908a9 Compare June 13, 2026 04:09
Comment thread .github/workflows/functional_test.yml
@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 13, 2026
@tanikush tanikush force-pushed the add-workflow-timeouts-functional-test branch from f9908a9 to cafa784 Compare June 13, 2026 16:12
@nirs

nirs commented Jun 13, 2026

Copy link
Copy Markdown
Collaborator

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jun 13, 2026
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: nirs, tanikush

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

The pull request process is described 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

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 13, 2026
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

PR needs rebase.

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.

@k8s-ci-robot

Copy link
Copy Markdown
Contributor

@tanikush: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-minikube-docker-crio-linux-x86 cafa784 link false /test pull-minikube-docker-crio-linux-x86
pull-minikube-docker-docker-linux-x86 cafa784 link true /test pull-minikube-docker-docker-linux-x86
pull-minikube-kvm-crio-linux-x86 cafa784 link false /test pull-minikube-kvm-crio-linux-x86
pull-minikube-kvm-docker-linux-x86 cafa784 link true /test pull-minikube-kvm-docker-linux-x86

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

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. I understand the commands that are listed here.

@nirs

nirs commented Jun 13, 2026

Copy link
Copy Markdown
Collaborator

@tanikush please rebase on master to fix the conflict.

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

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants