[WIP] New namespace for storing user schemas + analysis #1142
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: testing | |
| on: | |
| workflow_dispatch: # Allow running on-demand | |
| push: | |
| branches: | |
| - master | |
| paths: | |
| - mpcontribs-client/** | |
| pull_request: | |
| branches: | |
| - master | |
| paths: | |
| - mpcontribs-client/** | |
| jobs: | |
| test: | |
| name: ${{ matrix.client-package }} (${{ matrix.os }}/py${{ matrix.python-version }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: ["ubuntu-latest"] | |
| python-version: ["3.11", "3.12"] | |
| steps: | |
| - uses: actions/checkout@v3 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up Python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: "pip" | |
| - name: Install dependencies | |
| run: | | |
| python${{ matrix.python-version }} -m pip install --upgrade "pip<25.3" build pip-tools pre-commit | |
| python${{ matrix.python-version }} -m piptools compile --extra dev -o requirements.txt mpcontribs-client/setup.py mpcontribs-api/setup.py | |
| python${{ matrix.python-version }} -m pip install -r requirements.txt | |
| cd mpcontribs-api && python${{ matrix.python-version }} -m pip install --no-deps . | |
| - name: Set SSL_CERT_FILE (Linux) | |
| if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' | |
| run: | | |
| export SSL_CERT_FILE=$(python${{ matrix.python-version }} -m certifi) | |
| echo "SSL_CERT_FILE=$SSL_CERT_FILE" >> $GITHUB_ENV | |
| - name: Set SSL_CERT_FILE (Windows) | |
| if: matrix.os == 'windows-latest' | |
| run: | | |
| $env:SSL_CERT_FILE=$(python${{ matrix.python-version }} -m certifi) | |
| echo "SSL_CERT_FILE=$env:SSL_CERT_FILE" >> $GITHUB_ENV | |
| - name: Run pre-commit | |
| run: | | |
| python${{ matrix.python-version }} -m pip install pre-commit | |
| pre-commit install | |
| pre-commit run --all-files | |
| - name: Test Client and build | |
| env: | |
| MPCONTRIBS_API_KEY: ${{ secrets.MPCONTRIBS_API_KEY }} | |
| SSL_CERT_FILE: ${{ env.SSL_CERT_FILE }} | |
| shell: bash | |
| run: | | |
| cd mpcontribs-client | |
| python${{ matrix.python-version }} -m flake8 --max-line-length 100 | |
| python${{ matrix.python-version }} -m pycodestyle --max-line-length 100 . | |
| python${{ matrix.python-version }} -m pytest -v -s --cov=mpcontribs/client --cov-report=term-missing --cov-report=xml --ignore=bravado | |
| python${{ matrix.python-version }} -m build --outdir ../dist | |
| - name: Install lux and test with pytest | |
| run: | | |
| cd mpcontribs-lux | |
| python${{ matrix.python-version }} -m pip install -r requirements/requirements-${{ matrix.os }}_py${{ matrix.python-version }}_extras.txt | |
| python${{ matrix.python-version }} -m pip install -e . | |
| python${{ matrix.python-version }} -m pytest -n auto -x --cov=mpcontribs/lux --cov-report=xml | |
| auto-gen-release: | |
| needs: | |
| - test | |
| runs-on: ubuntu-latest | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.PAT }} | |
| steps: | |
| - uses: rymndhng/[email protected] | |
| with: | |
| bump_version_scheme: norelease |