911 Commits

Author SHA1 Message Date
Scott Frederick
12c640e133 Upgrade default image builder version
This commit upgrades the default CNB builder image from
cloudfoundry/cnb:0.0.43-bionic to cloudfoundry/cnb:0.0.53-bionic.
It also adds integration tests for the Maven and Gradle plugins
to verify both versions are supported.
2020-02-06 17:24:29 -06:00
Scott Frederick
d07062652e Add support for CNB platform API v0.2
Cloud Native Buildpacks platform API version 0.2 introduced
two breaking changes: the order of invoking the restore and analyze
phases was reversed, and the cache phase was removed in favor of
distributing caching across other phases.

This commit adds support for Cloud Native Buildpacks builders that
implement platform API version 0.2, while maintaining compatibility
with builders that implement Lifecycle version platform API
version 0.1.

Closes gh-19829
2020-02-06 17:24:29 -06:00
Johnny Lim
6818279751 Fix typo
See gh-20049
2020-02-06 16:39:25 +01:00
dreis2211
268f696d19 Add missing deployed plugin to modules
This commit registers 'org.springframework.boot.deployed' to
spring-boot-configuration-metadata and spring-boot-properties-migrator
to make sure they are deployed as expected.

See gh-20051
2020-02-06 16:29:20 +01:00
Andy Wilkinson
5c2b28cb57 Merge branch '2.2.x'
Closes gh-20043
2020-02-05 14:10:04 +00:00
Stephane Nicoll
b5e23e7405 Update copyright year of changed files
See gh-20020
2020-02-03 17:39:40 +01:00
Johnny Lim
b67ece48e4 Polish
See gh-20020
2020-02-03 17:37:01 +01:00
dreis2211
e4a95a8047 Upgrade to Ivy 2.5.0
See gh-20022
2020-02-03 17:35:33 +01:00
dreis2211
326092b69e Upgrade to Ant 1.10.7
See gh-20002
2020-02-03 10:29:24 +01:00
Andy Wilkinson
bca98c5126 Use a RegularFileProperty to configure BootBuildImage's input jar
Closes gh-20010
2020-02-02 14:39:50 +00:00
Johnny Lim
e6d5f5a271 Polish
See gh-19995
2020-02-01 09:24:20 +01:00
Phillip Webb
cbacab5e26 Polish 2020-01-30 17:14:36 -08:00
Phillip Webb
1eee83a07e Update copyright year of changed files 2020-01-30 17:09:49 -08:00
Phillip Webb
234c5033d4 Polish whitespace 2020-01-30 17:09:49 -08:00
Scott Frederick
653cabe2ce Add documentation for gradle bootBuildImage task 2020-01-30 17:54:15 -06:00
Madhura Bhave
bceed1305f Jar files added after build time should be added to classpath
Fixes gh-19973
2020-01-30 15:38:49 -08:00
Scott Frederick
b281af0b9b Remove adding of existing layers to EphemeralBuilder
Layers were being added to the EphemeralBuilder each time one was
created, but those layers already existed in the base builder image.

Closes gh-19832
2020-01-30 16:34:02 -06:00
Andy Wilkinson
7b0d1eaffc Test the Gradle Plugin against Gradle 6.1.1
Closes gh-19912
2020-01-30 15:12:30 +00:00
Andy Wilkinson
2725264be1 Polishing formatting of DockerApi 2020-01-30 14:08:45 +00:00
Andy Wilkinson
28442b5ca5 Lower the minimum required Docker API version to 1.24
Closes gh-19945
2020-01-30 13:57:18 +00:00
Andy Wilkinson
54b3f480b4 Use posix long names when creating tar archive for image building
Fixes gh-19964
2020-01-30 13:31:27 +00:00
Scott Frederick
c6a6024062 Stop image building on error from builder
Previously, the image builder used by the build tool plugins ignored
errors from lifecycle phases and continued with subsequent phases.

This commit inspects the status of the builder container after each
lifecycle phase and aborts the image building process if the exit
status of the container after any phase is non-zero.

Fixes #19949
2020-01-29 17:51:32 -06:00
dreis2211
d8e2349e47 Use Supplier variants of Assert
See gh-19864
2020-01-28 15:04:11 +01:00
Stephane Nicoll
9fbaf7611b Merge branch '2.2.x'
Closes gh-19966
2020-01-28 14:43:54 +01:00
Stephane Nicoll
b420bdb3ac Merge branch '2.1.x' into 2.2.x
Closes gh-19965
2020-01-28 14:43:30 +01:00
dreis2211
db2bacc62a Fix Gradle plugin documentation links
See gh-19961
2020-01-28 14:41:05 +01:00
dreis2211
741a4f4b2b Fix links in Maven Plugin documentation
See gh-19952
2020-01-28 10:50:36 +01:00
Stephane Nicoll
5410148f79 Improve documentation of 'image' parameter of Maven Plugin
Closes gh-19950
2020-01-27 20:56:42 +01:00
Stephane Nicoll
11c5fba355 Remove unnecessary execution-specific configuration in documentation
This documentation moves the specific `build-image` execution
configuration example of the Maven plugin documentation to the general
plugin configuration. This makes sure that it works in most cases and
an execution-specific configuration is not required here anyway.

