Prior to this commit, the SSL file hot reloading feature would
create file watchers for all configured locations and would resolve
symbolic links if they're found as registrations.
This arrangement would work for typical Let's Encrypt setups, but
would not get notified of consecutive changes for k8s setups.
Kubernetes uses a mix of symlinks and atomic file moves to update
secrets.
This commit not only tracks changes to symlinks targets, but also
to the original symlink.
Closes gh-44807
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
[brian.clozel@broadcom.com: apply code conventions]
Signed-off-by: Brian Clozel <brian.clozel@broadcom.com>
Previously, managed dependencies were documented using Gradle's
dependency constraints. This has proven to be non-deterministic for
reasons that are not fully understood. The working theory is that
the constraints that are documented vary depending on the tasks
that the build has run at the point at which the constraints are
being examined and documented.
This commit replaces approach with one that builds a model of a
resolved bom by examining the configured bom extension and the
XML of the Maven boms that it imports. This model is written to
disk from where it can then be consumed as a dependency on other
projects. The existing tasks for documenting the constrained
versions and version properties have been rewritten to use the
resolved bom model instead.
Closes gh-44855
1. Rename `TestConfiguration` to `TestJpaConfiguration` and remove unnecessary reference.
2. Use `withBean` instead of `withUserConfiguration` to avoid new configuration class.
3. Use kebab-case for configuration key
See gh-44800
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
This commit updates DataSourceTransactionManagerAutoConfiguration to
explicitly states it should run after DataSourceAutoConfiguration.
Closes gh-44810
Previously, if a prototype DataSource bean was defined, Actuator's
metrics and health would try to access an instance of it. At best
this was wasteful as the new instance would only be used for metrics
and health and would not be indicative of the app's DataSource usage.
At worst, it could cause a failure in the unusual case of the
prototype bean definition requiring arguments to be supplied using
ObjectProvider.getObject(Object...) or the like.
This commit address the problem by ignoring prototype DataSource
for metrics and health.
Other types of beans for which Actuator provides metrics and health
are similarly affected. They have not be fixed here as the situation
is so unusual. Should another problem arise in the future, it can be
addressed at that time when there's a clear need.
Closes gh-44706