Commit Graph

8734 Commits (c4b0bd1698af770ab3c58f00ea06daeb9df10c80)

Author SHA1 Message Date
Andreas Born db565cfc3a Improve handling of non-existent path in disk space health check
See gh-20580
5 years ago
Stephane Nicoll 960ab159e4 Document how to initialize a database with R2DBC
This commit adds a section to the reference guide on how to initialize
a database using R2DBC. 2 smoke tests are also added to validate this
behaviour with Flyway and Liquibase.

Closes gh-20742
5 years ago
Stephane Nicoll 12123d41e5 Make sure @DataR2dbcTest invokes database migration if necessary
Closes gh-20739
5 years ago
Stephane Nicoll 0616ecfa5c Make sure Liquibase works with only spring-jdbc on the classpath
This commit improves the Liquibase auto-configuration to only rely on
spring-jdbc when a `DataSource` should be created on-the-fly for the
purpose of its initialization.

Previously, a connection pool implementation must be added as well, now
we're fallbacking on `SimpleDriverDataSource` if necessary. This
improves the database initialization use case with R2DBC.

Closes gh-20715
5 years ago
Andy Wilkinson c282f76633 Merge branch '2.2.x'
Closes gh-20741
5 years ago
dreis2211 798e21fd3e Polish GroovyTemplateAutoConfiguration
See gh-20708
5 years ago
Andy Wilkinson 56af3534f0 Merge branch '2.2.x'
Closes gh-20740
5 years ago
Andy Wilkinson ce95fd6825 Polish "Use @DynamicPropertySource for Neo4J and Redis data tests"
See gh-20676
5 years ago
dreis2211 d84422a41c Use @DynamicPropertySource for Neo4J and Redis data tests
See gh-20676
5 years ago
Scott Frederick ed6e54218d Support remote Docker daemon for building images
Prior to this commit, the build plugin goal/task for building images
required a locally running Docker daemon that was accessed via a
non-networked socket or pipe.

This commit adds support for remote Docker daemons at a location
specified by the environment variable `DOCKER_HOST`. Additional
environment variables `DOCKER_TLS_VERIFY` and `DOCKER_CERT_PATH`
are recognized for configuring a secure TLS connection to the daemon.

Fixes gh-20538
5 years ago
Stephane Nicoll fd05bc2a4a Expose MongoDB's replica set name
Closes gh-20391
5 years ago
Stephane Nicoll 722d37468b Rationalize RabbitProperties
Closes gh-18830
5 years ago
Stephane Nicoll ef592eaed8 Merge branch '2.2.x'
Closes gh-20726
5 years ago
Stephane Nicoll ac56db703e Merge branch '2.1.x' into 2.2.x
Closes gh-20725
5 years ago
Stephane Nicoll 88b7b78344 Make sure that cassandra health check reports version
Closes gh-20719
5 years ago
Stephane Nicoll a7e8829560 Polish 5 years ago
Stephane Nicoll 5ad4de184d Merge branch '2.2.x'
Closes gh-20718
5 years ago
Stephane Nicoll 05f10819c4 Merge branch '2.1.x' into 2.2.x
Closes gh-20717
5 years ago
Stephane Nicoll c9e32aaa47 Use LOCAL_ONE when querying system.local
This commit is a follow-up of gh-20709 to apply the same consistency
level to the Cassandra reactive health indicator.

Closes gh-20713
5 years ago
Stephane Nicoll 876371e0fd Merge branch '2.2.x'
Closes gh-20712
5 years ago
Stephane Nicoll a9a6df2ed4 Merge branch '2.1.x' into 2.2.x
Closes gh-20711
5 years ago
Stephane Nicoll 63be1678de Polish "Use LOCAL_ONE when querying system.local"
See gh-20709
5 years ago
Alexandre Dutra 851f631eac Use LOCAL_ONE when querying system.local
The system keyspace has a replication factor of 1 and is local to each
node; it is therefore recommended to query system.local with a
consistency level of ONE or LOCAL_ONE.

Stronger consistency levels may result in an Unavailable error, but this
does not mean that the node is down.

