aozmekik commented on code in PR #45794:
URL: https://github.com/apache/superset/pull/45794#discussion_r4391821293
##########
.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
Review Comment:
Sure, removed. That was about the CI job, not your comment. Pinging me made
sense since it showed up right after my merge, thanks for that.
##########
.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:
Master gets squash merges, so a push there is one commit that already ran
this check as a PR. Before this change the push run compared the tip with
itself, so nothing was checked on push at all. Happy to switch pushes to
`github.event.before` if a maintainer prefers 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]