Skip to content

Commit c108da5

Browse files
authored
Merge pull request #6070 from thaJeztah/enable_importas_linter
golangci-lint: enable importas linter
2 parents 12992f7 + 9f68bc0 commit c108da5

File tree

7 files changed

+37
-21
lines changed

7 files changed

+37
-21
lines changed

.golangci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ linters:
4040
- gosec # Detects security problems.
4141
- govet
4242
- ineffassign
43+
- importas # Enforces consistent import aliases.
4344
- misspell # Detects commonly misspelled English words in comments.
4445
- nakedret # Detects uses of naked returns.
4546
- nilerr # Detects code that returns nil even if it checks that the error is not nil.
@@ -108,6 +109,21 @@ linters:
108109
lll:
109110
line-length: 200
110111

112+
importas:
113+
# Do not allow unaliased imports of aliased packages.
114+
no-unaliased: true
115+
116+
alias:
117+
# Enforce alias to prevent it accidentally being used instead of our
118+
# own errdefs package (or vice-versa).
119+
- pkg: github.com/containerd/errdefs
120+
alias: cerrdefs
121+
- pkg: github.com/opencontainers/image-spec/specs-go/v1
122+
alias: ocispec
123+
# Enforce that gotest.tools/v3/assert/cmp is always aliased as "is"
124+
- pkg: gotest.tools/v3/assert/cmp
125+
alias: is
126+
111127
nakedret:
112128
# Disallow naked returns if func has more lines of code than this setting.
113129
# Default: 30

cli-plugins/manager/candidate_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import (
99
"github.com/docker/cli/cli-plugins/metadata"
1010
"github.com/spf13/cobra"
1111
"gotest.tools/v3/assert"
12-
"gotest.tools/v3/assert/cmp"
12+
is "gotest.tools/v3/assert/cmp"
1313
)
1414

