File tree Expand file tree Collapse file tree 1 file changed +20
-10
lines changed
Expand file tree Collapse file tree 1 file changed +20
-10
lines changed Original file line number Diff line number Diff line change @@ -61,17 +61,27 @@ jobs:
6161 run : |
6262 python -m build
6363
64- - name : Create Release
64+ - name : Find and Publish Draft Release
6565 if : steps.check-version.outputs.is_new_version == 'true'
66- id : create_release
67- uses : ncipollo/release-action@v1
68- with :
69- tag : v${{ steps.check-version.outputs.new_version }}
70- name : Release v${{ steps.check-version.outputs.new_version }}
71- draft : false
72- prerelease : false
73- generateReleaseNotes : false
74- omitBodyDuringUpdate : true
66+ id : publish_release
67+ run : |
68+ # Find the draft release for this version
69+ RELEASE_ID=$(gh release list --json id,name,isDraft --jq '.[] | select(.name | contains("v${{ steps.check-version.outputs.new_version }}")) | select(.isDraft == true) | .id')
70+
71+ if [ -n "$RELEASE_ID" ]; then
72+ echo "Found draft release with ID: $RELEASE_ID"
73+ # Edit the existing draft to make it published
74+ gh release edit "v${{ steps.check-version.outputs.new_version }}" --draft=false
75+ echo "Published existing draft release"
76+ else
77+ echo "No draft release found, creating new release"
78+ # Fallback: create new release (though this shouldn't happen if release-drafter is working)
79+ gh release create "v${{ steps.check-version.outputs.new_version }}" \
80+ --title "Release v${{ steps.check-version.outputs.new_version }}" \
81+ --generate-notes
82+ fi
83+ env :
84+ GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
7585
7686 - name : Publish to PyPI
7787 if : steps.check-version.outputs.is_new_version == 'true'
You can’t perform that action at this time.
0 commit comments