Files
dependabot[bot] 84e9af3308 chore(deps): bump the actions group across 1 directory with 3 updates (#3362)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-19 08:31:29 -07:00

54 lines
2.2 KiB
YAML

name: Test Docker
on:
push:
paths:
- '.github/workflows/test_docker.yml'
- 'src/Common/Version.props'
- '**/*.csproj'
- '**/*Dockerfile.*'
branches:
- main
- release-*
pull_request:
paths:
- '.github/workflows/test_docker.yml'
- '**/*Dockerfile.*'
branches:
- main
- release-*
workflow_dispatch:
jobs:
build:
timeout-minutes: 90
runs-on: ${{ matrix.runs-on }}
strategy:
fail-fast: false
matrix:
flavor: [noble, resolute]
runs-on: [ubuntu-24.04, ubuntu-24.04-arm]
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Setup .NET Core
uses: actions/setup-dotnet@a98b56852c35b8e3190ac28c8c2271da59106c68 # v6.0.0
with:
dotnet-version: |
8.0.x
10.0.x
- name: Install prerequisites and download drivers
shell: bash
run: ./build.sh --download-driver
- name: Build Docker image
run: |
ARCH="${{ matrix.runs-on == 'ubuntu-24.04-arm' && 'arm64' || 'amd64' }}"
bash utils/docker/build.sh --$ARCH ${{ matrix.flavor }} playwright-dotnet:localbuild-${{ matrix.flavor }}
- 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 -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"