From 6076c9b5dca922429de517693fe336acd744e4a7 Mon Sep 17 00:00:00 2001 From: Lifei Zhou Date: Thu, 5 Jun 2025 13:34:31 +1000 Subject: [PATCH] fix: pass ref in pr comment workflow (#2777) Co-authored-by: Michael Neale --- .github/workflows/bundle-desktop-intel.yml | 7 +++++++ .github/workflows/bundle-desktop-windows.yml | 7 +++++++ .github/workflows/pr-comment-bundle-intel.yml | 16 ++++++++++++++++ .github/workflows/pr-comment-bundle-windows.yml | 16 ++++++++++++++++ .github/workflows/trigger-build-cli.yml | 10 ---------- 5 files changed, 46 insertions(+), 10 deletions(-) delete mode 100644 .github/workflows/trigger-build-cli.yml diff --git a/.github/workflows/bundle-desktop-intel.yml b/.github/workflows/bundle-desktop-intel.yml index 8d614af2..b4b9e77b 100644 --- a/.github/workflows/bundle-desktop-intel.yml +++ b/.github/workflows/bundle-desktop-intel.yml @@ -21,6 +21,10 @@ on: required: false default: true type: boolean + ref: + type: string + required: false + default: 'refs/heads/main' secrets: CERTIFICATE_OSX_APPLICATION: description: 'Certificate for macOS application signing' @@ -77,6 +81,9 @@ jobs: - name: Checkout code uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + with: + ref: ${{ inputs.ref }} + fetch-depth: 0 # Update versions before build - name: Update versions diff --git a/.github/workflows/bundle-desktop-windows.yml b/.github/workflows/bundle-desktop-windows.yml index b0757ac4..784079cf 100644 --- a/.github/workflows/bundle-desktop-windows.yml +++ b/.github/workflows/bundle-desktop-windows.yml @@ -17,6 +17,10 @@ on: required: false WINDOWS_CERTIFICATE_PASSWORD: required: false + ref: + type: string + required: false + default: 'refs/heads/main' jobs: build-desktop-windows: @@ -27,6 +31,9 @@ jobs: # 1) Check out source - name: Checkout repository uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 + with: + ref: ${{ inputs.ref }} + fetch-depth: 0 # 2) Set up Node.js - name: Set up Node.js diff --git a/.github/workflows/pr-comment-bundle-intel.yml b/.github/workflows/pr-comment-bundle-intel.yml index b7fa7ca8..24224b1d 100644 --- a/.github/workflows/pr-comment-bundle-intel.yml +++ b/.github/workflows/pr-comment-bundle-intel.yml @@ -30,6 +30,7 @@ jobs: continue: ${{ steps.command.outputs.continue || github.event_name == 'workflow_dispatch' }} # Cannot use github.event.pull_request.number since the trigger is 'issue_comment' pr_number: ${{ steps.command.outputs.issue_number || github.event.inputs.pr_number }} + head_sha: ${{ steps.set_head_sha.outputs.head_sha || github.sha }} steps: - if: ${{ github.event_name == 'issue_comment' }} uses: github/command@319d5236cc34ed2cb72a47c058a363db0b628ebe # pin@v1.3.0 @@ -40,6 +41,20 @@ jobs: reaction: "eyes" allowed_contexts: pull_request + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # pin@v4 + + - name: Get PR head SHA with gh + id: set_head_sha + run: | + echo "Get PR head SHA with gh" + HEAD_SHA=$(gh pr view "$ISSUE_NUMBER" --json headRefOid -q .headRefOid) + echo "head_sha=$HEAD_SHA" >> $GITHUB_OUTPUT + echo "head_sha=$HEAD_SHA" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ISSUE_NUMBER: ${{ steps.command.outputs.issue_number }} + bundle-desktop-intel: # Only run this if ".bundle-intel" command is detected. needs: [trigger-on-command] @@ -47,6 +62,7 @@ jobs: uses: ./.github/workflows/bundle-desktop-intel.yml with: signing: true + ref: ${{ needs.trigger-on-command.outputs.head_sha }} secrets: CERTIFICATE_OSX_APPLICATION: ${{ secrets.CERTIFICATE_OSX_APPLICATION }} CERTIFICATE_PASSWORD: ${{ secrets.CERTIFICATE_PASSWORD }} diff --git a/.github/workflows/pr-comment-bundle-windows.yml b/.github/workflows/pr-comment-bundle-windows.yml index 6611863d..a394818e 100644 --- a/.github/workflows/pr-comment-bundle-windows.yml +++ b/.github/workflows/pr-comment-bundle-windows.yml @@ -30,6 +30,7 @@ jobs: continue: ${{ steps.command.outputs.continue || github.event_name == 'workflow_dispatch' }} # Cannot use github.event.pull_request.number since the trigger is 'issue_comment' pr_number: ${{ steps.command.outputs.issue_number || github.event.inputs.pr_number }} + head_sha: ${{ steps.set_head_sha.outputs.head_sha || github.sha }} steps: - if: ${{ github.event_name == 'issue_comment' }} uses: github/command@319d5236cc34ed2cb72a47c058a363db0b628ebe # pin@v1.3.0 @@ -40,6 +41,20 @@ jobs: reaction: "eyes" allowed_contexts: pull_request + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # pin@v4 + + - name: Get PR head SHA with gh + id: set_head_sha + run: | + echo "Get PR head SHA with gh" + HEAD_SHA=$(gh pr view "$ISSUE_NUMBER" --json headRefOid -q .headRefOid) + echo "head_sha=$HEAD_SHA" >> $GITHUB_OUTPUT + echo "head_sha=$HEAD_SHA" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ISSUE_NUMBER: ${{ steps.command.outputs.issue_number }} + bundle-desktop-windows: # Only run this if ".bundle-windows" command is detected. needs: [trigger-on-command] @@ -47,6 +62,7 @@ jobs: uses: ./.github/workflows/bundle-desktop-windows.yml with: signing: false # false for now as we don't have a cert yet + ref: ${{ needs.trigger-on-command.outputs.head_sha }} secrets: WINDOWS_CERTIFICATE: ${{ secrets.WINDOWS_CERTIFICATE }} WINDOWS_CERTIFICATE_PASSWORD: ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD }} diff --git a/.github/workflows/trigger-build-cli.yml b/.github/workflows/trigger-build-cli.yml deleted file mode 100644 index 6647a746..00000000 --- a/.github/workflows/trigger-build-cli.yml +++ /dev/null @@ -1,10 +0,0 @@ -on: - workflow_dispatch: - -name: Trigger Build CLI - -jobs: - trigger-build-cli: - uses: ./.github/workflows/build-cli.yml - with: - ref: ${{ github.sha }} \ No newline at end of file