diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml index 0b9f868..eb587db 100644 --- a/.github/workflows/Release.yml +++ b/.github/workflows/Release.yml @@ -8,18 +8,41 @@ on: jobs: release: runs-on: ubuntu-latest + permissions: + id-token: write + contents: write steps: - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 with: python-version: '3.11' + cache: "poetry" + - name: Install Poetry shell: bash run: | pip install poetry - - name: Build - shell: bash - run: | poetry install - poetry env use python - poetry publish --build -u ${{ secrets.USERNAME }} -p ${{ secrets.PASSWORD }} -n + + - name: Get Version + id: version + run: | + echo "VERSION=$(poetry version -s)" >> $GITHUB_OUTPUT + echo "TAG_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT + echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT + + - name: Check Version + if: steps.version.outputs.VERSION != steps.version.outputs.TAG_VERSION + run: exit 1 + + - name: Build Package + run: poetry build + + - name: Publish Package to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + + - name: Publish Package to GitHub Release + run: gh release upload --clobber ${{ steps.version.outputs.TAG_NAME }} dist/*.tar.gz dist/*.whl + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}