build(deps): bump astral-sh/setup-uv from 2382069a66b5b52782577081ec324838fd5fc1fc to 85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 #47
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: release | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - "v[0-9]+.[0-9]+.[0-9]+" | |
| pull_request: | |
| merge_group: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| env: | |
| MINIMUM_PYTHON_VERSION: "3.11" | |
| UV_VERSION: "0.8.13" | |
| jobs: | |
| build: | |
| # This action builds distribution files for upload to PyPI | |
| name: ubuntu / 3.11 / build | |
| runs-on: ubuntu-latest | |
| steps: | |
| #---------------------------------------------- | |
| # check-out repo and set-up python | |
| #---------------------------------------------- | |
| - uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493 # v5.0.0 | |
| with: | |
| persist-credentials: false | |
| submodules: true | |
| #---------------------------------------------- | |
| # ----- setup python ----- | |
| #---------------------------------------------- | |
| - name: Set up the environment | |
| uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 | |
| id: setup-python | |
| with: | |
| python-version: ${{ env.MINIMUM_PYTHON_VERSION }} | |
| #---------------------------------------------- | |
| # ----- setup uv and load cache ----- | |
| #---------------------------------------------- | |
| - name: Set up uv | |
| uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 | |
| with: | |
| version: ${{ env.UV_VERSION }} | |
| enable-cache: true | |
| #---------------------------------------------- | |
| # ----- build distribution ----- | |
| #---------------------------------------------- | |
| - name: Build distribution | |
| run: make build | |
| #---------------------------------------------- | |
| # ----- upload artifacts ----- | |
| #---------------------------------------------- | |
| - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 | |
| with: | |
| name: pypi_files | |
| path: dist | |
| test-build: | |
| # This action runs the test suite on the built artifact in the `build` action. | |
| # The default is to run this in ubuntu, macos and windows | |
| name: ${{ matrix.os }} / 3.11 / test built artifact | |
| needs: [build] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: | |
| - ubuntu | |
| runs-on: ${{ matrix.os }}-latest | |
| steps: | |
| - uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493 # v5.0.0 | |
| with: | |
| persist-credentials: false | |
| submodules: true | |
| - name: set up python | |
| uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 | |
| with: | |
| python-version: ${{ env.MINIMUM_PYTHON_VERSION }} | |
| - name: get dist artifacts | |
| uses: actions/download-artifact@4a24838f3d5601fd639834081e118c2995d51e1c | |
| with: | |
| name: pypi_files | |
| path: dist | |
| - run: rm -r src | |
| - run: pip install typing-extensions | |
| - run: pip install -r tests/requirements-testing.lock | |
| - run: pip install sparv-testing --no-index --no-deps --find-links dist --force-reinstall | |
| - run: pytest | |
| # https://github.com/marketplace/actions/alls-green#why used for branch protection checks | |
| release-check: | |
| if: always() | |
| needs: | |
| - build | |
| - test-build | |
| runs-on: ubuntu-latest | |
| permissions: {} | |
| steps: | |
| - name: Decide whether the needed jobs succeeded or failed | |
| uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # v1.2.2 | |
| with: | |
| jobs: ${{ toJSON(needs) }} |