96ce3a194a
This patch creates a new cli package that allows to combine both client and daemon commands (there is only one daemon command: docker daemon). The `-d` and `--daemon` top-level flags are deprecated and a special message is added to prompt the user to use `docker daemon`. Providing top-level daemon-specific flags for client commands result in an error message prompting the user to use `docker daemon`. This patch does not break any old but correct usages. This also makes `-d` and `--daemon` flags, as well as the `daemon` command illegal in client-only binaries. Signed-off-by: Tibor Vass <tibor@docker.com>
28 lines
707 B
Go
28 lines
707 B
Go
package main
|
|
|
|
import (
|
|
"path/filepath"
|
|
|
|
"github.com/docker/docker/cli"
|
|
"github.com/docker/docker/cliconfig"
|
|
flag "github.com/docker/docker/pkg/mflag"
|
|
)
|
|
|
|
var clientFlags = &cli.ClientFlags{FlagSet: new(flag.FlagSet), Common: commonFlags}
|
|
|
|
func init() {
|
|
client := clientFlags.FlagSet
|
|
client.StringVar(&clientFlags.ConfigDir, []string{"-config"}, cliconfig.ConfigDir(), "Location of client config files")
|
|
|
|
clientFlags.PostParse = func() {
|
|
clientFlags.Common.PostParse()
|
|
|
|
if clientFlags.ConfigDir != "" {
|
|
cliconfig.SetConfigDir(clientFlags.ConfigDir)
|
|
}
|
|
|
|
if clientFlags.Common.TrustKey == "" {
|
|
clientFlags.Common.TrustKey = filepath.Join(cliconfig.ConfigDir(), defaultTrustKeyFile)
|
|
}
|
|
}
|
|
}
|