1515
type fakeCandidate struct {
@@ -81,7 +81,7 @@ func TestValidateCandidate(t *testing.T) {
8181
assert.ErrorContains(t, err, tc.err)
8282
case tc.invalid != "":
8383
assert.NilError(t, err)
84-
assert.Assert(t, cmp.ErrorType(p.Err, reflect.TypeOf(&pluginError{})))
84+
assert.Assert(t, is.ErrorType(p.Err, reflect.TypeOf(&pluginError{})))
8585
assert.ErrorContains(t, p.Err, tc.invalid)
8686
default:
8787
assert.NilError(t, err)

cli/command/container/client_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import (
1111
"github.com/docker/docker/api/types/network"
1212
"github.com/docker/docker/api/types/system"
1313
"github.com/docker/docker/client"
14-
specs "github.com/opencontainers/image-spec/specs-go/v1"
14+
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
1515
)
1616

1717
type fakeClient struct {
@@ -22,7 +22,7 @@ type fakeClient struct {
2222
createContainerFunc func(config *container.Config,
2323
hostConfig *container.HostConfig,
2424
networkingConfig *network.NetworkingConfig,
25-
platform *specs.Platform,
25+
platform *ocispec.Platform,
2626
containerName string) (container.CreateResponse, error)
2727
containerStartFunc func(containerID string, options container.StartOptions) error
2828
imageCreateFunc func(ctx context.Context, parentReference string, options image.CreateOptions) (io.ReadCloser, error)
@@ -84,7 +84,7 @@ func (f *fakeClient) ContainerCreate(
8484
config *container.Config,
8585
hostConfig *container.HostConfig,
8686
networkingConfig *network.NetworkingConfig,
87-
platform *specs.Platform,
87+
platform *ocispec.Platform,
8888
containerName string,
8989
) (container.CreateResponse, error) {
9090
if f.createContainerFunc != nil {

cli/command/container/create.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import (
2929
"github.com/docker/docker/api/types/versions"
3030
"github.com/docker/docker/client"
3131
"github.com/docker/docker/errdefs"
32-
specs "github.com/opencontainers/image-spec/specs-go/v1"
32+
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
3333
"github.com/pkg/errors"
3434
"github.com/spf13/cobra"
3535
"github.com/spf13/pflag"
@@ -308,7 +308,7 @@ func createContainer(ctx context.Context, dockerCli command.Cli, containerCfg *c
308308
}
309309
}
310310

311-
var platform *specs.Platform
311+
var platform *ocispec.Platform
312312
// Engine API version 1.41 first introduced the option to specify platform on
313313
// create. It will produce an error if you try to set a platform on older API
314314
// versions, so check the API version here to maintain backwards

cli/command/container/create_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import (
1919
"github.com/docker/docker/api/types/network"
2020
"github.com/docker/docker/api/types/system"
2121
"github.com/google/go-cmp/cmp"
22-
specs "github.com/opencontainers/image-spec/specs-go/v1"
22+
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
2323
"github.com/spf13/pflag"
2424
"gotest.tools/v3/assert"
2525
is "gotest.tools/v3/assert/cmp"
@@ -121,7 +121,7 @@ func TestCreateContainerImagePullPolicy(t *testing.T) {
121121
config *container.Config,
122122
hostConfig *container.HostConfig,
123123
networkingConfig *network.NetworkingConfig,
124-
platform *specs.Platform,
124+
platform *ocispec.Platform,
125125
containerName string,
126126
) (container.CreateResponse, error) {
127127
defer func() { tc.ResponseCounter++ }()
@@ -253,7 +253,7 @@ func TestNewCreateCommandWithContentTrustErrors(t *testing.T) {
253253
createContainerFunc: func(config *container.Config,
254254
hostConfig *container.HostConfig,
255255
networkingConfig *network.NetworkingConfig,
256-
platform *specs.Platform,
256+
platform *ocispec.Platform,
257257
containerName string,
258258
) (container.CreateResponse, error) {
259259
return container.CreateResponse{}, errors.New("shouldn't try to pull image")
@@ -308,7 +308,7 @@ func TestNewCreateCommandWithWarnings(t *testing.T) {
308308
createContainerFunc: func(config *container.Config,
309309
hostConfig *container.HostConfig,
310310
networkingConfig *network.NetworkingConfig,
311-
platform *specs.Platform,
311+
platform *ocispec.Platform,
312312
containerName string,
313313
) (container.CreateResponse, error) {
314314
return container.CreateResponse{Warnings: tc.warnings}, nil
@@ -347,7 +347,7 @@ func TestCreateContainerWithProxyConfig(t *testing.T) {
347347
createContainerFunc: func(config *container.Config,
348348
hostConfig *container.HostConfig,
349349
networkingConfig *network.NetworkingConfig,
350-
platform *specs.Platform,
350+
platform *ocispec.Platform,
351351
containerName string,
352352
) (container.CreateResponse, error) {
353353
sort.Strings(config.Env)

cli/command/container/run_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import (
2121
"github.com/docker/docker/api/types/image"
2222
"github.com/docker/docker/api/types/network"
2323
"github.com/docker/docker/pkg/jsonmessage"
24-
specs "github.com/opencontainers/image-spec/specs-go/v1"
24+
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
2525
"github.com/spf13/pflag"
2626
"gotest.tools/v3/assert"
2727
is "gotest.tools/v3/assert/cmp"
@@ -57,7 +57,7 @@ func TestRunValidateFlags(t *testing.T) {
5757

5858
func TestRunLabel(t *testing.T) {
5959
fakeCLI := test.NewFakeCli(&fakeClient{
60-
createContainerFunc: func(_ *container.Config, _ *container.HostConfig, _ *network.NetworkingConfig, _ *specs.Platform, _ string) (container.CreateResponse, error) {
60+
createContainerFunc: func(_ *container.Config, _ *container.HostConfig, _ *network.NetworkingConfig, _ *ocispec.Platform, _ string) (container.CreateResponse, error) {
6161
return container.CreateResponse{
6262
ID: "id",
6363
}, nil
@@ -80,7 +80,7 @@ func TestRunAttach(t *testing.T) {
8080
var conn net.Conn
8181
attachCh := make(chan struct{})
8282
fakeCLI := test.NewFakeCli(&fakeClient{
83-
createContainerFunc: func(_ *container.Config, _ *container.HostConfig, _ *network.NetworkingConfig, _ *specs.Platform, _ string) (container.CreateResponse, error) {
83+
createContainerFunc: func(_ *container.Config, _ *container.HostConfig, _ *network.NetworkingConfig, _ *ocispec.Platform, _ string) (container.CreateResponse, error) {
8484
return container.CreateResponse{
8585
ID: "id",
8686
}, nil
@@ -151,7 +151,7 @@ func TestRunAttachTermination(t *testing.T) {
151151
killCh := make(chan struct{})
152152
attachCh := make(chan struct{})
153153
fakeCLI := test.NewFakeCli(&fakeClient{
154-
createContainerFunc: func(_ *container.Config, _ *container.HostConfig, _ *network.NetworkingConfig, _ *specs.Platform, _ string) (container.CreateResponse, error) {
154+
createContainerFunc: func(_ *container.Config, _ *container.HostConfig, _ *network.NetworkingConfig, _ *ocispec.Platform, _ string) (container.CreateResponse, error) {
155155
return container.CreateResponse{
156156
ID: "id",
157157
}, nil
@@ -229,7 +229,7 @@ func TestRunPullTermination(t *testing.T) {
229229
attachCh := make(chan struct{})
230230
fakeCLI := test.NewFakeCli(&fakeClient{
231231
createContainerFunc: func(config *container.Config, hostConfig *container.HostConfig, networkingConfig *network.NetworkingConfig,
232-
platform *specs.Platform, containerName string,
232+
platform *ocispec.Platform, containerName string,
233233
) (container.CreateResponse, error) {
234234
return container.CreateResponse{}, errors.New("shouldn't try to create a container")
235235
},
@@ -332,7 +332,7 @@ func TestRunCommandWithContentTrustErrors(t *testing.T) {
332332
createContainerFunc: func(config *container.Config,
333333
hostConfig *container.HostConfig,
334334
networkingConfig *network.NetworkingConfig,
335-
platform *specs.Platform,
335+
platform *ocispec.Platform,
336336
containerName string,
337337
) (container.CreateResponse, error) {
338338
return container.CreateResponse{}, errors.New("shouldn't try to pull image")

cli/context/store/metadata_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010

1111
"github.com/docker/docker/errdefs"
1212
"gotest.tools/v3/assert"
13-
"gotest.tools/v3/assert/cmp"
13+
is "gotest.tools/v3/assert/cmp"
1414
)
1515

1616
func testMetadata(name string) Metadata {
@@ -69,8 +69,8 @@ func TestMetadataRespectJsonAnnotation(t *testing.T) {
6969
assert.NilError(t, testee.createOrUpdate(testMetadata("test")))
7070
bytes, err := os.ReadFile(filepath.Join(testDir, string(contextdirOf("test")), "meta.json"))
7171
assert.NilError(t, err)
72-
assert.Assert(t, cmp.Contains(string(bytes), "a_very_recognizable_field_name"))
73-
assert.Assert(t, cmp.Contains(string(bytes), "another_very_recognizable_field_name"))
72+
assert.Assert(t, is.Contains(string(bytes), "a_very_recognizable_field_name"))
73+
assert.Assert(t, is.Contains(string(bytes), "another_very_recognizable_field_name"))
7474
}
7575

7676
func TestMetadataList(t *testing.T) {

0 commit comments

Comments
 (0)