mirror of
https://github.com/denoland/deno.git
synced 2024-12-11 10:07:54 -05:00
7d8cc5c1a7
This PR updates the WPT upload script so that it only labels runs that come from the daily WPT job as "master". This is so that only the daily synchronized runs get selected when viewing dashboards such as [this](https://wpt.fyi/results/?label=master&label=experimental&product=deno&product=node.js&product=chrome&product=edge&product=firefox&product=safari&aligned&view=subtest&q=deno%3A%21missing).
82 lines
2.7 KiB
YAML
82 lines
2.7 KiB
YAML
# This CI job runs every night and tests all versions of Deno (canary and latest
|
|
# stable) across all OSes we support against the `epochs/daily` branch of WPT.
|
|
|
|
name: wpt_epoch
|
|
|
|
on:
|
|
schedule:
|
|
# Every night at 0:30 UTC. This is 20 minutes after `epochs/daily` branch is
|
|
# triggered to be created in WPT repo.
|
|
- cron: 30 0 * * *
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
wpt:
|
|
name: wpt / ${{ matrix.os }} / ${{ matrix.deno-version }}
|
|
if: github.repository == 'denoland/deno'
|
|
runs-on: ${{ matrix.os }}
|
|
timeout-minutes: 30
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
deno-version: [v1.x, canary]
|
|
os: [ubuntu-20.04-xl]
|
|
|
|
steps:
|
|
- name: Clone repository
|
|
uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
persist-credentials: false
|
|
|
|
- name: Setup Deno
|
|
uses: denoland/setup-deno@v1
|
|
with:
|
|
deno-version: ${{ matrix.deno-version }}
|
|
|
|
- name: Install Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: "3.11"
|
|
|
|
- name: Log versions
|
|
run: |
|
|
python --version
|
|
deno --version
|
|
|
|
- name: Switch WPT submodule to epochs/daily
|
|
working-directory: test_util/wpt/
|
|
shell: bash
|
|
run: |
|
|
git remote set-branches origin '*'
|
|
git fetch origin
|
|
git checkout $(./wpt rev-list --epoch 1d)
|
|
git checkout -b epochs/daily
|
|
|
|
- name: Configure hosts file for WPT (unix)
|
|
if: runner.os != 'Windows'
|
|
working-directory: test_util/wpt/
|
|
run: ./wpt make-hosts-file | sudo tee -a /etc/hosts
|
|
|
|
- name: Configure hosts file for WPT (windows)
|
|
if: runner.os == 'Windows'
|
|
working-directory: test_util/wpt/
|
|
run: python wpt make-hosts-file | Out-File $env:SystemRoot\System32\drivers\etc\hosts -Encoding ascii -Append
|
|
|
|
- name: Run web platform tests
|
|
shell: bash
|
|
run: |
|
|
deno run --unstable --allow-write --allow-read --allow-net \
|
|
--allow-env --allow-run --lock=tools/deno.lock.json \
|
|
./tools/wpt.ts setup
|
|
deno run --unstable --allow-write --allow-read --allow-net \
|
|
--allow-env --allow-run --lock=tools/deno.lock.json \
|
|
./tools/wpt.ts run \
|
|
--binary=$(which deno) --quiet --release --no-ignore --json=wpt.json --wptreport=wptreport.json || true
|
|
|
|
- name: Upload wpt results to wpt.fyi
|
|
env:
|
|
WPT_FYI_USER: deno
|
|
WPT_FYI_PW: ${{ secrets.WPT_FYI_PW }}
|
|
run: |
|
|
deno run -A --lock=tools/deno.lock.json ./tools/upload_wptfyi.js wptreport.json --from-raw-file --daily-run
|