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

ci: add tests for migration to CiliumEndpointSlice #32268

Merged
merged 1 commit into from
Jun 12, 2024

Conversation

jshr-w
Copy link
Contributor

@jshr-w jshr-w commented Apr 30, 2024

This PR adds CI to validate the migration path from CiliumEndpoint to CiliumEndpointSlice, by checking that the migration does not affect connectivity on a migrated cluster.

Please ensure your pull request adheres to the following guidelines:

  • For first time contributors, read Submitting a pull request
  • All code is covered by unit and/or runtime tests where feasible.
  • All commits contain a well written commit description including a title,
    description and a Fixes: #XXX line if the commit addresses a particular
    GitHub issue.
  • If your commit description contains a Fixes: <commit-id> tag, then
    please add the commit author[s] as reviewer[s] to this issue.
  • All commits are signed off. See the section Developer’s Certificate of Origin
  • Provide a title or release-note blurb suitable for the release notes.
  • Are you a user of Cilium? Please add yourself to the Users doc
  • Thanks for contributing!

Fixes: #32057

<!-- Enter the release note text here if needed or remove this section! -->

@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Apr 30, 2024
@github-actions github-actions bot added the kind/community-contribution This was a contribution made by a community member. label Apr 30, 2024
@jshr-w

This comment was marked as outdated.

@jshr-w jshr-w force-pushed the jshr/ceptocesupgrade branch 3 times, most recently from c7a29a6 to 018e95a Compare May 14, 2024 02:17
Copy link
Contributor

@thorn3r thorn3r left a comment

Choose a reason for hiding this comment

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

Overall this looks great, thanks for taking this on! I left a few in-line suggestions. You may also want to add steps for merging the sysdumps together and updating the commit status (I believe this is needed in order to prevent skipped from reporting as failed).
Could you also squash your commits?

.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
@thorn3r
Copy link
Contributor

thorn3r commented May 15, 2024

Just realized I jumped the gun a bit and this is still marked as draft 😅 Feel free to retag me for review when it's ready

@jshr-w
Copy link
Contributor Author

jshr-w commented May 16, 2024

Just realized I jumped the gun a bit and this is still marked as draft 😅 Feel free to retag me for review when it's ready

No problem! Thank you for your feedback, I'll go through them and update accordingly :)

@maintainer-s-little-helper

This comment was marked as resolved.

@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-sign-off The author needs to add signoff to their commits before merge. label May 16, 2024
@maintainer-s-little-helper maintainer-s-little-helper bot removed the dont-merge/needs-sign-off The author needs to add signoff to their commits before merge. label May 16, 2024
@jshr-w
Copy link
Contributor Author

jshr-w commented May 17, 2024

The connectivity test failures for client-egress-l7/pod-to-world/http-to-one.one.one.one, client-egress-l7-named-port/pod-to-world/http-to-one.one.one.one, pod-to-ingress-service/pod-to-ingress-service observed seem to be related to the Cilium Agent restart, rather than migration to CES. -> #32611

@jshr-w jshr-w force-pushed the jshr/ceptocesupgrade branch 4 times, most recently from c79c251 to d92778b Compare May 18, 2024 00:59
@jshr-w jshr-w marked this pull request as ready for review May 20, 2024 16:05
@jshr-w jshr-w requested review from a team as code owners May 20, 2024 16:05
@jshr-w
Copy link
Contributor Author

jshr-w commented May 20, 2024

Hi @thorn3r, I think I'm ready for a re-review! :)

@jshr-w jshr-w requested a review from thorn3r May 20, 2024 16:06
Copy link
Contributor

@thorn3r thorn3r left a comment

Choose a reason for hiding this comment

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

Nice work 😎 I left a couple small suggestions, but other than that it LGTM

.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Show resolved Hide resolved
.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
@thorn3r thorn3r added the release-note/ci This PR makes changes to the CI. label May 25, 2024
@maintainer-s-little-helper maintainer-s-little-helper bot removed the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label May 25, 2024
@jshr-w jshr-w force-pushed the jshr/ceptocesupgrade branch 3 times, most recently from 1365756 to 538b222 Compare May 29, 2024 16:39
@jshr-w jshr-w force-pushed the jshr/ceptocesupgrade branch 3 times, most recently from 5c7340a to b0e0226 Compare June 5, 2024 22:44
@jshr-w
Copy link
Contributor Author

jshr-w commented Jun 5, 2024

