Skip to content

json-schema spec for the workflow #596

json-schema spec for the workflow

json-schema spec for the workflow #596

Workflow file for this run

name: E2E Tests
# suppress warning raised by https://github.com/jupyter/jupyter_core/pull/292
env:
JUPYTER_PLATFORM_DIRS: '1'
on:
push:
branches: main
pull_request:
branches: '*'
jobs:
e2e-tests:
name: Linux
runs-on: ubuntu-latest
env:
PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/pw-browsers
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
# when updating this version, make sure to update ui-tests/package.json
# and the lockfile accordingly.
- name: Install extension dependencies
run: python -m pip install -U jupyterlab==4.0.6
- name: Build the extension
run: |
set -eux
python -m pip install .
jupyter server extension list
jupyter server extension list 2>&1 | grep -ie "jupyter_scheduler.*OK"
jupyter labextension list
jupyter labextension list 2>&1 | grep -ie "@jupyterlab/scheduler.*OK"
python -m jupyterlab.browser_check
- name: Install ui-tests dependencies
working-directory: ui-tests
env:
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
run: jlpm install
- name: Set up browser cache
uses: actions/cache@v2
with:
path: |
${{ github.workspace }}/pw-browsers
key: ${{ runner.os }}-${{ hashFiles('ui-tests/yarn.lock') }}
- name: Install browser
working-directory: ui-tests
run: jlpm install-chromium
- name: Run E2E Playwright tests
working-directory: ui-tests
run: jlpm test
- name: Upload Playwright Test report
if: always()
uses: actions/upload-artifact@v4
with:
name: jupyter_scheduler-playwright-tests-linux
path: |
ui-tests/test-results
ui-tests/playwright-report