Skip to content

Commit 257c592

Browse files
Dumbrisclaude
andcommitted
fix(ci): upload exe directly for SignPath signing
GitHub Actions automatically ZIPs artifacts, so we don't need to pre-ZIP the installer. Upload exe directly to avoid double-zipping. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent f8c98f8 commit 257c592

1 file changed

Lines changed: 10 additions & 29 deletions

File tree

.github/workflows/release.yml

Lines changed: 10 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -645,27 +645,14 @@ jobs:
645645
exit 1
646646
}
647647
648-
- name: Package Windows installer for signing
649-
if: matrix.goos == 'windows'
650-
shell: pwsh
651-
run: |
652-
$VERSION = "${{ github.ref_name }}"
653-
$ARCH = "${{ matrix.goarch }}"
654-
$INSTALLER_PATH = "dist\mcpproxy-setup-${VERSION}-${ARCH}.exe"
655-
$ZIP_PATH = "dist\mcpproxy-setup-${VERSION}-${ARCH}-unsigned.zip"
656-
657-
# SignPath requires artifacts in ZIP format for GitHub Actions
658-
Write-Host "Packaging installer for SignPath signing..."
659-
Compress-Archive -Path $INSTALLER_PATH -DestinationPath $ZIP_PATH
660-
Write-Host "✅ Created: $ZIP_PATH"
661-
662648
- name: Upload unsigned Windows installer for signing
663649
if: matrix.goos == 'windows'
664650
uses: actions/upload-artifact@v4
665651
id: upload-unsigned-installer
666652
with:
667653
name: unsigned-installer-windows-${{ matrix.goarch }}
668-
path: dist/mcpproxy-setup-${{ github.ref_name }}-${{ matrix.goarch }}-unsigned.zip
654+
# Upload exe directly - GitHub Actions will ZIP it automatically
655+
path: dist/mcpproxy-setup-${{ github.ref_name }}-${{ matrix.goarch }}.exe
669656

670657
- name: Create .icns icon (macOS)
671658
if: matrix.goos == 'darwin'
@@ -931,7 +918,8 @@ jobs:
931918
uses: actions/upload-artifact@v4
932919
with:
933920
name: signpath-input-windows-${{ matrix.arch }}
934-
path: unsigned/*.zip
921+
# Upload exe - GitHub Actions will ZIP it for SignPath
922+
path: unsigned/*.exe
935923

936924
- name: Submit to SignPath for signing
937925
uses: signpath/github-action-submit-signing-request@v1
@@ -945,29 +933,22 @@ jobs:
945933
wait-for-completion: true
946934
output-artifact-directory: signed
947935

948-
- name: Extract signed installer from ZIP
936+
- name: Prepare signed installer
949937
run: |
950938
VERSION=${GITHUB_REF#refs/tags/}
951939
ARCH="${{ matrix.arch }}"
952940
953-
echo "Extracting signed installer..."
941+
echo "Preparing signed installer..."
954942
cd signed
955-
ls -la
956-
957-
# Extract the signed ZIP
958-
SIGNED_ZIP=$(find . -name "*.zip" -type f | head -1)
959-
if [ -n "$SIGNED_ZIP" ]; then
960-
unzip -o "$SIGNED_ZIP"
961-
fi
943+
ls -laR
962944
963-
# Find and rename the signed installer
945+
# SignPath returns signed files - find the exe
964946
SIGNED_EXE=$(find . -name "*.exe" -type f | head -1)
965947
if [ -n "$SIGNED_EXE" ]; then
966-
mv "$SIGNED_EXE" "mcpproxy-setup-${VERSION}-${ARCH}.exe"
948+
cp "$SIGNED_EXE" "mcpproxy-setup-${VERSION}-${ARCH}.exe"
967949
echo "✅ Signed installer: mcpproxy-setup-${VERSION}-${ARCH}.exe"
968950
else
969-
echo "❌ No signed .exe found"
970-
ls -laR
951+
echo "❌ No signed .exe found in SignPath output"
971952
exit 1
972953
fi
973954

0 commit comments

Comments
 (0)