diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..9ebf4d9 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,31 @@ +# .github/workflows/publish.yml +jobs: + pypi-publish: + if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') + name: Upload release to PyPI + runs-on: ubuntu-latest + environment: + name: pypi + url: https://pypi.org/p/interface-gen + permissions: + id-token: write # IMPORTANT: this permission is mandatory for trusted publishing + steps: + # retrieve your distributions here + - name: Check out source repository + uses: actions/checkout@v4 + - name: Set up Python environment + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + working-directory: . + run: pip install -r requirements.txt + - name: Install twine + working-directory: . + run: pip install twine + - name: Build package distributions + working-directory: . + run: python -m build + + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1