From ad4cbee498af3077a300e6588c4f2282ae90687d Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Thu, 29 May 2025 10:37:19 +0200 Subject: [PATCH] bump github.com/docker/docker, docker/cli v28.2.2 Signed-off-by: Sebastiaan van Stijn --- cmd/compose/run.go | 4 ++-- go.mod | 6 +++--- go.sum | 8 ++++---- pkg/api/dryrunclient.go | 33 +++++++++++++++++---------------- pkg/bridge/convert.go | 7 ++++--- pkg/compose/build_classic.go | 20 ++++++++------------ pkg/compose/commit.go | 2 +- pkg/compose/create.go | 8 ++++---- pkg/compose/down.go | 20 ++++++++++---------- pkg/compose/image_pruner.go | 4 ++-- pkg/compose/images.go | 4 ++-- pkg/compose/start.go | 7 +++---- pkg/compose/up.go | 4 ++-- 13 files changed, 62 insertions(+), 65 deletions(-) diff --git a/cmd/compose/run.go b/cmd/compose/run.go index fa138d3dd..f6fb05715 100644 --- a/cmd/compose/run.go +++ b/cmd/compose/run.go @@ -324,8 +324,8 @@ func runRun(ctx context.Context, backend api.Service, project *types.Project, op Interactive: options.interactive, WorkingDir: options.workdir, User: options.user, - CapAdd: options.capAdd.GetAll(), - CapDrop: options.capDrop.GetAll(), + CapAdd: options.capAdd.GetSlice(), + CapDrop: options.capDrop.GetSlice(), Environment: environment.Values(), Entrypoint: options.entrypointCmd, Labels: labels, diff --git a/go.mod b/go.mod index a6950445c..479bd313b 100644 --- a/go.mod +++ b/go.mod @@ -10,13 +10,14 @@ require ( github.com/buger/goterm v1.0.4 github.com/compose-spec/compose-go/v2 v2.6.4 github.com/containerd/containerd/v2 v2.1.1 + github.com/containerd/errdefs v1.0.0 github.com/containerd/platforms v1.0.0-rc.1 github.com/davecgh/go-spew v1.1.1 github.com/distribution/reference v0.6.0 github.com/docker/buildx v0.24.0 - github.com/docker/cli v28.1.1+incompatible + github.com/docker/cli v28.2.2+incompatible github.com/docker/cli-docs-tool v0.10.0 - github.com/docker/docker v28.1.1+incompatible + github.com/docker/docker v28.2.2+incompatible github.com/docker/go-connections v0.5.0 github.com/docker/go-units v0.5.0 github.com/eiannone/keyboard v0.0.0-20220611211555-0d226195f203 @@ -86,7 +87,6 @@ require ( github.com/containerd/console v1.0.4 // indirect github.com/containerd/containerd/api v1.9.0 // indirect github.com/containerd/continuity v0.4.5 // indirect - github.com/containerd/errdefs v1.0.0 // indirect github.com/containerd/errdefs/pkg v0.3.0 // indirect github.com/containerd/log v0.1.0 // indirect github.com/containerd/ttrpc v1.2.7 // indirect diff --git a/go.sum b/go.sum index 12d466dd4..9b4e25570 100644 --- a/go.sum +++ b/go.sum @@ -127,15 +127,15 @@ github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5Qvfr github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= github.com/docker/buildx v0.24.0 h1:qiD+xktY+Fs3R79oz8M+7pbhip78qGLx6LBuVmyb+64= github.com/docker/buildx v0.24.0/go.mod h1:vYkdBUBjFo/i5vUE0mkajGlk03gE0T/HaGXXhgIxo8E= -github.com/docker/cli v28.1.1+incompatible h1:eyUemzeI45DY7eDPuwUcmDyDj1pM98oD5MdSpiItp8k= -github.com/docker/cli v28.1.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/cli v28.2.2+incompatible h1:qzx5BNUDFqlvyq4AHzdNB7gSyVTmU4cgsyN9SdInc1A= +github.com/docker/cli v28.2.2+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/cli-docs-tool v0.10.0 h1:bOD6mKynPQgojQi3s2jgcUWGp/Ebqy1SeCr9VfKQLLU= github.com/docker/cli-docs-tool v0.10.0/go.mod h1:5EM5zPnT2E7yCLERZmrDA234Vwn09fzRHP4aX1qwp1U= github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v28.1.1+incompatible h1:49M11BFLsVO1gxY9UX9p/zwkE/rswggs8AdFmXQw51I= -github.com/docker/docker v28.1.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v28.2.2+incompatible h1:CjwRSksz8Yo4+RmQ339Dp/D2tGO5JxwYeqtMOEe0LDw= +github.com/docker/docker v28.2.2+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= github.com/docker/docker-credential-helpers v0.9.3 h1:gAm/VtF9wgqJMoxzT3Gj5p4AqIjCBS4wrsOh9yRqcz8= github.com/docker/docker-credential-helpers v0.9.3/go.mod h1:x+4Gbw9aGmChi3qTLZj8Dfn0TD20M/fuWy0E5+WDeCo= github.com/docker/go v1.5.1-1.0.20160303222718-d30aec9fd63c h1:lzqkGL9b3znc+ZUgi7FlLnqjQhcXxkNM/quxIjBVMD0= diff --git a/pkg/api/dryrunclient.go b/pkg/api/dryrunclient.go index 00fbb7c83..b5ffc8ae6 100644 --- a/pkg/api/dryrunclient.go +++ b/pkg/api/dryrunclient.go @@ -34,6 +34,7 @@ import ( "github.com/docker/buildx/util/imagetools" "github.com/docker/cli/cli/command" moby "github.com/docker/docker/api/types" + "github.com/docker/docker/api/types/build" "github.com/docker/docker/api/types/checkpoint" containerType "github.com/docker/docker/api/types/container" "github.com/docker/docker/api/types/events" @@ -205,18 +206,18 @@ func (d *DryRunClient) CopyToContainer(ctx context.Context, container, path stri return nil } -func (d *DryRunClient) ImageBuild(ctx context.Context, reader io.Reader, options moby.ImageBuildOptions) (moby.ImageBuildResponse, error) { +func (d *DryRunClient) ImageBuild(ctx context.Context, reader io.Reader, options build.ImageBuildOptions) (build.ImageBuildResponse, error) { jsonMessage, err := json.Marshal(&jsonmessage.JSONMessage{ Status: fmt.Sprintf("%[1]sSuccessfully built: dryRunID\n%[1]sSuccessfully tagged: %[2]s\n", DRYRUN_PREFIX, options.Tags[0]), Progress: &jsonmessage.JSONProgress{}, ID: "", }) if err != nil { - return moby.ImageBuildResponse{}, err + return build.ImageBuildResponse{}, err } rc := io.NopCloser(bytes.NewReader(jsonMessage)) - return moby.ImageBuildResponse{ + return build.ImageBuildResponse{ Body: rc, OSType: "", }, nil @@ -334,11 +335,11 @@ func (d *DryRunClient) ContainerExecStart(ctx context.Context, execID string, co // Functions delegated to original APIClient (not used by Compose or not modifying the Compose stack -func (d *DryRunClient) ConfigList(ctx context.Context, options moby.ConfigListOptions) ([]swarm.Config, error) { +func (d *DryRunClient) ConfigList(ctx context.Context, options swarm.ConfigListOptions) ([]swarm.Config, error) { return d.apiClient.ConfigList(ctx, options) } -func (d *DryRunClient) ConfigCreate(ctx context.Context, config swarm.ConfigSpec) (moby.ConfigCreateResponse, error) { +func (d *DryRunClient) ConfigCreate(ctx context.Context, config swarm.ConfigSpec) (swarm.ConfigCreateResponse, error) { return d.apiClient.ConfigCreate(ctx, config) } @@ -422,7 +423,7 @@ func (d *DryRunClient) DistributionInspect(ctx context.Context, imageName, encod return d.apiClient.DistributionInspect(ctx, imageName, encodedRegistryAuth) } -func (d *DryRunClient) BuildCachePrune(ctx context.Context, opts moby.BuildCachePruneOptions) (*moby.BuildCachePruneReport, error) { +func (d *DryRunClient) BuildCachePrune(ctx context.Context, opts build.CachePruneOptions) (*build.CachePruneReport, error) { return d.apiClient.BuildCachePrune(ctx, opts) } @@ -470,11 +471,11 @@ func (d *DryRunClient) NodeInspectWithRaw(ctx context.Context, nodeID string) (s return d.apiClient.NodeInspectWithRaw(ctx, nodeID) } -func (d *DryRunClient) NodeList(ctx context.Context, options moby.NodeListOptions) ([]swarm.Node, error) { +func (d *DryRunClient) NodeList(ctx context.Context, options swarm.NodeListOptions) ([]swarm.Node, error) { return d.apiClient.NodeList(ctx, options) } -func (d *DryRunClient) NodeRemove(ctx context.Context, nodeID string, options moby.NodeRemoveOptions) error { +func (d *DryRunClient) NodeRemove(ctx context.Context, nodeID string, options swarm.NodeRemoveOptions) error { return d.apiClient.NodeRemove(ctx, nodeID, options) } @@ -538,15 +539,15 @@ func (d *DryRunClient) PluginCreate(ctx context.Context, createContext io.Reader return d.apiClient.PluginCreate(ctx, createContext, options) } -func (d *DryRunClient) ServiceCreate(ctx context.Context, service swarm.ServiceSpec, options moby.ServiceCreateOptions) (swarm.ServiceCreateResponse, error) { +func (d *DryRunClient) ServiceCreate(ctx context.Context, service swarm.ServiceSpec, options swarm.ServiceCreateOptions) (swarm.ServiceCreateResponse, error) { return d.apiClient.ServiceCreate(ctx, service, options) } -func (d *DryRunClient) ServiceInspectWithRaw(ctx context.Context, serviceID string, options moby.ServiceInspectOptions) (swarm.Service, []byte, error) { +func (d *DryRunClient) ServiceInspectWithRaw(ctx context.Context, serviceID string, options swarm.ServiceInspectOptions) (swarm.Service, []byte, error) { return d.apiClient.ServiceInspectWithRaw(ctx, serviceID, options) } -func (d *DryRunClient) ServiceList(ctx context.Context, options moby.ServiceListOptions) ([]swarm.Service, error) { +func (d *DryRunClient) ServiceList(ctx context.Context, options swarm.ServiceListOptions) ([]swarm.Service, error) { return d.apiClient.ServiceList(ctx, options) } @@ -554,7 +555,7 @@ func (d *DryRunClient) ServiceRemove(ctx context.Context, serviceID string) erro return d.apiClient.ServiceRemove(ctx, serviceID) } -func (d *DryRunClient) ServiceUpdate(ctx context.Context, serviceID string, version swarm.Version, service swarm.ServiceSpec, options moby.ServiceUpdateOptions) (swarm.ServiceUpdateResponse, error) { +func (d *DryRunClient) ServiceUpdate(ctx context.Context, serviceID string, version swarm.Version, service swarm.ServiceSpec, options swarm.ServiceUpdateOptions) (swarm.ServiceUpdateResponse, error) { return d.apiClient.ServiceUpdate(ctx, serviceID, version, service, options) } @@ -570,7 +571,7 @@ func (d *DryRunClient) TaskInspectWithRaw(ctx context.Context, taskID string) (s return d.apiClient.TaskInspectWithRaw(ctx, taskID) } -func (d *DryRunClient) TaskList(ctx context.Context, options moby.TaskListOptions) ([]swarm.Task, error) { +func (d *DryRunClient) TaskList(ctx context.Context, options swarm.TaskListOptions) ([]swarm.Task, error) { return d.apiClient.TaskList(ctx, options) } @@ -582,7 +583,7 @@ func (d *DryRunClient) SwarmJoin(ctx context.Context, req swarm.JoinRequest) err return d.apiClient.SwarmJoin(ctx, req) } -func (d *DryRunClient) SwarmGetUnlockKey(ctx context.Context) (moby.SwarmUnlockKeyResponse, error) { +func (d *DryRunClient) SwarmGetUnlockKey(ctx context.Context) (swarm.UnlockKeyResponse, error) { return d.apiClient.SwarmGetUnlockKey(ctx) } @@ -602,11 +603,11 @@ func (d *DryRunClient) SwarmUpdate(ctx context.Context, version swarm.Version, s return d.apiClient.SwarmUpdate(ctx, version, swarmSpec, flags) } -func (d *DryRunClient) SecretList(ctx context.Context, options moby.SecretListOptions) ([]swarm.Secret, error) { +func (d *DryRunClient) SecretList(ctx context.Context, options swarm.SecretListOptions) ([]swarm.Secret, error) { return d.apiClient.SecretList(ctx, options) } -func (d *DryRunClient) SecretCreate(ctx context.Context, secret swarm.SecretSpec) (moby.SecretCreateResponse, error) { +func (d *DryRunClient) SecretCreate(ctx context.Context, secret swarm.SecretSpec) (swarm.SecretCreateResponse, error) { return d.apiClient.SecretCreate(ctx, secret) } diff --git a/pkg/bridge/convert.go b/pkg/bridge/convert.go index aa2b64a0e..c2df73e76 100644 --- a/pkg/bridge/convert.go +++ b/pkg/bridge/convert.go @@ -26,6 +26,7 @@ import ( "strconv" "github.com/compose-spec/compose-go/v2/types" + cerrdefs "github.com/containerd/errdefs" "github.com/docker/cli/cli/command" cli "github.com/docker/cli/cli/command/container" "github.com/docker/compose/v2/pkg/api" @@ -33,8 +34,8 @@ import ( "github.com/docker/docker/api/types/container" "github.com/docker/docker/api/types/image" "github.com/docker/docker/api/types/network" - "github.com/docker/docker/errdefs" "github.com/docker/docker/pkg/jsonmessage" + "github.com/docker/go-connections/nat" "gopkg.in/yaml.v3" ) @@ -151,7 +152,7 @@ func LoadAdditionalResources(ctx context.Context, cli command.Cli, project *type exposed := utils.Set[string]{} exposed.AddAll(service.Expose...) for port := range inspect.Config.ExposedPorts { - exposed.Add(port.Port()) + exposed.Add(nat.Port(port).Port()) } for _, port := range service.Ports { exposed.Add(strconv.Itoa(int(port.Target))) @@ -197,7 +198,7 @@ func loadFileObject(conf types.FileObjectConfig) (types.FileObjectConfig, error) func inspectWithPull(ctx context.Context, dockerCli command.Cli, imageName string) (image.InspectResponse, error) { inspect, err := dockerCli.Client().ImageInspect(ctx, imageName) - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { var stream io.ReadCloser stream, err = dockerCli.Client().ImagePull(ctx, imageName, image.PullOptions{}) if err != nil { diff --git a/pkg/compose/build_classic.go b/pkg/compose/build_classic.go index 39d76fd6a..2de2c9c43 100644 --- a/pkg/compose/build_classic.go +++ b/pkg/compose/build_classic.go @@ -27,23 +27,19 @@ import ( "runtime" "strings" - "github.com/docker/cli/cli/command" - - "github.com/docker/docker/api/types/registry" - "github.com/compose-spec/compose-go/v2/types" "github.com/docker/cli/cli" + "github.com/docker/cli/cli/command" "github.com/docker/cli/cli/command/image/build" - dockertypes "github.com/docker/docker/api/types" + "github.com/docker/compose/v2/pkg/api" + buildtypes "github.com/docker/docker/api/types/build" "github.com/docker/docker/api/types/container" + "github.com/docker/docker/api/types/registry" "github.com/docker/docker/builder/remotecontext/urlutil" "github.com/docker/docker/pkg/jsonmessage" "github.com/docker/docker/pkg/progress" "github.com/docker/docker/pkg/streamformatter" "github.com/moby/go-archive" - - "github.com/docker/compose/v2/pkg/api" - "github.com/sirupsen/logrus" ) @@ -179,7 +175,7 @@ func (s *composeService) doBuildClassic(ctx context.Context, project *types.Proj imageID := "" aux := func(msg jsonmessage.JSONMessage) { - var result dockertypes.BuildResult + var result buildtypes.Result if err := json.Unmarshal(*msg.Aux, &result); err != nil { logrus.Errorf("Failed to parse aux message: %s", err) } else { @@ -219,10 +215,10 @@ func isLocalDir(c string) bool { return err == nil } -func imageBuildOptions(dockerCli command.Cli, project *types.Project, service types.ServiceConfig, options api.BuildOptions) dockertypes.ImageBuildOptions { +func imageBuildOptions(dockerCli command.Cli, project *types.Project, service types.ServiceConfig, options api.BuildOptions) buildtypes.ImageBuildOptions { config := service.Build - return dockertypes.ImageBuildOptions{ - Version: dockertypes.BuilderV1, + return buildtypes.ImageBuildOptions{ + Version: buildtypes.BuilderV1, Tags: config.Tags, NoCache: config.NoCache, Remove: true, diff --git a/pkg/compose/commit.go b/pkg/compose/commit.go index 97644353e..85d19df7c 100644 --- a/pkg/compose/commit.go +++ b/pkg/compose/commit.go @@ -69,7 +69,7 @@ func (s *composeService) commit(ctx context.Context, projectName string, options Reference: options.Reference, Comment: options.Comment, Author: options.Author, - Changes: options.Changes.GetAll(), + Changes: options.Changes.GetSlice(), Pause: options.Pause, }) if err != nil { diff --git a/pkg/compose/create.go b/pkg/compose/create.go index a3e1a19fc..2e4964eb6 100644 --- a/pkg/compose/create.go +++ b/pkg/compose/create.go @@ -30,6 +30,7 @@ import ( "github.com/compose-spec/compose-go/v2/paths" "github.com/compose-spec/compose-go/v2/types" + cerrdefs "github.com/containerd/errdefs" "github.com/docker/compose/v2/pkg/api" "github.com/docker/compose/v2/pkg/progress" "github.com/docker/compose/v2/pkg/prompt" @@ -41,7 +42,6 @@ import ( "github.com/docker/docker/api/types/strslice" "github.com/docker/docker/api/types/versions" volumetypes "github.com/docker/docker/api/types/volume" - "github.com/docker/docker/errdefs" "github.com/docker/go-connections/nat" "github.com/sirupsen/logrus" cdi "tags.cncf.io/container-device-interface/pkg/parser" @@ -1253,7 +1253,7 @@ func (s *composeService) ensureNetwork(ctx context.Context, project *types.Proje } id, err := s.resolveOrCreateNetwork(ctx, project, name, n) - if errdefs.IsConflict(err) { + if cerrdefs.IsConflict(err) { // Maybe another execution of `docker compose up|run` created same network // let's retry once return s.resolveOrCreateNetwork(ctx, project, name, n) @@ -1438,7 +1438,7 @@ func (s *composeService) resolveExternalNetwork(ctx context.Context, n *types.Ne sn, err := s.apiClient().NetworkInspect(ctx, n.Name, network.InspectOptions{}) if err == nil { networks = append(networks, sn) - } else if !errdefs.IsNotFound(err) { + } else if !cerrdefs.IsNotFound(err) { return "", err } @@ -1475,7 +1475,7 @@ func (s *composeService) resolveExternalNetwork(ctx context.Context, n *types.Ne func (s *composeService) ensureVolume(ctx context.Context, name string, volume types.VolumeConfig, project *types.Project, assumeYes bool) (string, error) { inspected, err := s.apiClient().VolumeInspect(ctx, volume.Name) if err != nil { - if !errdefs.IsNotFound(err) { + if !cerrdefs.IsNotFound(err) { return "", err } if volume.External { diff --git a/pkg/compose/down.go b/pkg/compose/down.go index 7061be093..bd716978a 100644 --- a/pkg/compose/down.go +++ b/pkg/compose/down.go @@ -23,6 +23,7 @@ import ( "time" "github.com/compose-spec/compose-go/v2/types" + cerrdefs "github.com/containerd/errdefs" "github.com/docker/compose/v2/pkg/api" "github.com/docker/compose/v2/pkg/progress" "github.com/docker/compose/v2/pkg/utils" @@ -30,7 +31,6 @@ import ( "github.com/docker/docker/api/types/filters" imageapi "github.com/docker/docker/api/types/image" "github.com/docker/docker/api/types/network" - "github.com/docker/docker/errdefs" "github.com/sirupsen/logrus" "golang.org/x/sync/errgroup" ) @@ -219,7 +219,7 @@ func (s *composeService) removeNetwork(ctx context.Context, composeNetworkName s continue } nw, err := s.apiClient().NetworkInspect(ctx, net.ID, network.InspectOptions{}) - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { w.Event(progress.NewEvent(eventName, progress.Warning, "No resource found to remove")) return nil } @@ -233,7 +233,7 @@ func (s *composeService) removeNetwork(ctx context.Context, composeNetworkName s } if err := s.apiClient().NetworkRemove(ctx, net.ID); err != nil { - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { continue } w.Event(progress.ErrorEvent(eventName)) @@ -261,11 +261,11 @@ func (s *composeService) removeImage(ctx context.Context, image string, w progre w.Event(progress.NewEvent(id, progress.Done, "Removed")) return nil } - if errdefs.IsConflict(err) { + if cerrdefs.IsConflict(err) { w.Event(progress.NewEvent(id, progress.Warning, "Resource is still in use")) return nil } - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { w.Event(progress.NewEvent(id, progress.Done, "Warning: No resource found to remove")) return nil } @@ -276,7 +276,7 @@ func (s *composeService) removeVolume(ctx context.Context, id string, w progress resource := fmt.Sprintf("Volume %s", id) _, err := s.apiClient().VolumeInspect(ctx, id) - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { // Already gone return nil } @@ -287,11 +287,11 @@ func (s *composeService) removeVolume(ctx context.Context, id string, w progress w.Event(progress.NewEvent(resource, progress.Done, "Removed")) return nil } - if errdefs.IsConflict(err) { + if cerrdefs.IsConflict(err) { w.Event(progress.NewEvent(resource, progress.Warning, "Resource is still in use")) return nil } - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { w.Event(progress.NewEvent(resource, progress.Done, "Warning: No resource found to remove")) return nil } @@ -345,7 +345,7 @@ func (s *composeService) stopAndRemoveContainer(ctx context.Context, ctr contain w := progress.ContextWriter(ctx) eventName := getContainerProgressName(ctr) err := s.stopContainer(ctx, w, service, ctr, timeout) - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { w.Event(progress.RemovedEvent(eventName)) return nil } @@ -357,7 +357,7 @@ func (s *composeService) stopAndRemoveContainer(ctx context.Context, ctr contain Force: true, RemoveVolumes: volumes, }) - if err != nil && !errdefs.IsNotFound(err) && !errdefs.IsConflict(err) { + if err != nil && !cerrdefs.IsNotFound(err) && !cerrdefs.IsConflict(err) { w.Event(progress.ErrorMessageEvent(eventName, "Error while Removing")) return err } diff --git a/pkg/compose/image_pruner.go b/pkg/compose/image_pruner.go index 25306849b..ea6ed6c57 100644 --- a/pkg/compose/image_pruner.go +++ b/pkg/compose/image_pruner.go @@ -23,11 +23,11 @@ import ( "sync" "github.com/compose-spec/compose-go/v2/types" + cerrdefs "github.com/containerd/errdefs" "github.com/distribution/reference" "github.com/docker/docker/api/types/filters" "github.com/docker/docker/api/types/image" "github.com/docker/docker/client" - "github.com/docker/docker/errdefs" "golang.org/x/sync/errgroup" "github.com/docker/compose/v2/pkg/api" @@ -204,7 +204,7 @@ func (p *ImagePruner) filterImagesByExistence(ctx context.Context, imageNames [] for _, img := range imageNames { eg.Go(func() error { _, err := p.client.ImageInspect(ctx, img) - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { // err on the side of caution: only skip if we successfully // queried the API and got back a definitive "not exists" return nil diff --git a/pkg/compose/images.go b/pkg/compose/images.go index 1ce780942..81936180c 100644 --- a/pkg/compose/images.go +++ b/pkg/compose/images.go @@ -23,10 +23,10 @@ import ( "strings" "sync" + cerrdefs "github.com/containerd/errdefs" "github.com/distribution/reference" "github.com/docker/docker/api/types/container" "github.com/docker/docker/api/types/filters" - "github.com/docker/docker/errdefs" "golang.org/x/sync/errgroup" "github.com/docker/compose/v2/pkg/api" @@ -84,7 +84,7 @@ func (s *composeService) getImageSummaries(ctx context.Context, repoTags []strin eg.Go(func() error { inspect, err := s.apiClient().ImageInspect(ctx, repoTag) if err != nil { - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { return nil } return fmt.Errorf("unable to get image '%s': %w", repoTag, err) diff --git a/pkg/compose/start.go b/pkg/compose/start.go index b80abc9a1..a18487b50 100644 --- a/pkg/compose/start.go +++ b/pkg/compose/start.go @@ -24,12 +24,11 @@ import ( "strings" "time" - containerType "github.com/docker/docker/api/types/container" - "github.com/docker/docker/errdefs" - + cerrdefs "github.com/containerd/errdefs" "github.com/docker/compose/v2/pkg/api" "github.com/docker/compose/v2/pkg/progress" "github.com/docker/compose/v2/pkg/utils" + containerType "github.com/docker/docker/api/types/container" "github.com/compose-spec/compose-go/v2/types" "github.com/docker/docker/api/types/filters" @@ -238,7 +237,7 @@ func (s *composeService) watchContainers(ctx context.Context, //nolint:gocyclo }() inspected, err := s.apiClient().ContainerInspect(ctx, event.Container) if err != nil { - if errdefs.IsNotFound(err) { + if cerrdefs.IsNotFound(err) { // it's possible to get "destroy" or "kill" events but not // be able to inspect in time before they're gone from the // API, so just remove the watch without erroring diff --git a/pkg/compose/up.go b/pkg/compose/up.go index 651503d73..c98570e4f 100644 --- a/pkg/compose/up.go +++ b/pkg/compose/up.go @@ -25,12 +25,12 @@ import ( "syscall" "github.com/compose-spec/compose-go/v2/types" + cerrdefs "github.com/containerd/errdefs" "github.com/docker/cli/cli" "github.com/docker/compose/v2/cmd/formatter" "github.com/docker/compose/v2/internal/tracing" "github.com/docker/compose/v2/pkg/api" "github.com/docker/compose/v2/pkg/progress" - "github.com/docker/docker/errdefs" "github.com/eiannone/keyboard" "github.com/hashicorp/go-multierror" "github.com/sirupsen/logrus" @@ -129,7 +129,7 @@ func (s *composeService) Up(ctx context.Context, project *types.Project, options All: true, }) // Ignore errors indicating that some of the containers were already stopped or removed. - if errdefs.IsNotFound(err) || errdefs.IsConflict(err) { + if cerrdefs.IsNotFound(err) || cerrdefs.IsConflict(err) { return nil }