Commit Graph

27912 Commits (b59067d55632c60b4d776b565ced6039cc85dfe5)
 

Author SHA1 Message Date
Stephane Nicoll 0440a9a78c Upgrade to Groovy 2.5.13
Closes gh-22505
4 years ago
Stephane Nicoll 57539e0167 Upgrade Java 15 version in CI image
Closes gh-22513
4 years ago
Stephane Nicoll f28a8e06fb Upgrade Java 8 version in CI image
Closes gh-22517
4 years ago
Stephane Nicoll f39b338af4 Merge branch '2.3.x' 4 years ago
Stephane Nicoll 41b7eb158b Upgrade Java 14 version in CI image
Closes gh-22515
4 years ago
Stephane Nicoll 71ec15e851 Upgrade Java 8 version in CI image
Closes gh-22514
4 years ago
Stephane Nicoll 32f17645af Merge branch '2.2.x' into 2.3.x 4 years ago
Stephane Nicoll 458b5690e1 Upgrade Java 14 version in CI image
Closes gh-22516
4 years ago
Stephane Nicoll a2b797f8b7 Upgrade Java 8 version in CI image
Closes gh-22518
4 years ago
Stephane Nicoll 3d1181ee96 Merge branch '2.1.x' into 2.2.x 4 years ago
Stephane Nicoll ee37ddd6c0 Upgrade Java 8 version in CI image
Closes gh-22512
4 years ago
Madhura Bhave 3f76eb2097 Add volume mount property source support
Add support for volume mounted directories where the filename becomes
the property key and the file contents becomes the value.

Support is provided via a dedicated `VolumeMountDirectoryPropertySource`
class which can either be used directly, or via a "volumemount:/..."
`spring.config.import` location.

Closes gh-19990

Co-authored-by: Phillip Webb <pwebb@vmware.com>
4 years ago
Madhura Bhave eee260fc03 Add support for profile groups
Add support for profile groups so that users can combine a number of
fine-grained profiles into a single logical group.

Closes gh-22522
4 years ago
Phillip Webb 8c6c4fa9fa Overhaul "externalized configuration" docs
Update the "externalized configuration" reference documentation
following the recent updates.

Closes gh-22521
4 years ago
Phillip Webb 3352024b1c Provide ConfigFileApplicationListener replacement
Deprecate `ConfigFileApplicationListener` and provide a replacement
mechanism that supports arbitrary config data imports.

This commit updates the following areas:

- Extract `EnvironmentPostProcessor` invocation logic from the
  `ConfigFileApplicationListener` to new dedicated listener. Also
  providing support for `Log` injection.

- Extract `RandomPropertySource` adding logic from the
  `ConfigFileApplicationListener` to a dedicated class.

- Migrate to the recently introduced `DefaultPropertiesPropertySource`
  class when moving the defaultProperties `PropertySource`

- Replace processing logic with a phased approach to ensure that
  profile enablement happens in a distinct phase and that profiles
  can no longer be activated on an ad-hoc basis.

- Provide a more predictable and logical import order for processing
  `application.properties` and `application.yml` files.

- Add support for a `spring.config.import` property which can be used
  to import additional config data. Also provide a pluggable API
  allowing third-parties to resolve and load locations themselves.

- Add `spring.config.activate.on-profile` support which replaces the
  existing `spring.profiles` property.

- Add `spring.config.activate.on-cloud-platform` support which allows
  a config data document to be active only on a given cloud platform.

- Support a `spring.config.use-legacy-processing` property allowing the
  previous processing logic to be used.

Closes gh-22497

Co-authored-by: Madhura Bhave <mbhave@vmware.com>
4 years ago
Phillip Webb 44f18362d3 Add Binder backed CloudPlatform.isEnforced method
Update `CloudPlatform` with a new `isEnforced` method that's backed
by a `Binder` rather than the `Environment`. We'll require this when
we overhaul our external config data processing logic.

Closes gh-22498
4 years ago
Phillip Webb cd36444641 Extract DefaultPropertiesPropertySource class
Extract `DefaultPropertiesPropertySource` from `SpringApplication` so
that logic can be easily accessed by other classes. Specifically the
property source name and logic to move the source to the end of the
list needs to be called from several places.

Closes gh-22520
4 years ago
Phillip Webb 039fbdfa7c Add DeferredLogFactory support
Add a new `DeferredLogFactory` interface and `DeferredLogs`
implementation that can be used when a `DeferredLog` instance is needed
but the `switchOver` method should be handled elsewhere.

