Merge pull request #110 from andrewhsu/fix-swarm-warn

[17.06] backport (cli) If `docker swarm ca` is not called with the `--rotate` flag, warn if other flags are passed
This commit is contained in:
Andrew Hsu
2017-07-12 19:01:59 -07:00
committed by GitHub
+6 -1
View File
@@ -61,6 +61,11 @@ func runRotateCA(dockerCli command.Cli, flags *pflag.FlagSet, opts caOptions) er
}
if !opts.rotate {
for _, f := range []string{flagCACert, flagCAKey, flagCertExpiry, flagExternalCA} {
if flags.Changed(f) {
return fmt.Errorf("`--%s` flag requires the `--rotate` flag to update the CA", f)
}
}
if swarmInspect.ClusterInfo.TLSInfo.TrustRoot == "" {
fmt.Fprintln(dockerCli.Out(), "No CA information available")
} else {
@@ -71,7 +76,7 @@ func runRotateCA(dockerCli command.Cli, flags *pflag.FlagSet, opts caOptions) er
genRootCA := true
spec := &swarmInspect.Spec
opts.mergeSwarmSpec(spec, flags)
opts.mergeSwarmSpec(spec, flags) // updates the spec given the cert expiry or external CA flag
if flags.Changed(flagCACert) {
spec.CAConfig.SigningCACert = opts.rootCACert.Contents()
genRootCA = false