forked from denoland/deno
-
Notifications
You must be signed in to change notification settings - Fork 0
77 lines (65 loc) · 2.44 KB
/
wpt_epoch.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# 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 }}
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
deno-version: [v1.x, canary]
os: [ubuntu-latest-xl]
steps:
- name: Clone repository
uses: actions/checkout@v2
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@v1
with:
python-version: "3.8"
architecture: x64
- 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 ./tools/wpt.ts setup
deno run --unstable --allow-write --allow-read --allow-net --allow-env --allow-run ./tools/wpt.ts run --binary=$(which deno) --quiet --release --json=wpt.json --wptreport=wptreport.json || true
- name: Upload wpt results to wpt.fyi
env:
WPT_FYI_USER: ${{ secrets.WPT_FYI_USER }}
WPT_FYI_PW: ${{ secrets.WPT_FYI_PW }}
run: |
deno run -A ./tools/upload_wptfyi.js wptreport.json --from-raw-file