commands.go 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package commands
  2. import (
  3. "os"
  4. "github.com/docker/docker/cli/command"
  5. "github.com/docker/docker/cli/command/checkpoint"
  6. "github.com/docker/docker/cli/command/container"
  7. "github.com/docker/docker/cli/command/image"
  8. "github.com/docker/docker/cli/command/network"
  9. "github.com/docker/docker/cli/command/node"
  10. "github.com/docker/docker/cli/command/plugin"
  11. "github.com/docker/docker/cli/command/registry"
  12. "github.com/docker/docker/cli/command/secret"
  13. "github.com/docker/docker/cli/command/service"
  14. "github.com/docker/docker/cli/command/stack"
  15. "github.com/docker/docker/cli/command/swarm"
  16. "github.com/docker/docker/cli/command/system"
  17. "github.com/docker/docker/cli/command/volume"
  18. "github.com/spf13/cobra"
  19. )
  20. // AddCommands adds all the commands from cli/command to the root command
  21. func AddCommands(cmd *cobra.Command, dockerCli *command.DockerCli) {
  22. cmd.AddCommand(
  23. node.NewNodeCommand(dockerCli),
  24. service.NewServiceCommand(dockerCli),
  25. swarm.NewSwarmCommand(dockerCli),
  26. secret.NewSecretCommand(dockerCli),
  27. container.NewContainerCommand(dockerCli),
  28. image.NewImageCommand(dockerCli),
  29. system.NewSystemCommand(dockerCli),
  30. container.NewRunCommand(dockerCli),
  31. image.NewBuildCommand(dockerCli),
  32. network.NewNetworkCommand(dockerCli),
  33. hide(system.NewEventsCommand(dockerCli)),
  34. registry.NewLoginCommand(dockerCli),
  35. registry.NewLogoutCommand(dockerCli),
  36. registry.NewSearchCommand(dockerCli),
  37. system.NewVersionCommand(dockerCli),
  38. volume.NewVolumeCommand(dockerCli),
  39. hide(system.NewInfoCommand(dockerCli)),
  40. hide(container.NewAttachCommand(dockerCli)),
  41. hide(container.NewCommitCommand(dockerCli)),
  42. hide(container.NewCopyCommand(dockerCli)),
  43. hide(container.NewCreateCommand(dockerCli)),
  44. hide(container.NewDiffCommand(dockerCli)),
  45. hide(container.NewExecCommand(dockerCli)),
  46. hide(container.NewExportCommand(dockerCli)),
  47. hide(container.NewKillCommand(dockerCli)),
  48. hide(container.NewLogsCommand(dockerCli)),
  49. hide(container.NewPauseCommand(dockerCli)),
  50. hide(container.NewPortCommand(dockerCli)),
  51. hide(container.NewPsCommand(dockerCli)),
  52. hide(container.NewRenameCommand(dockerCli)),
  53. hide(container.NewRestartCommand(dockerCli)),
  54. hide(container.NewRmCommand(dockerCli)),
  55. hide(container.NewStartCommand(dockerCli)),
  56. hide(container.NewStatsCommand(dockerCli)),
  57. hide(container.NewStopCommand(dockerCli)),
  58. hide(container.NewTopCommand(dockerCli)),
  59. hide(container.NewUnpauseCommand(dockerCli)),
  60. hide(container.NewUpdateCommand(dockerCli)),
  61. hide(container.NewWaitCommand(dockerCli)),
  62. hide(image.NewHistoryCommand(dockerCli)),
  63. hide(image.NewImagesCommand(dockerCli)),
  64. hide(image.NewImportCommand(dockerCli)),
  65. hide(image.NewLoadCommand(dockerCli)),
  66. hide(image.NewPullCommand(dockerCli)),
  67. hide(image.NewPushCommand(dockerCli)),
  68. hide(image.NewRemoveCommand(dockerCli)),
  69. hide(image.NewSaveCommand(dockerCli)),
  70. hide(image.NewTagCommand(dockerCli)),
  71. hide(system.NewInspectCommand(dockerCli)),
  72. stack.NewStackCommand(dockerCli),
  73. stack.NewTopLevelDeployCommand(dockerCli),
  74. checkpoint.NewCheckpointCommand(dockerCli),
  75. plugin.NewPluginCommand(dockerCli),
  76. )
  77. }
  78. func hide(cmd *cobra.Command) *cobra.Command {
  79. if os.Getenv("DOCKER_HIDE_LEGACY_COMMANDS") == "" {
  80. return cmd
  81. }
  82. cmdCopy := *cmd
  83. cmdCopy.Hidden = true
  84. cmdCopy.Aliases = []string{}
  85. return &cmdCopy
  86. }