Release to PyPI as a trusted publisher#
Starting on ansys/actions
version 6, repository maintainers can benefit from the
Trusted Publishers release to PyPI approach.
Traditionally, projects have made use of the PyPI API token to upload packages to PyPI. This approach is still supported, but it is recommended to use the Trusted Publishers approach when possible. If you are a repository maintainer and you want to release to PyPI as a trusted publisher, follow these steps:
Contact the PyAnsys Core Team to request your project to be added to the list of authorized repositories to release as a trusted publisher.
(Optional) Create a dedicated
release
environment on your GitHub repository. This step is optional, but it is strongly encouraged. To create a new environment, go to the Environments documentation. Contact the PyAnsys Core Team in case of doubts.Adapt your
release
section in your workflow as follows:release: name: Release project if: ${{ github.event_name == 'push' && contains(github.ref, 'refs/tags') }} needs: [package] runs-on: ubuntu-latest # Specifying a GitHub environment is optional, but strongly encouraged environment: release permissions: id-token: write contents: write steps: - name: Release to the public PyPI repository uses: ansys/actions/release-pypi-public@v6 with: library-name: ${{ env.PACKAGE_NAME }} use-trusted-publisher: true - name: Release to GitHub uses: ansys/actions/release-github@v6 with: library-name: ${{ env.PACKAGE_NAME }}