diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e2c80b6..85fd33f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -35,20 +35,7 @@ jobs: set -eux jlpm run test - - name: Build the extension - run: | - set -eux - python -m pip install .[test] - - pytest -vv -r ap --cov jupyter_chat - jupyter server extension list - jupyter server extension list 2>&1 | grep -ie "jupyter_chat.*OK" - - jupyter labextension list - jupyter labextension list 2>&1 | grep -ie "@jupyter/chat.*OK" - python -m jupyterlab.browser_check - - - name: Package the extension + - name: Package the project run: | set -eux @@ -56,100 +43,13 @@ jobs: python -m build pip uninstall -y "jupyter_chat" jupyterlab - - name: Upload extension packages + - name: Upload project packages uses: actions/upload-artifact@v3 with: - name: extension-artifacts + name: package-artifacts path: dist/jupyter_chat* 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" jupyter_chat*.whl - - - jupyter server extension list - jupyter server extension list 2>&1 | grep -ie "jupyter_chat.*OK" - - jupyter labextension list - jupyter labextension list 2>&1 | grep -ie "@jupyter/chat.*OK" - python -m jupyterlab.browser_check --no-browser-test - - integration-tests: - name: Integration tests - needs: build - runs-on: ubuntu-latest - - env: - PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/pw-browsers - - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Base Setup - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - - name: Download extension package - uses: actions/download-artifact@v3 - with: - name: extension-artifacts - - - name: Install the extension - run: | - set -eux - python -m pip install "jupyterlab>=4.0.0,<5" jupyter_chat*.whl - - - name: Install dependencies - working-directory: ui-tests - env: - YARN_ENABLE_IMMUTABLE_INSTALLS: 0 - PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 - run: jlpm install - - - name: Set up browser cache - uses: actions/cache@v3 - with: - path: | - ${{ github.workspace }}/pw-browsers - key: ${{ runner.os }}-${{ hashFiles('ui-tests/yarn.lock') }} - - - name: Install browser - run: jlpm playwright install chromium - working-directory: ui-tests - - - name: Execute integration tests - working-directory: ui-tests - run: | - jlpm playwright test - - - name: Upload Playwright Test report - if: always() - uses: actions/upload-artifact@v3 - with: - name: jupyter_chat-playwright-tests - path: | - ui-tests/test-results - ui-tests/playwright-report - check_links: name: Check Links runs-on: ubuntu-latest