Commit Graph

39 Commits

Author SHA1 Message Date
Brian Clozel
5ad261228d Upgrade JDK 17 and JDK 18 versions in CI image 2022-02-03 10:22:43 +01:00
Stephane Nicoll
d94298aae5 Merge branch '5.3.x' 2022-02-03 09:58:21 +01:00
Stephane Nicoll
e702c22da4 Upgrade Ubuntu version in CI image 2022-02-03 08:48:52 +01:00
Stephane Nicoll
bd6d697395 Upgrade Java versions in CI image 2022-01-27 09:52:25 +01:00
Brian Clozel
62a4a4c0bf Upgrade JDK versions in CI images 2021-11-17 14:07:44 +01:00
Brian Clozel
683bdf2675 Polish JDK 18 CI pipeline
This commit ensures that JDK 18 is properly installed in the CI image.

See gh-27607
2021-10-25 10:06:06 +02:00
Brian Clozel
65bf5f7c81 Add JDK18 variant to CI pipeline
This commit adds a new JDK 18 variant to the CI build image and
configures a JDK18 build (sources compiled with JDK17, tests compiled
and run with JDK18) to the CI pipeline.

Closes gh-27607
2021-10-25 10:02:39 +02:00
Brian Clozel
66b15efa21 Upgrade CI image to JDK 17+35 2021-09-23 13:57:39 +02:00
Brian Clozel
c0e479460e Switch CI pipeline to a JDK17 baseline
This commit introduces a new `spring-framework-6.0.x` CI pipeline with
JDK 17 baseline.

Note that Kotlin still uses a JDK11 baseline for now, this will be
addressed in gh-27413.

Closes gh-27409
2021-09-15 12:37:10 +02:00
Brian Clozel
532b4b636d Update CI pipeline with JDK16
This commit replaces the JDK15 build with a JDK16 variant.
This also updates the CI image with a new OS version and updated
JDK versions.
2021-09-06 18:13:41 +02:00
Brian Clozel
610de3ae78 Upgrade to Concourse Release Scripts 0.3.2 2021-03-23 13:59:53 +01:00
Brian Clozel
14a6909c4a Fix release pipeline for Maven Central publication
This commit fixes the missing pieces in our Maven Central publication
pipeline. Our first attempt at releasing with it showed a few problems:

* the promote task did not have the artifacts downladed with the
  artifactory repository
* we applied the wrong Sonatype credentials to the task
* the github changelog task would fail because of docker rate limiting
  since we were not using the right type of resource, which is
  configured with the proper caching mechanism

See gh-26654
2021-03-16 13:04:11 +01:00
Brian Clozel
a8d553218c Introduce Gradle Toolchain support in build
Prior to this commit, the Spring Framework build would rely on
setting a custom Java HOME for building all sources and tests
with that JDK.

This approach is not flexible enough, since we would be testing
the source compatibility against a recent JDK, but not a common
case experienced by the community: compiling and running
application code with a recent JDK and the official, JDK8-based
Framework artifacts.
This method is also limiting our choice of JDKs to the ones
currently supported by Gradle itself.

This commit introduces the support of Gradle JVM Toolchains in
the Spring Framework build.

We can now select a specific JDK for compiling the main
SourceSets (Java, Groovy and Kotlin) and another one for
compiling and running the test SourceSets:

`./gradlew check -PmainToolChain=8 -PtestToolchain=15`

Gradle will automatically find the JDKs present on the host or
download one automcatically. You can find out about the ones
installed on your host using:

`./gradlew -q javaToolchains`

Finally, this commit also refactors the CI infrastructure to:

* only have a single CI image (with all the supported JDKs)
* use this new feature to compile with JDK8 but test it
against JDK11 and JDK15.

Closes gh-25787
2021-03-15 14:33:41 +01:00
Stephane Nicoll
f6d3d9d6e6 Polish CI pipeline 2021-03-10 13:59:30 +01:00
Brian Clozel
ed71fe0460 Publish directly to Maven Central
This commit skips the Bintray-related tasks in our CI pipeline and
instead relies on Maven Central for publishing Spring Framework
artifacts.

This commit also updates the CI pipeline to sign the artifacts directly
with the `artifactory-resource`.

