Build infrastructure

188 views
Skip to first unread message

Leonard Ehrenfried

unread,
Nov 2, 2015, 9:50:28 AM11/2/15
to dotty-internals
Hi,

I read the announcement about dotty being able to bootstrap and was inspired to help out with the project.

Unfortunately I'm not smart enough to work on the compiler itself but I have experience with setting up build infrastructure and would like to contribute there. Before I do anything though, I was wondering what the requirements for this are?

What could be done easily and quickly is setting up continuous integration with a free hosted service like Travis, CircleCi or Snap. This could build the compiler, run the tests and upload an artifact somewhere where people can download and test it.

Would that be at all useful or is that way below what you actually need?

All the best,
Leonard

Seth Tisue

unread,
Nov 2, 2015, 7:08:33 PM11/2/15
to dotty-internals
On Monday, November 2, 2015 at 9:50:28 AM UTC-5, Leonard Ehrenfried wrote:
Unfortunately I'm not smart enough to work on the compiler itself but I have experience with setting up build infrastructure and would like to contribute there. Before I do anything though, I was wondering what the requirements for this are?

Hi! It's nice to hear from someone with an interest in this. 

Currently Scala and Dotty share the same CI infrastructure. See the Jenkins jobs at https://scala-ci.typesafe.com/view/dotty/

The Jenkins stuff is all AWS and Chef based and the whole thing is documented, including requirements motivating the design, at https://github.com/scala/scala-jenkins-infra/blob/master/doc/overview.md. (A lot of the documentation is new, written by me in the last few months, based on Adriaan's notes. I'd be happy to improve anything that's unclear, on request.)

A bot called Scabot triggers Jenkins jobs for incoming pull requests on GitHub.

The Jenkins configs are in the scala-jenkins-infra repo, but the actual scripts that the Jenkins job runs are in each project's own repo, so for Dotty see https://github.com/lampepfl/dotty/tree/master/scripts/jobs/validate

There are a bunch of open issues on this stuff at https://github.com/scala/scala-jenkins-infra/issues and https://github.com/scala/scabot/issues (some of them a bit out of date or not very well explained, since it's usually been just 1 or 2 of us working on this stuff, but we can improve any given ticket on request). Most of the tickets were opened in a Scala context but would probably apply in a Dotty context as well (at least eventually if not right now).

I'm just a spectator on Dotty, unless something in the CI breaks :-), so perhaps the Dotty folks could comment on what kind of help they might be able to use here. And/or, you might just look through the open issues and see what interests you.

Reply all
Reply to author
Forward
0 new messages