See gh-20709
5 years ago
Stephane Nicoll 49ab5de91c Polish
See gh-20704
5 years ago
Stephane Nicoll 8154e672dd Polish
See gh-20704
5 years ago
dreis2211 674f1e77b5 Fix typos
See gh-20704
5 years ago
Stephane Nicoll 7a64b3f761 Restore Cassandra port option
This commit restores the port option that was removed in an earlier
milestone. Contact points that do not define a port already are
automatically transformed to include the one configured, with a default
matching Cassandra's default port.

This makes upgrades easier in the case a cluster uses consistent ports
everywhere.

Closes gh-19672
5 years ago
Stephane Nicoll a4b3d9a800 Upgrade to r2dbc Arabba-SR3
Closes gh-20674
5 years ago
Stephane Nicoll 443abd414b Merge branch '2.2.x'
Closes gh-20699
5 years ago
Stephane Nicoll 5d56e24da2 Document that Java 14 is a supported version
Closes gh-20689
5 years ago
Madhura Bhave b66ca0016a Merge branch '2.2.x' 5 years ago
Madhura Bhave 042a02e0da Update copyright of changed files 5 years ago
Madhura Bhave 3ad1aa7b32 Merge branch '2.2.x'
Closes gh-20694
5 years ago
Anastasiia Losieva a55c3e4ab7 Use jws-algorithm property in ReactiveOAuth2ResourceServerJwkConfiguration
See gh-20681
5 years ago
Stephane Nicoll dfa3939f56 Merge branch '2.2.x' 5 years ago
Stephane Nicoll a234dff573 Remove check for deprecated configuration properties
See gh-20528
5 years ago
Stephane Nicoll ff15d136db Merge branch '2.2.x'
Closes gh-20687
5 years ago
Stephane Nicoll ab01c55d8e Deprecate use of path extensions for request mapping and content negotiation
Closes gh-20528
5 years ago
Andy Wilkinson 0c3be4dde5 Upgrade to Spring Integration 5.2.5.RELEASE
Closes gh-20672
5 years ago
Madhura Bhave ad164269e9 Update classpath index to use jar name instead of full path
See gh-20564
5 years ago
Stephane Nicoll 48f235c2cf Upgrade to Spring Kafka 2.3.7
Closes gh-20574
5 years ago
Stephane Nicoll f218565e7c Upgrade to Mimepull 1.9.13
Closes gh-20675
5 years ago
Stephane Nicoll 1b3efb52df Upgrade to Spring Data Moore SR6
Closes gh-20573
5 years ago
Stephane Nicoll 6316d26754 Upgrade to Spring HATEOAS 1.0.4.RELEASE
Closes gh-20232
5 years ago
Stephane Nicoll b3517a0771 Merge branch '2.2.x'
Closes gh-20671
5 years ago
Stephane Nicoll 009361d38c Merge branch '2.1.x' into 2.2.x
Closes gh-20670
5 years ago
Stephane Nicoll 18353231a0 Do not fail if "spring.datasource.url" cannot be resolved
Previously, a condition checked the value of "spring.datasource.url" to
determine if an embedded database has to be created as a fallback. When
the value is set with an unresolved placeholder, this fails even if
the DataSource is going to created by another mean ultimately.

This commit makes a more conservative check by only checking the
presence of the property rather than its value.

Closes gh-20438
5 years ago
Stephane Nicoll 089c0471fa Test the Gradle Plugin against Gradle 6.3
Closes gh-20669
5 years ago
Brian Clozel 9eed719c44 Do not register shutdownHook for WAR deployments
The application context shutdownHook is not needed for WAR deployments,
and we should let the Servlet container handle the application lifecycle
here.

Closes gh-19398
5 years ago
Brian Clozel 87de8a5e15 Fix checkstyle issue 5 years ago
Brian Clozel cbe83f8db5 Make base path configurable for WebFlux applications
This commit adds the `"spring.webflux.base-path"` configuration
property. Configuring this property will gather all `HttpHandlers` into
a single composite and prefix all requests with a shared base path.

