From 5b5577bead13cb45ae4e1a5bcd7d58fac93ffbcf Mon Sep 17 00:00:00 2001 From: Jake Hillion Date: Tue, 10 Feb 2026 15:47:49 +0000 Subject: [PATCH] build-app: upload DMG to S3 for non-tagged builds (#1428) Non-tagged builds (test-app branch, manual dispatch) only uploaded the DMG as a GitHub artifact, which requires authentication to download. Added an early exit path that uploads the DMG with a commit hash suffix (EXO-.dmg) for non-tagged builds, making it publicly accessible via S3. Test plan: - CI - https://github.com/exo-explore/exo/actions/runs/21837274032/job/63011907978 worked as intended Co-authored-by: rltakashige --- .github/workflows/build-app.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-app.yml b/.github/workflows/build-app.yml index b056b5e0..d20bfc12 100644 --- a/.github/workflows/build-app.yml +++ b/.github/workflows/build-app.yml @@ -396,7 +396,7 @@ jobs: path: output/EXO-${{ env.RELEASE_VERSION }}.dmg - name: Upload to S3 - if: env.SPARKLE_S3_BUCKET != '' && github.ref_type == 'tag' + if: env.SPARKLE_S3_BUCKET != '' env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} @@ -412,6 +412,12 @@ jobs: PREFIX="${PREFIX}/" fi DMG_NAME="EXO-${RELEASE_VERSION}.dmg" + + if [[ "${{ github.ref_type }}" != "tag" ]]; then + aws s3 cp "$DMG_NAME" "s3://${SPARKLE_S3_BUCKET}/${PREFIX}EXO-${GITHUB_SHA}.dmg" + exit 0 + fi + aws s3 cp "$DMG_NAME" "s3://${SPARKLE_S3_BUCKET}/${PREFIX}${DMG_NAME}" if [[ "$IS_ALPHA" != "true" ]]; then aws s3 cp "$DMG_NAME" "s3://${SPARKLE_S3_BUCKET}/${PREFIX}EXO-latest.dmg"