mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
This change moves all of Servo's WPT Python support scripts into one directory as they were previously scattered throughout the directory structure. This should allow more code reuse and make it easier to understand how everything fits together. The changes: - `tests/wpt/update` → `python/wpt/importer` - `etc/ci/upstream-wpt-changes/wptupstreamer` → `python/wpt/exporter` - `etc/ci/upstream-wpt-changes/test.py` → `python/wpt/test.py` - `etc/ci/upstream-wpt-changes/tests` → `python/wpt/tests` - `tests/wpt/servowpt.py` → - `python/wpt/update.py` - `python/wpt/run.py` - `tests/wpt/manifestupdate.py` → `python/wpt/manifestupdate.py` This change also removes - The ability to run the `update-wpt` and `test-wpt` commands without using `mach`. These didn't work very well, because it was difficult to get all of the wptrunner and mach dependencies installed outside of the Python virtualenv. It's simpler if they are always run through `mach`. - The old WPT change upstreaming script that was no longer used.
40 lines
1.6 KiB
YAML
40 lines
1.6 KiB
YAML
name: Pull request (WPT export)
|
|
on:
|
|
pull_request_target:
|
|
types: ['opened', 'synchronize', 'reopened', 'edited', 'closed']
|
|
|
|
jobs:
|
|
upstream:
|
|
# Run job only on servo/servo
|
|
if: github.repository == 'servo/servo'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Calculate PR fetch depth
|
|
run: echo "PR_FETCH_DEPTH=$(( ${{ github.event.pull_request.commits }} + 1 ))" >> "${GITHUB_ENV}"
|
|
- name: Check out shallow servo PR
|
|
run: |
|
|
mkdir servo
|
|
cd servo
|
|
git init -b main
|
|
git remote add origin ${{ github.event.repository.clone_url}}
|
|
git fetch origin pull/${{ github.event.pull_request.number}}/head:pr --depth ${{ env.PR_FETCH_DEPTH }}
|
|
git fetch origin master:master --depth 1
|
|
git checkout master
|
|
- name: Check out wpt
|
|
uses: actions/checkout@v3
|
|
with:
|
|
path: wpt
|
|
repository: 'web-platform-tests/wpt'
|
|
# The token here must be the token that we will use to push to the
|
|
# WPT repository and not the token used for GitHub actions, because
|
|
# the checkout action sets up an `extraheader` authorization override
|
|
# using the token specified here.
|
|
# See https://github.com/actions/checkout/issues/162.
|
|
token: ${{ secrets.WPT_SYNC_TOKEN }}
|
|
- name: Install requirements
|
|
run: pip install -r servo/python/wpt/requirements.txt
|
|
- name: Process pull request
|
|
run: servo/python/wpt/upstream.py
|
|
env:
|
|
GITHUB_CONTEXT: ${{ toJson(github) }}
|
|
WPT_SYNC_TOKEN: ${{ secrets.WPT_SYNC_TOKEN }}
|