Closes gh-19946
2020-01-27 20:12:00 +01:00
Stephane Nicoll
07a1783572 Polish "Introduce appendix section with version properties"
See gh-19898
2020-01-27 14:53:52 +01:00
dreis2211
65394582f6 Introduce appendix section with version properties
With the introduction of Gradle we lost the list of version properties
that were previously in the spring-boot-dependencies POM and were also
linked inside the documentation. This commit introduces an appendix
section in the docs and links the appropriate places to the new section
to restore discoverability.

See gh-19898
2020-01-27 14:53:32 +01:00
Andy Wilkinson
63b736d1f0 Fix NPE when waiting for named socket path to become available
Fixes gh-19941
2020-01-27 11:38:19 +00:00
Stephane Nicoll
3290313eb7 Fix Docker socket creation on Windows
Closes gh-19908
2020-01-27 07:29:16 +01:00
dreis2211
d75de39456 Upgrade to JUnit Jupiter 5.6.0
See gh-19907
2020-01-26 08:39:12 +01:00
Madhura Bhave
1d62debf11 Fix typo 2020-01-24 16:37:48 -08:00
Stephane Nicoll
0bd03fa278 Fix xml syntax in example
Closes gh-19906
2020-01-24 16:01:44 +01:00
dreis2211
d84ca1149c Test the Gradle Plugin against Gradle 6.1
See gh-19776
2020-01-24 13:46:00 +01:00
Andy Wilkinson
cbee16318f Fix version references in Maven Plugin's reference documentation
Closes gh-19878
2020-01-23 16:37:18 +00:00
Stephane Nicoll
331ebe90e0 Restore @since on build-image parameters 2020-01-23 16:47:03 +01:00
Stephane Nicoll
63019ab3f1 Add documentation for Maven plugin's build-image support
Closes gh-19830
2020-01-23 16:35:45 +01:00
Stephane Nicoll
6df5e7af4f Add integration tests for Maven plugin's build-image support
See gh-19830
2020-01-23 16:06:11 +01:00
Andy Wilkinson
0a9fe65443 Use line endings on all OSs when writing image config JSON
Previously \r\n was used on Windows and \n was used on other
platforms. This resulted in different JSON content being written to
the archive. As the config's entry name is the SHA-256 hash of its
content, it also resulted in the entry name being different.

This commit updates the JSON that's written into the archive to use
\n line endings, irrespective of the OS on which the image is being
built.

See gh-19828
2020-01-23 14:37:06 +00:00
Andy Wilkinson
a0b4cdee44 Make line ending expectations in TotalProgressBarTests OS-independent
See gh-19828
2020-01-23 14:14:14 +00:00
Andy Wilkinson
1d396abec5 Fix bootBuildImage integration tests on Java 13
We build with Java 8, 11, and 13 without specifying target
compatibility for the bytecode of the app that's placed in the image.
The built image uses Java 11 and when the app is built with Java 13
it fails to start as the Java 11 VM can't read that Java 13 bytecode.

This commit configures the app that's placed in the image to be built
with target compatibility of 1.8. This allows it to be compiled with
all version of Java with which we build and to also be compatible
with the JVM that's in the image.

See gh-19831
2020-01-23 13:50:22 +00:00
Stephane Nicoll
105db66553 Polish 2020-01-23 14:04:19 +01:00
Stephane Nicoll
e044817fe7 Migrate remaining use of ClassLoader.loadClass to Class.forName
Closes gh-19824
2020-01-23 13:15:45 +01:00
Andy Wilkinson
01a0a54f78 Include layertools in layered jars build with Gradle
Closes gh-19867
2020-01-23 11:43:19 +00:00
Andy Wilkinson
288f5ceaee Fix zip compression of libs in layered jars
Closes gh-19792
2020-01-23 11:40:13 +00:00
Andy Wilkinson
0bd0b2a6c0 Add support for building OCI images using the Gradle plugin
Closes gh-19831
2020-01-23 10:52:57 +00:00
Andy Wilkinson
bc452bc094 Polish BootJarTests
See gh-19847
See gh-19792
2020-01-23 10:05:33 +00:00