Files
selenium/.github/workflows/ci-python.yml
Titus Fortner 6c8719b1d5 [build] Separate format and lint tasks, add per-language format commands (#17020)
* [build] Separate format and lint tasks, add per-language format commands
2026-01-31 14:26:06 -06:00

71 lines
1.6 KiB
YAML

name: CI - Python
on:
workflow_call:
workflow_dispatch:
permissions:
contents: read
jobs:
build:
name: Build
uses: ./.github/workflows/bazel.yml
with:
name: Build
run: |
bazel build //py:selenium-wheel //py:selenium-sdist
lint:
name: Lint
uses: ./.github/workflows/bazel.yml
with:
name: Lint
run: ./go py:lint
unit-tests:
name: Unit Tests
needs: build
uses: ./.github/workflows/bazel.yml
strategy:
fail-fast: false
matrix:
python-version: ['3.10', '3.14']
os: [ubuntu, macos, windows]
with:
name: Unit Tests (${{ matrix.python-version }}, ${{ matrix.os }})
os: ${{ matrix.os }}
python-version: ${{ matrix.python-version }}
run: bazel test --local_test_jobs 1 //py:unit
remote-tests:
name: Remote Tests
needs: build
uses: ./.github/workflows/bazel.yml
with:
name: Integration Tests Remote
browser: yes
rerun-with-debug: true
run: |
bazel test --local_test_jobs 1 --flaky_test_attempts 3 //py:test-remote
browser-tests:
name: Browser Tests
needs: build
uses: ./.github/workflows/bazel.yml
strategy:
fail-fast: false
matrix:
browser: [chrome, firefox, chrome-bidi, edge]
os: [windows]
include:
- browser: safari
os: macos
with:
name: Integration Tests (${{ matrix.browser }})
browser: ${{ matrix.browser }}
os: ${{ matrix.os }}
rerun-with-debug: true
run: |
bazel test --local_test_jobs 1 --flaky_test_attempts 3 //py:test-${{ matrix.browser }}