Same HEAD different branch

I find it pretty invasive that if I diverge off of someone’s branch push upstream and trigger buildkite (note they both point to the same HEAD sha) that I will be cancelling my siblings buildkite run. I think each buildkite run should be a composition of SHA-branch rather than just SHA.

Hey @MikePresman

Thanks for reaching out

Can i get some more information about your use case, do you have some Build Skipping setting on your pipeline?

Also it would be helpful to send a build link to so we can take a closer look


No build skipping setting.

I should probably better explain the scenario.

Bob is working on a git feature branch ‘featureA’ where the HEAD of that branch is e234ak. Bob pushes that HEAD commit to github. Buildkite is subscribed to github webhooks and see’s Bob pushed the commit related to e234ak and Buildkite starts running the pipeline related to that commit SHA e234ak. Bob waits as he knows his work typically takes Buildkite an hour to run.

Tom decides he likes Bob’s work and wants to work off of it. So he diverges off of Bob’s branch. Tom diverges e234ak which is Bob’s last commit but onto a branch named featureB. Tom pushes up to github. Buildkite sees Tom pushed up and see’s the last commit was e23ak.

Currently the way buildkite will work, is that Bob’s buildkite pipeline will be terminated because Tom came in after with the SAME commit sha and takes priority to Tom because he was last.
Bob is now upset because he has to create a unique commit SHA and rerun the build. Tom meant no harm.

I hope this makes sense.

Hey @MikePresman

Thank you for clarifying the scenario. It sounds like you’re facing a situation where two developers, Bob and Tom, are working on separate branches but based on the same commit

I can’t really share information on your specific pipeline, In your organization as it does have Build Skipping Enabled for any branch that is not main. Could this be what is skipping/canceling these builds. Because i dont see the Github Setting for skipping on this pipeline

Also another one has the skip exising commit for PR builds