Files
2026-07-13 13:05:14 +08:00

63 lines
1.4 KiB
YAML

name: Reusable Web tests
on:
workflow_call:
inputs:
CONCURRENCY:
required: true
type: string
REF:
required: false
type: string
default: ""
concurrency:
group: ${{ inputs.CONCURRENCY }}-web-test
cancel-in-progress: true
env:
RUSTFLAGS: --deny warnings
RUSTDOCFLAGS: --deny warnings
RUST_BACKTRACE: full
CARGO_TERM_COLOR: always
defaults:
run:
shell: bash --noprofile --norc -euo pipefail {0}
permissions:
contents: "read"
id-token: "write"
jobs:
web-test:
name: Browser tests
timeout-minutes: 60
runs-on: ubuntu-latest-16-cores
steps:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.REF || (github.event_name == 'pull_request' && github.event.pull_request.head.ref) || '' }}
- name: Set up Rust
uses: ./.github/actions/setup-rust
with:
cache_key: "web-test"
save_cache: false
targets: wasm32-unknown-unknown
workload_identity_provider: ${{ secrets.GOOGLE_WORKLOAD_IDENTITY_PROVIDER }}
service_account: ${{ secrets.GOOGLE_SERVICE_ACCOUNT }}
- uses: prefix-dev/setup-pixi@v0.10.0
with:
pixi-version: v0.71.3
- name: Set up Firefox
uses: browser-actions/setup-firefox@v1
- name: Set up geckodriver
uses: browser-actions/setup-geckodriver@latest
- name: Run Wasm browser tests
run: pixi run web-test