Closes gh-10129
5 years ago
Stephane Nicoll 97bf3ecf1c Polish "Migrate off deprecated Spring Data Cassandra API"
See gh-20662
5 years ago
Mark Paluch 8355d30456 Migrate off deprecated Spring Data Cassandra API
Configure UserTypeResolver and CodecRegistry on
MappingCassandraConverter. Configure on CassandraMappingContext only the
simple type holder instead of custom conversions.

See gh-20662
5 years ago
Brian Clozel eb70fd952f Turn LivenessState and ReadinessState into enums
Prior to this commit, `LivenessState` and `ReadinessState` were
immutable classes. This was done in order to have additional behavior
and information in those classes.

Because the current implementation doesn't need this, this commit turns
those classes into simple enums.
Additional state and information can be added to the
`*StateChangedEvent` classes.

See gh-19593
5 years ago
Stephane Nicoll 6aa3461611 Version layers configuration xsd
This commit provides a versioned xsd for the layers configuration of the
Maven plugin. The version starts at `2.3` to match with the Spring Boot
feature release in which this was introduced.

Closes gh-20663
5 years ago
Stephane Nicoll 5c6bc3729e Upgrade to Spring Framework 5.2.5
Closes gh-20571
5 years ago
Stephane Nicoll 44a8ff893d Upgrade to Spring Framework 5.2.5
Closes gh-20571
5 years ago
Stephane Nicoll 16d2db68f9 Add dependency management for Jakarta Xml Soap 1.4.2
Closes gh-20661
5 years ago
Dave Syer 5022ec500a Extra detail for Kubernetes probes
Provides a few more concrete details about how probes and Kubernetes
behave, so users can make more informed decisions.

See gh-19593
Closes gh-20660
5 years ago
Stephane Nicoll b53687535d Upgrade to Maven Dependency Plugin 3.1.2
Closes gh-20658
5 years ago
Stephane Nicoll 9e87b54f09 Upgrade to Xmlunit2 2.6.4
Closes gh-20657
5 years ago
Stephane Nicoll 0bb564dff9 Upgrade to Spring Session Bom Corn-SR2
Closes gh-20656
5 years ago
Stephane Nicoll d87726a953 Upgrade to Postgresql 42.2.11
Closes gh-20655
5 years ago
Stephane Nicoll c99ef5df76 Upgrade to Neo4j Ogm 3.2.10
Closes gh-20654
5 years ago
Stephane Nicoll 64ca69305f Upgrade to Liquibase 3.8.8
Closes gh-20653
5 years ago
Stephane Nicoll 67d2b8baa9 Upgrade to Kotlin Coroutines 1.3.5
Closes gh-20652
5 years ago
Stephane Nicoll 059e1cdd13 Upgrade to Kotlin 1.3.71
Closes gh-20651
5 years ago
Stephane Nicoll 468ddee339 Upgrade to Freemarker 2.3.30
Closes gh-20650
5 years ago
Stephane Nicoll e3bdcae09d Upgrade to Elasticsearch 6.8.7
Closes gh-20649
5 years ago
Stephane Nicoll ef9d64c1fb Upgrade to Jetty 9.4.27.v20200227
Closes gh-20648
5 years ago
Stephane Nicoll e1e8528867 Upgrade to Janino 3.1.2
Closes gh-20647
5 years ago
Stephane Nicoll bd96698ca3 Upgrade to Tomcat 9.0.33
Closes gh-20646
5 years ago
Stephane Nicoll 47e1e273c1 Upgrade to Httpclient 4.5.12
Closes gh-20645
5 years ago
Stephane Nicoll 46ffb4fd88 Upgrade to Activemq 5.15.12
Closes gh-20644
5 years ago
Stephane Nicoll f244e12ec2 Add dependency management for Jakarta Xml Soap 1.4.2
Closes gh-20659
5 years ago
dreis2211 25f48cb289 Fix typos in HealthEndpointGroupConfigurer
See gh-20628
5 years ago
Stephane Nicoll 7b215e6998 Upgrade to Jakarta Xml Ws 2.3.3
Closes gh-20643
5 years ago
Stephane Nicoll ecb1bdcc45 Upgrade to Jakarta Xml Bind 2.3.3
Closes gh-20642
5 years ago
Stephane Nicoll 5294c46380 Upgrade to Undertow 2.0.30.Final
Closes gh-20641
5 years ago
Stephane Nicoll 0766c2c591 Upgrade to Rxjava2 2.2.19
Closes gh-20640
5 years ago
Stephane Nicoll 3fe6f409b7 Upgrade to Netty Tcnative 2.0.30.Final
Closes gh-20639
5 years ago
Stephane Nicoll 5d1e303c0b Upgrade to Netty 4.1.48.Final
Closes gh-20638
5 years ago
Stephane Nicoll cde39f4676 Upgrade to Micrometer 1.3.6
Closes gh-20637
5 years ago
Stephane Nicoll 278b206af5 Upgrade to Dropwizard Metrics 4.1.5
Closes gh-20636
5 years ago
Stephane Nicoll 262f1239db Upgrade to Jakarta Mail 1.6.5
Closes gh-20635
5 years ago
Stephane Nicoll 2ec2416357 Upgrade to Sendgrid 4.4.6
Closes gh-20634
5 years ago
Stephane Nicoll fcde01cc21 Upgrade to Appengine Sdk 1.9.79
Closes gh-20633
5 years ago
Stephane Nicoll 1ffdf8a194 Upgrade to Jackson 2.10.3
Closes gh-20632
5 years ago
Stephane Nicoll 89d8fe6717 Upgrade to Couchbase Client 2.7.13
Closes gh-20631
5 years ago
dreis2211 f95e9543dc Fix typos in packaging docs
See gh-20630
5 years ago
Phillip Webb 0717de723f Polish 5 years ago
Phillip Webb 9a33a723fe Update copyright year of changed files 5 years ago
Phillip Webb ce1ae11c26 Merge branch '2.2.x' 5 years ago
Phillip Webb 16b5ea3414 Update copyright year of changed files 5 years ago
Brian Clozel 4be64e8f9c Add "management.health.probes.enabled" config property
Prior to this commit, we were relying on the
`"spring.main.cloud-platform"` property for overriding cloud platform
detection and enabling liveness and readiness probes. Changes made in
gh-20553 have now been reverted.

