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

[v1.14] GHA: Add clustermesh upgrade and downgrade tests #28355

Merged
merged 2 commits into from
Oct 5, 2023

Conversation

giorio94
Copy link
Member

@giorio94 giorio94 commented Oct 2, 2023

This PR introduces a new GitHub actions workflow which validates the Cilium upgrade and downgrade paths when clustermesh is enabled, ensuring that one minor version skew is correctly supported.

More specifically, the test initially deploys a mixed version cluster mesh, with one cluster running Cilium from the tip of the previous stable branch, and the other the tip of the current stable branch. At this point, the first cluster is upgraded to the tip of the current stable branch, enabling kvstoremesh at the same time. Finally, the cluster is downgraded again to the tip of the previous stable branch, disabling kvstoremesh.

We do not enable the connectivity disruption checks in this workflow, because Cilium versions older than 1.14 are currently affected by known issues causing possible brief connectivity distruption of cross-cluster traffic when the agents get restarted.

To reduce the total amount of time required by this workflow, only a limited subset of tests is enabled, while the full suite is run in the conformance-clustermesh workflow.

This is a stripped-down version of #27232, without the connectivity disruption checks.

Backport the script to retrieve the previous Cilium version, originally
introduced in d51a932 ("Clean up tests-ipsec-upgrade workflow").

Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
@giorio94 giorio94 added area/CI Continuous Integration testing issue or flake area/clustermesh Relates to multi-cluster routing functionality in Cilium. release-note/ci This PR makes changes to the CI. labels Oct 2, 2023
@maintainer-s-little-helper maintainer-s-little-helper bot added backport/1.14 This PR represents a backport for Cilium 1.14.x of a PR that was merged to main. kind/backports This PR provides functionality previously merged into master. labels Oct 2, 2023
@giorio94 giorio94 force-pushed the pr/giorio94/v1.14/gha-clustermesh-upgrade branch 5 times, most recently from 603040e to cc7bc5c Compare October 2, 2023 14:40
This commit introduces a new GitHub actions workflow which validates the
Cilium upgrade and downgrade paths when clustermesh is enabled, ensuring
that one minor version skew is correctly supported.

More specifically, the test initially deploys a mixed version cluster
mesh, with one cluster running Cilium from the tip of the previous stable
branch, and the other the tip of the current stable branch. At this point,
the first cluster is upgraded to the tip of the current stable branch,
enabling kvstoremesh at the same time. Finally, the cluster is downgraded
again to the tip of the previous stable branch, disabling kvstoremesh.

We do not enable the connectivity disruption checks in this workflow,
because Cilium versions older than 1.14 are currently affected by known
issues causing possible brief connectivity distruption of cross-cluster
traffic when the agents get restarted.

To reduce the total amount of time required by this workflow, only a
limited subset of tests is enabled, while the full suite is run in
the conformance-clustermesh workflow.

Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
@giorio94 giorio94 force-pushed the pr/giorio94/v1.14/gha-clustermesh-upgrade branch from cc7bc5c to 9f4efed Compare October 2, 2023 14:46
@giorio94
Copy link
Member Author

giorio94 commented Oct 2, 2023

/ci-clustermesh

@giorio94 giorio94 force-pushed the pr/giorio94/v1.14/gha-clustermesh-upgrade branch from 9f4efed to 957e0b3 Compare October 4, 2023 08:17
@giorio94
Copy link
Member Author

giorio94 commented Oct 4, 2023

/ci-clustermesh

@giorio94 giorio94 marked this pull request as ready for review October 4, 2023 16:44
@giorio94 giorio94 requested review from a team as code owners October 4, 2023 16:44
@giorio94 giorio94 requested a review from brlbil October 4, 2023 16:44
Copy link
Contributor

@ti-mo ti-mo left a comment

Choose a reason for hiding this comment

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

Rubber-stamping for Top Hat.

@giorio94
Copy link
Member Author

giorio94 commented Oct 5, 2023

Reviews are in, marking as ready to merge, given that it touches only GHA workflows.

@giorio94 giorio94 added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Oct 5, 2023
@ti-mo ti-mo merged commit 0e5bc15 into v1.14 Oct 5, 2023
58 checks passed
@ti-mo ti-mo deleted the pr/giorio94/v1.14/gha-clustermesh-upgrade branch October 5, 2023 15:28
@giorio94
Copy link
Member Author

giorio94 commented Oct 9, 2023

The workflow seems pretty stable, let's mark it for backport to earlier branches.

@giorio94 giorio94 added needs-backport/1.12 needs-backport/1.13 This PR / issue needs backporting to the v1.13 branch labels Oct 9, 2023
@joamaki joamaki mentioned this pull request Oct 11, 2023
3 tasks
@joamaki joamaki added backport-pending/1.13 The backport for Cilium 1.13.x for this PR is in progress. and removed needs-backport/1.13 This PR / issue needs backporting to the v1.13 branch labels Oct 11, 2023
@joamaki joamaki mentioned this pull request Oct 12, 2023
2 tasks
@github-actions github-actions bot added backport-done/1.12 The backport for Cilium 1.12.x for this PR is done. backport-done/1.13 The backport for Cilium 1.13.x for this PR is done. and removed backport-pending/1.12 backport-pending/1.13 The backport for Cilium 1.13.x for this PR is in progress. labels Oct 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/CI Continuous Integration testing issue or flake area/clustermesh Relates to multi-cluster routing functionality in Cilium. backport/1.14 This PR represents a backport for Cilium 1.14.x of a PR that was merged to main. backport-done/1.12 The backport for Cilium 1.12.x for this PR is done. backport-done/1.13 The backport for Cilium 1.13.x for this PR is done. kind/backports This PR provides functionality previously merged into master. ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/ci This PR makes changes to the CI.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants