RFR: JDK-8170741: Enable uploading of built artifacts through Jib

Erik Joelsson erik.joelsson at oracle.com
Mon Dec 5 15:35:22 UTC 2016


For a while now, Oracle engineers have been able to configure builds of 
JDK 9 with binary dependencies automatically downloaded from an artifact 
storage, using Jib. Since then, Jib has been enhanced to also support 
publishing build artifacts produced by the build into the same storage. 
Such artifacts can subsequently be used as dependencies for other build 
targets.

With this change, the Jib profiles configuration in JDK 9 are updated to 
leverage this new functionality in Jib. By doing this, we are able to 
express and define all deliverables from the build in the source code. 
We are also able to define possible workflows where one build step 
requires input from another.

This change attempts to describe all artifacts currently built and 
stored by RE, with a few known exceptions that will be adjusted in 
followup fixes.

With this change, there is a fair bit of refactoring in the 
jib-profiles.js file(s). The old designe resulted in a fair bit of 
duplicated configure arguments and it was hard to control what settings 
got duplicated in variants of profiles, such as *-debug. I believe the 
new patterns are more flexible without sacrificing readability. I have 
manually inspected the generated configure lines for all relevant 
profiles and compared before and after the change to make sure no 
regressions are introduced by this.

I moved more of the default version numbers into the version-numbers 
file so that they can be read from jib-profiles.js.

In langtools/test/Makefile, I made it possible to override the 
TEST_OUTPUT_DIR, like it is currently possible for the other test 
makefiles.

Bug: https://bugs.openjdk.java.net/browse/JDK-8170741

Webrev: http://cr.openjdk.java.net/~erikj/8170741/webrev.01/

/Erik




More information about the build-dev mailing list