From fcb54c9de1b36ce833c6283c54c0688047f156cb Mon Sep 17 00:00:00 2001 From: torlando-tech Date: Mon, 10 Nov 2025 14:46:22 -0500 Subject: [PATCH] fix(ci): Use gh CLI for atomic release creation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace softprops/action-gh-release with gh CLI to create releases and upload assets in a single atomic operation. This prevents issues with repository rules that make releases immutable immediately, which was causing asset upload failures. Previous error: - Release created successfully but became immutable - Asset upload failed with "Cannot upload assets to an immutable release" Solution: - gh release create uploads all assets in one operation - Avoids the gap between release creation and asset upload 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .github/workflows/release.yml | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fe53327..5f2e528 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -326,17 +326,13 @@ jobs: name: release-notes - name: Create GitHub Release - uses: softprops/action-gh-release@v1 - with: - tag_name: ${{ needs.validate.outputs.tag }} - name: "BLE-Reticulum ${{ needs.validate.outputs.tag }}" - body_path: RELEASE_NOTES.md - draft: false - prerelease: false - files: | - release-artifacts/* env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gh release create "${{ needs.validate.outputs.tag }}" \ + release-artifacts/* \ + --title "BLE-Reticulum ${{ needs.validate.outputs.tag }}" \ + --notes-file RELEASE_NOTES.md - name: Release summary run: |