Skip to content

Release 0.3.8

Release 0.3.8 #1832

Workflow file for this run

name: UI Tests
on: [push, pull_request]
defaults:
run:
shell: bash -l {0}
jobs:
ui-tests:
name: Visual Regression
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.9]
fail-fast: false
steps:
- uses: actions/checkout@v2
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Setup mamba
uses: conda-incubator/setup-miniconda@v2
with:
mamba-version: "*"
channels: conda-forge
- name: Create the conda environment
run: mamba install -q python=3.9 pip jupyterlab_pygments=0.1.0 pytest-cov pytest-rerunfailures nodejs=16.19.0 yarn=1 flake8 ipywidgets matplotlib xeus-cling traitlets=5
- name: Install dependencies
run: |
python -m pip install --upgrade ".[test,visual_test]"
jlpm
jlpm build
jupyter labextension develop . --overwrite
cd ui-tests
jlpm install --frozen-lockfile
- name: Launch Voila
run: |
# Mount a volume to overwrite the server configuration
jlpm start 2>&1 > /tmp/voila_server.log &
working-directory: ui-tests
- name: Install browser
run: jlpm playwright install chromium
working-directory: ui-tests
- name: Wait for Voila
uses: ifaxity/wait-on-action@v1
with:
resource: http-get://localhost:8866/
timeout: 360000
- name: Test
run: jlpm run test
working-directory: ui-tests
- uses: iterative/setup-cml@v1
- name: Publish Results
env:
REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
REPORT: ./benchmark-results/voila-benchmark.md
shell: bash
run: |
cd ui-tests
# Publish image to cml.dev
echo "" >> ${REPORT}
cml-publish ./benchmark-results/voila-benchmark.png --md >> ${REPORT}
echo "" >> ${REPORT}
# Test if metadata have changed
export METADATA_DIFF="/tmp/metadata.diff"
diff -u <(jq --sort-keys .metadata benchmark-results/voila-benchmark.json) <(jq --sort-keys .metadata voila-benchmark-expected.json) > ${METADATA_DIFF} || true
if [[ -s ${METADATA_DIFF} ]]; then
echo "<details><summary>:exclamation: Test metadata have changed</summary>" >> ${REPORT}
echo "" >> ${REPORT}
echo "\`\`\`diff" >> ${REPORT}
cat ${METADATA_DIFF} >> ${REPORT}
echo "\`\`\`" >> ${REPORT}
echo "" >> ${REPORT}
echo "</details>" >> ${REPORT}
fi
# Save PR number for comment publication
echo "${{ github.event.number }}" > ./benchmark-results/NR
- name: Upload Playwright Test assets
if: always()
uses: actions/upload-artifact@v2
with:
name: voila-test-assets
path: |
ui-tests/test-results
- name: Upload Playwright Benchmark report
if: always()
uses: actions/upload-artifact@v2
with:
name: voila-benchmark-report
path: |
ui-tests/benchmark-results
- name: Upload Playwright Test report
if: always()
uses: actions/upload-artifact@v2
with:
name: voila-test-report
path: |
ui-tests/playwright-report
- name: Print Voila logs
if: always()
run: |
cat /tmp/voila_server.log