This commit adds the `"management.health.probes.enabled"` configuration
property. The auto-configuration now enables the HTTP Probes and
`HealthIndicator` if this property is enabled, or if the Kubernetes
cloud platform is detected.

This property is `false` by default for now, since enabling this for all
Spring Boot applications would be a breaking change. In this case, the
global `"/actuator/health"` endpoint could report `OUT_OF_SERVICE`
during startup time because the application now reports the readiness as
well.

See gh-19593
5 years ago
Brian Clozel 05db46951d Revert "Override CloudPlatform auto-detection with property"
This reverts commit 4b7ed5efef.

See gh-20553
5 years ago
Brian Clozel 3cc0ab1583 Polish reference docs on Kubernetes Probes
See gh-19593
5 years ago
Madhura Bhave 7444306d0b Polish docs 5 years ago
Madhura Bhave a06f4f21e3 Combine application and resources layers into a single layer
Closes gh-20562
5 years ago
Madhura Bhave 952e529787 Rename "classes" to "application" in custom layer configuration
Closes gh-20539
5 years ago
Stephane Nicoll 29c89f3c27 Upgrade to Reactor Dysprosium-SR6
Closes gh-20570
5 years ago
Stephane Nicoll 8d9c9126b1 Upgrade to Reactor Dysprosium-SR6
Closes gh-20569
5 years ago
Stephane Nicoll 9a5ffb7e0c Upgrade to Reactor Californium SR17
Closes gh-20624
5 years ago
Stephane Nicoll 8c9711ab9a Merge branch '2.2.x'
Closes gh-20622
5 years ago
Stephane Nicoll bf15276af1 Fix import in constructor binding example
Closes gh-20378
5 years ago
Stephane Nicoll 1a9065f46f Merge branch '2.2.x'
Closes gh-20621
5 years ago
Stephane Nicoll 8f265f8d57 Polish "Fix @FlywayDataSource with multiple data sources"
See gh-20617
5 years ago
Shimbo Takaaki 2410d6bbd1 Fix @FlywayDataSource with multiple data sources
See gh-20617
5 years ago
Stephane Nicoll 34b71561d3 Merge branch '2.2.x'
Closes gh-20619
5 years ago
Stephane Nicoll 7be3db2d4d Merge branch '2.1.x' into 2.2.x
Closes gh-20618
5 years ago
Stephane Nicoll bcce6f9f07 Document that Jackson is a required dependency of the Actuator
Closes gh-19564
5 years ago
Stephane Nicoll ec8d2c5843 Merge branch '2.2.x'
Closes gh-20616
5 years ago
Stephane Nicoll 39b965e1fd Merge branch '2.1.x' into 2.2.x
Closes gh-20615
5 years ago
Stephane Nicoll f5761bd508 Auto-configure listener container factory without consumer factory
Previously, the presence of a `ConsumerFactory` bean would make the
auto-configured one to back off, leading to a failure down the line if
no available instance matches the generics criterion. This commit
improves the auto-configuration to create a `ConsumerFactory<?,?>`
behind the scenes if none is available.

