Commit Graph

260 Commits

Author SHA1 Message Date
Spring Buildmaster
c0f9f64776 Next Development Version 2017-10-16 12:36:43 +00:00
Andy Wilkinson
cc16402ee4 Update war packaging tests to reflect change in Tomcat's dependencies
See gh-10395
2017-09-24 16:27:42 +01:00
Spring Buildmaster
30eb937a83 Next Development Version 2017-09-12 10:54:22 +00:00
Spring Buildmaster
17a5bb0be4 Next development version 2017-07-27 08:00:21 +00:00
Spring Buildmaster
41c5c0e7c9 Next development version 2017-07-26 08:30:55 +00:00
Phillip Webb
aa57ca7e18 Polish 2017-07-06 16:53:04 -07:00
Spring Buildmaster
05d4d0281c Next Development Version 2017-06-08 12:47:16 +00:00
Andy Wilkinson
d5184724b0 Downgrade Jersey to version that plays nicely with Docker's Java client 2017-06-03 19:40:21 +01:00
Andy Wilkinson
ec8ae2f91e Merge branch '1.4.x' into 1.5.x 2017-06-03 16:53:48 +01:00
Andy Wilkinson
e60a261952 Do not allow failure to remove container to mask earlier failure 2017-06-03 16:53:28 +01:00
Andy Wilkinson
a215103bb5 Merge branch '1.4.x' into 1.5.x 2017-06-03 13:11:39 +01:00
Andy Wilkinson
31ff7f1846 Tolerate Successfully built being found in response other than last
Different versions of Docker produce different responses when building
and tagging an image. On CI, a response with a stream like
"Successfully built 185991ffe24a" followed by a response with a
stream like "Successfully tagged spring-boot-it/centos:6.9-a23bced6"
is received. By default, for the building of an image to be considered
successful, the Docker Java client requires the stream for the last
response item to contain "Successfully built". This means that, on the
CI server, it incorrectly believes that the building of the tagged
image has failed.

This commit uses a custom BuildImageResultCallback that doesn't
require the last response to be the one that has a stream containing
"Successfully built". Instead, it looks back through the error-free
responses (newest to oldest) looking for one with a stream containing
"Successfully built".
2017-06-03 13:00:15 +01:00
Andy Wilkinson
5722c149d0 Merge branch '1.4.x' into 1.5.x 2017-06-03 09:55:29 +01:00
Andy Wilkinson
0270ccafa5 Enable Docker command debug logging to improve diagnostics on CI server 2017-06-03 09:54:13 +01:00
Andy Wilkinson
3cf8e81a8b Merge branch '1.4.x' into 1.5.x 2017-06-02 19:49:16 +01:00
Andy Wilkinson
a69a851ae9 Drop CentOS 5 from launch script tests and upgrade to 6.9
CentOS 5 was declared EOL in March 2017 and yum on longer works
out of the box. 6.9 is the latest release of CentOS 6. Tests for
CentOS 7 have not been added as it uses systemd rather than SysVinit.

Closes gh-9395
2017-06-02 19:45:45 +01:00
Spring Buildmaster
9768b0a8c2 Next Development Version 2017-04-21 08:32:01 +00:00
Spring Buildmaster
d719d2cbbc Next Development Version 2017-04-20 12:46:19 +00:00
Andy Wilkinson
17062f9589 Merge branch '1.4.x' into 1.5.x 2017-03-13 16:10:32 +00:00
Andy Wilkinson
2ddcf0e831 Avoid using File.renameTo(File) as it doesn't work on Windows 2017-03-13 15:46:19 +00:00
Andy Wilkinson
50c0204f2d Merge branch '1.4.x' into 1.5.x 2017-03-09 14:05:42 +00:00
Andy Wilkinson
d32c3a7f43 Correct the URL that's called to test servlet context resources
See gh-8299
Closes gh-8525
2017-03-09 14:04:19 +00:00
Andy Wilkinson
1395f38ee7 Merge branch '1.4.x' into 1.5.x 2017-03-09 13:11:28 +00:00
Andy Wilkinson
a2cf0455fd Fix static resource handling when run in IDE or using Maven or Gradle
The changes made for gh-8299 attempted to make static resource
handling consistent across Jetty, Tomcat, and Undertow. They did so
for application's launched using JarLauncher or WarLauncher but did
not consider application's launched in an IDE or using spring-boot:run
in Maven or bootRun in Gradle.

Running in an IDE or via Maven or Gradle introduces two new
resource locations:

 - Jars on the classpath with file protocol URLs (they are always
   jar protocol URLs when using either launcher)
 - Directories on the classpath from a project that is depended upon
   and contains resources in META-INF/resources

