jupyterhub / ldapauthenticator

LDAP Authenticator Plugin for Jupyter
BSD 3-Clause "New" or "Revised" License
202 stars 175 forks source link

Add end to end test to ensure compatibility against various jupyterhub versions #222

Open consideRatio opened 1 year ago

consideRatio commented 1 year ago

There is a test suite setup to run unit tests - but not full end to end (e2e) tests involving starting aj upyterhub and using the authenticator against it.

Notes on doing this

Below are some pieces of code relevant to include when setting up the test environment to test against various versions of jupyterhub taken from systemdspawner

    strategy:
      fail-fast: false
      matrix:
        include:
          # oldest supported python and jupyterhub version
          - python-version: "3.8"
            pip-install-spec: "jupyterhub==2.3.0 tornado==5.1.0 sqlalchemy==1.*"
          - python-version: "3.9"
            pip-install-spec: "jupyterhub==2.* sqlalchemy==1.*"
          - python-version: "3.10"
            pip-install-spec: "jupyterhub==3.*"
          - python-version: "3.11"
            pip-install-spec: "jupyterhub==4.*"

    steps:
      # ...
      - uses: actions/setup-node@v3
        with:
          node-version: "18"
      - name: Install Node dependencies
        run: |
          npm install -g configurable-http-proxy

      - name: Install Python dependencies
        run: |
          pip install ${{ matrix.pip-install-spec }}