/ .github / workflows / pypi_release.yml
pypi_release.yml
 1  name: Project release on PyPi
 2  
 3  on:
 4    push:
 5      tags:
 6        - "v[0-9]+.[0-9]+.[0-9]+*"
 7        # We must not release versions tagged with -rc0 suffix
 8        - "!v[0-9]+.[0-9]+.[0-9]-rc0"
 9  
10  env:
11    HATCH_VERSION: "1.16.5"
12  
13  jobs:
14    release-on-pypi:
15      runs-on: ubuntu-latest
16      environment: pypi
17      permissions:
18        id-token: write
19  
20      steps:
21        - name: Checkout
22          uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
23  
24        - name: Install Hatch
25          run: pip install hatch==${{ env.HATCH_VERSION }}
26  
27        - name: Build Haystack
28          run: hatch build
29  
30        - name: Publish on PyPi
31          uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # v1.14.0