Update the root build POM so that the default profile is always active.
Prior to this commit the profile was to `activeByDefault` which meant
it was only active if no other profiles were enabled. When running in
Eclipse, the `m2e` profile is active, meaning the default profile was
disabled and `spring-javaformat` setting were not applied.
Closes gh-13900
Update the Maven build so that a local artifact repository can be
specified. This will allow the CI server to build the samples and tests
using artifacts generated from an early job.
See gh-9316
Restructure actuator packages to improve structure. The following
changes have been made:
- Separate actuator and actuator auto-configuration into different
modules.
- Move endpoint code into `spring-boot-actuator`.
- Move `Endpoint` implementations from a single package into
technology specific packages.
- Move `HealthIndicator` implementations from a single package into
technology specific packages.
- As much as possible attempt to mirror the `spring-boot` package
structure and class naming in `spring-boot-actuator` and
`spring-boot-actuator-autoconfigure`.
- Move `DataSourceBuilder` and DataSource meta-data support from
`spring-boot-actuator` to `spring-boot`.
Fixes gh-10261
The order of the modules declared in pom.xml should not make any
difference given the other relationships that exist between projects,
however the CI build is ordering the projects incorrectly.
Try changing the order of the modules to see if the CI build can be
coaxed into ordering them correctly.
Previously, Maven repositories definition was specified in a profile that
is active by default. It means that as soon as any profile is enabled by
the user, said profile is no longer enabled. This has the nasty
consequences of having copy/paste in several places to make sure our own
profiles still have the proper repositories definition.
This commit creates a single "repositories" profile that is always active
unless a given property is explicitely specified. This allows to remove
the duplication and make things more consistent.
Some Gradle-specific repositories were also hard-coded in two modules
without any profile at all, meaning they were polluting the build of
anybody using it. While the impacted modules are gradle specific, that
repository has been shared in the new "repositories" profile as well.
Closes gh-6031