commands.go 3.2 KB

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