AFAICT AbstractLaunchScriptIntegrationTests creates a new docker image on each run which includes downloading of a JDK. It would be nice if we could cache the download locally to speed things up.
Comment From: scottfrederick
The tests create a new container configuration with each run, but it doesn't appear that a new image is being created (including the JDK download). Since the image has the same name with each run (for example, spring-boot-launch-script/Ubuntu-jammy-20230624), I think only the layers that change are getting updated, which is just the test script.
Most of the runs I tested had similar timings. The first test case executed (usually launchWithSingleCommandLineArgument) takes about 50 seconds to create the image and run the test, and most of the rest only take a few seconds. There are a few cases that consistently take about 30 seconds. It's probably worth looking into what those are doing that's different from the ones that only take a few seconds.
Comment From: philwebb
Thanks @scottfrederick. I added the issue when I was working on something else and didn't really investigate it in detail. I'm glad we're mostly good.
Comment From: wilkinsona
ge.spring.io has some good data on this: https://ge.spring.io/scans/tests?search.relativeStartTime=P28D&search.timeZoneId=Europe/London&tests.container=org.springframework.boot.launchscript.JarLaunchScriptIntegrationTests&tests.sortField=MEAN_DURATION
Comment From: philwebb
Reopening because caching doesn't work on CI