7a0da7932b
OSV-Scanner (Scheduled) / scan-scheduled (push) Failing after 0s
Create Release / test-gate (push) Has been cancelled
Create Release / release-gate (push) Has been cancelled
Create Release / ci-gate (push) Has been cancelled
Create Release / version-check (push) Has been cancelled
Create Release / e2e-test-gate (push) Has been cancelled
Create Release / responsive-test-gate (push) Has been cancelled
Create Release / compat-test-gate (push) Has been cancelled
Create Release / compose-integration-gate (push) Has been cancelled
Create Release / vulture-gate (push) Has been cancelled
Create Release / build (push) Has been cancelled
Create Release / provenance (push) Has been cancelled
Create Release / prerelease-docker (push) Has been cancelled
Create Release / publish-docker (push) Has been cancelled
Create Release / create-release (push) Has been cancelled
Create Release / cleanup-changelog (push) Has been cancelled
Create Release / trigger-pypi (push) Has been cancelled
Create Release / monitor-pypi (push) Has been cancelled
Create Release / Clean up orphan prerelease tags and signatures (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [research-form] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [research-metrics] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [research-workflow] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [settings-core] (push) Has been cancelled
CodeQL Advanced / Analyze (javascript-typescript) (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [history-news] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [library] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [link-analytics] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [chat-core] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [chat-lifecycle] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [error-benchmark] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [settings-pages] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) (push) Has been cancelled
Docker Tests (Consolidated) / Accessibility Tests (push) Has been cancelled
Docker Tests (Consolidated) / LLM Unit Tests (push) Has been cancelled
Docker Tests (Consolidated) / LLM Example Tests (push) Has been cancelled
Docker Tests (Consolidated) / Production Image Smoke Test (push) Has been cancelled
Docker Tests (Consolidated) / Infrastructure Tests (push) Has been cancelled
OSSF Scorecard / OSSF Security Scorecard Analysis (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [mobile] (push) Has been cancelled
Backwards Compatibility / Verify Encryption Constants (push) Has been cancelled
Backwards Compatibility / PyPI Version Compatibility (push) Has been cancelled
Backwards Compatibility / Database Migration Tests (push) Has been cancelled
CodeQL Advanced / Analyze (python) (push) Has been cancelled
Docker Tests (Consolidated) / detect-changes (push) Has been cancelled
Docker Tests (Consolidated) / Build Test Image (push) Has been cancelled
Docker Tests (Consolidated) / All Pytest Tests + Coverage (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [accessibility] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [api-crud] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [auth-login] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [auth-pages] (push) Has been cancelled
Docker Tests (Consolidated) / UI Tests (Puppeteer) [auth-register] (push) Has been cancelled
53 lines
2.4 KiB
YAML
53 lines
2.4 KiB
YAML
name: UI Tests (Full 14 Shards via Label)
|
|
|
|
# Triggered by adding the `test:ui-full-shards` label to a PR.
|
|
# Calls docker-tests.yml with strict-mode=true so the sharded ui-tests
|
|
# matrix runs — it's otherwise gated on strict-mode and only fires at
|
|
# release time.
|
|
#
|
|
# NOTE on duplicated work: docker-tests.yml in strict mode runs its FULL
|
|
# job graph (image build, pytest, infra, etc.), so triggering this label
|
|
# re-runs everything that the normal PR docker-tests already ran. That's
|
|
# acceptable cost for a deliberate opt-in trigger; cheaper than refactoring
|
|
# docker-tests.yml to expose just ui-tests as a standalone reusable workflow.
|
|
|
|
on:
|
|
pull_request:
|
|
types: [labeled]
|
|
# Manual fallback — useful for one-off maintainer runs and for smoke-testing
|
|
# the wrapper when label-triggered workflows can't fire (e.g. on the PR that
|
|
# first introduces this file, before it lands on main).
|
|
workflow_dispatch:
|
|
|
|
# No concurrency group — intentionally omitted, matching docker-tests.yml.
|
|
# See its top-level comment for the rationale (#3554 / #3599).
|
|
|
|
permissions: {} # Minimal top-level for OSSF Scorecard Token-Permissions
|
|
|
|
jobs:
|
|
full-shards:
|
|
name: Full UI Shards
|
|
# Fire on the label add, OR on any manual dispatch (maintainer override).
|
|
if: >-
|
|
github.event_name == 'workflow_dispatch' ||
|
|
(github.event_name == 'pull_request' &&
|
|
github.event.label.name == 'test:ui-full-shards')
|
|
uses: ./.github/workflows/docker-tests.yml
|
|
with:
|
|
strict-mode: true
|
|
permissions:
|
|
# MUST match the scopes docker-tests.yml's jobs DECLARE, not just the
|
|
# ones whose steps run. Reusable-workflow permission validation is
|
|
# compile-time: a called job that declares `contents: write` (the
|
|
# pytest/gh-pages job) fails the whole run at startup with
|
|
# "requesting 'contents: write', but is only allowed 'contents: none'"
|
|
# if the caller grants less — producing a 0-job startup_failure with
|
|
# no logs. #4209 dropped contents:write here for OSSF Scorecard, which
|
|
# silently broke this wrapper on every run since (the gh-pages STEP is
|
|
# runtime-gated to push@main, but the JOB still declares the scope).
|
|
# ci-gate.yml grants the same pair, which is why it works.
|
|
contents: write # docker-tests jobs checkout + declare gh-pages deploy scope
|
|
pull-requests: write # docker-tests pytest job posts PR comments
|
|
secrets:
|
|
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
|