Commit Graph

265 Commits

Author SHA1 Message Date
Andy Wilkinson
aa9e75ed3c Merge branch '3.3.x' into 3.4.x
Closes gh-45610
2025-05-20 11:32:26 +01:00
Andy Wilkinson
5ed981df9c Migrate from gcr.io to docker.io for Paketo images
Closes gh-45609
2025-05-20 11:23:28 +01:00
Phillip Webb
fa5d94fb4d Merge branch '3.3.x' into 3.4.x 2025-05-08 12:25:22 -07:00
Phillip Webb
39a402b5ef Update copyright year of changed files 2025-05-08 12:24:57 -07:00
Moritz Halbritter
66b255573d Merge branch '3.3.x' into 3.4.x
Closes gh-45329
2025-04-29 13:37:52 +02:00
Johnny Lim
9a0f7a4013 Add more tests for Image.getOs()
See gh-45305

Signed-off-by: Johnny Lim <izeye@naver.com>
2025-04-29 13:35:22 +02:00
Phillip Webb
f526666e4e Merge branch '3.3.x' into 3.4.x
Closes gh-45256
2025-04-22 19:12:57 -07:00
Phillip Webb
f6dae1397d Add application directory layer to ephemeral builder for Podman support
Update `EphemeralBuilder` so that it adds an additional layer that
containing an empty application (aka workspace) directory owned by
the build user.

Prior to this commit, the directory was only bound. This could cause
issues on Podman where, unlike Docker, the bound directory is owned
by `root`.

Fixes gh-45233
2025-04-22 19:11:45 -07:00
Moritz Halbritter
2e74ce8bf2 Merge branch '3.3.x' into 3.4.x
Closes gh-44630
2025-03-06 17:39:26 +01:00
Moritz Halbritter
a807a07a59 Always try to deserialize message in case of Docker transport errors
Before this commit, if the status code was 4xx or 500, we tried to read the errors
object, consuming the http entity. When we tried to deserialize the message,
the http entity was already consumed, an IOException has been thrown and null
is returned for the message.

Now, we read the content in a byte[] and deserialize the errors and the message
from that. This ensures that we can read both the errors and the message.

Closes gh-44628
2025-03-06 17:27:00 +01:00
Phillip Webb
123502b8d7 Restore use of fixed version when calling docker APIs
Update `DockerApi` so that calls are made using a fixed version. For
most calls this will be `v1.24`, however, for calls with a platform
we must use the `v1.41`.

When possible, we check that the Docker version in use meets the
required minimum, however, if we can't detect the running version
we now proceed and let the actual API call fail. This is due to the
fact that the `/_ping` endpoint may not always be available. For
example, it is restricted when building from a BitBucket CI pipeline.

Fixes gh-43452
2024-12-10 13:14:20 -08:00
Phillip Webb
dd64b0648f Merge branch '3.3.x'
Closes gh-43356
2024-12-02 13:59:53 -08:00
Phillip Webb
0afbc0b23c Polish 'Accept Docker progress on numbers >2GB'
Restore `int` returns for existing methods and deprecate them in
favor of a new `asPercentage()` method.

See gh-43328
2024-12-02 13:58:03 -08:00
Wolfgang Kronberg
d8565185e8 Accept Docker progress on numbers >2GB
Update `ProgressUpdateEvent` to support images of a file size
>2GB without provoking build failures.

See gh-43328
2024-12-02 13:56:09 -08:00
Andy Wilkinson
32433e84f3 Merge branch '3.3.x'
Closes gh-43270
2024-11-22 15:46:38 +00:00
Andy Wilkinson
bb3651b7d1 Reduce warnings reported by Eclipse
Closes gh-43269
2024-11-22 15:39:35 +00:00
Phillip Webb
f77c3bbd6b Merge branch '3.3.x'
Closes gh-43171
2024-11-14 15:50:15 -08:00
Phillip Webb
66ec6b32e3 Merge branch '3.2.x' into 3.3.x
Closes gh-43170
2024-11-14 15:50:04 -08:00
Phillip Webb
25b6477aa8 Support alternative media type format
Update `ExportedImageTar` media type detection to support `tar+gzip`
as well as `tar.gzip`. Recent updates to Docker Desktop appear to have
changed the format.

Fixes gh-43126
2024-11-14 15:25:15 -08:00
Phillip Webb
a293560237 Support nested OCI indexes
Update `ExportedImageTar.IndexLayerArchiveFactory` to support nested
indexes. Nested indexes support a layer of interaction where the
`index.json` file points to a blob that contains the read index to use.

Prior to this commit, we only supported indexes provided directly by
the `index.json` file. This missing support results in "buildpack.toml:
no such file or directory" errors when referencing specific buildpacks
and using Docker Engine 27.3.1 or above.

