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

Suddenly half supported WSL 2 breaks workflows #5760

Closed
2 of 10 tasks
Vampire opened this issue Jun 16, 2022 · 10 comments
Closed
2 of 10 tasks

Suddenly half supported WSL 2 breaks workflows #5760

Vampire opened this issue Jun 16, 2022 · 10 comments
Assignees
Labels
awaiting-deployment Code complete; awaiting deployment and/or deployment in progress bug report investigate Collect additional information, like space on disk, other tool incompatibilities etc. OS: Windows

Comments

@Vampire
Copy link

Vampire commented Jun 16, 2022

Description

I have a daily running CI for all sorts of combinations for my https://github.com/Vampire/setup-wsl action. These tests started to fail today after you deployed the latest windows-2022 image yesterday and today my users started to complain too.

While the documentation of the windows-2022 build states that still just WSL 1 is supported, it seems suddenly this changed to having halfway WSL 2 support, but without the necessary kernel installed.

This breaks workflows out there as the Linux distributions fail to install now.

Was this an intended, just not documented change and I need to compensate in my action?
Was this an unintended change you are going to revert / fix?
Was this a half-way change and you improve on it for example by installing the missing kernel by default?
...?

Platforms affected

  • Azure DevOps
  • GitHub Actions

Virtual environments affected

  • Ubuntu 18.04
  • Ubuntu 20.04
  • Ubuntu 22.04
  • macOS 10.15
  • macOS 11
  • macOS 12
  • Windows Server 2019
  • Windows Server 2022

Image version and build link

Image version: 20220614.0
Build: https://github.com/Vampire/setup-wsl/actions/runs/2505987309

Is it regression?

yes, latest working version: 20220607.3, latest working build: https://github.com/Vampire/setup-wsl/actions/runs/2499049305

Expected behavior

Does not suddenly break

Actual behavior

Suddenly breaks

Repro steps

    runs-on: windows-2022
    ...
    steps  
      - name: Setup WSL for tarantool
        uses: Vampire/setup-wsl@v1
        with:
          distribution: Ubuntu-20.04
@al-cheb al-cheb self-assigned this Jun 16, 2022
@al-cheb al-cheb added OS: Windows investigate Collect additional information, like space on disk, other tool incompatibilities etc. and removed needs triage labels Jun 16, 2022
@al-cheb
Copy link
Contributor

al-cheb commented Jun 16, 2022

Hey @Vampire,
We will take a look at it.

@al-cheb
Copy link
Contributor

al-cheb commented Jun 16, 2022

@Vampire, it was definitely not intended, but looks like it's part of the new updates now - https://techcommunity.microsoft.com/t5/itops-talk-blog/wsl2-now-available-on-windows-server-2022/ba-p/3447570

Second, if you wait until June, you will get the update that is required for WSL2 to run properly on a Windows Server 2022, through the regular update process.

@panekj
Copy link
Contributor

panekj commented Jun 16, 2022

@Vampire
Copy link
Author

Vampire commented Jun 16, 2022

Also don't get me wrong, it is great if WSL 2 is going to be supported now. Just maybe not in a breaking fashion. And maybe we with the needed kernel installed already. And if not, I at least know I should mitigate it in my action.

@al-cheb
Copy link
Contributor

al-cheb commented Jun 16, 2022

Also don't get me wrong, it is great if WSL 2 is going to be supported now. Just maybe not in a breaking fashion. And maybe we with the needed kernel installed already. And if not, I at least know I should mitigate it in my action.

Unfortunately it doesn't help due to Azure vm spec limitation we use, at that moment it is DSv2-series without supporting nested Hyper-V virtualization.

@al-cheb
Copy link
Contributor

al-cheb commented Jun 16, 2022

Temporary workaround is to set the default wsl version to 1:

      - run: wsl --set-default-version 1
      - name: Setup WSL for tarantool
        uses: Vampire/setup-wsl@v1
        with:
          distribution: Ubuntu-20.04

image

@Vampire
Copy link
Author

Vampire commented Jun 16, 2022

Thank you very much for taking care that fast. :-)
So did I get you correctly @al-cheb, that WSLv2 could not be used even if I would install the Kernel package?
I'll add to my action to force the WSLv1 version then as suggested and not provide a WSLv2 version as I hoped I could now.
Will this change and WSLv2 be supported at some point?

@al-cheb
Copy link
Contributor

al-cheb commented Jun 16, 2022

Thank you very much for taking care that fast. :-) So did I get you correctly @al-cheb, that WSLv2 could not be used even if I would install the Kernel package? I'll add to my action to force the WSLv1 version then as suggested and not provide a WSLv2 version as I hoped I could now. Will this change and WSLv2 be supported at some point?

that WSLv2 could not be used even if I would install the Kernel package? - that's right, because if you look at https://techcommunity.microsoft.com/t5/itops-talk-blog/wsl2-now-available-on-windows-server-2022/ba-p/3447570

image

You could easily reproduce the same behavior from your side using Azure Standard_DS2_v2, this spec we use for GH runners, vm with Windows Server 2022.

image

Will this change and WSLv2 be supported at some point? - Per discussion with a team, unfortunately, there are no any plans to add WSLv2 support in the near feature.

PS. @Vampire, I think it is a good chance to update your task to support WSLv2 for the Windows Server 2022 self-hosted agents 😎

@Vampire
Copy link
Author

Vampire commented Jun 16, 2022

PS. @Vampire, I think it is a good chance to update your task to support WSLv2 for the Windows Server 2022 self-hosted agents 😎

Well, for now I just also added setting the default version to v1 to my action to fix the workflows out there.
I would need someone providing a self-hosted agent with WSLv2 available properly to implement and test that.
I'm not going to implement this blindly, especially as long as noone with a self-hosted agent that would be capable needs it. :-)

@al-cheb al-cheb added the awaiting-deployment Code complete; awaiting deployment and/or deployment in progress label Jun 17, 2022
@al-cheb
Copy link
Contributor

al-cheb commented Jun 23, 2022

The WSLv1 is set by default.

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting-deployment Code complete; awaiting deployment and/or deployment in progress bug report investigate Collect additional information, like space on disk, other tool incompatibilities etc. OS: Windows
Projects
None yet
Development

No branches or pull requests

3 participants