Use SUT_FACTORY instead of SUTS everywhere. #203
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: Tests | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| workflow_dispatch: | |
| inputs: | |
| branch: | |
| description: "Branch" | |
| required: true | |
| default: main | |
| jobs: | |
| cli-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v3 | |
| with: | |
| ref: ${{ github.event.inputs.branch || github.head_ref || github.ref_name }} | |
| - name: Set up Python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: "3.12" | |
| - name: Start MLflow server (no jupyter) | |
| run: | | |
| ./start_services.sh --no-jupyter -d | |
| - name: Install poetry | |
| run: pipx install poetry | |
| - name: Verify MLflow versions match | |
| run: ./scripts/check_mlflow_versions.sh | |
| - name: Check poetry lock file | |
| run: poetry check --lock | |
| - name: Remove existing virtual environment | |
| run: | | |
| poetry env remove python || true | |
| - name: Install dependencies | |
| run: | | |
| poetry cache clear --no-interaction --all . | |
| poetry install --with test --no-cache | |
| - name: Run all tests | |
| run: MLFLOW_TRACKING_URI=http://localhost:8080 poetry run pytest | |
| - name: Stop MLflow server | |
| run: docker compose down | |
| jupyter-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v3 | |
| with: | |
| ref: ${{ github.event.inputs.branch || github.head_ref || github.ref_name }} | |
| - name: Set up Python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: "3.12" | |
| - name: Start MLflow server with jupyter and vllm | |
| run: | | |
| ./start_services.sh -d --vllm | |
| - name: Copy test script to Jupyter container | |
| run: | | |
| docker cp tests/notebooks/run.py modelplane-jupyter-1:/app/test_notebooks.py | |
| - name: Execute all notebooks | |
| run: | | |
| docker exec modelplane-jupyter-1 poetry run python /app/test_notebooks.py | |
| - name: Stop MLflow server | |
| run: docker compose down |