fix(ci): the nightly manifest is edited on a stale master
`git checkout master` after `git fetch origin master` switches to the
LOCAL master -- the one actions/checkout left at this run's own SHA --
not the ref just fetched. A nightly build takes long enough that master
has usually moved by the time it finishes, so the manifest gets its new
entry prepended to a stale copy and the push is rejected:
! [rejected] master -> master (non-fast-forward)
Run 1045 failed this way, and the log is unambiguous about it: "Your
branch is behind 'origin/master' by 1 commit, and can be fast-forwarded"
appears one line before the commit that could not be pushed.
`checkout -B master origin/master` is the fix, and it is right rather
than merely convenient. This step appends one version entry to the
manifest as it stands on master, so the base it edits has to be master.
Editing the copy this build happened to start from and then forcing it
through would silently drop whatever landed in between.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -165,7 +165,18 @@ jobs:
|
||||
git config user.name "Gitea Actions"
|
||||
git config user.email "actions@gitea.tourolle.paris"
|
||||
git fetch origin master
|
||||
git checkout master
|
||||
# -B against origin/master, not a bare `checkout master`. The bare
|
||||
# form switches to the LOCAL master that actions/checkout left at the
|
||||
# run's own SHA, so if master moved while the build ran -- and this is
|
||||
# a nightly, so it usually has -- the manifest is edited on a stale
|
||||
# base and the push is rejected non-fast-forward. Run 1045 failed
|
||||
# exactly this way, having already printed "Your branch is behind
|
||||
# 'origin/master' by 1 commit" one line before committing anyway.
|
||||
#
|
||||
# Resetting is right rather than merely convenient: this step appends
|
||||
# one entry to the manifest as it stands on master, so the base it
|
||||
# edits must be master, not whatever this build started from.
|
||||
git checkout -B master origin/master
|
||||
|
||||
NEW_VERSION=$(cat <<EOF
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user