Closes gh-19221
5 years ago
Andy Wilkinson 4cdb968efa Utilise Reactor Netty's new graceful shutdown support
Closes gh-20613
5 years ago
Andy Wilkinson 6b47dd06e8 Start building against Reactor Dysprosium-SR6 snapshots
See gh-20570
5 years ago
Stephane Nicoll 3735771f9c Merge branch '2.2.x'
Closes gh-20612
5 years ago
Stephane Nicoll 08a89b6288 Polish "Configure signature algorithm when using public key jwt decoder"
See gh-20523
5 years ago
Michael Kreis 69e33d6e62 Configure signature algorithm when using public key jwt decoder
See gh-20523
5 years ago
Johnny Lim cc18b91723 Fix "Building Docker Images" section level
See gh-20608
5 years ago
Stephane Nicoll 615ec8b6f5 Merge branch '2.2.x'
Closes gh-20607
5 years ago
dreis2211 6ff842441c Polish BindableTests
See gh-20604
5 years ago
dreis2211 ef9f1d39a3 Remove redundant MockitoAnnotations.initMocks()
See gh-20601
5 years ago
Stephane Nicoll 70aa788747 Merge branch '2.2.x'
Closes gh-20600
5 years ago
Stephane Nicoll 8593270b5b Only remove trailing slash from URI value
This commit upgrades the algorithm when trailing slash are to be
ignored. Previously a root URI (i.e. "/") would result to to empty
string which is an issue for monitoring system that requires tag values
to be non empty. If the URI is a single character, the trailing is not
applied and "/" is left as is.

Closes gh-20536
5 years ago
Brian Clozel 6b9f2cac17 Fix section title levels in reference docs 5 years ago
Brian Clozel ffdf9a422f Polish Liveness and Readiness support
This commit moves the core Liveness and Readiness support to its own
`availability` package. We've made this a core concept independent of
Kubernetes.

Spring Boot now produces `LivenessStateChanged` and
`ReadinessStateChanged` events as part of the typical application
lifecycle.

Liveness and Readiness Probes (`HealthIndicator` components and health
groups) are still configured only when deployed on Kubernetes.

This commit also improves the documentation around Probes best practices
and container lifecycle considerations.

See gh-19593
5 years ago
Andy Wilkinson 6cff66ac4d Merge branch '2.2.x'
Closes gh-20590
5 years ago
Andy Wilkinson 9e7ab46ecc Merge branch '2.1.x' into 2.2.x
Closes gh-20589
5 years ago
Jordan Simpson 0d9d0f8532 Link to correct factory in TomcatReactiveWebServerFactory's javadoc
See gh-20583
5 years ago
Scott Frederick 3f378e1276 Add command-line options for Gradle bootBuildImage parameters
This commit adds support for setting the image name and builder
parameters of the Gradle bootBuildImage task using command-line
options as an alternative to DSL configuration.

