Skip to content

Commit

Permalink
Add support for windows-2025 runner images (#65)
Browse files Browse the repository at this point in the history
  • Loading branch information
Vampire committed Jan 2, 2025
1 parent 10b7b9a commit f55eb3e
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 1 deletion.
1 change: 1 addition & 0 deletions .github/workflows/test.main.kts
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ import kotlin.math.min
val environments = listOf(
"windows-2019",
"windows-2022",
"windows-2025",
"windows-latest"
)

Expand Down
35 changes: 35 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- user-id: 'invalid'
Expand Down Expand Up @@ -127,6 +128,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
wsl-version:
- '-1'
Expand Down Expand Up @@ -167,6 +169,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -372,6 +375,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -936,6 +940,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -1045,6 +1050,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -1190,6 +1196,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -1326,6 +1333,7 @@ jobs:
matrix:
environment:
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -1407,6 +1415,7 @@ jobs:
matrix:
environment:
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
steps:
- id: 'step-0'
Expand Down Expand Up @@ -1457,6 +1466,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -1538,6 +1548,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distributions:
- distribution1:
Expand Down Expand Up @@ -1694,6 +1705,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distribution:
- wsl-id: 'Debian'
Expand Down Expand Up @@ -1760,6 +1772,17 @@ jobs:
user-id: 'Debian'
match-pattern: '*Debian*'
default-absent-tool: 'dos2unix'
- environment: 'windows-2025'
distribution:
wsl-id: 'Debian'
user-id: 'Debian'
match-pattern: '*Debian*'
default-absent-tool: 'dos2unix'
distribution2:
wsl-id: 'Debian'
user-id: 'Debian'
match-pattern: '*Debian*'
default-absent-tool: 'dos2unix'
- environment: 'windows-latest'
distribution:
wsl-id: 'Debian'
Expand Down Expand Up @@ -1794,6 +1817,17 @@ jobs:
user-id: 'Ubuntu-20.04'
match-pattern: '*Ubuntu*20.04*'
default-absent-tool: 'dos2unix'
- environment: 'windows-2025'
distribution:
wsl-id: 'Debian'
user-id: 'Debian'
match-pattern: '*Debian*'
default-absent-tool: 'dos2unix'
distribution2:
wsl-id: 'Ubuntu'
user-id: 'Ubuntu-20.04'
match-pattern: '*Ubuntu*20.04*'
default-absent-tool: 'dos2unix'
- environment: 'windows-latest'
distribution:
wsl-id: 'Debian'
Expand Down Expand Up @@ -1981,6 +2015,7 @@ jobs:
environment:
- 'windows-2019'
- 'windows-2022'
- 'windows-2025'
- 'windows-latest'
distributions:
- incompatibleUbuntu: 'Ubuntu-22.04'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -371,11 +371,20 @@ suspend fun verifyWindowsEnvironment() {
}

suspend fun installDistribution() {
// on windows-2025 WSL is not installed at all currently,
// so install it without distribution if `--install` is available
// work-around for https://github.com/actions/runner-images/issues/11265
retry(5) {
executeWslCommand(
wslArguments = arrayOf("--install", "--no-distribution")
)
}

executeWslCommand(
wslArguments = arrayOf("--set-default-version", "${wslVersion()}")
)
if (wslVersion() != 1u) {
retry(5) {
retry(10) {
executeWslCommand(
wslArguments = arrayOf("--update")
)
Expand Down

0 comments on commit f55eb3e

Please sign in to comment.