Split the subtree into a new branch before pushing to common. This
creates a new branch automatically and ensures no weird histories get
committed to common.
clear and set the buildx context on push. Then use --push with buildx
build to push the multi-arch images immediately after creating them.
This gets around the need to store them locally (which won't work for
something like an M1 mac).
Sometimes you can get stuck in a loop where git stash pop preserves the
stash commit. Dropping that commit if it's a STASH commit after an
update is totally fine.
Add warning before make-update and make-push to alert developers that
running the commands might be destructive. Allow cancelling the command
up to 3 seconds before continuing. Also explain that merge conflicts
warrant a re-run of the command.
Rather than potentially leaving the developer in a state where `git
stash pop` wasn't run, ignore failures in git subtree and let the
developer fix issues and re-run the command. This makes `make-update`
more idempotent.
Docker-run was only useful in very specific projects. Projects should
either define their own "run" in their Makefile, add a
docker-compose.yaml, or specify instructions in the README.
Instead of putting everything in one makefile switch to a folder called
"make" with multiple makefiles. Move the original makefile to
"docker.makefile" and add kaniko and truenas to fill in later.