From 6a10ede5ba07618523701f4da72fa3c191d02521 Mon Sep 17 00:00:00 2001 From: scdhh Date: Tue, 14 Nov 2023 12:56:06 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=91=B7=20=E6=9B=B4=E6=96=B0Release=20CI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/Release.yml | 33 ++++++++++++++++++++++++++++----- 1 file changed, 28 insertions(+), 5 deletions(-) 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 }}