This commit updates the factories for all three containers to handle
these new resources locations. The integration tests have also been
updated.
2017-03-09 12:41:32 +00:00
Spring Buildmaster
d23fa24340 Next Development Version 2017-03-03 16:18:26 +00:00
Spring Buildmaster
2a83e80a9b Next Development Version 2017-03-03 14:39:21 +00:00
Phillip Webb
f1012c104a Polish 2017-03-01 23:29:20 -08:00
Phillip Webb
987b6c956e Polish 2017-03-01 20:43:04 -08:00
Andy Wilkinson
68af831059 Merge branch '1.4.x' into 1.5.x 2017-03-01 14:03:38 +00:00
Andy Wilkinson
b443b745fb Make static resource handling consistent across embedded containers
Previously, there were a number of inconsistencies in the embedded
containers' handling of static resources. The Servlet spec requires
that static resources can be served from the META-INF/resources/
directory of jars nested inside a war in WEB-INF/lib/. The intention
was also to extend this to cover jar packaging when jars are nested in
BOOT-INF/lib/. This worked when using Tomcat as long as Jasper was on
the classpath. If you didn't have Jasper on the classpath or you
were using Jetty or Undertow it did not work.

This commit updates the configuration of embedded Jetty, Tomcat, and
Undertow so that all three containers handle static resources in the
same way, serving them from jars in WEB-INF/lib/ or /BOOT-INF/lib/.
Numerous intergration tests have been added to verify the behaviour,
including tests for Tomcat 8.0 and 7.0 which is supported in addition
to the default 8.5.x. Note that static resource handling only works
with Jetty 9.3.x and 9.2 and earlier does not support nested jars (
see https://github.com/eclipse/jetty.project/issues/518 for details).

Closes gh-8299
2017-03-01 12:40:26 +00:00
Phillip Webb
47fd5f4fac Merge branch '1.4.x' into 1.5.x 2017-02-27 14:00:46 -08:00
Phillip Webb
47b00c086c Polish 2017-02-27 13:56:17 -08:00
Andy Wilkinson
f67dd957b1 Ignore excludeDevtools on extension when it has been set on bootRepackage
Previously, bootRepackage's excludeDevtools property would be
overridden by the springBoot extension's excludeDevtools property.
This prevented devtools from being included by configuring it on the
repackaging task.

This commit corrects the logic so that the setting on the repackaging
task takes priority. It also adds some tests to verify the behaviour.

Closes gh-8308
2017-02-16 09:45:51 +00:00
Spring Buildmaster
5c12500366 Next Development Version 2017-01-30 20:10:13 +00:00
Spring Buildmaster
a2696bf873 Next Development Version 2017-01-30 11:40:24 +00:00
Spring Buildmaster
ed1ce140c0 Next Development Version 2017-01-26 14:20:39 +00:00
Andy Wilkinson
ba8f7214d8 Merge branch '1.4.x' into 1.5.x 2017-01-18 13:39:48 +00:00
Andy Wilkinson
0e72ef1a10 Improve diagnostics for in StarterDependenciesIntegrationTests
The root cause of the build failure something has a null message which
means there's no information available about why the build failed.
Instead of calling fail when a BuildException occurs, this commit
wraps it in a RuntimeException and rethrows it. This should make the
entire chain of exceptions available when a failure occurs.
2017-01-18 13:38:10 +00:00
Andy Wilkinson
69e7e31b1c Merge branch '1.4.x' into 1.5.x 2017-01-16 20:42:40 +00:00
Andy Wilkinson
7c2664f959 Ensure that jar entry names use forward slashes, even on Windows
Previously, in the DevTools integration tests, portions of a File's
path were used to create the name of a jar entry. On Windows this
resulted in the entry containing \ characters. As a result the
directory structure was incorrect and the classes could not be loaded
from the jar.

This commit ensures that any \ characters are replaced with /
characters.

See gh-7782
2017-01-16 20:42:04 +00:00
Phillip Webb
aacf5d660f Update copyright year for changed files 2016-12-30 11:53:51 -08:00
Gaurav Rawat
509be7474d Add force-stop support to launch script
Update the embedded launch script to support `force-stop`.

Closes gh-6223
2016-12-29 22:20:05 -08:00
Phillip Webb
a23591e047 Support Jetty 9.4 and upgrade to 9.4.0.v20161208
Update `JettyEmbeddedServletContainerFactory` to support Jetty 9.4
directly and Jetty 9.3 via reflection. The primary difference between
Jetty 9.3 and 9.4 are the session management classes. Websocket suppport
has also been updates, but this is handled transparently by the
Spring Framework support.

Fixes gh-7599
2016-12-24 11:22:38 -08:00
Spring Buildmaster
9057f9ae1f Next development version 2016-12-23 00:15:23 +00:00
Phillip Webb
4b9cba351b Merge branch '1.4.x' into 1.5.x 2016-12-19 12:36:57 -08:00
Phillip Webb
bd74c3d327 Polish formatting 2016-12-19 12:25:09 -08:00
Johnny Lim
6d1b752ffe Polish
Closes gh-7552
2016-12-14 19:14:24 +01:00
Andy Wilkinson
b546fd1046 Merge branch '1.4.x' into 1.5.x 2016-12-02 13:41:15 +00:00
Andy Wilkinson
6061dd492e Increase timeout in DevTools integration tests and improve diagnostics 2016-12-02 13:40:22 +00:00
Vedran Pavic
8bd2e69915 Update Docker images used by launch script integration tests 2016-11-22 15:05:15 +00:00