Commit Graph

120 Commits

Author SHA1 Message Date
Moritz Halbritter 0fb369e8b8 Use paketobuildpacks/builder-noble-java-tiny as the default image builder
Closes gh-42711
2025-04-24 15:21:22 +02:00
Phillip Webb b80bdbb182 Merge branch '3.3.x' into 3.4.x
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run Details
Build and Deploy Snapshot / Trigger Docs Build (push) Blocked by required conditions Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:windows-latest name:Windows]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:false version:17]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run Details
Closes gh-45192
2025-04-14 16:18:41 -07:00
Johnny Lim 08c67cc353 Replace deprecated Project.task()
See gh-45009

Signed-off-by: Johnny Lim <izeye@naver.com>
2025-04-14 16:17:53 -07:00
Moritz Halbritter 7fcf34eaeb Add property 'server.tomcat.use-apr' to control Tomcat's APR
The property's default depends on the Java version. On Java < 24, it defaults
to WHEN_AVAILABLE, on Java >=24 it defaults to NEVER.

Closes gh-44033
2025-03-13 08:40:16 +01:00
Andy Wilkinson 30d7af4e38 Add CI with Java 24
Closes gh-44205
2025-02-11 11:34:43 +00:00
Andy Wilkinson b8f64681ad Merge branch '3.3.x' into 3.4.x
Closes gh-44211
2025-02-11 11:10:28 +00:00
Andy Wilkinson 5c8d9d910a Update LoaderIntegrationTests as Java 23 is no longer in early access
Closes gh-44208
2025-02-11 11:09:36 +00:00
Moritz Halbritter ba1a780147 Merge branch '3.3.x'
Closes gh-42774
2024-10-17 18:06:43 +02:00
Moritz Halbritter ce106eb43c Remove calls to deprecated Project.getBuildDir() in Gradle files
Closes gh-42739
2024-10-17 17:46:17 +02:00
Andy Wilkinson 1e33e6bc0d Merge branch '3.3.x'
Closes gh-42714
2024-10-16 12:18:22 +01:00
Andy Wilkinson 2c982260df Use platform dependencies instead of the dependency management plugin
Closes gh-42712
2024-10-16 12:08:44 +01:00
Phillip Webb 8282a90268 Merge branch '3.3.x' 2024-09-27 10:34:32 -07:00
Phillip Webb 9836011ffd Create extension to configure Spring maven repositories
Create a small Groovy script that can be used in `settings.gradle`
files to extend `repositories` to support the various maven
repositories required for our build.

See gh-42333
2024-09-27 10:30:20 -07:00
Phillip Webb 7b3077280c Merge branch '3.3.x'
Closes gh-42441
2024-09-24 14:32:48 -07:00
Phillip Webb ad72411e2b Apply conventions plugin to all subprojects
Closes gh-42438
2024-09-24 14:26:32 -07:00
Andy Wilkinson 4b0b5c263d Ensure that building test apps produces Java 17 bytecode
See gh-41980
2024-08-23 15:11:55 +01:00
Stéphane Nicoll 68ce174980 Adapt LoaderIntegrationTests to Java 23
See gh-41698
2024-08-13 10:18:37 +02:00
Andy Wilkinson 654016af7f Move Docker-related test support into a separate module
See gh-41228
2024-06-26 19:47:35 +01:00
Andy Wilkinson edc582800b Update spring-boot-loader-tests to use docker-test plugin
See gh-41228
2024-06-26 19:46:12 +01:00
Andy Wilkinson 491f34d25c Improve container test code
Replace `DockerImageNames` with a enum and relocate it from the
`testcontainers` to `container` package. The enum now also
becomes a common location that we can use to apply container
configuration such as timeouts.

