RFR: JDK-8170741: Enable uploading of built artifacts through Jib
Erik Joelsson
erik.joelsson at oracle.com
Fri Dec 9 14:55:58 UTC 2016
Hello
New webrev: http://cr.openjdk.java.net/~erikj/8170741/webrev.02/
On 2016-12-08 14:19, Magnus Ihse Bursie wrote:
> On 2016-12-05 16:35, Erik Joelsson wrote:
>> 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/
>
> Looks good to me overall, but I do not like the massive amount of code
> duplication in profilesArtifacts. These could, and should, be
> generated from some suitable input (like name of os and cpu in the
> resulting bundle, etc)
>
Fixed.
> The new print-config.js tool, is it used somewhere, or is it just
> provided as a development tool for adhoc use? Is common/conf really
> the proper place for it, and not common/bin?
>
Good point, moved.
/Erik
More information about the build-dev
mailing list