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

Consider offering a way to disable libmsquic testing #110556

Closed
richlander opened this issue Dec 9, 2024 · 10 comments
Closed

Consider offering a way to disable libmsquic testing #110556

richlander opened this issue Dec 9, 2024 · 10 comments

Comments

@richlander
Copy link
Member

I have seen several cases where our tests runs ahead of libmsquic availability. When that happens, we either wait or build the code from source. When we build from source, we pin to a specific version. I don't think either of those cases are desirable.

I think it would much better if we could set an ENV in our container images that had the effect of disabling any tests that relied on libmsquic. Once the MSQuic supported for that OS, we could then install the packages in the image (and remove the ENV).

I'm looking for ways to making managing our infra cheaper. This change would help significantly. I believe that libmsquic is a unique component, not coming from the distro or our team, but somewhere else (at least for our test images).

Related:

@wfurt

@dotnet-policy-service dotnet-policy-service bot added the untriaged New issue has not been triaged by the area owner label Dec 9, 2024
Copy link
Contributor

Tagging subscribers to this area: @dotnet/ncl
See info in area-owners.md if you want to be subscribed.

@liveans
Copy link
Member

liveans commented Dec 9, 2024

from what I know, if we can't detect libmsquic in the system, we're not running those tests already because QuicConnection.IsSupported will return false. Isn't it enough for us to proceed forward with new distros?

@liveans
Copy link
Member

liveans commented Dec 9, 2024

I see, thanks I totally forgot about these. It makes sense to me adding something like this in that case.

@richlander
Copy link
Member Author

Should I remove libmsquic from the Ubuntu 24.10 and Debian 13 prereqs container images, then?

@liveans
Copy link
Member

liveans commented Dec 9, 2024

I think we should get @wfurt or @ManickaP's input here, after than that we can decide about it, but I believe we can still workaround current libmsquic for those container images. I'll also create an issue in msquic repo to get those packages for new distros.

@richlander
Copy link
Member Author

With whatever we do, we should bias to least effort. This is not a request for "perfect".

@wfurt
Copy link
Member

wfurt commented Dec 10, 2024

We do have mechanism to disable tests on given platform and we used it in the past. It is not great but it is sufficient IMHO if that is very rare case. If anything, I feel we should streamline msquic support for new distributions. Involve them immediate when we know instead of fining it last when we try to build new docker image and suck it into testing.

Note that Alpine now has libmsquic as part of OS so moving to new versions should not be problem IMHO.
https://pkgs.alpinelinux.org/packages?name=libmsquic&branch=edge&repo=&arch=x86_64&origin=&flagged=&maintainer=

Ideally, I feel we can encourage more vendors to go that route and for example work with Canonical.

if we want to make it cheaper, I can live with ENV variable as long as we open tracking issue to remove it. We had problems in the past were support for give OS was just silently missed. @ManickaP is out for rest of the year so this will probably need to wait for some time.

@ManickaP
Copy link
Member

Few thoughts on those 2 issues from #110556 (comment):

  • When adding a new docker image, you don't have to install msquic there if it's not straight forward. Just file an issue for us and we'll take care of it including communication with MsQuic team.
  • If you're adding an existing image to our test matrix and the MsQuic platform test fails. Once again, file an issue, disable that test for that platform via ActiveIssue and we'll take care of it. Or if it's too much, ping us and we'll take over the PR and do the disabling and issue filing ourselves.

I think the ENV var is not necessary here. In both cases, we have an existing, functioning process how to handle these scenarios - file an issue, do not attempt to make it work, we'll take care of it.

Lastly, I wanted to say that I'm sorry this is causing you unnecessary pain and I fell you. Feel free to ping me personally or our team next time before you start the endeavor of adding new distro. I or someone from my team can assist you. Unfortunately, this is a specific circumstance where we don't have 100% control over the whole thing and I don't think there's much better way to handle it.

@richlander
Copy link
Member Author

Sounds good. I can give that a try. Thanks for your help.

@richlander richlander closed this as not planned Won't fix, can't repro, duplicate, stale Dec 10, 2024
@dotnet-policy-service dotnet-policy-service bot removed the untriaged New issue has not been triaged by the area owner label Dec 10, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Jan 10, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants