Merge pull request #30211 from thaJeztah/fix-content-trust-flags

fix flag descriptions for content-trust
This commit is contained in:
Sebastiaan van Stijn 2017-01-23 23:52:11 +01:00 committed by GitHub
commit ff1bdf07e5
8 changed files with 22 additions and 18 deletions

View File

@ -52,7 +52,7 @@ func NewCreateCommand(dockerCli *command.DockerCli) *cobra.Command {
// with hostname
flags.Bool("help", false, "Print usage")
command.AddTrustedFlags(flags, true)
command.AddTrustVerificationFlags(flags)
copts = addFlags(flags)
return cmd
}

View File

@ -61,7 +61,7 @@ func NewRunCommand(dockerCli *command.DockerCli) *cobra.Command {
// with hostname
flags.Bool("help", false, "Print usage")
command.AddTrustedFlags(flags, true)
command.AddTrustVerificationFlags(flags)
copts = addFlags(flags)
return cmd
}

View File

@ -108,7 +108,7 @@ func NewBuildCommand(dockerCli *command.DockerCli) *cobra.Command {
flags.StringSliceVar(&options.securityOpt, "security-opt", []string{}, "Security options")
flags.StringVar(&options.networkMode, "network", "default", "Set the networking mode for the RUN instructions during build")
command.AddTrustedFlags(flags, true)
command.AddTrustVerificationFlags(flags)
flags.BoolVar(&options.squash, "squash", false, "Squash newly built layers into a single new layer")
flags.SetAnnotation("squash", "experimental", nil)

View File

@ -36,7 +36,7 @@ func NewPullCommand(dockerCli *command.DockerCli) *cobra.Command {
flags := cmd.Flags()
flags.BoolVarP(&opts.all, "all-tags", "a", false, "Download all tagged images in the repository")
command.AddTrustedFlags(flags, true)
command.AddTrustVerificationFlags(flags)
return cmd
}

View File

@ -24,7 +24,7 @@ func NewPushCommand(dockerCli *command.DockerCli) *cobra.Command {
flags := cmd.Flags()
command.AddTrustedFlags(flags, true)
command.AddTrustSigningFlags(flags)
return cmd
}

View File

@ -47,7 +47,7 @@ func newInstallCommand(dockerCli *command.DockerCli) *cobra.Command {
flags.BoolVar(&options.disable, "disable", false, "Do not enable the plugin on install")
flags.StringVar(&options.alias, "alias", "", "Local name for plugin")
command.AddTrustedFlags(flags, true)
command.AddTrustVerificationFlags(flags)
return cmd
}

View File

@ -26,7 +26,7 @@ func newPushCommand(dockerCli *command.DockerCli) *cobra.Command {
flags := cmd.Flags()
command.AddTrustedFlags(flags, true)
command.AddTrustSigningFlags(flags)
return cmd
}

View File

@ -12,13 +12,20 @@ var (
untrusted bool
)
// AddTrustedFlags adds content trust flags to the current command flagset
func AddTrustedFlags(fs *pflag.FlagSet, verify bool) {
trusted, message := setupTrustedFlag(verify)
fs.BoolVar(&untrusted, "disable-content-trust", !trusted, message)
// AddTrustVerificationFlags adds content trust flags to the provided flagset
func AddTrustVerificationFlags(fs *pflag.FlagSet) {
trusted := getDefaultTrustState()
fs.BoolVar(&untrusted, "disable-content-trust", !trusted, "Skip image verification")
}
func setupTrustedFlag(verify bool) (bool, string) {
// AddTrustSigningFlags adds "signing" flags to the provided flagset
func AddTrustSigningFlags(fs *pflag.FlagSet) {
trusted := getDefaultTrustState()
fs.BoolVar(&untrusted, "disable-content-trust", !trusted, "Skip image signing")
}
// getDefaultTrustState returns true if content trust is enabled through the $DOCKER_CONTENT_TRUST environment variable.
func getDefaultTrustState() bool {
var trusted bool
if e := os.Getenv("DOCKER_CONTENT_TRUST"); e != "" {
if t, err := strconv.ParseBool(e); t || err != nil {
@ -26,14 +33,11 @@ func setupTrustedFlag(verify bool) (bool, string) {
trusted = true
}
}
message := "Skip image signing"
if verify {
message = "Skip image verification"
}
return trusted, message
return trusted
}
// IsTrusted returns true if content trust is enabled
// IsTrusted returns true if content trust is enabled, either through the $DOCKER_CONTENT_TRUST environment variable,
// or through `--disabled-content-trust=false` on a command.
func IsTrusted() bool {
return !untrusted
}