Fast CI for all branches in gitster/git, was Re: [PATCH v4 00/21] Offer to run CI/PR builds in Azure Pipelines

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

On Wed, 23 Jan 2019, Johannes Schindelin via GitGitGadget wrote:

>  * The Windows job was split into a job to build Git and 10 parallel
>  jobs to run the test suite with the artifacts built by the first job.
>  This reduces the overall run time from ~1h20 (which was the run time by
>  the Windows job) to ~35 minutes (which is the run time of the linux-gcc
>  job).

This improvement in run time is something I was very, very excited about,
because it finally lets me use the cloud as my build & test machine,
effectively.

And not only me! You can use it, too, because I ported part of this Azure
Pipeline to GitGitGadget's Git fork, it is now the default PR build. It
takes about 20 minutes to complete if nothing else is building at the
time, and if it is all green, you can be relatively sure that your code is
good on Windows, macOS and Linux.

If you want to test your code that way, just open a PR on
https://github.com/gititgadget/git and wait for what GitHub calls "Check"
to complete.

Since the Pipeline is now so fast, and since I have to mirror the branches
in gitster/git to gitgitgadget/git anyway (so that you can contribute
patch series on top of other patch series that are in-flight), I also
decided to turn on the same PR build as CI build: whenever Junio pushes a
new branch or a branch update (and when that change is picked up by the
Pipeline that mirrors it into gitgitgadget/git), the Pipeline will run, so
I will never have to bisect `pu` again (which is a pain due to the many,
many, many merge bases) but instead the respective broken branch (because
I can now see which branch is broken directly).

You can even see those build outcomes yourself at

	https://github.com/gitgitgadget/git/branches/active

Each of those checkmarks (or red X marks) represents a build, and you can
click on it to see the Checks, click on the Details of "CI for
GitGitGadget's Git fork" and finally follow the "View more details on
Azure Pipelines" link to see the full build log.

For example, the build log of the ph/pack-objects-mutex-fix branch is
here: https://dev.azure.com/gitgitgadget/git/_build/results?buildId=248

Enjoy,
Johannes



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux