name: Build on: push: branches: main pull_request: branches: '*' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: build: runs-on: ubuntu-latest 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: Lint the extension run: | set -eux jlpm jlpm run lint:check - name: Build the extension run: | set -eux python -m pip install .[test] jupyter labextension list jupyter labextension list 2>&1 | grep -ie "jupyterlab-simpledark.*OK" python -m jupyterlab.browser_check - name: Package the extension run: | set -eux pip install build python -m build pip uninstall -y "jupyterlab-simpledark" jupyterlab - name: Upload extension packages uses: actions/upload-artifact@v3 with: name: extension-artifacts path: dist/jupyterlab_simpledark* if-no-files-found: error test_isolated: needs: build runs-on: ubuntu-latest steps: - name: Install Python uses: actions/setup-python@v4 with: python-version: '3.9' architecture: 'x64' - uses: actions/download-artifact@v3 with: name: extension-artifacts - name: Install and Test run: | set -eux # Remove NodeJS, twice to take care of system and locally installed node versions. sudo rm -rf $(which node) sudo rm -rf $(which node) pip install "jupyterlab>=4.0.0,<5" jupyterlab_simpledark*.whl jupyter labextension list jupyter labextension list 2>&1 | grep -ie "jupyterlab-simpledark.*OK" python -m jupyterlab.browser_check --no-browser-test check_links: name: Check Links runs-on: ubuntu-latest timeout-minutes: 15 steps: - uses: actions/checkout@v3 - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1