Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions 12 api/server/router/system/system_routes.go
Original file line number Diff line number Diff line change
Expand Up @@ -116,11 +116,13 @@ func (s *systemRouter) getInfo(ctx context.Context, w http.ResponseWriter, r *ht
info.FirewallBackend = nil
}

// TODO(thaJeztah): Expected commits are deprecated, and should no longer be set in API 1.49.
info.ContainerdCommit.Expected = info.ContainerdCommit.ID //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
info.RuncCommit.Expected = info.RuncCommit.ID //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
info.InitCommit.Expected = info.InitCommit.ID //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.

if versions.LessThan(version, "1.49") {
// Expected commits are omitted in API 1.49, but should still be
// included in older versions.
info.ContainerdCommit.Expected = info.ContainerdCommit.ID //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
info.RuncCommit.Expected = info.RuncCommit.ID //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
info.InitCommit.Expected = info.InitCommit.ID //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
}
if versions.GreaterThanOrEqualTo(version, "1.42") {
info.KernelMemory = false
}
Expand Down
7 changes: 0 additions & 7 deletions 7 api/swagger.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7186,13 +7186,6 @@ definitions:
description: "Actual commit ID of external tool."
type: "string"
example: "cfb82a876ecc11b5ca0977d1733adbe58599088a"
Expected:
description: |
Commit ID of external tool expected by dockerd as set at build time.

**Deprecated**: This field is deprecated and will be omitted in a API v1.49.
type: "string"
example: "2d41c047c83e09a6d61d464906feb2a2f3c52aa4"

SwarmInfo:
description: |
Expand Down
2 changes: 1 addition & 1 deletion 2 api/types/system/info.go
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ type Commit struct {
// Expected is the commit ID of external tool expected by dockerd as set at build time.
//
// Deprecated: this field is no longer used in API v1.49, but kept for backward-compatibility with older API versions.
Expected string
Expected string `json:",omitempty"`
}

// NetworkAddressPool is a temp struct used by [Info] struct.
Expand Down
3 changes: 3 additions & 0 deletions 3 docs/api/version-history.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ keywords: "API, Docker, rcli, REST, documentation"
* Deprecated: The `AllowNondistributableArtifactsCIDRs` and `AllowNondistributableArtifactsHostnames`
fields in the `RegistryConfig` struct in the `GET /info` response are omitted
in API v1.49.
* Deprecated: The `ContainerdCommit.Expected`, `RuncCommit.Expected`, and
`InitCommit.Expected` fields in the `GET /info` endpoint were deprecated
in API v1.48, and are now omitted in API v1.49.

## v1.48 API changes

Expand Down
40 changes: 31 additions & 9 deletions 40 integration/system/info_linux_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,45 @@ package system // import "github.com/docker/docker/integration/system"
import (
"testing"

"github.com/docker/docker/client"
"gotest.tools/v3/assert"
is "gotest.tools/v3/assert/cmp"
)

func TestInfoBinaryCommits(t *testing.T) {
ctx := setupTest(t)
apiClient := testEnv.APIClient()

info, err := apiClient.Info(ctx)
assert.NilError(t, err)
t.Run("current", func(t *testing.T) {
apiClient := testEnv.APIClient()

assert.Check(t, "N/A" != info.ContainerdCommit.ID)
assert.Check(t, is.Equal(info.ContainerdCommit.Expected, info.ContainerdCommit.ID)) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
info, err := apiClient.Info(ctx)
assert.NilError(t, err)

assert.Check(t, "N/A" != info.InitCommit.ID)
assert.Check(t, is.Equal(info.InitCommit.Expected, info.InitCommit.ID)) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
assert.Check(t, "N/A" != info.ContainerdCommit.ID)
assert.Check(t, is.Equal(info.ContainerdCommit.Expected, "")) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.

assert.Check(t, "N/A" != info.RuncCommit.ID)
assert.Check(t, is.Equal(info.RuncCommit.Expected, info.RuncCommit.ID)) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
assert.Check(t, "N/A" != info.InitCommit.ID)
assert.Check(t, is.Equal(info.InitCommit.Expected, "")) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.

assert.Check(t, "N/A" != info.RuncCommit.ID)
assert.Check(t, is.Equal(info.RuncCommit.Expected, "")) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
})

// Expected commits are omitted in API 1.49, but should still be included in older versions.
t.Run("1.48", func(t *testing.T) {
apiClient, err := client.NewClientWithOpts(client.FromEnv, client.WithVersion("1.48"))
assert.NilError(t, err)

info, err := apiClient.Info(ctx)
assert.NilError(t, err)

assert.Check(t, "N/A" != info.ContainerdCommit.ID)
assert.Check(t, is.Equal(info.ContainerdCommit.Expected, info.ContainerdCommit.ID)) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.

assert.Check(t, "N/A" != info.InitCommit.ID)
assert.Check(t, is.Equal(info.InitCommit.Expected, info.InitCommit.ID)) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.

assert.Check(t, "N/A" != info.RuncCommit.ID)
assert.Check(t, is.Equal(info.RuncCommit.Expected, info.RuncCommit.ID)) //nolint:staticcheck // ignore SA1019: field is deprecated, but still used on API < v1.49.
})
}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.