On 20 Aug 2015, at 6:13, Paul Jakma wrote:

On Wed, 19 Aug 2015, Martin Winter wrote:

Let’s clarify this: There are obviously exceptions (i.e. where multiple commits are required for something to work), but I expect that in this case they would be bundled as a single commit in most cases.

The CI tool (I use Atlassian Bamboo, but from my testing Jenkins works the same way), pick up on changes in the Git and will trigger a run. “Changes”, not a single commit. So if 10 commits are pushed, then it will only do a single run based on the latest one. I haven’t seen a good way to change this in any CI system.

Well, on the commiters side, each commit is an individual commit. Sometimes 1 commit in the git tree may be the result of a number of commits (e.g. amending, rebases that edit or squash).

When trees are pushed, that could push a bunch of commits in one go.

So what you're asking is to push a commit at a time, and wait till the CI has run before pushing the next?

Yes, when possible. Or at least just bundle related commits together.
My goal is still to have some automatic feedback on test results back to list (or maintainer) for each run, but at this time the result still needs too much manual investigation to make sure it’s not
a false alarm if things break.

Better would be to remember the last head the CI ran on, then after more commits are pulled in, go through each commit and do the CI on each? E.g. if abc123 was the last commit ID, then get the list of more recent commits, checkout and run the CI in that with something like:

for COMMIT in $(git rev-list abc123..); do
git checkout $COMMIT && runci() || exit ...
done

Unfortunately not without rewriting the whole CI system (as fas as I know). Atlassian Bamboo (which I use) and Jenkins work in a way that they get triggered by git server telling them that new commits are available
or by polling a git server for changes.

Also, your suggestion would break builds in the rare case where multiple commits need to be tested together
to build a working system (not sure if and how often this might happen).

- Martin


So all I ask is committers to please not stack multiple commits and push in smaller (preferable single commits)
blocks.

Is something like the above possible?

regards,
--
Paul Jakma      [email protected]  @pjakma Key ID: 64A2FF6A
Fortune:
Either I'm dead or my watch has stopped.
                -- Groucho Marx's last words

_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to