JDK submit repo

Aleksey Shipilev shade at redhat.com
Wed Jan 24 12:00:49 UTC 2018

On 01/23/2018 09:33 PM, mark.reinhold at oracle.com wrote:
> The submit repo is now open for pushes from any JDK Committer:
>   http://hg.openjdk.java.net/jdk/submit
> If you push a branch whose name starts with "JDK-" into this repo
> then it will automatically be built and tested on Oracle's internal
> build system, and a summary of the results will be e-mailed back to
> you.  This typically takes a couple of hours.  If one or more tests
> fail then you can contact an Oracle engineer to get more information
> about the failures.

Excellent, thank you! Trying it now!

> The default branch of the submit repo is automatically kept in sync
> with the main-line repo, jdk/jdk.

Which gives us the important tip for dealing with uber-large monorepo: clone/copy the jdk/jdk repo
from somewhere local, update .hg/hgrc to point to jdk/submit, and hg pull the updates. This saves
significant amount of time and bandwidth, especially if checking out from Europe.

Alternatively, you can pick up the workspace tarball from here:

> This is (obviously) not the complete open build-and-test system that
> we'd all like to see in the long run, but until we have such a system
> it will hopefully help us be a bit more productive.

This thing look oddly similar to JDK Sandbox. For the features that are already in Sandbox under the
named branches, does it make sense to provide the same kind of service? The push to Sandbox does not
always means push to testing system though. Maybe we can split "push" and "request-to-run"?

E.g. can committers have the interface to request the testing run for a given forest+branch within
hg.openjdk.java.net? This will cover projects that have their own repos, projects that have named
branches in JDK Sandbox, and JDK Submit repository would be the dumping ground for simpler transient
work that does not exist in any repo yet. This will also avoid contaminating JDK Submit repository
with lots of code (e.g. putting the *entire* multi-KLOC JDK project under the branch there?).

Committers already have SSH keys set up, so CLI might be the easiest answer, like this:

 $ ssh shade at submit.openjdk.java.net submit http://hg.openjdk.java.net/amber/amber/ condy

It also opens up the way to print gross sanity-check errors right away, provide options for the run,
reject some things right away, etc. Pretty sure it would be the very same code that is now ran by
Mercurial repo hooks or whatever?


More information about the jdk-dev mailing list