From 4495e896224fb518f5566e972aab7558d38c78b1 Mon Sep 17 00:00:00 2001 From: Dmitry Gozman Date: Mon, 10 Aug 2026 09:59:39 +0100 Subject: [PATCH] devops(docker): run docker tests against net10.0 The .NET 10 SDK images no longer set DOTNET_ROLL_FORWARD=Major (dotnet/dotnet-docker#7255), so net8.0 test binaries cannot run inside the docker image anymore. --- .github/workflows/code-style.yml | 4 +++- .github/workflows/test_docker.yml | 12 ++++++++---- .github/workflows/tests.yml | 4 +++- .github/workflows/tests_harness.yml | 4 +++- .github/workflows/validate-nuget-packages.yml | 4 +++- src/Playwright.Tests/Playwright.Tests.csproj | 2 +- 6 files changed, 21 insertions(+), 9 deletions(-) diff --git a/.github/workflows/code-style.yml b/.github/workflows/code-style.yml index aa1a0e31d..525033707 100644 --- a/.github/workflows/code-style.yml +++ b/.github/workflows/code-style.yml @@ -16,7 +16,9 @@ jobs: - name: Setup .NET Core uses: actions/setup-dotnet@v5 with: - dotnet-version: 8.0.x + dotnet-version: | + 8.0.x + 10.0.x - name: Check formatting run: dotnet format ./src/ --verify-no-changes -v:diag - name: Download driver diff --git a/.github/workflows/test_docker.yml b/.github/workflows/test_docker.yml index 4a20cf589..a590be726 100644 --- a/.github/workflows/test_docker.yml +++ b/.github/workflows/test_docker.yml @@ -31,7 +31,9 @@ jobs: - name: Setup .NET Core uses: actions/setup-dotnet@v5 with: - dotnet-version: 8.0.x + dotnet-version: | + 8.0.x + 10.0.x - name: Install prerequisites and download drivers shell: bash run: ./build.sh --download-driver @@ -42,8 +44,10 @@ jobs: - name: Cleanup run: dotnet clean src/ || true - name: Test + # The docker image no longer set DOTNET_ROLL_FORWARD=Major, so net8.0 test binaries cannot run. + # See https://github.com/dotnet/dotnet-docker/issues/7255 and https://github.com/dotnet/dotnet-docker/pull/7256. run: | CONTAINER_ID="$(docker run --rm -e CI --ipc=host -v $(pwd):/root/playwright --name playwright-docker-test --workdir /root/playwright/ -e CI -d -t playwright-dotnet:localbuild-${{ matrix.flavor }} /bin/bash)" - docker exec -e BROWSER=chromium "${CONTAINER_ID}" xvfb-run dotnet test ./src/Playwright.Tests/Playwright.Tests.csproj -c Debug --logger:"console;verbosity=detailed" - docker exec -e BROWSER=firefox "${CONTAINER_ID}" xvfb-run dotnet test ./src/Playwright.Tests/Playwright.Tests.csproj -c Debug --logger:"console;verbosity=detailed" - docker exec -e BROWSER=webkit "${CONTAINER_ID}" xvfb-run dotnet test ./src/Playwright.Tests/Playwright.Tests.csproj -c Debug --logger:"console;verbosity=detailed" + docker exec -e BROWSER=chromium "${CONTAINER_ID}" xvfb-run dotnet test ./src/Playwright.Tests/Playwright.Tests.csproj -c Debug -f net10.0 --logger:"console;verbosity=detailed" + docker exec -e BROWSER=firefox "${CONTAINER_ID}" xvfb-run dotnet test ./src/Playwright.Tests/Playwright.Tests.csproj -c Debug -f net10.0 --logger:"console;verbosity=detailed" + docker exec -e BROWSER=webkit "${CONTAINER_ID}" xvfb-run dotnet test ./src/Playwright.Tests/Playwright.Tests.csproj -c Debug -f net10.0 --logger:"console;verbosity=detailed" diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index edbbc15b7..a2e48c6ae 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -25,7 +25,9 @@ jobs: - name: Setup .NET Core uses: actions/setup-dotnet@v5 with: - dotnet-version: 8.0.x + dotnet-version: | + 8.0.x + 10.0.x - name: Install prerequisites and download drivers shell: bash run: ./build.sh --download-driver diff --git a/.github/workflows/tests_harness.yml b/.github/workflows/tests_harness.yml index 8dfe0a82b..8e41f318d 100644 --- a/.github/workflows/tests_harness.yml +++ b/.github/workflows/tests_harness.yml @@ -20,7 +20,9 @@ jobs: - name: Setup .NET Core uses: actions/setup-dotnet@v5 with: - dotnet-version: 8.0.x + dotnet-version: | + 8.0.x + 10.0.x - uses: actions/setup-node@v6 with: node-version: 22 diff --git a/.github/workflows/validate-nuget-packages.yml b/.github/workflows/validate-nuget-packages.yml index 5533bf21c..acfe3f47b 100644 --- a/.github/workflows/validate-nuget-packages.yml +++ b/.github/workflows/validate-nuget-packages.yml @@ -16,7 +16,9 @@ jobs: - name: Setup .NET Core uses: actions/setup-dotnet@v5 with: - dotnet-version: 8.0.x + dotnet-version: | + 8.0.x + 10.0.x - name: Download driver run: ./build.sh --download-driver - name: Validate NuGet packages diff --git a/src/Playwright.Tests/Playwright.Tests.csproj b/src/Playwright.Tests/Playwright.Tests.csproj index e07f8ca36..990ec2450 100644 --- a/src/Playwright.Tests/Playwright.Tests.csproj +++ b/src/Playwright.Tests/Playwright.Tests.csproj @@ -1,7 +1,7 @@ - net8.0 + net8.0;net10.0 12 true 0.0.0