Give a order to AddCommands, for easy read and maintenance.

Signed-off-by: wefine <wang.xiaoren@zte.com.cn>
This commit is contained in:
wefine 2016-12-02 00:08:24 +08:00
parent a5a246dbbc
commit e41cf4a860
1 changed files with 42 additions and 12 deletions

View File

@ -23,23 +23,55 @@ import (
// AddCommands adds all the commands from cli/command to the root command // AddCommands adds all the commands from cli/command to the root command
func AddCommands(cmd *cobra.Command, dockerCli *command.DockerCli) { func AddCommands(cmd *cobra.Command, dockerCli *command.DockerCli) {
cmd.AddCommand( cmd.AddCommand(
node.NewNodeCommand(dockerCli), // checkpoint
service.NewServiceCommand(dockerCli), checkpoint.NewCheckpointCommand(dockerCli),
swarm.NewSwarmCommand(dockerCli),
secret.NewSecretCommand(dockerCli), // container
container.NewContainerCommand(dockerCli), container.NewContainerCommand(dockerCli),
image.NewImageCommand(dockerCli),
system.NewSystemCommand(dockerCli),
container.NewRunCommand(dockerCli), container.NewRunCommand(dockerCli),
// image
image.NewImageCommand(dockerCli),
image.NewBuildCommand(dockerCli), image.NewBuildCommand(dockerCli),
// node
node.NewNodeCommand(dockerCli),
// network
network.NewNetworkCommand(dockerCli), network.NewNetworkCommand(dockerCli),
hide(system.NewEventsCommand(dockerCli)),
// plugin
plugin.NewPluginCommand(dockerCli),
// registry
registry.NewLoginCommand(dockerCli), registry.NewLoginCommand(dockerCli),
registry.NewLogoutCommand(dockerCli), registry.NewLogoutCommand(dockerCli),
registry.NewSearchCommand(dockerCli), registry.NewSearchCommand(dockerCli),
// secret
secret.NewSecretCommand(dockerCli),
// service
service.NewServiceCommand(dockerCli),
// system
system.NewSystemCommand(dockerCli),
system.NewVersionCommand(dockerCli), system.NewVersionCommand(dockerCli),
// stack
stack.NewStackCommand(dockerCli),
stack.NewTopLevelDeployCommand(dockerCli),
// swarm
swarm.NewSwarmCommand(dockerCli),
// volume
volume.NewVolumeCommand(dockerCli), volume.NewVolumeCommand(dockerCli),
// legacy commands may be hidden
hide(system.NewEventsCommand(dockerCli)),
hide(system.NewInfoCommand(dockerCli)), hide(system.NewInfoCommand(dockerCli)),
hide(system.NewInspectCommand(dockerCli)),
hide(container.NewAttachCommand(dockerCli)), hide(container.NewAttachCommand(dockerCli)),
hide(container.NewCommitCommand(dockerCli)), hide(container.NewCommitCommand(dockerCli)),
hide(container.NewCopyCommand(dockerCli)), hide(container.NewCopyCommand(dockerCli)),
@ -71,16 +103,14 @@ func AddCommands(cmd *cobra.Command, dockerCli *command.DockerCli) {
hide(image.NewRemoveCommand(dockerCli)), hide(image.NewRemoveCommand(dockerCli)),
hide(image.NewSaveCommand(dockerCli)), hide(image.NewSaveCommand(dockerCli)),
hide(image.NewTagCommand(dockerCli)), hide(image.NewTagCommand(dockerCli)),
hide(system.NewInspectCommand(dockerCli)),
stack.NewStackCommand(dockerCli),
stack.NewTopLevelDeployCommand(dockerCli),
checkpoint.NewCheckpointCommand(dockerCli),
plugin.NewPluginCommand(dockerCli),
) )
} }
func hide(cmd *cobra.Command) *cobra.Command { func hide(cmd *cobra.Command) *cobra.Command {
// If the environment variable with name "DOCKER_HIDE_LEGACY_COMMANDS" is not empty,
// these legacy commands (such as `docker ps`, `docker exec`, etc)
// will not be shown in output console.
if os.Getenv("DOCKER_HIDE_LEGACY_COMMANDS") == "" { if os.Getenv("DOCKER_HIDE_LEGACY_COMMANDS") == "" {
return cmd return cmd
} }