Skip to content

Migrate to jupyter-ui-toolkit for Switch component #75

Migrate to jupyter-ui-toolkit for Switch component

Migrate to jupyter-ui-toolkit for Switch component #75

Workflow file for this run

name: Packaging
on:
push:
branches: [ master ]
pull_request:
branches: '*'
env:
PIP_DISABLE_PIP_VERSION_CHECK: 1
defaults:
run:
shell: bash -l {0}
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- extension: logout
name: logout
- extension: theme-toggler
name: theme_toggler
- extension: topbar-text
name: topbar_text
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Install dependencies
run: python -m pip install -U "jupyterlab>=4.0.0,<5"
- name: Package the extension
working-directory: packages/${{ matrix.extension }}-extension
run: |
set -eux
pip install build
python -m build
pip uninstall -y "jupyterlab_${{ matrix.name }}" jupyterlab
- name: Upload extension packages
uses: actions/upload-artifact@v3
with:
name: extension-artifacts
path: packages/${{ matrix.extension }}-extension/dist/jupyterlab_${{ matrix.name }}*
if-no-files-found: error
install:
runs-on: ${{ matrix.os }}-latest
needs: [build]
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
python: ['3.8', '3.11']
include:
- python: '3.8'
extension: logout
dist: 'jupyterlab_logout*.tar.gz'
- python: '3.11'
extension: logout
dist: 'jupyterlab_logout*.whl'
- python: '3.8'
extension: theme-toggler
dist: 'jupyterlab_theme_toggler*.tar.gz'
- python: '3.11'
extension: theme-toggler
dist: 'jupyterlab_theme_toggler*.whl'
- python: '3.8'
extension: topbar-text
dist: 'jupyterlab_topbar_text*.tar.gz'
- python: '3.11'
extension: topbar-text
dist: 'jupyterlab_topbar_text*.whl'
- os: windows
py_cmd: python
- os: macos
py_cmd: python3
- os: ubuntu
py_cmd: python
# actions/setup-python do not support MacOS runners based on ARM for Python < 3.11
# https://github.com/actions/setup-python/issues/906
exclude:
- os: macos
python: 3.8
steps:
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
architecture: 'x64'
- uses: actions/download-artifact@v3
with:
name: extension-artifacts
path: packages/${{ matrix.extension }}-extension/dist
- name: Create venv for macos
run: |
${{ matrix.py_cmd }} -m venv venv
- name: Install prerequisites
run: |
source ./venv/bin/activate
${{ matrix.py_cmd }} -m pip install pip wheel
- name: Install package
run: |
source ./venv/bin/activate
cd packages/${{ matrix.extension }}-extension/dist
${{ matrix.py_cmd }} -m pip install -vv ${{ matrix.dist }}
- name: Validate environment
run: |
${{ matrix.py_cmd }} -m pip freeze
${{ matrix.py_cmd }} -m pip check
- name: Validate install
run: |
source ./venv/bin/activate
jupyter labextension list
jupyter labextension list 2>&1 | grep -ie "jupyterlab-${{ matrix.extension }}.*OK"