Thanks everyone for all the help and feedback :) I think I'm ready for another review now (cc @thorn3r)

Copy link
Contributor

@thorn3r thorn3r left a comment

Choose a reason for hiding this comment

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

LGTM! 🚢

.github/workflows/tests-ces-migrate.yaml Outdated Show resolved Hide resolved
@jshr-w jshr-w force-pushed the jshr/ceptocesupgrade branch 2 times, most recently from 63390c4 to 3ae3c8a Compare June 7, 2024 01:05
This commit adds CI to test that the migration from CiliumEndpoint to
CiliumEndpointSlice does not disturb long-lived connections.

A Kind cluster is set up without CiliumEndpointSlice enabled. Long-lived
connections are set up. Then, CES is enabled, the operator is restarted
and then the agent, after the CES CRD is created. Then, the connectivity
test is run to ensure long-lived connections were not broken.

Signed-off-by: jshr-w <shjayaraman@microsoft.com>
@dylandreimerink
Copy link
Member

/test

@jshr-w
Copy link
Contributor Author

jshr-w commented Jun 11, 2024

@viktor-kurchenko @nbusseneau Hi, I think this PR is blocked on codeowner review from ci-structure, would you be able to help with this please?

Copy link
Contributor

@viktor-kurchenko viktor-kurchenko left a comment

Choose a reason for hiding this comment

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

LGTM, thank you!

@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Jun 12, 2024
@dylandreimerink dylandreimerink added this pull request to the merge queue Jun 12, 2024
Merged via the queue into cilium:main with commit 65e93a2 Jun 12, 2024
66 checks passed
Comment on lines +105 to +110
uses: ./.github/actions/conn-disrupt-test
with:
job-name: ces-enable
operation-cmd: |
kubectl patch -n kube-system configmap cilium-config --type merge --patch '{"data":{"enable-cilium-endpoint-slice":"true"}}'

Copy link
Member

Choose a reason for hiding this comment

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

I believe the usage of conn-disrupt-test needs adjustment for the changes in #32930.

Copy link
Member

Choose a reason for hiding this comment

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

Copy link
Member

Choose a reason for hiding this comment

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

The path filter should also be modified so that these changed are detected immediately.

jshr-w added a commit to jshr-w/cilium that referenced this pull request Jun 13, 2024
       migration test to fail. This PR updates the test to work with the
updated test format. The inconsistency was not caught because of the
path filters used in the test, so the path filters have been updated to
exclude only Documentation/ and test/.

Fixes: cilium#32268

Signed-off-by: jshr-w <shjayaraman@microsoft.com>
jshr-w added a commit to jshr-w/cilium that referenced this pull request Jun 13, 2024
PR cilium#32930 introduced a change to the conn-disrupt test that caused this
migration test to fail. This PR updates the test to work with the
updated test format. The inconsistency was not caught because of the
path filters used in the test, so the path filters have been updated to
exclude only Documentation/ and test/.

Fixes: cilium#32268

Signed-off-by: jshr-w <shjayaraman@microsoft.com>
jshr-w added a commit to jshr-w/cilium that referenced this pull request Jun 13, 2024
PR cilium#32930 introduced a change to the conn-disrupt test that caused this
migration test to fail. This PR updates the test to work with the
updated test format. The inconsistency was not caught because of the
path filters used in the test, so the path filters have been updated to
exclude only Documentation/ and test/.

Fixes: cilium#32268

Signed-off-by: jshr-w <shjayaraman@microsoft.com>
jshr-w added a commit to jshr-w/cilium that referenced this pull request Jun 14, 2024
PR cilium#32930 introduced a change to the conn-disrupt test that caused this
migration test to fail. This PR updates the test to work with the
updated test format. The inconsistency was not caught because of the
path filters used in the test, so the path filters have been updated to
exclude only Documentation/ and test/.

Fixes: cilium#32268

Signed-off-by: jshr-w <shjayaraman@microsoft.com>
github-merge-queue bot pushed a commit that referenced this pull request Jun 15, 2024
PR #32930 introduced a change to the conn-disrupt test that caused this
migration test to fail. This PR updates the test to work with the
updated test format. The inconsistency was not caught because of the
path filters used in the test, so the path filters have been updated to
exclude only Documentation/ and test/.

Fixes: #32268

Signed-off-by: jshr-w <shjayaraman@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/community-contribution This was a contribution made by a community member. 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.

CI coverage for migration path from CiliumEndpoint to CiliumEndpointSlice
9 participants