hainenber commented on code in PR #45794:
URL: https://github.com/apache/superset/pull/45794#discussion_r4392009701
##########
.github/workflows/superset-translations.yml:
##########
@@ -109,21 +109,19 @@ jobs:
- name: Fetch base ref and create comparison worktree
if: steps.check.outputs.python == 'true' ||
steps.check.outputs.frontend == 'true'
env:
- PR_BASE_REF: ${{ github.event.pull_request.base.ref }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# The checkout above does not persist credentials, and an anonymous
# fetch only works against a public repository. Authenticate this
# one fetch so the comparison also works in private forks/mirrors.
AUTH_HEADER="AUTHORIZATION: basic $(printf 'x-access-token:%s'
"$GH_TOKEN" | base64 | tr -d '\n')"
- # For PRs use the base branch; for direct pushes compare against the
previous commit.
- BASE_REF="$PR_BASE_REF"
- if [ -n "$BASE_REF" ]; then
- git -c "http.extraheader=$AUTH_HEADER" fetch --depth=1 origin
"$BASE_REF"
- else
- git -c "http.extraheader=$AUTH_HEADER" fetch --depth=2 origin
"$GITHUB_REF"
- fi
- git worktree add /tmp/base-worktree FETCH_HEAD
+ # Compare against the first parent of the checked-out commit: the
+ # base commit the PR merge ref was built on, or the previous commit
+ # for a direct push. Fetching the branch tip instead picks up
+ # anything merged while this job was queued, so the PR gets blamed
+ # for the difference.
+ git -c "http.extraheader=$AUTH_HEADER" fetch --depth=2 origin
"$GITHUB_SHA"
+ git worktree add /tmp/base-worktree "$GITHUB_SHA^1"
Review Comment:
IMO, you can keep the old logic and the PR_BASE_REF var but with some small
changes:
- Separate `git worktree add` for each conditional blocks.
- For the `else` block, continue using `git work tree` with "$GITHUB_SHA^1"
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]