name: Python Tests on: push: branches: [main] paths: - "python/**" - ".github/workflows/python-tests.yaml" pull_request: branches: [main] paths: - "python/**" - ".github/workflows/python-tests.yaml" permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: test: name: pytest (${{ matrix.package }}, ${{ matrix.python-version }}) runs-on: blacksmith-4vcpu-ubuntu-2404 timeout-minutes: 10 strategy: fail-fast: false matrix: package: - assistant-stream - assistant-ui-sync-server-api python-version: ["3.10", "3.12"] defaults: run: working-directory: python/${{ matrix.package }} steps: - name: Checkout code repository uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - name: Install uv uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 with: python-version: ${{ matrix.python-version }} enable-cache: true - name: Install dependencies run: uv sync --all-extras - name: Run tests run: uv run pytest