Skip to content

Commit 0b1eeae

Browse files
committed
fix(ci): resolve duplicate releases, npm ci issues, and push races
1 parent 652b4a8 commit 0b1eeae

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

.github/workflows/release.yml

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ jobs:
8282
if: startsWith(github.ref, 'refs/tags/')
8383
with:
8484
files: ${{ matrix.asset_name }}
85-
generate_release_notes: true
85+
generate_release_notes: false # Prevent duplicate notes from matrix jobs
8686
env:
8787
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
8888

@@ -137,20 +137,15 @@ jobs:
137137
fi
138138
139139
# 4. Update Homebrew Formula
140-
# Update version field
141140
sed -i "s/version \".*\"/version \"$VERSION\"/" homebrew/vanity_crypto.rb
142-
# Update SHAs using unique markers
143141
sed -i "s/sha256 \".*\" # MAC_ARM_SHA/sha256 \"$SHA_MACOS_ARM\" # MAC_ARM_SHA/" homebrew/vanity_crypto.rb
144142
sed -i "s/sha256 \".*\" # MAC_INTEL_SHA/sha256 \"$SHA_MACOS_INTEL\" # MAC_INTEL_SHA/" homebrew/vanity_crypto.rb
145143
sed -i "s/sha256 \".*\" # LINUX_SHA/sha256 \"$SHA_LINUX\" # LINUX_SHA/" homebrew/vanity_crypto.rb
146144
147145
# 5. Update Scoop Manifest
148146
sed -i "s/REPLACE_WITH_ACTUAL_SHA256_AFTER_RELEASE_BUILD/$SHA_WIN/" scoop/vanity_crypto.json
149-
# Regex replace version field
150147
sed -i "s/\"version\": \".*\"/\"version\": \"$VERSION\"/" scoop/vanity_crypto.json
151-
# Regex replace hash field
152148
sed -i "s/\"hash\": \".*\"/\"hash\": \"$SHA_WIN\"/" scoop/vanity_crypto.json
153-
# Regex replace URL version segment
154149
sed -i "s|/v[^/]\+/|/v$VERSION/|g" scoop/vanity_crypto.json
155150
sed -i "s/vanity_crypto-/vc-/g" scoop/vanity_crypto.json
156151
@@ -160,6 +155,7 @@ jobs:
160155
git config user.email "github-actions[bot]@users.noreply.github.com"
161156
git add homebrew/vanity_crypto.rb scoop/vanity_crypto.json
162157
git commit -m "chore: update release manifests [skip ci]" || echo "No changes to commit"
158+
git pull --rebase origin main
163159
git push origin HEAD:main
164160
165161
- name: Upload Signatures to Release
@@ -168,6 +164,7 @@ jobs:
168164
files: |
169165
SHA256SUMS
170166
SHA256SUMS.asc
167+
generate_release_notes: true # Generate notes ONCE here
171168
env:
172169
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
173170

@@ -190,7 +187,7 @@ jobs:
190187
registry-url: 'https://registry.npmjs.org'
191188

192189
- name: Install Dependencies
193-
run: npm ci
190+
run: npm ci --ignore-scripts # Skip postinstall to avoid downloading binary during publish
194191

195192
- name: Verify Version matches Tag
196193
run: |
@@ -202,4 +199,4 @@ jobs:
202199
fi
203200
204201
- name: Publish to NPM
205-
run: npm publish --provenance
202+
run: npm publish --provenance --access public

0 commit comments

Comments
 (0)