See gh-43126
2024-11-14 15:24:47 -08:00
Andy Wilkinson
c6e19517be Merge branch '3.3.x'
Closes gh-43070
2024-11-08 09:55:36 +00:00
Andy Wilkinson
81872afd53 Merge branch '3.2.x' into 3.3.x
Closes gh-43069
2024-11-08 09:55:22 +00:00
Andy Wilkinson
2fa28fb822 Improve error reporting when image loading fails
Closes gh-31243
2024-11-08 09:51:57 +00:00
Phillip Webb
dbb5e05ebf Merge branch '3.3.x'
Closes gh-42992
2024-11-04 16:19:04 -08:00
Phillip Webb
189e49f6d6 Merge branch '3.2.x' into 3.3.x
Closes gh-42991
2024-11-04 15:56:29 -08:00
Phillip Webb
c62a018830 Align buildpack certificate and key parsers with SSL versions
Closes gh-37969
2024-11-04 15:53:39 -08:00
Phillip Webb
269f18c0ca Merge branch '3.3.x'
Closes gh-42990
2024-11-04 14:34:39 -08:00
Phillip Webb
4a7c757945 Merge branch '3.2.x' into 3.3.x
Closes gh-42989
2024-11-04 14:34:17 -08:00
Phillip Webb
202db9b7f4 Update copyright year of changed files 2024-11-04 14:28:23 -08:00
Moritz Halbritter
8f6aabc15b Merge branch '3.3.x'
Closes gh-42960
2024-10-31 15:07:11 +01:00
Moritz Halbritter
6470748d6d Merge branch '3.2.x' into 3.3.x
Closes gh-42959
2024-10-31 15:07:02 +01:00
Moritz Halbritter
90b920a410 Use default address if null address is given
Closes gh-42958
2024-10-31 14:34:30 +01:00
Stéphane Nicoll
cc443366fa Merge branch '3.3.x'
Closes gh-42915
2024-10-29 13:28:42 +09:00
Stéphane Nicoll
4401673d6d Merge branch '3.2.x' into 3.3.x
Closes gh-42914
2024-10-29 13:27:06 +09:00
Stéphane Nicoll
d4010d3be0 Polish "Prevent auth header to be included in Docker API call"
See gh-42910
2024-10-29 13:24:09 +09:00
Phillip Webb
0a6d3f312e Polish 2024-10-16 13:08:21 -07:00
Moritz Halbritter
957e2f8b7f Add warning if sensitive container paths are bound
Closes gh-41643
2024-10-14 10:18:34 +02:00
Scott Frederick
dfab18c965 Add imagePlatform option for image building
An `imagePlatform` option for the Maven and Gradle image-building
goal/task can be used to specify the os/architecture of any
builder, run, and buildpack images that are pulled during image
building.

Closes gh-40944
2024-07-30 14:19:40 -05:00
Scott Frederick
7b8364d248 Fix LifecycleTests on Windows
See gh-gh-41352
2024-07-11 17:07:23 -05:00
Scott Frederick
224b06982e Add support for untrusted CNB builders
A `trustBuilder` configuration option has been added to the Maven and
Gradle CNB integration image building goal and task. A known set of
builders published by Paketo, Heroku, and Google are trusted by default,
all other builders are untrusted by default.

Closes gh-41352
2024-07-11 13:51:54 -05:00
Andy Wilkinson
b0d4f1d356 Merge branch '3.2.x' into 3.3.x
Closes gh-41257
2024-06-27 10:16:36 +01:00
Andy Wilkinson
d5ef5e9c9d Update spring-boot-buildpack-platform to use docker-test plugin
See gh-41228
2024-06-26 19:46:08 +01:00
Phillip Webb
9dda006a18 Merge branch '3.2.x' 2024-06-19 22:55:00 -07:00
Phillip Webb
2a4582b084 Update copyright year of changed files 2024-06-19 22:54:40 -07:00
Phillip Webb
905d6b96d0 Merge branch '3.2.x'
Closes gh-41166
2024-06-19 22:30:58 -07: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
Scott Frederick
84956ad56b Merge branch '3.2.x'
Closes gh-41091
2024-06-12 15:16:26 -05:00
Scott Frederick
e228ed39b3 Support CNB builders that do not specify a stack
Fixes gh-41046
2024-06-12 15:16:21 -05:00
Phillip Webb
147240aa0c Merge branch '3.2.x'
Closes gh-41080
2024-06-11 13:32:30 -07:00
Ahmed Ashour
207327d97c Use method references when possible in test code
See gh-40974
2024-06-11 12:58:00 -07:00