This project automates the building and publication of Java Buildpack dependency artifacts.
To host the Java Buildpack dependency artifacts on your own server, first download the artifacts and index.yml
files as described below, make them available at suitable locations on a web server, and then fork the Java buildpack and update its repository configuration to point at the web server.
All the artifacts and index.yml
files may be downloaded using the replicate
script.
To use the script, issue the following commands from the root directory of a clone of this repository:
bundle install
bundle exec bin/replicate [--base-uri <BASE-URI> | --host-name <HOST-NAME>] --output <OUTPUT>
Option | Description |
---|---|
-b , --base-uri <BASE-URI> |
A URI to replace http://download.run.pivotal.io with, in index.yml files. This value should be the network location that the repository is replicated to (e.g. https://internal-repository:8000/dependencies ). Either this option or --host-name , but not both, must be specified. |
-h , --host-name <HOST-NAME> |
A host name to replace download.run.pivotal.io with, in index.yml files. This value should be the network host that the repository is replicated to (e.g. internal-repository ). Either this option or --base-uri , but not both, must be specified. |
-o , --output <OUTPUT> |
A filesystem location to replicate the repository to. This option must be specified. |
To run the builder, issue the following commands from the root directory of a clone of this repository:
bundle install
bundle exec bin/build [DEPENDENCY] [OPTIONS]
All components require a configuration file in order to be published. This YAML file contains credentials for various servers used during publishing. If unspecified with the --configuration
switch, it is expected to be at ~/.java_buildpack_dependency_builder.yml
. An example file looks like the following:
---
# Values are for default repository
:bucket: download.pivotal.io
:repository_root: http://download.run.pivotal.io
# Required AWS credentials
:access_key_id: <ACCESS_KEY_ID>
:secret_access_key: <SECRET_ACCESS_KEY>
# Optional CloudFront Distribution Id
:distribution_id: <DISTRIBUTION_ID>
# Optional AppDynamics download credentials
:app_dynamics_username: <USERNAME>
:app_dynamics_password: <PASSWORD>
Key | Description |
---|---|
:access_key_id |
AWS Access Key Id for the destination bucket and optional CloudFront distribution |
:app_dynamics_password |
(Optional) AppDynamics agent download password |
:app_dynamics_username |
(Optional) AppDynamics agent download username |
:bucket |
Publishing destination S3 bucket |
:distribution_id |
(Optional) The CloudFront distribution id for the destination bucket |
:respository_root |
The repository root URI that dependencies will be available at |
:secret_access_key |
AWS Secret Access Key for the destination bucket and optional CloudFront distribution |
Pivotal employees should contact Ben Hale for AWS and AppDynamics credentials if they have not already been issued and are needed.
In order to build OpenJDK for the linuxes you will need Vagrant and VirtualBox. Follow the default installation instructions for these applications.
In order to build OpenJDK for OS X you will need VMware Fusion and the build VM.
The list of available versions for each dependency can be found at the following locations.
Dependency | Location |
---|---|
App Dynamics | universal |
Auto Reconfiguration | universal |
Groovy | universal |
JBoss AS | universal |
MariaDB JDBC | universal |
New Relic | universal |
NodeJS | centos6 , lucid , mountainlion , precise , trusty |
OpenJDK | centos6 , lucid , mountainlion , precise , trusty |
Play JPA Plugin | universal |
PostgreSQL JDBC | universal |
RedisStore | universal |
Ruby | centos6 , lucid , mountainlion , precise , trusty |
Spring Boot CLI | universal |
tc Server | universal |
Tomcat | universal |
Tomcat Lifecycle Support | universal |
Tomcat Logging Support | universal |
To run the tests, issue the following commands from the root directory of a clone of this repository:
bundle install
bundle exec rake
Pull requests are welcome; see the contributor guidelines for details.
The Builder is released under version 2.0 of the Apache License.
---
This table shows locations to check for new releases of cached dependencies. It is used primarily by Pivotal employees to keep the caches up to date.
Dependency | Location |
---|---|
App Dynamics | release |
Auto Reconfiguration | release |
Groovy | release |
JBoss AS | release |
MariaDB JDBC | release |
New Relic | release |
NodeJS | stable , unstable |
OpenJDK | oracle , jdk8u , jdk7u , jdk6 |
Play JPA Plugin | release |
PostgreSQL JDBC | release |
RedisStore | release |
Ruby | release |
Spring Boot CLI | release |
tc Server | release |
Tomcat | 8.x , 7.x , 6.x |
Tomcat Lifecycle Support | release |
Tomcat Logging Support | release |
This table shows the mappings between versions, build numbers, and repository tags for OpenJDK releases. It is used primarily by Pivotal employees to keep track of exactly what was built and should not be considered authoritative.
JDK Version | Build Number | Tag | Centos6 | Lucid | OS X | Precise | Trusty |
---|---|---|---|---|---|---|---|
1.8.0_05 |
b13 |
jdk8u5-b13 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.8.0 |
b132 |
jdk8-b132 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.8.0_RC1 |
b128 |
jdk8-b128 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.8.0_M8 |
b106 |
jdk8-b106 |
✓ | ✓ | ✓ | ✓ | |
1.8.0_M7 |
b91 |
jdk8-b91 |
✓ | ✓ | ✓ | ✓ | |
1.8.0_M6 |
b75 |
jdk8-b75 |
✓ | ✓ | ✓ | ✓ | |
1.7.0_60 |
b19 |
jdk7u60-b19 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_55 |
b13 |
jdk7u55-b13 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_51 |
b31 |
jdk7u51-b31 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_45 |
b31 |
jdk7u45-b31 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_40 |
b43 |
jdk7u40-b43 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_25 |
b11 |
jdk7u25-b11 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_21 |
b30 |
jdk7u21-b30 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_17 |
b31 |
jdk7u17-b31 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_15 |
b33 |
jdk7u15-b33 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_14 |
b22 |
jdk7u14-b22 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_13 |
b30 |
jdk7u13-b30 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_12 |
b09 |
jdk7u12-b09 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_11 |
b33 |
jdk7u11-b33 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_10 |
b31 |
jdk7u10-b31 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_09 |
b32 |
jdk7u9-b32 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_08 |
b05 |
jdk7u8-b05 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_07 |
b31 |
jdk7u7-b31 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_06 |
b31 |
jdk7u6-b31 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.7.0_05 |
b30 |
jdk7u5-b30 |
✓ | ✓ | ✓ | ✓ | |
1.7.0_04 |
b31 |
jdk7u4-b31 |
✓ | ✓ | ✓ | ✓ | |
1.7.0_03 |
b04 |
jdk7u3-b04 |
✓ | ✓ | ✓ | ||
1.7.0_02 |
b21 |
jdk7u2-b21 |
✓ | ✓ | ✓ | ||
1.7.0_01 |
b08 |
jdk7u1-b08 |
✓ | ✓ | ✓ | ||
1.6.0_27 |
b27 |
jdk6-b27 |
✓ | ||||
1.6.0_26 |
b26 |
jdk6-b26 |
✓ | ||||
1.6.0_25 |
b25 |
jdk6-b25 |
✓ | ||||
1.6.0_24 |
b24 |
jdk6-b24 |
✓ | ||||
1.6.0_23 |
b23 |
jdk6-b23 |
✓ | ||||
1.6.0_22 |
b22 |
jdk6-b22 |
✓ | ||||
1.6.0_21 |
b21 |
jdk6-b21 |
✓ |
This table shows the mappings between version and tags for NodeJS releases. It is used primarily by Pivotal employees to keep track of exactly what was built and should not be considered authoritative.
NodeJS Version | Tag | Centos6 | Lucid | OS X | Precise | Trusty |
---|---|---|---|---|---|---|
0.11.13 |
v0.11.13 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.12 |
v0.11.12 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.11 |
v0.11.11 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.10 |
v0.11.10 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.9 |
v0.11.9 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.8 |
v0.11.8 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.7 |
v0.11.7 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.6 |
v0.11.6 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.5 |
v0.11.5 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.4 |
v0.11.4 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.3 |
v0.11.3 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.2 |
v0.11.2 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.1 |
v0.11.1 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.11.0 |
v0.11.0 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.29 |
v0.10.29 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.28 |
v0.10.28 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.27 |
v0.10.27 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.26 |
v0.10.26 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.25 |
v0.10.25 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.24 |
v0.10.24 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.23 |
v0.10.23 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.22 |
v0.10.22 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.21 |
v0.10.21 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.20 |
v0.10.20 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.19 |
v0.10.19 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.18 |
v0.10.18 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.17 |
v0.10.17 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.16 |
v0.10.16 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.15 |
v0.10.15 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.14 |
v0.10.14 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.13 |
v0.10.13 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.12 |
v0.10.12 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.11 |
v0.10.11 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.10 |
v0.10.10 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.9 |
v0.10.9 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.8 |
v0.10.8 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.7 |
v0.10.7 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.6 |
v0.10.6 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.5 |
v0.10.5 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.4 |
v0.10.4 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.3 |
v0.10.3 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.2 |
v0.10.2 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.1 |
v0.10.1 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.10.0 |
v0.10.0 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.12 |
v0.9.12 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.11 |
v0.9.11 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.10 |
v0.9.10 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.9 |
v0.9.9 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.8 |
v0.9.8 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.7 |
v0.9.7 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.6 |
v0.9.6 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.5 |
v0.9.5 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.4 |
v0.9.4 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.3 |
v0.9.3 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.2 |
v0.9.2 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.1 |
v0.9.1 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.9.0 |
v0.9.0 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.26 |
v0.8.26 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.25 |
v0.8.25 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.24 |
v0.8.24 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.23 |
v0.8.23 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.22 |
v0.8.22 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.21 |
v0.8.21 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.20 |
v0.8.20 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.19 |
v0.8.19 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.18 |
v0.8.18 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.17 |
v0.8.17 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.16 |
v0.8.16 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.15 |
v0.8.15 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.14 |
v0.8.14 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.13 |
v0.8.13 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.12 |
v0.8.12 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.11 |
v0.8.11 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.10 |
v0.8.10 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.9 |
v0.8.9 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.8 |
v0.8.8 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.7 |
v0.8.7 |
✓ | ✓ | ✓ | ✓ | ✓ |
0.8.6 |
v0.8.6 |
✓ | ✓ | ✓ | ✓ | ✓ |
This table shows the mappings between version and tags for Ruby releases. It is used primarily by Pivotal employees to keep track of exactly what was built and should not be considered authoritative.
Ruby Version | Centos6 | Lucid | OS X | Precise | Trusty |
---|---|---|---|---|---|
2.1.2 |
✓ | ✓ | ✓ | ✓ | ✓ |
2.1.1 |
✓ | ✓ | ✓ | ✓ | ✓ |
2.1.0 |
✓ | ✓ | ✓ | ✓ | ✓ |
2.0.0-p481 |
✓ | ✓ | ✓ | ✓ | ✓ |
2.0.0-p451 |
✓ | ✓ | ✓ | ✓ | |
2.0.0-p353 |
✓ | ✓ | ✓ | ✓ | |
2.0.0-p247 |
✓ | ✓ | ✓ | ||
2.0.0-p195 |
✓ | ✓ | ✓ | ||
2.0.0-p0 |
✓ | ✓ | ✓ | ||
1.9.3-p547 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.9.3-p545 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.9.3-p484 |
✓ | ✓ | ✓ | ✓ | ✓ |
1.9.3-p448 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p429 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p392 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p385 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p374 |
✓ | ✓ | ✓ | ||
1.9.3-p362 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p327 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p286 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p194 |
✓ | ✓ | ✓ | ✓ | |
1.9.3-p125 |
✓ | ✓ | ✓ | ✓ | |
1.9.2-p326 |
✓ | ✓ | ✓ | ||
1.9.2-p320 |
✓ | ✓ | ✓ | ✓ | |
1.9.2-p318 |
✓ | ✓ | ✓ | ✓ | |
1.9.2-p290 |
✓ | ✓ | ✓ | ✓ | |
1.9.2-p180 |
✓ | ✓ | |||
1.9.1-p430 |
✓ | ✓ | |||
1.9.1-p378 |
✓ | ✓ | |||
1.8.7-p375 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p374 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p371 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p370 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p358 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p357 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p352 |
✓ | ✓ | ✓ | ✓ | |
1.8.7-p334 |
✓ | ✓ | |||
1.8.7-p302 |
✓ | ✓ | |||
1.8.7-p249 |
✓ | ✓ |