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

IPv6/dual-stack integration tests #12575

Merged
merged 3 commits into from
May 28, 2024
Merged

Conversation

alpeb
Copy link
Member

@alpeb alpeb commented May 8, 2024

This adds a new test TestDualStack to the deep suite that ensures requests to a dual stack service are always routed the the IPv6 endpoint.

It also amends other tests in the suite for them to work in IPv6-only clusters:

  • skipports: replaced the booksapp with emojivoto, given the servers in the former don't bind to IPv6 addresses
  • endpoints: amended the regexes to include IPv6 addresses
  • localhost: bumped nginx for it to bind to the IPv6 loopback as well

Note the TestDualStack test is disabled by default because Github runners don't support IPv6. To run it locally, first deploy a dual-stack cluster via:

kind create cluster --config test/integration/deep/kind-dualstack.yml

(for testing IPv6-only clusters, use the kind-ipv6.yml config)

Then load the images and trigger the test with:

bin/tests --name deep-dual-stack --skip-cluster-create $PWD/target/cli/linux-amd64/linkerd

@alpeb alpeb requested a review from a team as a code owner May 8, 2024 15:36
@alpeb alpeb marked this pull request as draft May 8, 2024 16:56
@alpeb alpeb force-pushed the alpeb/ipv6-dualstack-integration-test branch 3 times, most recently from 6891f62 to ac452e9 Compare May 15, 2024 14:47
@alpeb alpeb force-pushed the alpeb/ipv6-dualstack-integration-test branch from 0a9c8d9 to b98408d Compare May 24, 2024 21:05
alpeb added 3 commits May 24, 2024 16:06
This adds a new test `TestDualStack` to the deep suite that ensures requests to a dual stack service are always routed the the IPv6 endpoint.

It also amends other tests in the suite for them to work in IPv6-only clusters:

- skipports: replaced the booksapp with emojivoto, given the servers in the former don't bind to IPv6 addresses
- endpoints: amended the regexes to include IPv6 addresses
- localhost: bumped nginx for it to bind to the IPv6 loopback as well

Note the `TestDualStack` test is disabled by default because Github runners don't support IPv6. To run it locally, first deploy a dual-stack cluster via:

```
kind create cluster --config test/integration/deep/kind-dualstack.yml
```
(for testing IPv6-only clusters, use the `kind-ipv6.yml` config)

Then load the images and trigger the test with:

```
bin/tests --name deep-dual-stack --skip-cluster-create $PWD/target/cli/linux-amd64/linkerd
```
@alpeb alpeb marked this pull request as ready for review May 24, 2024 21:31
Copy link
Member

@adleong adleong left a comment

Choose a reason for hiding this comment

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

Do we have a long term plan for how to run these tests against ipv6-only and dual-stack clusters in CI?

@alpeb alpeb merged commit b21686a into main May 28, 2024
40 checks passed
@alpeb alpeb deleted the alpeb/ipv6-dualstack-integration-test branch May 28, 2024 21:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants