Skip to content

Commit 95d9a54

Browse files
authored
feat(ci): update build workflow for draft release process (#87)
1 parent 18e5056 commit 95d9a54

File tree

1 file changed

+18
-8
lines changed

1 file changed

+18
-8
lines changed

.github/workflows/main-build.yml

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,23 @@ jobs:
4545
echo "✅ Tag $TAG does not exist yet"
4646
fi
4747
48+
- name: Remove old packages from existing draft
49+
if: steps.check-tag.outputs.exists == 'false'
50+
env:
51+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
52+
run: |
53+
TAG="v${{ needs.build-and-test.outputs.version }}"
54+
# Check if draft release already exists
55+
if gh release view "$TAG" &>/dev/null; then
56+
echo "🗑️ Removing old NuGet packages from existing draft..."
57+
gh release view "$TAG" --json assets -q '.assets[] | select(.name | endswith(".nupkg")) | "\(.id) \(.name)"' | while read -r asset_id asset_name; do
58+
echo "Deleting old package: $asset_name (ID: $asset_id)"
59+
gh api --method DELETE "/repos/${{ github.repository }}/releases/assets/$asset_id" || echo "Failed to delete $asset_name"
60+
done
61+
else
62+
echo "No existing draft release found"
63+
fi
64+
4865
- name: Create/Update Draft Release
4966
if: steps.check-tag.outputs.exists == 'false'
5067
uses: release-drafter/release-drafter@v6
@@ -64,16 +81,9 @@ jobs:
6481
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
6582
run: |
6683
TAG="v${{ needs.build-and-test.outputs.version }}"
67-
# Wait a moment for the release to be created
84+
# Wait a moment for the release to be created/updated
6885
sleep 2
6986
70-
# Remove old NuGet packages from the draft release
71-
echo "🗑️ Removing old NuGet packages..."
72-
gh release view "$TAG" --json assets -q '.assets[] | select(.name | endswith(".nupkg")) | "\(.id) \(.name)"' | while read -r asset_id asset_name; do
73-
echo "Deleting old package: $asset_name (ID: $asset_id)"
74-
gh api --method DELETE "/repos/${{ github.repository }}/releases/assets/$asset_id" || echo "Failed to delete $asset_name"
75-
done
76-
7787
# Upload new artifacts to the draft release
7888
echo "📦 Uploading new NuGet packages..."
7989
for file in ./artifacts/*.nupkg; do

0 commit comments

Comments
 (0)