This interface has primarily been added so `EnvironmentPostProcessor`
classes will no longer need to implement `ApplicationEventListener`
just to switch over their logs.

Closes gh-22496
4 years ago
Madhura Bhave 9e9eb90d09 Add multi-document properties file support
Update `OriginTrackedPropertiesLoader` so that it can support
multi-document properties files. These are similar to multi-document
YAML files but use `#---` as the separator.

Closes gh-22495

Co-authored-by: Phillip Webb <pwebb@vmware.com>
4 years ago
Phillip Webb 945e5b9222 Add ConfigurationPropertySource.from method
Add a factory method to `ConfigurationPropertySource` that allows a
single Spring `PropertySource` instance to be adapted.

Closes gh-22494
4 years ago
Phillip Webb 078e146983 Filter empty YAML documents
Update `OriginTrackedYamlLoader` so that empty documents are filtered
from the result. Prior to this commit, our origin wrapper would confuse
the YAML processor and cause empty documents to be included in the Map
with a key of "document" and no value.

Closes gh-22493
4 years ago
Phillip Webb fdc6e80163 Add trailing escape character test
Update `OriginTrackedPropertiesLoaderTests` to also test that an escape
character can be the last character on a line.
4 years ago
Phillip Webb 2eeffe7931 Add @Name support for value object binding
Update value object binder support so that parameters can be annotated
with `@Name` if a specific property name should be used. Prior to this
commit is was not possible to use Java reserved words as property names.

Closes gh-22492
4 years ago
Phillip Webb 2d3ac4bb2e Polish 4 years ago
Phillip Webb 3d7d9d064c Update copyright year of changed files 4 years ago
Phillip Webb 14c1b0938a Polish 4 years ago
Phillip Webb da69286838 Merge branch '2.3.x' 4 years ago
Phillip Webb 187d3af7fc Update copyright year of changed files 4 years ago
Phillip Webb d2a7808098 Polish 4 years ago
Phillip Webb 217b2eff89 Merge branch '2.2.x' into 2.3.x 4 years ago
Phillip Webb b5e70157dc Update copyright year of changed files 4 years ago
Phillip Webb 51a26a4d5a Polish 4 years ago
Stephane Nicoll 0768ade5cd Merge branch '2.3.x' 4 years ago
Stephane Nicoll dd615fd9dd Upgrade to Spring Integration 5.3.2
Closes gh-22389
4 years ago
Stephane Nicoll 6e217b4f66 Merge branch '2.2.x' into 2.3.x 4 years ago
Stephane Nicoll 0a756b5337 Merge branch '2.1.x' into 2.2.x 4 years ago
Stephane Nicoll d9c34d5b84 Upgrade to Spring Integration 5.1.12
Closes gh-22511
4 years ago
Stephane Nicoll 68497649b1 Upgrade to Spring Integration 5.2.8
Closes gh-22385
4 years ago
Stephane Nicoll bbf481ed1c Merge branch '2.3.x' 4 years ago
Stephane Nicoll fb56483015 Upgrade to Spring Kafka 2.5.4
Closes gh-22390
4 years ago
Stephane Nicoll f70670935d Merge branch '2.2.x' into 2.3.x 4 years ago
Stephane Nicoll d1f9adc189 Upgrade to Spring Kafka 2.3.10
Closes gh-22386
4 years ago
Stephane Nicoll cedd9c58ba Merge branch '2.3.x' 4 years ago
Stephane Nicoll 155f8a1a88 Upgrade to Spring AMQP 2.2.9
Closes gh-22387
4 years ago
Stephane Nicoll eed4370d47 Merge branch '2.2.x' into 2.3.x 4 years ago
Stephane Nicoll ad976bec20 Upgrade to Spring AMQP 2.2.9
Closes gh-22383
4 years ago
Stephane Nicoll 0e50f055a4 Merge branch '2.1.x' into 2.2.x 4 years ago
Stephane Nicoll baa6a8aeb1 Upgrade to Spring AMQP 2.1.16
Closes gh-22507
4 years ago
Stephane Nicoll 42817224e1 Merge branch '2.3.x' 4 years ago
Stephane Nicoll 8be46529e1 Merge branch '2.2.x' into 2.3.x 4 years ago