diff --git a/.github/workflows/build-observer-firmwares.yml b/.github/workflows/build-observer-firmwares.yml index fb366277..35514591 100644 --- a/.github/workflows/build-observer-firmwares.yml +++ b/.github/workflows/build-observer-firmwares.yml @@ -320,7 +320,9 @@ jobs: fi echo "push rejected (attempt $attempt); rebasing onto origin/$br" git fetch origin "$br" - git rebase "origin/$br" || { + # --autostash so a dirty tree can never make the rebase refuse to run; + # nothing unstaged gets published either way. + git rebase --autostash "origin/$br" || { git rebase --abort || true echo "::error::flasher rebase conflicted; re-run this workflow to republish" exit 1 diff --git a/.github/workflows/sync-flasher-content.yml b/.github/workflows/sync-flasher-content.yml index a5685a9c..93ef1b34 100644 --- a/.github/workflows/sync-flasher-content.yml +++ b/.github/workflows/sync-flasher-content.yml @@ -86,7 +86,9 @@ jobs: fi echo "push rejected (attempt $attempt); rebasing onto origin/$br" git fetch origin "$br" - git rebase "origin/$br" || { + # --autostash so a dirty tree can never make the rebase refuse to run; + # nothing unstaged gets published either way. + git rebase --autostash "origin/$br" || { git rebase --abort || true echo "::error::flasher rebase conflicted; re-run this workflow to resync" exit 1