[llvm-dev] RFC: Using GitHub Actions for CI testing on the release/* branches

Reid Kleckner via llvm-dev llvm-dev at lists.llvm.org
Thu Dec 12 10:53:24 PST 2019


I think everyone agrees that LLVM needs better CI, automatic pre-commit
testing of various platforms, etc. This is not rocket science, it is
standard practice for 2019 software engineering.

I think my concern is that LLVM could prove to be too big and require too
many resources for github's infrastructure. How many patches go into LLVM a
day, and how many build and test jobs does GitHub allow users to run
concurrently before being throttled?

You may have seen that Christian Kuhnel has been working on a pre-commit
testing bot that integrates with Phab:
https://reviews.llvm.org/p/merge_guards_bot/
https://github.com/google/llvm-premerge-checks/blob/master/docs/user_doc.md
I hope that ends up being the way forward and suits Tom's original release
testing goals.

On Wed, Dec 11, 2019 at 11:43 PM John Byrd via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Please forgive the incorrect threading on this reply to Tom Stellard's RFC.
>
> > I would like to start using GitHub Actions[1] for CI testing on the
> release/*
> > branches.  As far as I know we don't have any buildbots listening to the
> > release branches, and I think GitHub Actions are a good way for us to
> > quickly bring-up some CI jobs there.
>
> Personally, I feel that Tom's proof of concept, is more important than we
> seem to be giving him credit for.
>
> As of this writing, the Github actions system permits all comers, six
> hours of CPU time per build platform.  Due to this long CPU allotment,
> AFAIK, Github is one of the few CIs in town that lets anyone build and
> smoke llvm for free.
>
> Consider the workflow of someone who has never worked on llvm before.
> They will probably fork the monorepo on Github, in order to fix bugs or add
> a feature or such.  At the moment they do this, they get a built-in
> workflow that will sanity-check their builds on several important targets.
> Zero braining involved.
>
> Giving Joe Programmer a CI system that magically smoke tests llvm, out of
> the box, after he forks the repo, is a compelling reason to make something
> like Tom's system a standard part of llvm master.
>
> Concerns might be raised that llvm is "preferring" one CI system over
> another.  Some thoughts about that.  First, because the monorepo's on
> Github, you'll end up going to github.com anyway to get your first pull.
> Second, nothing about Github actions precludes supporting other CI systems
> in the future.
>
> Thanks for your kind consideration.
>
> --
> ---
>
> John Byrd
> Gigantic Software
> 2321 E 4th Street
> Suite C #429
> Santa Ana, CA  92705-3862
> http://www.giganticsoftware.com
> T: (949) 892-3526 F: (206) 309-0850
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20191212/344ccbd2/attachment.html>


More information about the llvm-dev mailing list