diff --git a/.github/workflows/electron.yml b/.github/workflows/electron.yml index a781f84af..576af8533 100644 --- a/.github/workflows/electron.yml +++ b/.github/workflows/electron.yml @@ -468,13 +468,6 @@ jobs: security find-identity -v -p codesigning $KEYCHAIN_PATH - if ! security find-identity -v -p codesigning $KEYCHAIN_PATH | grep -q "3rd Party Mac Developer Installer"; then - echo "No '3rd Party Mac Developer Installer' identity found in the keychain." - echo "electron-builder needs this to wrap the signed .app into a .pkg for MAS." - echo "Check that MAC_INSTALLER_CERTIFICATE_BASE64 holds a valid, non-expired installer cert." - exit 1 - fi - - name: Build macOS App Store Package if: steps.check_certs.outputs.has_certs == 'true' env: @@ -549,17 +542,24 @@ jobs: - name: Verify macOS sharp packaging run: | artifacts=(release/termix_macos_*_dmg.dmg) - if [ -f release/termix_macos_universal_mas.pkg ]; then - artifacts+=(release/termix_macos_universal_mas.pkg) + MAS_PKG=$(find release -name "termix_macos_universal_mas.pkg" -type f | head -n 1) + if [ -n "$MAS_PKG" ]; then + artifacts+=("$MAS_PKG") fi node scripts/verify-macos-sharp.cjs "${artifacts[@]}" + - name: Locate macOS MAS PKG + id: locate_mas_pkg + run: | + MAS_PKG=$(find release -name "termix_macos_universal_mas.pkg" -type f | head -n 1) + echo "path=$MAS_PKG" >> "$GITHUB_OUTPUT" + - name: Upload macOS MAS PKG - if: steps.check_certs.outputs.has_certs == 'true' && hashFiles('release/termix_macos_universal_mas.pkg') != '' && (inputs.artifact_destination == 'file' || inputs.artifact_destination == 'release' || inputs.artifact_destination == 'submit') + if: steps.check_certs.outputs.has_certs == 'true' && steps.locate_mas_pkg.outputs.path != '' && (inputs.artifact_destination == 'file' || inputs.artifact_destination == 'release' || inputs.artifact_destination == 'submit') uses: actions/upload-artifact@v7 with: name: termix_macos_universal_mas - path: release/termix_macos_universal_mas.pkg + path: ${{ steps.locate_mas_pkg.outputs.path }} retention-days: 30 if-no-files-found: warn @@ -1073,13 +1073,6 @@ jobs: security find-identity -v -p codesigning $KEYCHAIN_PATH - if ! security find-identity -v -p codesigning $KEYCHAIN_PATH | grep -q "3rd Party Mac Developer Installer"; then - echo "No '3rd Party Mac Developer Installer' identity found in the keychain." - echo "electron-builder needs this to wrap the signed .app into a .pkg for MAS." - echo "Check that MAC_INSTALLER_CERTIFICATE_BASE64 holds a valid, non-expired installer cert." - exit 1 - fi - - name: Check for App Store Connect API credentials id: check_asc_creds run: | @@ -1183,7 +1176,13 @@ jobs: - name: Verify macOS sharp packaging if: steps.check_certs.outputs.has_certs == 'true' - run: node scripts/verify-macos-sharp.cjs release/termix_macos_universal_mas.pkg + run: | + MAS_PKG=$(find release -name "termix_macos_universal_mas.pkg" -type f | head -n 1) + if [ -z "$MAS_PKG" ]; then + echo "MAS pkg not found under release/; aborting." + exit 1 + fi + node scripts/verify-macos-sharp.cjs "$MAS_PKG" - name: Generate App Store release notes id: asc_notes