Merge pull request #47374 from tianon/api-inspect-created

Set `Created` to `0001-01-01T00:00:00Z` on older API versions
This commit is contained in:
Sebastiaan van Stijn 2024-02-14 17:09:07 +01:00 committed by GitHub
commit a0f12f96eb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 11 additions and 2 deletions

View file

@ -299,6 +299,12 @@ func (ir *imageRouter) getImagesByName(ctx context.Context, w http.ResponseWrite
version := httputils.VersionFromContext(ctx)
if versions.LessThan(version, "1.44") {
imageInspect.VirtualSize = imageInspect.Size //nolint:staticcheck // ignore SA1019: field is deprecated, but still set on API < v1.44.
if imageInspect.Created == "" {
// backwards compatibility for Created not existing returning "0001-01-01T00:00:00Z"
// https://github.com/moby/moby/issues/47368
imageInspect.Created = time.Time{}.Format(time.RFC3339Nano)
}
}
return httputils.WriteJSON(w, http.StatusOK, imageInspect)
}

View file

@ -1746,7 +1746,7 @@ definitions:
Created:
description: |
Date and time at which the image was created, formatted in
[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds.
[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds, or empty if the field was not set in the image config.
type: "string"
x-nullable: false
example: "2022-02-04T21:20:12.497794809Z"

View file

@ -1742,7 +1742,7 @@ definitions:
Created:
description: |
Date and time at which the image was created, formatted in
[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds.
[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds, or empty if the field was not set in the image config.
type: "string"
x-nullable: false
example: "2022-02-04T21:20:12.497794809Z"

View file

@ -86,6 +86,9 @@ keywords: "API, Docker, rcli, REST, documentation"
`SecondaryIPv6Addresses` available in `NetworkSettings` when calling `GET /containers/{id}/json` are
deprecated and will be removed in a future release. You should instead look for the default network in
`NetworkSettings.Networks`.
* `GET /images/{id}/json` now responds with an empty `Created` field
(previously it was `0001-01-01T00:00:00Z`) if the `Created` field is missing
from the image config.
## v1.43 API changes