Skip to content

add linuxquic implementation and enable it in ci #428

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

lxin
Copy link

@lxin lxin commented Feb 13, 2025

This patchset integrates linuxquic into the quic interop runner and enables it in CI.

  • The 1st patch adds linuxquic testing image into the implementation.
  • The 2nd patch introduces a reusable CI workflow for interop tests, addressing GitHub Actions' 256-job matrix limit, as suggested by Lars Eggert in Add openssl docker image for interop testing #402
  • The 3rd patch enables linuxquic in interop CI tests, leveraging the improved workflow to avoid job limit constraints.

With this patchset, interop tests CI can now run successfully with additional images, as shown in https://github.com/lxin/quic-interop-runner/actions/runs/13320422050

Thanks to Moritz Buhl for initiating the interop tests for linuxquic.

lxin added 3 commits February 12, 2025 20:46
Add linuxquic-interop docker image in implementations.json, and skip
it if kernel module doesn't exists in implementations.py.

Signed-off-by: Xin Long <[email protected]>
This reusable workflow groups interop tests by client, improving
organization.

More importantly, it works around the 256-job limit in the GitHub
Actions' matrix strategy, allowing additional images to be
included in implementations.json.

This approach requires minimal changes to interop.yml, primarily
moving the tests section into interop-tests.yml. The workflow now
matrices over all clients, passing a single client and all servers
to interop-tests.yml per run.

Suggested-by: Lars Eggert <[email protected]>
Signed-off-by: Xin Long <[email protected]>
Install the Linux QUIC module in CI interop tests when either the client
or server is Linux QUIC, ensuring its availability in interop CI.

Note if the kernel already supports QUIC, running make -C modules install
will have no effect on the host.

Signed-off-by: Xin Long <[email protected]>
@larseggert
Copy link
Contributor

@lxin I tried to add linuxquic to the neqo CI (mozilla/neqo#2507) but all tests are failing. What am I doing wrong?

@miyangmia
Copy link

miyangmia commented Mar 18, 2025

@larseggert Oh, I just checked your commit. As linuxquic implement QUIC in kernel, you need to install the QUIC kernel module on the host, as it does in the patch "ci: enable linuxquic in interop tests ".

@lxin
Copy link
Author

lxin commented Mar 18, 2025

@larseggert FYI, The result of the interop test I ran with this patchset on Mar 9th:

Screenshot 2025-03-09 at 13-46-06 QUIC Interop Runner

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.

3 participants