Closes gh-41164

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2024-06-19 20:10:03 -07:00
Moritz Halbritter c47cdda824 Merge branch '3.1.x' into 3.2.x
Closes gh-40624
2024-05-06 09:51:39 +02:00
Scott Frederick 0724014645 Merge branch '3.1.x' into 3.2.x
Closes gh-40412
2024-04-17 16:40:21 -05:00
Scott Frederick bc5777d0cc Upgrade CI images to ubuntu:jammy-20240405
Closes gh-40410
2024-04-17 16:40:09 -05:00
Scott Frederick f324994065 Merge branch '3.1.x' into 3.2.x
Closes gh-39846
2024-03-13 15:20:55 -05:00
Scott Frederick c83f7017c8 Upgrade CI images to ubuntu:jammy-20240227
Closes gh-39844
2024-03-13 15:20:41 -05:00
Andy Wilkinson 0f6b3514db Update LoaderIntegrationTests to cover Java 22
See gh-39746
2024-03-04 11:21:19 +00:00
Scott Frederick 428ddb710b Merge branch '3.1.x' into 3.2.x
Closes gh-39658
2024-02-21 17:59:03 -06:00
Scott Frederick 39304147a7 Upgrade CI images to ubuntu:jammy-20240212
Closes gh-39657
2024-02-21 17:58:39 -06:00
Scott Frederick 7b34a44f4d Merge branch '3.1.x' into 3.2.x
Closes gh-39433
2024-02-07 15:43:46 -06:00
Scott Frederick d616568324 Upgrade CI images to ubuntu:jammy-20240125
Closes gh-39426
2024-02-07 15:43:35 -06:00
Scott Frederick c0a820bc57 Merge branch '3.1.x' into 3.2.x 2024-01-17 17:18:14 -06:00
Scott Frederick 35b45450f8 Upgrade test images to ubuntu:jammy-20240111
See gh-39217
2024-01-17 17:18:01 -06:00
Andy Wilkinson 17819c02b7 Merge branch '3.1.x' into 3.2.x
Closes gh-39139
2024-01-15 19:45:20 +00:00
Andy Wilkinson c8a7a04da4 Retry JDK downloads
Closes gh-39138
2024-01-15 19:45:06 +00:00
Phillip Webb 3222458007 Merge branch '3.1.x'
Closes gh-38893
2023-12-20 18:22:15 -08:00
Phillip Webb 66e9c777af Upgrade Ubuntu version in CI images
Closes gh-38894
2023-12-20 18:20:09 -08:00
Phillip Webb 062b544447 Upgrade to Ubuntu Jammy 20231004
Closes gh-37957
2023-10-18 21:19:51 -07:00
Phillip Webb 55968ef995 Upgrade to Ubuntu Jammy 20231004
Closes gh-37949
2023-10-18 21:17:24 -07:00
Phillip Webb 3c62defb9d Support java.nio.file Paths and FileSystems with nested jars
Add a `NestedFileSystemProvider` implementation so that the JDK's
`ZipFileSystem` can load content from nested jars and nested
directory entries.

Creating a `ZipFileSystem` may be a relatively expensive operation as
zip structures need to be parsed and in the case of directory entries
a virtual datablock nees to be generated on the fly. As such, we
install the `ZipFileSystem` as late as possible since in a typical
application it may never be needed.

This commit also tweaks Gradle and Maven plugins to ensure that the
service loader file is written to repackaged jars.

Closes gh-7161
2023-10-18 20:46:36 -07:00
Phillip Webb 33c5e1269a Write signature files to uber jars to for Oracle Java 17 verification
Update Gradle and Maven plugins to write an empty `META-INF/BOOT.SF`
file whenever there is a nested signed jar.

This update allows Oracle Java 17 to correctly verify the nested JARs.
The file is required because `JarVerifier` has code roughly equivalent
to:

	if (!jarManifestNameChecked && SharedSecrets
			.getJavaUtilZipFileAccess().getManifestName(jf, true) == null) {
    	throw new JarException("The JCE Provider " + jarURL.toString() +
    		" is not signed.");
	}

The `SharedSecrets.getJavaUtilZipFileAccess().getManifestName(jf, true)`
call ends up in `ZipFile.getManifestName(onlyIfSignatureRelatedFiles)`
which is a private method that we cannot override in our `NestedJarFile`
subclass. By writing an empty `.SF` file we ensure that the `Manifest`
is always returned because there are always "signature related files".

Fixes gh-28837
2023-10-16 16:19:16 -07:00
Phillip Webb 927ece3bfc Merge branch '3.1.x' 2023-10-10 12:31:44 -07:00
Phillip Webb 885189a1b4 Merge branch '2.7.x' into 3.0.x 2023-10-10 12:30:11 -07:00
Phillip Webb f04d354c29 Attempt to fix download cache on CI
See gh-37450
2023-10-10 11:46:20 -07:00
Phillip Webb 6c24ea01f1 Add BouncyCastle nested jar verification test including on Oracle JDK
Update `spring-boot-loader-tests` with a test that checks verified
BouncyCastle jars can be loaded. Currently the Oracle JDK only supports
verification if the jar is unpacked.

See gh-28837
2023-10-05 22:13:31 -07:00
Phillip Webb 79d2208908 Merge branch '3.1.x' 2023-10-05 22:10:34 -07:00
Phillip Webb 3c31a6fc3b Merge branch '2.7.x' into 3.0.x 2023-10-05 22:10:14 -07:00
Phillip Webb c37290bc6c Fix Oracle JDK download URL
See gh-37450
2023-10-05 22:09:45 -07:00
Phillip Webb b0b3adb1b7 Merge branch '3.1.x'
Closes gh-37741
2023-10-05 21:30:43 -07:00
Phillip Webb 30af19acc2 Merge branch '2.7.x' into 3.0.x
Closes gh-37739
2023-10-05 20:54:09 -07:00
Phillip Webb a33ce9d405 Cache JDK downloads for tests that use ImageFromDockerfile
Update `spring-boot-launch-script-tests` and `spring-boot-loader-tests`
so that JDK archives are now downloaded by Gradle and cached across
builds.

Closes gh-37450
2023-10-05 20:49:02 -07:00