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

.github/workflows: rebalance pr-kubernetes-tests #10046

Merged
merged 5 commits into from
Sep 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 15 additions & 6 deletions .github/workflows/pr-kubernetes-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,27 +50,36 @@ jobs:
# Our goal is to load balance tests in a way that allows quick iteration on PRs
# If tests are exceeding the 25-minute limit, please see:
# /test/kubernetes/e2e/load_balancing_tests.md
#
# Above each test below, we document the latest date/time for the GitHub action step to run
# NOTE: We use the GitHub action step time (as opposed to the `go test` time), because it is easier to capture

test:
# August 6, 2024: 23 minutes execution time (see load_balancing_tests.md)
# September 16, 2024: 22 minutes
- cluster-name: 'cluster-one'
go-test-args: '-v -timeout=25m'
go-test-run-regex: '^TestGloomtlsGatewayEdgeGateway$$|^TestK8sGateway$$/^RouteDelegation$$|^TestK8sGateway$$/^Services$$|^TestGlooctlGlooGatewayEdgeGateway$$|^TestGlooctlK8sGateway$$|^TestHelm$$'
go-test-run-regex: '^TestK8sGateway$$/^RouteDelegation$$|^TestK8sGateway$$/^Services$$|^TestGlooctlGlooGatewayEdgeGateway$$|^TestGlooctlK8sGateway$$'

# August 6, 2024: 27 minutes execution time (see load_balancing_tests.md)
# September 16, 2024: 16 minutes
- cluster-name: 'cluster-two'
go-test-args: '-v -timeout=25m'
go-test-run-regex: '^TestValidationStrict$$|^TestValidationAlwaysAccept$$|^TestTransformationValidationDisabled$$|^TestK8sGatewayIstioRevision$$|^TestRevisionIstioRegression$$|^TestK8sGateway$$/^Deployer$$|^TestK8sGateway$$/^RouteOptions$$|^TestK8sGateway$$/^VirtualHostOptions$$|^TestK8sGateway$$/^Upstreams$$|^TestK8sGateway$$/^HeadlessSvc$$|^TestK8sGateway$$/^PortRouting$$|^TestK8sGatewayMinimalDefaultGatewayParameters$$'
go-test-run-regex: '^TestK8sGatewayIstioRevision$$|^TestRevisionIstioRegression$$|^TestK8sGateway$$/^Deployer$$|^TestK8sGateway$$/^RouteOptions$$|^TestK8sGateway$$/^VirtualHostOptions$$|^TestK8sGateway$$/^Upstreams$$|^TestK8sGateway$$/^HeadlessSvc$$|^TestK8sGateway$$/^PortRouting$$|^TestK8sGatewayMinimalDefaultGatewayParameters$$'

# August 6, 2024: 26 minutes execution time (see load_balancing_tests.md)
# September 16, 2024: 21 minutes
- cluster-name: 'cluster-three'
go-test-args: '-v -timeout=25m'
go-test-run-regex: '(^TestK8sGatewayIstioAutoMtls$$|^TestAutomtlsIstioEdgeApisGateway$$|^TestIstioEdgeApiGateway$$|^TestIstioRegression$$)'

# August 6, 2024: 24 minutes execution time (see load_balancing_tests.md)
# September 16, 2024: 23 minutes
- cluster-name: 'cluster-four'
go-test-args: '-v -timeout=25m'
go-test-run-regex: '(^TestK8sGatewayIstio$$|^TestGlooGatewayEdgeGateway$$|^TestGlooctlIstioInjectEdgeApiGateway$$|^TestK8sGatewayNoValidation$$)'

# September 16, 2024: 17 minutes
- cluster-name: 'cluster-five'
go-test-args: '-v -timeout=25m'
go-test-run-regex: '^TestValidationStrict$$|^TestValidationAlwaysAccept$$|^TestTransformationValidationDisabled$$|^TestGloomtlsGatewayEdgeGateway$$|^TestHelm$$'

# In our PR tests, we run the suite of tests using the upper ends of versions that we claim to support
# The versions should mirror: https://docs.solo.io/gloo-edge/latest/reference/support/
version-files:
Expand Down
5 changes: 5 additions & 0 deletions changelog/v1.18.0-beta22/rebalance-kube-tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
changelog:
- type: NON_USER_FACING
description: >-
Add cluster-five to the set of KinD clusters that execute our Kubernetes tests. This is to ensure
that our existing 4 clusters do not exceed the 25 minute time limit.
151 changes: 0 additions & 151 deletions test/kubernetes/e2e/load_balances/14-May-2024.md

This file was deleted.

2 changes: 1 addition & 1 deletion test/kubernetes/e2e/load_balancing_tests.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Re-balancing of tests is intentionally a very easy action, though it shouldn't n
- All clusters are exhausted, and we need to introduce a new cluster into the rotation

### Steps to take
1. Review the recent results from CI, and capture them in a document under `test/kubernetes/e2e/load_balances/`
1. Review the recent results from CI, and identify which tests can be migrated
2. Adjust the run functions that are invoked in our [GitHub action matrix](/.github/workflows/pr-kubernetes-tests.yaml)
4. Document the **new** results, on the matrix that runs the tests
4. Open a PR clearly documenting in the PR body the results before and after the change
Expand Down
Loading