mirror of https://github.com/docker/cli.git
linting: ST1005: error strings should not be capitalized (stylecheck)
While fixing, also updated errors without placeholders to `errors.New()`, and
updated some code to use pkg/errors if it was already in use in the file.
cli/command/config/inspect.go:59:10: ST1005: error strings should not be capitalized (stylecheck)
return fmt.Errorf("Cannot supply extra formatting options to the pretty template")
^
cli/command/node/inspect.go:61:10: ST1005: error strings should not be capitalized (stylecheck)
return fmt.Errorf("Cannot supply extra formatting options to the pretty template")
^
cli/command/secret/inspect.go:57:10: ST1005: error strings should not be capitalized (stylecheck)
return fmt.Errorf("Cannot supply extra formatting options to the pretty template")
^
cli/command/trust/common.go:77:74: ST1005: error strings should not be capitalized (stylecheck)
return []trustTagRow{}, []client.RoleWithSignatures{}, []data.Role{}, fmt.Errorf("No signatures or cannot access %s", remote)
^
cli/command/trust/common.go:85:73: ST1005: error strings should not be capitalized (stylecheck)
return []trustTagRow{}, []client.RoleWithSignatures{}, []data.Role{}, fmt.Errorf("No signers for %s", remote)
^
cli/command/trust/sign.go:137:10: ST1005: error strings should not be capitalized (stylecheck)
return fmt.Errorf("No tag specified for %s", imgRefAndAuth.Name())
^
cli/command/trust/sign.go:151:19: ST1005: error strings should not be capitalized (stylecheck)
return *target, fmt.Errorf("No tag specified")
^
cli/command/trust/signer_add.go:77:10: ST1005: error strings should not be capitalized (stylecheck)
return fmt.Errorf("Failed to add signer to: %s", strings.Join(errRepos, ", "))
^
cli/command/trust/signer_remove.go:52:10: ST1005: error strings should not be capitalized (stylecheck)
return fmt.Errorf("Error removing signer from: %s", strings.Join(errRepos, ", "))
^
cli/command/trust/signer_remove.go:67:17: ST1005: error strings should not be capitalized (stylecheck)
return false, fmt.Errorf("All signed tags are currently revoked, use docker trust sign to fix")
^
cli/command/trust/signer_remove.go:108:17: ST1005: error strings should not be capitalized (stylecheck)
return false, fmt.Errorf("No signer %s for repository %s", signerName, repoName)
^
opts/hosts.go:89:14: ST1005: error strings should not be capitalized (stylecheck)
return "", fmt.Errorf("Invalid bind address format: %s", addr)
^
opts/hosts.go💯14: ST1005: error strings should not be capitalized (stylecheck)
return "", fmt.Errorf("Invalid proto, expected %s: %s", proto, addr)
^
opts/hosts.go:119:14: ST1005: error strings should not be capitalized (stylecheck)
return "", fmt.Errorf("Invalid proto, expected tcp: %s", tryAddr)
^
opts/hosts.go:144:14: ST1005: error strings should not be capitalized (stylecheck)
return "", fmt.Errorf("Invalid bind address format: %s", tryAddr)
^
opts/hosts.go:155:14: ST1005: error strings should not be capitalized (stylecheck)
return "", fmt.Errorf("Invalid bind address format: %s", tryAddr)
^
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
parent
b508b0fc31
commit
b58731fa46
|
@ -2,7 +2,7 @@ package config
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"errors"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/docker/cli/cli"
|
"github.com/docker/cli/cli"
|
||||||
|
@ -56,7 +56,7 @@ func RunConfigInspect(dockerCli command.Cli, opts InspectOptions) error {
|
||||||
// check if the user is trying to apply a template to the pretty format, which
|
// check if the user is trying to apply a template to the pretty format, which
|
||||||
// is not supported
|
// is not supported
|
||||||
if strings.HasPrefix(f, "pretty") && f != "pretty" {
|
if strings.HasPrefix(f, "pretty") && f != "pretty" {
|
||||||
return fmt.Errorf("Cannot supply extra formatting options to the pretty template")
|
return errors.New("cannot supply extra formatting options to the pretty template")
|
||||||
}
|
}
|
||||||
|
|
||||||
configCtx := formatter.Context{
|
configCtx := formatter.Context{
|
||||||
|
|
|
@ -2,7 +2,7 @@ package node
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"errors"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/docker/cli/cli"
|
"github.com/docker/cli/cli"
|
||||||
|
@ -58,7 +58,7 @@ func runInspect(dockerCli command.Cli, opts inspectOptions) error {
|
||||||
// check if the user is trying to apply a template to the pretty format, which
|
// check if the user is trying to apply a template to the pretty format, which
|
||||||
// is not supported
|
// is not supported
|
||||||
if strings.HasPrefix(f, "pretty") && f != "pretty" {
|
if strings.HasPrefix(f, "pretty") && f != "pretty" {
|
||||||
return fmt.Errorf("Cannot supply extra formatting options to the pretty template")
|
return errors.New("cannot supply extra formatting options to the pretty template")
|
||||||
}
|
}
|
||||||
|
|
||||||
nodeCtx := formatter.Context{
|
nodeCtx := formatter.Context{
|
||||||
|
|
|
@ -2,7 +2,7 @@ package secret
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"errors"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/docker/cli/cli"
|
"github.com/docker/cli/cli"
|
||||||
|
@ -54,7 +54,7 @@ func runSecretInspect(dockerCli command.Cli, opts inspectOptions) error {
|
||||||
// check if the user is trying to apply a template to the pretty format, which
|
// check if the user is trying to apply a template to the pretty format, which
|
||||||
// is not supported
|
// is not supported
|
||||||
if strings.HasPrefix(f, "pretty") && f != "pretty" {
|
if strings.HasPrefix(f, "pretty") && f != "pretty" {
|
||||||
return fmt.Errorf("Cannot supply extra formatting options to the pretty template")
|
return errors.New("cannot supply extra formatting options to the pretty template")
|
||||||
}
|
}
|
||||||
|
|
||||||
secretCtx := formatter.Context{
|
secretCtx := formatter.Context{
|
||||||
|
|
|
@ -34,7 +34,7 @@ func TestNodeAddrOptionSetPortOnly(t *testing.T) {
|
||||||
|
|
||||||
func TestNodeAddrOptionSetInvalidFormat(t *testing.T) {
|
func TestNodeAddrOptionSetInvalidFormat(t *testing.T) {
|
||||||
opt := NewListenAddrOption()
|
opt := NewListenAddrOption()
|
||||||
assert.Error(t, opt.Set("http://localhost:4545"), "Invalid proto, expected tcp: http://localhost:4545")
|
assert.Error(t, opt.Set("http://localhost:4545"), "invalid proto, expected tcp: http://localhost:4545")
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestExternalCAOptionErrors(t *testing.T) {
|
func TestExternalCAOptionErrors(t *testing.T) {
|
||||||
|
|
|
@ -74,7 +74,7 @@ func lookupTrustInfo(cli command.Cli, remote string) ([]trustTagRow, []client.Ro
|
||||||
logrus.Debug(trust.NotaryError(remote, err))
|
logrus.Debug(trust.NotaryError(remote, err))
|
||||||
// print an empty table if we don't have signed targets, but have an initialized notary repo
|
// print an empty table if we don't have signed targets, but have an initialized notary repo
|
||||||
if _, ok := err.(client.ErrNoSuchTarget); !ok {
|
if _, ok := err.(client.ErrNoSuchTarget); !ok {
|
||||||
return []trustTagRow{}, []client.RoleWithSignatures{}, []data.Role{}, fmt.Errorf("No signatures or cannot access %s", remote)
|
return []trustTagRow{}, []client.RoleWithSignatures{}, []data.Role{}, fmt.Errorf("no signatures or cannot access %s", remote)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
signatureRows := matchReleasedSignatures(allSignedTargets)
|
signatureRows := matchReleasedSignatures(allSignedTargets)
|
||||||
|
@ -82,7 +82,7 @@ func lookupTrustInfo(cli command.Cli, remote string) ([]trustTagRow, []client.Ro
|
||||||
// get the administrative roles
|
// get the administrative roles
|
||||||
adminRolesWithSigs, err := notaryRepo.ListRoles()
|
adminRolesWithSigs, err := notaryRepo.ListRoles()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return []trustTagRow{}, []client.RoleWithSignatures{}, []data.Role{}, fmt.Errorf("No signers for %s", remote)
|
return []trustTagRow{}, []client.RoleWithSignatures{}, []data.Role{}, fmt.Errorf("no signers for %s", remote)
|
||||||
}
|
}
|
||||||
|
|
||||||
// get delegation roles with the canonical key IDs
|
// get delegation roles with the canonical key IDs
|
||||||
|
|
|
@ -77,7 +77,7 @@ func TestTrustInspectPrettyCommandOfflineErrors(t *testing.T) {
|
||||||
cmd.Flags().Set("pretty", "true")
|
cmd.Flags().Set("pretty", "true")
|
||||||
cmd.SetArgs([]string{"nonexistent-reg-name.io/image"})
|
cmd.SetArgs([]string{"nonexistent-reg-name.io/image"})
|
||||||
cmd.SetOut(io.Discard)
|
cmd.SetOut(io.Discard)
|
||||||
assert.ErrorContains(t, cmd.Execute(), "No signatures or cannot access nonexistent-reg-name.io/image")
|
assert.ErrorContains(t, cmd.Execute(), "no signatures or cannot access nonexistent-reg-name.io/image")
|
||||||
|
|
||||||
cli = test.NewFakeCli(&fakeClient{})
|
cli = test.NewFakeCli(&fakeClient{})
|
||||||
cli.SetNotaryClient(notaryfake.GetOfflineNotaryRepository)
|
cli.SetNotaryClient(notaryfake.GetOfflineNotaryRepository)
|
||||||
|
@ -85,7 +85,7 @@ func TestTrustInspectPrettyCommandOfflineErrors(t *testing.T) {
|
||||||
cmd.Flags().Set("pretty", "true")
|
cmd.Flags().Set("pretty", "true")
|
||||||
cmd.SetArgs([]string{"nonexistent-reg-name.io/image:tag"})
|
cmd.SetArgs([]string{"nonexistent-reg-name.io/image:tag"})
|
||||||
cmd.SetOut(io.Discard)
|
cmd.SetOut(io.Discard)
|
||||||
assert.ErrorContains(t, cmd.Execute(), "No signatures or cannot access nonexistent-reg-name.io/image")
|
assert.ErrorContains(t, cmd.Execute(), "no signatures or cannot access nonexistent-reg-name.io/image")
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestTrustInspectPrettyCommandUninitializedErrors(t *testing.T) {
|
func TestTrustInspectPrettyCommandUninitializedErrors(t *testing.T) {
|
||||||
|
@ -95,7 +95,7 @@ func TestTrustInspectPrettyCommandUninitializedErrors(t *testing.T) {
|
||||||
cmd.Flags().Set("pretty", "true")
|
cmd.Flags().Set("pretty", "true")
|
||||||
cmd.SetArgs([]string{"reg/unsigned-img"})
|
cmd.SetArgs([]string{"reg/unsigned-img"})
|
||||||
cmd.SetOut(io.Discard)
|
cmd.SetOut(io.Discard)
|
||||||
assert.ErrorContains(t, cmd.Execute(), "No signatures or cannot access reg/unsigned-img")
|
assert.ErrorContains(t, cmd.Execute(), "no signatures or cannot access reg/unsigned-img")
|
||||||
|
|
||||||
cli = test.NewFakeCli(&fakeClient{})
|
cli = test.NewFakeCli(&fakeClient{})
|
||||||
cli.SetNotaryClient(notaryfake.GetUninitializedNotaryRepository)
|
cli.SetNotaryClient(notaryfake.GetUninitializedNotaryRepository)
|
||||||
|
@ -103,7 +103,7 @@ func TestTrustInspectPrettyCommandUninitializedErrors(t *testing.T) {
|
||||||
cmd.Flags().Set("pretty", "true")
|
cmd.Flags().Set("pretty", "true")
|
||||||
cmd.SetArgs([]string{"reg/unsigned-img:tag"})
|
cmd.SetArgs([]string{"reg/unsigned-img:tag"})
|
||||||
cmd.SetOut(io.Discard)
|
cmd.SetOut(io.Discard)
|
||||||
assert.ErrorContains(t, cmd.Execute(), "No signatures or cannot access reg/unsigned-img:tag")
|
assert.ErrorContains(t, cmd.Execute(), "no signatures or cannot access reg/unsigned-img:tag")
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestTrustInspectPrettyCommandEmptyNotaryRepoErrors(t *testing.T) {
|
func TestTrustInspectPrettyCommandEmptyNotaryRepoErrors(t *testing.T) {
|
||||||
|
|
|
@ -55,26 +55,26 @@ func TestTrustInspectCommandRepositoryErrors(t *testing.T) {
|
||||||
doc: "OfflineErrors",
|
doc: "OfflineErrors",
|
||||||
args: []string{"nonexistent-reg-name.io/image"},
|
args: []string{"nonexistent-reg-name.io/image"},
|
||||||
notaryRepository: notary.GetOfflineNotaryRepository,
|
notaryRepository: notary.GetOfflineNotaryRepository,
|
||||||
err: "No signatures or cannot access nonexistent-reg-name.io/image",
|
err: "no signatures or cannot access nonexistent-reg-name.io/image",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
doc: "OfflineErrorsWithImageTag",
|
doc: "OfflineErrorsWithImageTag",
|
||||||
args: []string{"nonexistent-reg-name.io/image:tag"},
|
args: []string{"nonexistent-reg-name.io/image:tag"},
|
||||||
notaryRepository: notary.GetOfflineNotaryRepository,
|
notaryRepository: notary.GetOfflineNotaryRepository,
|
||||||
err: "No signatures or cannot access nonexistent-reg-name.io/image:tag",
|
err: "no signatures or cannot access nonexistent-reg-name.io/image:tag",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
doc: "UninitializedErrors",
|
doc: "UninitializedErrors",
|
||||||
args: []string{"reg/unsigned-img"},
|
args: []string{"reg/unsigned-img"},
|
||||||
notaryRepository: notary.GetUninitializedNotaryRepository,
|
notaryRepository: notary.GetUninitializedNotaryRepository,
|
||||||
err: "No signatures or cannot access reg/unsigned-img",
|
err: "no signatures or cannot access reg/unsigned-img",
|
||||||
golden: "trust-inspect-uninitialized.golden",
|
golden: "trust-inspect-uninitialized.golden",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
doc: "UninitializedErrorsWithImageTag",
|
doc: "UninitializedErrorsWithImageTag",
|
||||||
args: []string{"reg/unsigned-img:tag"},
|
args: []string{"reg/unsigned-img:tag"},
|
||||||
notaryRepository: notary.GetUninitializedNotaryRepository,
|
notaryRepository: notary.GetUninitializedNotaryRepository,
|
||||||
err: "No signatures or cannot access reg/unsigned-img:tag",
|
err: "no signatures or cannot access reg/unsigned-img:tag",
|
||||||
golden: "trust-inspect-uninitialized.golden",
|
golden: "trust-inspect-uninitialized.golden",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -132,9 +132,9 @@ func validateTag(imgRefAndAuth trust.ImageRefAndAuth) error {
|
||||||
tag := imgRefAndAuth.Tag()
|
tag := imgRefAndAuth.Tag()
|
||||||
if tag == "" {
|
if tag == "" {
|
||||||
if imgRefAndAuth.Digest() != "" {
|
if imgRefAndAuth.Digest() != "" {
|
||||||
return fmt.Errorf("cannot use a digest reference for IMAGE:TAG")
|
return errors.New("cannot use a digest reference for IMAGE:TAG")
|
||||||
}
|
}
|
||||||
return fmt.Errorf("No tag specified for %s", imgRefAndAuth.Name())
|
return fmt.Errorf("no tag specified for %s", imgRefAndAuth.Name())
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,7 @@ func createTarget(notaryRepo client.Repository, tag string) (client.Target, erro
|
||||||
target := &client.Target{}
|
target := &client.Target{}
|
||||||
var err error
|
var err error
|
||||||
if tag == "" {
|
if tag == "" {
|
||||||
return *target, fmt.Errorf("No tag specified")
|
return *target, errors.New("no tag specified")
|
||||||
}
|
}
|
||||||
target.Name = tag
|
target.Name = tag
|
||||||
target.Hashes, target.Length, err = getSignedManifestHashAndSize(notaryRepo, tag)
|
target.Hashes, target.Length, err = getSignedManifestHashAndSize(notaryRepo, tag)
|
||||||
|
|
|
@ -52,7 +52,7 @@ func TestTrustSignCommandErrors(t *testing.T) {
|
||||||
{
|
{
|
||||||
name: "no-tag",
|
name: "no-tag",
|
||||||
args: []string{"reg/img"},
|
args: []string{"reg/img"},
|
||||||
expectedError: "No tag specified for reg/img",
|
expectedError: "no tag specified for reg/img",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "digest-reference",
|
name: "digest-reference",
|
||||||
|
@ -232,7 +232,7 @@ func TestCreateTarget(t *testing.T) {
|
||||||
notaryRepo, err := client.NewFileCachedRepository(t.TempDir(), "gun", "https://localhost", nil, passphrase.ConstantRetriever(passwd), trustpinning.TrustPinConfig{})
|
notaryRepo, err := client.NewFileCachedRepository(t.TempDir(), "gun", "https://localhost", nil, passphrase.ConstantRetriever(passwd), trustpinning.TrustPinConfig{})
|
||||||
assert.NilError(t, err)
|
assert.NilError(t, err)
|
||||||
_, err = createTarget(notaryRepo, "")
|
_, err = createTarget(notaryRepo, "")
|
||||||
assert.Error(t, err, "No tag specified")
|
assert.Error(t, err, "no tag specified")
|
||||||
_, err = createTarget(notaryRepo, "1")
|
_, err = createTarget(notaryRepo, "1")
|
||||||
assert.Error(t, err, "client is offline")
|
assert.Error(t, err, "client is offline")
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,7 +74,7 @@ func addSigner(cli command.Cli, options signerAddOptions) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if len(errRepos) > 0 {
|
if len(errRepos) > 0 {
|
||||||
return fmt.Errorf("Failed to add signer to: %s", strings.Join(errRepos, ", "))
|
return fmt.Errorf("failed to add signer to: %s", strings.Join(errRepos, ", "))
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -111,7 +111,7 @@ func TestSignerAddCommandInvalidRepoName(t *testing.T) {
|
||||||
cmd.SetArgs([]string{"--key", pubKeyFilepath, "alice", imageName})
|
cmd.SetArgs([]string{"--key", pubKeyFilepath, "alice", imageName})
|
||||||
|
|
||||||
cmd.SetOut(io.Discard)
|
cmd.SetOut(io.Discard)
|
||||||
assert.Error(t, cmd.Execute(), "Failed to add signer to: 870d292919d01a0af7e7f056271dc78792c05f55f49b9b9012b6d89725bd9abd")
|
assert.Error(t, cmd.Execute(), "failed to add signer to: 870d292919d01a0af7e7f056271dc78792c05f55f49b9b9012b6d89725bd9abd")
|
||||||
expectedErr := fmt.Sprintf("invalid repository name (%s), cannot specify 64-byte hexadecimal strings\n\n", imageName)
|
expectedErr := fmt.Sprintf("invalid repository name (%s), cannot specify 64-byte hexadecimal strings\n\n", imageName)
|
||||||
|
|
||||||
assert.Check(t, is.Equal(expectedErr, cli.ErrBuffer().String()))
|
assert.Check(t, is.Equal(expectedErr, cli.ErrBuffer().String()))
|
||||||
|
|
|
@ -49,7 +49,7 @@ func removeSigner(cli command.Cli, options signerRemoveOptions) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if len(errRepos) > 0 {
|
if len(errRepos) > 0 {
|
||||||
return fmt.Errorf("Error removing signer from: %s", strings.Join(errRepos, ", "))
|
return errors.Errorf("error removing signer from: %s", strings.Join(errRepos, ", "))
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -64,7 +64,7 @@ func isLastSignerForReleases(roleWithSig data.Role, allRoles []client.RoleWithSi
|
||||||
}
|
}
|
||||||
counter := len(releasesRoleWithSigs.Signatures)
|
counter := len(releasesRoleWithSigs.Signatures)
|
||||||
if counter == 0 {
|
if counter == 0 {
|
||||||
return false, fmt.Errorf("All signed tags are currently revoked, use docker trust sign to fix")
|
return false, errors.New("all signed tags are currently revoked, use docker trust sign to fix")
|
||||||
}
|
}
|
||||||
for _, signature := range releasesRoleWithSigs.Signatures {
|
for _, signature := range releasesRoleWithSigs.Signatures {
|
||||||
for _, key := range roleWithSig.KeyIDs {
|
for _, key := range roleWithSig.KeyIDs {
|
||||||
|
@ -87,7 +87,7 @@ func removeSingleSigner(cli command.Cli, repoName, signerName string, forceYes b
|
||||||
|
|
||||||
signerDelegation := data.RoleName("targets/" + signerName)
|
signerDelegation := data.RoleName("targets/" + signerName)
|
||||||
if signerDelegation == releasesRoleTUFName {
|
if signerDelegation == releasesRoleTUFName {
|
||||||
return false, fmt.Errorf("releases is a reserved keyword and cannot be removed")
|
return false, errors.Errorf("releases is a reserved keyword and cannot be removed")
|
||||||
}
|
}
|
||||||
notaryRepo, err := cli.NotaryClient(imgRefAndAuth, trust.ActionsPushAndPull)
|
notaryRepo, err := cli.NotaryClient(imgRefAndAuth, trust.ActionsPushAndPull)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -105,7 +105,7 @@ func removeSingleSigner(cli command.Cli, repoName, signerName string, forceYes b
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if role.Name == "" {
|
if role.Name == "" {
|
||||||
return false, fmt.Errorf("No signer %s for repository %s", signerName, repoName)
|
return false, errors.Errorf("no signer %s for repository %s", signerName, repoName)
|
||||||
}
|
}
|
||||||
allRoles, err := notaryRepo.ListRoles()
|
allRoles, err := notaryRepo.ListRoles()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -72,7 +72,7 @@ func TestRemoveSingleSigner(t *testing.T) {
|
||||||
cli := test.NewFakeCli(&fakeClient{})
|
cli := test.NewFakeCli(&fakeClient{})
|
||||||
cli.SetNotaryClient(notaryfake.GetLoadedNotaryRepository)
|
cli.SetNotaryClient(notaryfake.GetLoadedNotaryRepository)
|
||||||
removed, err := removeSingleSigner(cli, "signed-repo", "test", true)
|
removed, err := removeSingleSigner(cli, "signed-repo", "test", true)
|
||||||
assert.Error(t, err, "No signer test for repository signed-repo")
|
assert.Error(t, err, "no signer test for repository signed-repo")
|
||||||
assert.Equal(t, removed, false, "No signer should be removed")
|
assert.Equal(t, removed, false, "No signer should be removed")
|
||||||
|
|
||||||
removed, err = removeSingleSigner(cli, "signed-repo", "releases", true)
|
removed, err = removeSingleSigner(cli, "signed-repo", "releases", true)
|
||||||
|
@ -84,9 +84,9 @@ func TestRemoveMultipleSigners(t *testing.T) {
|
||||||
cli := test.NewFakeCli(&fakeClient{})
|
cli := test.NewFakeCli(&fakeClient{})
|
||||||
cli.SetNotaryClient(notaryfake.GetLoadedNotaryRepository)
|
cli.SetNotaryClient(notaryfake.GetLoadedNotaryRepository)
|
||||||
err := removeSigner(cli, signerRemoveOptions{signer: "test", repos: []string{"signed-repo", "signed-repo"}, forceYes: true})
|
err := removeSigner(cli, signerRemoveOptions{signer: "test", repos: []string{"signed-repo", "signed-repo"}, forceYes: true})
|
||||||
assert.Error(t, err, "Error removing signer from: signed-repo, signed-repo")
|
assert.Error(t, err, "error removing signer from: signed-repo, signed-repo")
|
||||||
assert.Check(t, is.Contains(cli.ErrBuffer().String(),
|
assert.Check(t, is.Contains(cli.ErrBuffer().String(),
|
||||||
"No signer test for repository signed-repo"))
|
"no signer test for repository signed-repo"))
|
||||||
assert.Check(t, is.Contains(cli.OutBuffer().String(), "Removing signer \"test\" from signed-repo...\n"))
|
assert.Check(t, is.Contains(cli.OutBuffer().String(), "Removing signer \"test\" from signed-repo...\n"))
|
||||||
}
|
}
|
||||||
func TestRemoveLastSignerWarning(t *testing.T) {
|
func TestRemoveLastSignerWarning(t *testing.T) {
|
||||||
|
|
|
@ -160,7 +160,7 @@ display any signed tags.
|
||||||
```console
|
```console
|
||||||
$ docker trust inspect unsigned-img
|
$ docker trust inspect unsigned-img
|
||||||
|
|
||||||
No signatures or cannot access unsigned-img
|
no signatures or cannot access unsigned-img
|
||||||
```
|
```
|
||||||
|
|
||||||
However, if other tags are signed in the same image repository,
|
However, if other tags are signed in the same image repository,
|
||||||
|
|
|
@ -137,7 +137,7 @@ When signing an image on a repo for the first time, `docker trust sign` sets up
|
||||||
```console
|
```console
|
||||||
$ docker trust inspect --pretty example/trust-demo
|
$ docker trust inspect --pretty example/trust-demo
|
||||||
|
|
||||||
No signatures or cannot access example/trust-demo
|
no signatures or cannot access example/trust-demo
|
||||||
```
|
```
|
||||||
|
|
||||||
```console
|
```console
|
||||||
|
|
|
@ -77,7 +77,7 @@ When adding a signer on a repo for the first time, `docker trust signer add` set
|
||||||
```console
|
```console
|
||||||
$ docker trust inspect --pretty example/trust-demo
|
$ docker trust inspect --pretty example/trust-demo
|
||||||
|
|
||||||
No signatures or cannot access example/trust-demo
|
no signatures or cannot access example/trust-demo
|
||||||
```
|
```
|
||||||
|
|
||||||
```console
|
```console
|
||||||
|
@ -209,5 +209,5 @@ Adding signer "alice" to example/authorized...
|
||||||
Enter passphrase for repository key with ID c6772a0:
|
Enter passphrase for repository key with ID c6772a0:
|
||||||
Successfully added signer: alice to example/authorized
|
Successfully added signer: alice to example/authorized
|
||||||
|
|
||||||
Failed to add signer to: example/unauthorized
|
failed to add signer to: example/unauthorized
|
||||||
```
|
```
|
||||||
|
|
|
@ -86,7 +86,7 @@ func parseDockerDaemonHost(addr string) (string, error) {
|
||||||
case "ssh":
|
case "ssh":
|
||||||
return addr, nil
|
return addr, nil
|
||||||
default:
|
default:
|
||||||
return "", fmt.Errorf("Invalid bind address format: %s", addr)
|
return "", fmt.Errorf("invalid bind address format: %s", addr)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -97,7 +97,7 @@ func parseDockerDaemonHost(addr string) (string, error) {
|
||||||
func parseSimpleProtoAddr(proto, addr, defaultAddr string) (string, error) {
|
func parseSimpleProtoAddr(proto, addr, defaultAddr string) (string, error) {
|
||||||
addr = strings.TrimPrefix(addr, proto+"://")
|
addr = strings.TrimPrefix(addr, proto+"://")
|
||||||
if strings.Contains(addr, "://") {
|
if strings.Contains(addr, "://") {
|
||||||
return "", fmt.Errorf("Invalid proto, expected %s: %s", proto, addr)
|
return "", fmt.Errorf("invalid proto, expected %s: %s", proto, addr)
|
||||||
}
|
}
|
||||||
if addr == "" {
|
if addr == "" {
|
||||||
addr = defaultAddr
|
addr = defaultAddr
|
||||||
|
@ -116,7 +116,7 @@ func ParseTCPAddr(tryAddr string, defaultAddr string) (string, error) {
|
||||||
}
|
}
|
||||||
addr := strings.TrimPrefix(tryAddr, "tcp://")
|
addr := strings.TrimPrefix(tryAddr, "tcp://")
|
||||||
if strings.Contains(addr, "://") || addr == "" {
|
if strings.Contains(addr, "://") || addr == "" {
|
||||||
return "", fmt.Errorf("Invalid proto, expected tcp: %s", tryAddr)
|
return "", fmt.Errorf("invalid proto, expected tcp: %s", tryAddr)
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultAddr = strings.TrimPrefix(defaultAddr, "tcp://")
|
defaultAddr = strings.TrimPrefix(defaultAddr, "tcp://")
|
||||||
|
@ -141,7 +141,7 @@ func ParseTCPAddr(tryAddr string, defaultAddr string) (string, error) {
|
||||||
host, port, err = net.SplitHostPort(net.JoinHostPort(u.Host, defaultPort))
|
host, port, err = net.SplitHostPort(net.JoinHostPort(u.Host, defaultPort))
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", fmt.Errorf("Invalid bind address format: %s", tryAddr)
|
return "", fmt.Errorf("invalid bind address format: %s", tryAddr)
|
||||||
}
|
}
|
||||||
|
|
||||||
if host == "" {
|
if host == "" {
|
||||||
|
@ -152,7 +152,7 @@ func ParseTCPAddr(tryAddr string, defaultAddr string) (string, error) {
|
||||||
}
|
}
|
||||||
p, err := strconv.Atoi(port)
|
p, err := strconv.Atoi(port)
|
||||||
if err != nil && p == 0 {
|
if err != nil && p == 0 {
|
||||||
return "", fmt.Errorf("Invalid bind address format: %s", tryAddr)
|
return "", fmt.Errorf("invalid bind address format: %s", tryAddr)
|
||||||
}
|
}
|
||||||
|
|
||||||
return fmt.Sprintf("tcp://%s%s", net.JoinHostPort(host, port), u.Path), nil
|
return fmt.Sprintf("tcp://%s%s", net.JoinHostPort(host, port), u.Path), nil
|
||||||
|
|
|
@ -52,14 +52,13 @@ func TestParseHost(t *testing.T) {
|
||||||
|
|
||||||
func TestParseDockerDaemonHost(t *testing.T) {
|
func TestParseDockerDaemonHost(t *testing.T) {
|
||||||
invalids := map[string]string{
|
invalids := map[string]string{
|
||||||
|
|
||||||
"tcp:a.b.c.d": "",
|
"tcp:a.b.c.d": "",
|
||||||
"tcp:a.b.c.d/path": "",
|
"tcp:a.b.c.d/path": "",
|
||||||
"udp://127.0.0.1": "Invalid bind address format: udp://127.0.0.1",
|
"udp://127.0.0.1": "invalid bind address format: udp://127.0.0.1",
|
||||||
"udp://127.0.0.1:2375": "Invalid bind address format: udp://127.0.0.1:2375",
|
"udp://127.0.0.1:2375": "invalid bind address format: udp://127.0.0.1:2375",
|
||||||
"tcp://unix:///run/docker.sock": "Invalid proto, expected tcp: unix:///run/docker.sock",
|
"tcp://unix:///run/docker.sock": "invalid proto, expected tcp: unix:///run/docker.sock",
|
||||||
" tcp://:7777/path ": "Invalid bind address format: tcp://:7777/path ",
|
" tcp://:7777/path ": "invalid bind address format: tcp://:7777/path ",
|
||||||
"": "Invalid bind address format: ",
|
"": "invalid bind address format: ",
|
||||||
}
|
}
|
||||||
valids := map[string]string{
|
valids := map[string]string{
|
||||||
"0.0.0.1:": "tcp://0.0.0.1:2375",
|
"0.0.0.1:": "tcp://0.0.0.1:2375",
|
||||||
|
@ -101,8 +100,8 @@ func TestParseTCP(t *testing.T) {
|
||||||
invalids := map[string]string{
|
invalids := map[string]string{
|
||||||
"tcp:a.b.c.d": "",
|
"tcp:a.b.c.d": "",
|
||||||
"tcp:a.b.c.d/path": "",
|
"tcp:a.b.c.d/path": "",
|
||||||
"udp://127.0.0.1": "Invalid proto, expected tcp: udp://127.0.0.1",
|
"udp://127.0.0.1": "invalid proto, expected tcp: udp://127.0.0.1",
|
||||||
"udp://127.0.0.1:2375": "Invalid proto, expected tcp: udp://127.0.0.1:2375",
|
"udp://127.0.0.1:2375": "invalid proto, expected tcp: udp://127.0.0.1:2375",
|
||||||
}
|
}
|
||||||
valids := map[string]string{
|
valids := map[string]string{
|
||||||
"": defaultHTTPHost,
|
"": defaultHTTPHost,
|
||||||
|
@ -137,10 +136,10 @@ func TestParseTCP(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestParseInvalidUnixAddrInvalid(t *testing.T) {
|
func TestParseInvalidUnixAddrInvalid(t *testing.T) {
|
||||||
if _, err := parseSimpleProtoAddr("unix", "tcp://127.0.0.1", "unix:///var/run/docker.sock"); err == nil || err.Error() != "Invalid proto, expected unix: tcp://127.0.0.1" {
|
if _, err := parseSimpleProtoAddr("unix", "tcp://127.0.0.1", "unix:///var/run/docker.sock"); err == nil || err.Error() != "invalid proto, expected unix: tcp://127.0.0.1" {
|
||||||
t.Fatalf("Expected an error, got %v", err)
|
t.Fatalf("Expected an error, got %v", err)
|
||||||
}
|
}
|
||||||
if _, err := parseSimpleProtoAddr("unix", "unix://tcp://127.0.0.1", "/var/run/docker.sock"); err == nil || err.Error() != "Invalid proto, expected unix: tcp://127.0.0.1" {
|
if _, err := parseSimpleProtoAddr("unix", "unix://tcp://127.0.0.1", "/var/run/docker.sock"); err == nil || err.Error() != "invalid proto, expected unix: tcp://127.0.0.1" {
|
||||||
t.Fatalf("Expected an error, got %v", err)
|
t.Fatalf("Expected an error, got %v", err)
|
||||||
}
|
}
|
||||||
if v, err := parseSimpleProtoAddr("unix", "", "/var/run/docker.sock"); err != nil || v != "unix:///var/run/docker.sock" {
|
if v, err := parseSimpleProtoAddr("unix", "", "/var/run/docker.sock"); err != nil || v != "unix:///var/run/docker.sock" {
|
||||||
|
|
Loading…
Reference in New Issue