Closes gh-26654
2021-03-09 15:30:06 +01:00
Brian Clozel
d7e05aa48f Upgrade CI images to ubuntu:focal-20210119 2021-01-28 11:50:19 +01:00
Brian Clozel
080ba5d448 Upgrade JDK versions in CI pipeline 2021-01-25 10:51:47 +01:00
Brian Clozel
657641ebaa Remove JDK14 CI variant from build pipeline 2020-12-11 11:08:33 +01:00
Brian Clozel
4597e9b547 Upgrade CI container images to Ubuntu Focal 2020-12-11 09:46:00 +01:00
Brian Clozel
721dacca5a Upgrade JDK8, JDK11 and JDK15 versions in CI build 2020-12-11 09:45:21 +01:00
Brian Clozel
603a1dd319 Upgrade to Concourse Release Scripts 0.2.1
This release fixes a bug where Spring Boot specifics were baked in the
application itself.
2020-10-15 18:02:32 +02:00
Brian Clozel
5f587faffa Update CI to JDK 15 GA 2020-09-17 13:22:41 +02:00
Brian Clozel
8473f71a42 Update JDK 15 version in CI image
This also switches to the adoptopenjdk-produced binaries for better
consistency with other JDK versions in our CI.
2020-09-11 13:45:46 +02:00
Brian Clozel
df98d0c661 Update CI to concourse-release-scripts 0.2.0 2020-08-06 10:17:19 +02:00
Brian Clozel
38690bdc7c Upgrade CI image to jdk8u265-b01 2020-08-06 10:05:13 +02:00
Brian Clozel
83e3c332a5 Upgrade Ubuntu in CI images 2020-07-30 09:13:12 +02:00
Brian Clozel
f19afe0c76 Upgrade JDK 11, 14 and 15 EA 2020-07-28 14:56:12 +02:00
Brian Clozel
87c5b5a664 Upgrade to JDK 8u262 2020-07-27 22:59:08 +02:00
Brian Clozel
92cdf526fb Upgrade CI images to ubuntu:bionic-20200630 2020-07-09 21:54:12 +02:00
Brian Clozel
32ab596e94 Upgrade CI to JDK15ea30 2020-07-06 11:32:07 +02:00
Sam Brannen
c6e2d1d405 Upgrade JDK 15 CI image to JDK 15 build 28 2020-06-21 19:33:51 +02:00
Brian Clozel
34cb4895c4 Update CI images to use ubuntu:bionic-20200526 2020-06-19 21:50:18 +02:00
Sam Brannen
30385dae8d Upgrade JDK 15 CI image to JDK 15 build 26 2020-06-12 09:56:46 +02:00
Brian Clozel
593928a9f3 Upgrade JDK 15 CI image to JDK 15 build 24 2020-05-22 15:41:38 +02:00
Sam Brannen
92f7587a40 Upgrade to JDK 15 build 23 on CI server 2020-05-19 09:23:58 +02:00
Brian Clozel
5af3223e76 Add Release pipeline for Milestone versions
This commit finishes the first step for migrating our complete build and
release pipeline to Concourse CI.

We're creating here a new "Release" jobs group in our pipeline.
We can now release Milestones from our pipeline with:

* the "stage-milestone" job, which creates and tags a new Milestone
version on the source repository, builds the artifacts and deploys them
in a staging repository and updates the version to the next SNAPSHOT.

* the "promote-milestone" fetches the build information from the staging
repository and promotes the released milestone in the official milestone
repository.

Interactions with the Artifactory and Bintray REST APIs are done using
the https://github.com/spring-io/concourse-release-scripts project.

Closes gh-22490
2020-05-07 21:35:56 +02:00
Brian Clozel
1b85f6277d Upgrade to Concourse Java Script v0.0.3
This new release has been updated with the version scheme changes.
2020-05-06 13:53:24 +02:00
Sam Brannen
084b4003d1 Upgrade to openjdk-15-ea+21 for CI builds 2020-05-06 12:18:04 +02:00
Brian Clozel
c0ccdc24a0 Add Concourse Build pipeline
This commit adds the Concourse build infrastructure under the "ci/"
folder. It contains:

* "images/", the definitions of container images used in the pipeline
* "pipeline.yml" the build pipeline definition
* "parameters.yml" the parameters for the pipeline definition
* "tasks/" the tasks used by the build pipeline
* "scripts/" scripts used by pipeline tasks

This first iteration of the Concourse pipeline builds CI container
images for JDK8, JDK11, JDK14 and JDK15.
These images are used for building and publishing the master branch of
Spring Framework using JDK8. Other JDK variants are sanity checks and
don't actually publish the produced artifacts.

See gh-22490
2020-04-28 14:37:34 +02:00