Skip to content

Update to JupyterLite 0.7.0 (#74) #227

Update to JupyterLite 0.7.0 (#74)

Update to JupyterLite 0.7.0 (#74) #227

Workflow file for this run

name: Build, Test, and Deploy
on:
push:
branches:
- main
pull_request:
branches:
- '*'
permissions:
actions: write
contents: write
deployments: write
pages: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: prefix-dev/setup-pixi@v0.9.3
with:
pixi-version: v0.59.0
cache: true
- name: Build the JupyterLite site
shell: bash -l {0}
run: |
cp README.md content
pixi run build
- name: Filter xeus kernels to only keep C++23
shell: bash -l {0}
run: |
pixi run filter-kernels
- name: Upload dist artifact for testing
uses: actions/upload-artifact@v4
with:
name: jupyterlite-dist
path: ./dist
- name: Upload dist for GitHub Pages
uses: actions/upload-pages-artifact@v4
with:
path: ./dist
test:
needs: build
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pixi
uses: prefix-dev/setup-pixi@v0.9.3
with:
pixi-version: v0.59.0
cache: true
- name: Download built site
uses: actions/download-artifact@v4
with:
name: jupyterlite-dist
path: ./dist
- name: Install Playwright browsers
shell: bash -l {0}
run: |
pixi run playwright install --with-deps chromium
- name: Run notebook tests
shell: bash -l {0}
run: |
pixi run test
- name: Upload screenshots on failure
if: failure()
uses: actions/upload-artifact@v4
with:
name: test-screenshots
path: |
ui-tests/screenshot_*.png
ui-tests/videos
if-no-files-found: ignore
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: pytest-results
path: |
ui-tests/report.html
ui-tests/test-results
if-no-files-found: ignore
deploy:
needs: test
if: github.ref == 'refs/heads/main'
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4