See gh-20520
5 years ago
Brian Clozel b30e5a60c5 Polish
See gh-19593
5 years ago
Stephane Nicoll 579a6ac254 Adapt tests for support for Java 14
See gh-20576
5 years ago
Andy Wilkinson f5e1bad900 Polish 5 years ago
Brian Clozel fd0b2f6695 Add Kubernetes Liveness and Readiness Probes support
Prior to this commit and as of Spring Boot 2.2.0, we would advise
developers to use the Actuator health groups to define custom "liveness"
and "readiness" groups and configure them with subsets of existing
health indicators.

This commit addresses several limitations with that approach.

First, `LivenessState` and `ReadinessState` are promoted to first class
concepts in Spring Boot applications. These states should not only based
on periodic health checks. Applications should be able to track changes
(and adapt their behavior) or update states (when an error happens).

The `ApplicationStateProvider` can be injected and used by applications
components to get the current application state. Components can also
track specific `ApplicationEvent` to be notified of changes, like
`ReadinessStateChangedEvent` and `LivenessStateChangedEvent`.
Components can also publish such events with an
`ApplicationEventPublisher`. Spring Boot will track startup event and
application context state to update the liveness and readiness state of
the application. This infrastructure is available in the
main spring-boot module.

If Spring Boot Actuator is on the classpath, additional
`HealthIndicator` will be contributed to the application:
`"LivenessProveHealthIndicator"` and `"ReadinessProbeHealthIndicator"`.
Also, "liveness" and "readiness" Health groups will be defined if
they're not configured already.

Closes gh-19593
5 years ago
Brian Clozel b680db6cd8 Add HealthEndpointGroupsRegistry and its Customizer
Prior to this commit, `HealthContributor` would be exposed under the
main `HealthEndpoint` and subgroups, `HealthEndpointGroups`. Groups are
driven by configuration properties and there was no way to contribute
programmatically new groups.

This commit introduces the `HealthEndpointGroupsRegistry` (a mutable
version of `HealthEndpointGroups`) and a
`HealthEndpointGroupsRegistryCustomizer`. This allows configurations to
add/remove groups during Actuator auto-configuration.

Closes gh-20554
5 years ago
Brian Clozel 4b7ed5efef Override CloudPlatform auto-detection with property
This commit adds a new `"spring.main.cloud-platform"` configuration
property that overrides the `CloudPlatform` detection.

This makes it easier to enable paltform-specific features when running
applications locally or when writing integration tests.

Closes gh-20553
5 years ago
Stephane Nicoll 0b7f198b54 Publish Maven plugin API
This commit enables javadoc generator for the Spring Boot Maven plugin.

This also harmonizes the structure of the documentation, with an `/api`
and a `/reference` root directories for the javadoc and the reference
guide respectively.

Closes gh-20127
5 years ago
Stephane Nicoll 58a45c53ac Upgrade to Groovy 2.5.10
Closes gh-20575
5 years ago
Stephane Nicoll 5893786cbb Polish "Add 'threads' configuration group for embedded containers"
See gh-19475
5 years ago
cbono 208f58104a Add 'threads' configuration group for embedded containers
See gh-19475
5 years ago
Stephane Nicoll bece0f1360 Start building against Spring Kafka 2.3.7 snapshots
See gh-20574
5 years ago
Stephane Nicoll 96cffb9dd3 Start building against Spring Data Moore SR6 snapshots
See gh-20573
5 years ago
Stephane Nicoll e940e751c1 Start building against Spring Framework 5.2.5 snapshots
See gh-20571
5 years ago
Stephane Nicoll 3966730e02 Start building against Reactor Dysprosium-SR6 snapshots
See gh-20569
5 years ago
dreis2211 7924dd62b0 Add security.protocol to KafkaProperties
See gh-20360
5 years ago
Scott Frederick e607c6842f Polish Gradle layer configuration DSL
This commit modifies the DSL for custom layer configuration in the
Gradle plugin to avoid duplication of terms that could be confusing.

Fixes gh-20563
5 years ago
Stephane Nicoll 0f5ca030db Polish "Add Java 14 CI"
See gh-20413
5 years ago
Stephane Nicoll 2e2f839bc8 Upgrade to Gradle 6.3 RC2
Closes gh-20558
5 years ago
Andy Wilkinson 9b817caff3 Revert "Update extract to write files to their original, unlayered location"
This reverts commit 9f3bc78f36.
5 years ago