Skip to content

Commit f065ed5

Browse files
committed
fix: deprecations and compile errors due to docker upgrade
Signed-off-by: Russell Centanni <russell.centanni@gmail.com>
1 parent b7ed003 commit f065ed5

9 files changed

Lines changed: 59 additions & 52 deletions

File tree

e2e/tests/build/build.go

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ import (
55
"context"
66
"errors"
77
"fmt"
8-
"github.com/onsi/ginkgo/v2"
98
"io"
109
"os"
1110
"os/exec"
1211
"strings"
1312

14-
"github.com/docker/docker/api/types"
13+
"github.com/docker/docker/api/types/image"
14+
"github.com/onsi/ginkgo/v2"
15+
1516
"github.com/docker/docker/api/types/container"
1617

1718
"github.com/loft-sh/devspace/cmd"
@@ -63,7 +64,7 @@ var _ = DevSpaceDescribe("build", func() {
6364
framework.ExpectNoError(err)
6465

6566
dockerClient := devspaceDockerClient.DockerAPIClient()
66-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
67+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
6768
framework.ExpectNoError(err)
6869

6970
found := false
@@ -102,7 +103,7 @@ var _ = DevSpaceDescribe("build", func() {
102103
framework.ExpectNoError(err)
103104

104105
dockerClient := devspaceDockerClient.DockerAPIClient()
105-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
106+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
106107
framework.ExpectNoError(err)
107108

108109
found := false
@@ -139,7 +140,7 @@ var _ = DevSpaceDescribe("build", func() {
139140
framework.ExpectNoError(err)
140141

141142
dockerClient := devspaceDockerClient.DockerAPIClient()
142-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
143+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
143144
framework.ExpectNoError(err)
144145

145146
found := false
@@ -186,7 +187,7 @@ var _ = DevSpaceDescribe("build", func() {
186187
framework.ExpectNoError(err)
187188

188189
dockerClient := devspaceDockerClient.DockerAPIClient()
189-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
190+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
190191
framework.ExpectNoError(err)
191192

192193
found := false
@@ -242,7 +243,7 @@ var _ = DevSpaceDescribe("build", func() {
242243
framework.ExpectNoError(err)
243244

244245
dockerClient := devspaceDockerClient.DockerAPIClient()
245-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
246+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
246247
framework.ExpectNoError(err)
247248

248249
for _, image := range imageList {
@@ -286,7 +287,7 @@ var _ = DevSpaceDescribe("build", func() {
286287
framework.ExpectNoError(err)
287288

288289
dockerClient := devspaceDockerClient.DockerAPIClient()
289-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
290+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
290291
framework.ExpectNoError(err)
291292

292293
for _, image := range imageList {
@@ -338,7 +339,7 @@ var _ = DevSpaceDescribe("build", func() {
338339
framework.ExpectNoError(err)
339340

340341
dockerClient := devspaceDockerClient.DockerAPIClient()
341-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
342+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
342343
framework.ExpectNoError(err)
343344

344345
for _, image := range imageList {
@@ -373,7 +374,7 @@ var _ = DevSpaceDescribe("build", func() {
373374
framework.ExpectNoError(err)
374375

375376
dockerClient := devspaceDockerClient.DockerAPIClient()
376-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
377+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
377378
framework.ExpectNoError(err)
378379
imageName := "my-docker-username/helloworld-dockerignore:latest"
379380
for _, image := range imageList {
@@ -393,7 +394,7 @@ var _ = DevSpaceDescribe("build", func() {
393394
}, nil, nil, nil, "")
394395
framework.ExpectNoError(err)
395396

396-
err = dockerClient.ContainerStart(ctx, resp.ID, types.ContainerStartOptions{})
397+
err = dockerClient.ContainerStart(ctx, resp.ID, container.StartOptions{})
397398
framework.ExpectNoError(err)
398399

399400
statusCh, errCh := dockerClient.ContainerWait(ctx, resp.ID, container.WaitConditionNotRunning)
@@ -403,7 +404,7 @@ var _ = DevSpaceDescribe("build", func() {
403404
case <-statusCh:
404405
}
405406

406-
out, err := dockerClient.ContainerLogs(ctx, resp.ID, types.ContainerLogsOptions{ShowStdout: true})
407+
out, err := dockerClient.ContainerLogs(ctx, resp.ID, container.LogsOptions{ShowStdout: true})
407408
framework.ExpectNoError(err)
408409

409410
stdout := &bytes.Buffer{}
@@ -438,7 +439,7 @@ var _ = DevSpaceDescribe("build", func() {
438439
framework.ExpectNoError(err)
439440

440441
dockerClient := devspaceDockerClient.DockerAPIClient()
441-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
442+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
442443
framework.ExpectNoError(err)
443444
imageName := "my-docker-username/helloworld-dockerignore-rel-path:latest"
444445
for _, image := range imageList {
@@ -458,7 +459,7 @@ var _ = DevSpaceDescribe("build", func() {
458459
}, nil, nil, nil, "")
459460
framework.ExpectNoError(err)
460461

461-
err = dockerClient.ContainerStart(ctx, resp.ID, types.ContainerStartOptions{})
462+
err = dockerClient.ContainerStart(ctx, resp.ID, container.StartOptions{})
462463
framework.ExpectNoError(err)
463464

464465
statusCh, errCh := dockerClient.ContainerWait(ctx, resp.ID, container.WaitConditionNotRunning)
@@ -468,7 +469,7 @@ var _ = DevSpaceDescribe("build", func() {
468469
case <-statusCh:
469470
}
470471

471-
out, err := dockerClient.ContainerLogs(ctx, resp.ID, types.ContainerLogsOptions{ShowStdout: true})
472+
out, err := dockerClient.ContainerLogs(ctx, resp.ID, container.LogsOptions{ShowStdout: true})
472473
framework.ExpectNoError(err)
473474

474475
stdout := &bytes.Buffer{}
@@ -503,7 +504,7 @@ var _ = DevSpaceDescribe("build", func() {
503504
framework.ExpectNoError(err)
504505

505506
dockerClient := devspaceDockerClient.DockerAPIClient()
506-
imageList, err := dockerClient.ImageList(ctx, types.ImageListOptions{})
507+
imageList, err := dockerClient.ImageList(ctx, image.ListOptions{})
507508
framework.ExpectNoError(err)
508509
imageName := "my-docker-username/helloworld-dockerignore-context:latest"
509510
for _, image := range imageList {
@@ -523,7 +524,7 @@ var _ = DevSpaceDescribe("build", func() {
523524
}, nil, nil, nil, "")
524525
framework.ExpectNoError(err)
525526

526-
err = dockerClient.ContainerStart(ctx, resp.ID, types.ContainerStartOptions{})
527+
err = dockerClient.ContainerStart(ctx, resp.ID, container.StartOptions{})
527528
framework.ExpectNoError(err)
528529

529530
statusCh, errCh := dockerClient.ContainerWait(ctx, resp.ID, container.WaitConditionNotRunning)
@@ -533,7 +534,7 @@ var _ = DevSpaceDescribe("build", func() {
533534
case <-statusCh:
534535
}
535536

536-
out, err := dockerClient.ContainerLogs(ctx, resp.ID, types.ContainerLogsOptions{ShowStdout: true})
537+
out, err := dockerClient.ContainerLogs(ctx, resp.ID, container.LogsOptions{ShowStdout: true})
537538
framework.ExpectNoError(err)
538539

539540
stdout := &bytes.Buffer{}

pkg/devspace/build/builder/docker/docker.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88

99
"github.com/docker/cli/cli/streams"
1010
"github.com/docker/distribution/reference"
11+
"github.com/docker/docker/api/types/image"
1112
dockerregistry "github.com/docker/docker/api/types/registry"
1213
"github.com/loft-sh/devspace/pkg/devspace/build/builder/helper"
1314
"github.com/loft-sh/devspace/pkg/devspace/config/versions/latest"
@@ -17,7 +18,6 @@ import (
1718
"github.com/loft-sh/devspace/pkg/devspace/pullsecrets"
1819
command2 "github.com/loft-sh/utils/pkg/command"
1920

20-
"github.com/docker/docker/api/types"
2121
"github.com/pkg/errors"
2222

2323
"github.com/docker/docker/pkg/jsonmessage"
@@ -207,7 +207,7 @@ func (b *Builder) pushImage(ctx context.Context, writer io.Writer, imageName str
207207
return err
208208
}
209209

210-
out, err := b.client.ImagePush(ctx, reference.FamiliarString(ref), types.ImagePushOptions{
210+
out, err := b.client.ImagePush(ctx, reference.FamiliarString(ref), image.PushOptions{
211211
RegistryAuth: encodedAuth,
212212
})
213213
if err != nil {

pkg/devspace/build/builder/helper/helper.go

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
package helper
22

33
import (
4+
"io"
5+
"os"
6+
"path/filepath"
7+
"strings"
8+
49
"github.com/docker/cli/cli/streams"
10+
"github.com/docker/docker/api/types/image"
511
"github.com/docker/docker/pkg/idtools"
612
"github.com/docker/docker/pkg/progress"
713
"github.com/docker/docker/pkg/streamformatter"
@@ -10,10 +16,6 @@ import (
1016
logpkg "github.com/loft-sh/devspace/pkg/util/log"
1117
dockerterm "github.com/moby/term"
1218
"github.com/sirupsen/logrus"
13-
"io"
14-
"os"
15-
"path/filepath"
16-
"strings"
1719

1820
"github.com/docker/cli/cli/command/image/build"
1921
"github.com/docker/docker/api/types"
@@ -243,7 +245,7 @@ func (b *BuildHelper) IsImageAvailableLocally(ctx devspacecontext.Context, docke
243245
imageName := imageCache.ResolveImage() + ":" + imageCache.Tag
244246

245247
dockerAPIClient := dockerClient.DockerAPIClient()
246-
imageList, err := dockerAPIClient.ImageList(ctx.Context(), types.ImageListOptions{})
248+
imageList, err := dockerAPIClient.ImageList(ctx.Context(), image.ListOptions{})
247249
if err != nil {
248250
return false, err
249251
}

pkg/devspace/build/builder/helper/helper_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"os/exec"
66
"testing"
77

8+
"github.com/docker/docker/api/types/image"
89
"github.com/loft-sh/devspace/pkg/devspace/config"
910
"github.com/loft-sh/devspace/pkg/devspace/config/localcache"
1011
"github.com/loft-sh/devspace/pkg/devspace/config/remotecache"
@@ -15,7 +16,6 @@ import (
1516
"github.com/loft-sh/devspace/pkg/devspace/docker"
1617
"gotest.tools/assert"
1718

18-
"github.com/docker/docker/api/types"
1919
dockerclient "github.com/docker/docker/client"
2020
)
2121

@@ -31,8 +31,8 @@ type fakeDockerAPIClient struct {
3131
dockerclient.CommonAPIClient
3232
}
3333

34-
func (c *fakeDockerAPIClient) ImageList(ctx context.Context, options types.ImageListOptions) ([]types.ImageSummary, error) {
35-
return []types.ImageSummary{
34+
func (c *fakeDockerAPIClient) ImageList(ctx context.Context, options image.ListOptions) ([]image.Summary, error) {
35+
return []image.Summary{
3636
{
3737
RepoTags: []string{"image1:dbysxsH"},
3838
},

pkg/devspace/docker/auth_test.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ import (
88
"testing"
99

1010
"github.com/docker/docker/api/types"
11+
"github.com/docker/docker/api/types/image"
1112
dockerregistry "github.com/docker/docker/api/types/registry"
13+
"github.com/docker/docker/api/types/system"
1214
dockerclient "github.com/docker/docker/client"
1315
"github.com/loft-sh/devspace/pkg/util/fsutil"
1416
"gopkg.in/yaml.v3"
@@ -20,8 +22,8 @@ type fakeDockerClient struct {
2022
dockerclient.Client
2123
}
2224

23-
func (f *fakeDockerClient) Info(ctx context.Context) (types.Info, error) {
24-
return types.Info{
25+
func (f *fakeDockerClient) Info(ctx context.Context) (system.Info, error) {
26+
return system.Info{
2527
IndexServerAddress: "IndexServerAddress",
2628
}, nil
2729
}
@@ -40,16 +42,16 @@ func (f *fakeDockerClient) RegistryLogin(ctx context.Context, auth dockerregistr
4042
}, nil
4143
}
4244

43-
func (f *fakeDockerClient) ImageList(ctx context.Context, options types.ImageListOptions) ([]types.ImageSummary, error) {
44-
return []types.ImageSummary{
45+
func (f *fakeDockerClient) ImageList(ctx context.Context, options image.ListOptions) ([]image.Summary, error) {
46+
return []image.Summary{
4547
{
4648
ID: "deleteThis",
4749
},
4850
}, nil
4951
}
5052

51-
func (f *fakeDockerClient) ImageRemove(ctx context.Context, image string, options types.ImageRemoveOptions) ([]types.ImageDeleteResponseItem, error) {
52-
return []types.ImageDeleteResponseItem{
53+
func (f *fakeDockerClient) ImageRemove(ctx context.Context, img string, options image.RemoveOptions) ([]image.DeleteResponse, error) {
54+
return []image.DeleteResponse{
5355
{
5456
Deleted: "deleteThis",
5557
Untagged: "deleteThis",

pkg/devspace/docker/client.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"path/filepath"
1010
"strings"
1111

12+
"github.com/docker/docker/api/types/image"
1213
dockerregistry "github.com/docker/docker/api/types/registry"
1314
"github.com/loft-sh/utils/pkg/command"
1415
"mvdan.cc/sh/v3/expand"
@@ -33,15 +34,15 @@ type Client interface {
3334
ImageBuild(ctx context.Context, context io.Reader, options dockertypes.ImageBuildOptions) (dockertypes.ImageBuildResponse, error)
3435
ImageBuildCLI(ctx context.Context, workingDir string, environ expand.Environ, useBuildkit bool, context io.Reader, writer io.Writer, additionalArgs []string, options dockertypes.ImageBuildOptions, log log.Logger) error
3536

36-
ImagePush(ctx context.Context, ref string, options dockertypes.ImagePushOptions) (io.ReadCloser, error)
37+
ImagePush(ctx context.Context, ref string, options image.PushOptions) (io.ReadCloser, error)
3738

3839
Login(ctx context.Context, registryURL, user, password string, checkCredentialsStore, saveAuthConfig, relogin bool) (*dockerregistry.AuthConfig, error)
3940
GetAuthConfig(ctx context.Context, registryURL string, checkCredentialsStore bool) (*dockerregistry.AuthConfig, error)
4041

4142
ParseProxyConfig(buildArgs map[string]*string) map[string]*string
4243

43-
DeleteImageByName(ctx context.Context, imageName string, log log.Logger) ([]dockertypes.ImageDeleteResponseItem, error)
44-
DeleteImageByFilter(ctx context.Context, filter filters.Args, log log.Logger) ([]dockertypes.ImageDeleteResponseItem, error)
44+
DeleteImageByName(ctx context.Context, imageName string, log log.Logger) ([]image.DeleteResponse, error)
45+
DeleteImageByFilter(ctx context.Context, filter filters.Args, log log.Logger) ([]image.DeleteResponse, error)
4546
DockerAPIClient() dockerclient.CommonAPIClient
4647
}
4748

pkg/devspace/docker/images.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,29 @@ import (
44
"context"
55
"strings"
66

7+
"github.com/docker/docker/api/types/image"
78
"github.com/loft-sh/devspace/pkg/util/log"
89

9-
"github.com/docker/docker/api/types"
1010
"github.com/docker/docker/api/types/filters"
1111
)
1212

1313
// DeleteImageByName deletes an image by name
14-
func (c *client) DeleteImageByName(ctx context.Context, imageName string, log log.Logger) ([]types.ImageDeleteResponseItem, error) {
14+
func (c *client) DeleteImageByName(ctx context.Context, imageName string, log log.Logger) ([]image.DeleteResponse, error) {
1515
return c.DeleteImageByFilter(ctx, filters.NewArgs(filters.Arg("reference", strings.TrimSpace(imageName))), log)
1616
}
1717

1818
// DeleteImageByFilter deletes an image by filter
19-
func (c *client) DeleteImageByFilter(ctx context.Context, filter filters.Args, log log.Logger) ([]types.ImageDeleteResponseItem, error) {
20-
summary, err := c.ImageList(ctx, types.ImageListOptions{
19+
func (c *client) DeleteImageByFilter(ctx context.Context, filter filters.Args, log log.Logger) ([]image.DeleteResponse, error) {
20+
summaries, err := c.ImageList(ctx, image.ListOptions{
2121
Filters: filter,
2222
})
2323
if err != nil {
2424
return nil, err
2525
}
2626

27-
responseItems := make([]types.ImageDeleteResponseItem, 0, 128)
28-
for _, image := range summary {
29-
deleteResponse, err := c.ImageRemove(ctx, image.ID, types.ImageRemoveOptions{
27+
responseItems := make([]image.DeleteResponse, 0, 128)
28+
for _, summary := range summaries {
29+
deleteResponse, err := c.ImageRemove(ctx, summary.ID, image.RemoveOptions{
3030
PruneChildren: true,
3131
Force: true,
3232
})

pkg/devspace/docker/images_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import (
44
"context"
55
"testing"
66

7-
"github.com/docker/docker/api/types"
7+
"github.com/docker/docker/api/types/image"
88
log "github.com/loft-sh/devspace/pkg/util/log/testing"
99
"gopkg.in/yaml.v3"
1010
"gotest.tools/assert"
@@ -14,7 +14,7 @@ type deleteImageTestCase struct {
1414
name string
1515

1616
deletedImageName string
17-
expectedResponse []types.ImageDeleteResponseItem
17+
expectedResponse []image.DeleteResponse
1818
expectedErr bool
1919
}
2020

@@ -23,7 +23,7 @@ func TestDeleteImage(t *testing.T) {
2323
{
2424
name: "Delete by name",
2525
deletedImageName: "deleteThis",
26-
expectedResponse: []types.ImageDeleteResponseItem{
26+
expectedResponse: []image.DeleteResponse{
2727
{
2828
Deleted: "deleteThis",
2929
Untagged: "deleteThis",
@@ -34,7 +34,7 @@ func TestDeleteImage(t *testing.T) {
3434

3535
for _, testCase := range testCases {
3636
var (
37-
response []types.ImageDeleteResponseItem
37+
response []image.DeleteResponse
3838
err error
3939
)
4040

0 commit comments

Comments
 (0)