name: "Specklepy test and build" on: # pull_request: # branches: # - 'v3-dev' push: branches: - "gergo/uvSetup" jobs: ci: name: continuous-integration runs-on: ubuntu-latest strategy: matrix: python-version: - "3.10" - "3.11" - "3.12" - "3.13" steps: - uses: actions/checkout@v4 - name: Install uv and set the python version uses: astral-sh/setup-uv@v5 with: python-version: ${{ matrix.python-version }} enable-cache: true cache-dependency-glob: "uv.lock" - name: Install the project run: uv sync --all-extras --dev - uses: actions/cache@v3 with: path: ~/.cache/pre-commit/ key: ${{ hashFiles('.pre-commit-config.yaml') }} - name: Run pre-commit run: uv run pre-commit run --all-files # - name: Run Speckle Server # run: docker compose up -d # - name: Run tests # run: uv run pytest --cov --cov-report xml:reports/coverage.xml --junitxml=reports/test-results.xml # - uses: codecov/codecov-action@v5 # if: matrix.python-version == 3.13 # with: # fail_ci_if_error: true # optional (default = false) # files: ./reports/test-results.xml # optional # token: ${{ secrets.CODECOV_TOKEN }} - name: Minimize uv cache run: uv cache prune --ci