aboutsummaryrefslogtreecommitdiff
path: root/hack/buildah-vendor-treadmill
Commit message (Collapse)AuthorAge
* Treadmill script: revampEd Santiago2022-05-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Major revamp: instead of stacking a vendor commit on top of the treadmill changes, do it the other way around: vendor, then apply treadmill diffs. Reason: the build-all-new-commits test. Sigh. It fails in the common case where our treadmill changes include a new struct element in cmd/podman/images/build.go Why this is good: well, superficially, it's more intuitive. Why this is horrible: omg the rebasing games are a nightmare. When the vendor commit is on top (HEAD), it's ultra-trivial to drop it, rebase the treadmill changes on main, then add a new vendor-buildah commit on top. As you can see from the diffs in this PR, treadmill-as-HEAD introduces all sorts of complex dance steps in which things can go catastrophically wrong and you can lose all your treadmill patches. I try very hard to prevent this, and to offer hints if there's a problem, and heck in the worst case it's still git so it's still possible to find lost commits... but it's still much riskier than the old way. Alternative I considered: using sed magic to disable the build-all-new-commits test. So tempting... but that would also disable the bloat check. Signed-off-by: Ed Santiago <santiago@redhat.com>
* buildah-vendor-treadmill script: yet more checksEd Santiago2022-04-29
| | | | | | | | | | | | | | | | | | | | More safety checks for the treadmill script: * for --sync: - issue warning if HEAD is not a vendor commit - if run-buildah-bud-tests fails, leave the working dir for user to investigate. And offer a long helpful warning. - tweak .cirrus.yml so buildah-bud tests run early, so we can fail early. (Remember, the top commit will never ever ever ever be merged) * for --pick: - check branch merge-base (of your vendor-update branch), compare against that of the treadmill PR. If treadmill is newer, bail, and suggest rebasing. This would've saved us some time in #14005. Signed-off-by: Ed Santiago <santiago@redhat.com>
* Buildah Vendor Treadmill: the scriptEd Santiago2022-04-20
This is the script I've been using (and tweaking) for the past two weeks. It's ready for general review and use, with the proviso that there are still corner cases I haven't tested. See https://github.com/containers/podman/wiki/Buildah-Vendor-Treadmill for an overview and instructions. Signed-off-by: Ed Santiago <santiago@redhat.com>