In a feature branch/PR workflow it often occurs that builds get triggered on identical repo states. Therefore, pushing commits to a branch, build passes, fast-forward merge into master (code base is therefore identical), build is *rerun* on master.
From googling I’m surprised there’s such little discussion about this redundancy. The only article I found is this one: https://dev.to/taskworld/save-the-precious-build-minutes-reusing-build-outputs-with-git-tree-hash-k61 So clearly other people are thinking the same, but why aren’t more people interested in this? Am I missing some potentially non-obvious pitfalls?
So there are solutions to the problem, but they’re complex and verbose. The linked article’s solution could be used to easily skip pre-run stages, but what if I need the red/green status of that previous stage in order to run another (say deploy) stage? There are indeed ways to “fail fast”, but why are there not ways to “pass fast”?