flyingcircusio / batou

batou is a universal, fractal deployment utility using Python.
https://batou.readthedocs.org
Other
47 stars 12 forks source link

User story for re-init git-bundle on remotes after history rewriting #443

Open frlan opened 4 months ago

frlan commented 4 months ago

From time to time after a force push of a feature branch batou's git-bundle is not able to resolve the diff and fails. Example:

ERROR: Created invalid bundle (0 bytes):
fatal: Invalid revision range 04de9fa18a7a6a104e61c45b09b9a75d0565ec1f..master

ERROR: Created invalid bundle (0 bytes):
fatal: Invalid revision range 04de9fa18a7a6a104e61c45b09b9a75d0565ec1f..master

(in this example 04de9fa18a7a6a104e61c45b09b9a75d0565ec1f was removed due to some history rewriting on purpose and totally correct)

This kind of error in general indicates that something (on user side) is unexpected wrong. But in some reasons (e.g. force push on feature branch that deletes current checked out deployment revision on remote) it leads to much manual affords as you have to login to all remotes and clear up .git folder -- having a deployment with 20+ hosts in mind.

It would be handy to have maybe something like ./batou deploy --re-init-bundle or similar, to let batou do the dirty work.