aozmekik commented on code in PR #45794:
URL: https://github.com/apache/superset/pull/45794#discussion_r4392106193
##########
.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:
I'd keep the PR side on `^1` too, if that's OK. The #45709 and #45640
failures were PR runs: #45709 checked out 6cfbbe2, which GitHub merged onto
ff0af9c, but `git fetch origin master` returned f93aa5b because the job started
after #45741 landed. On a PR `$GITHUB_SHA` is that merge commit, so `^1` is the
master commit the PR was merged onto, just pinned instead of fetched later.
For the push block, the fetch would also need to be `$GITHUB_SHA` rather
than `$GITHUB_REF`. Once master has moved, `$GITHUB_SHA^1` isn't in a depth-2
fetch of the tip.
If you'd still rather have the two cases spelled out separately, I can do
that.
--
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]