Unexport service commands

This patch deprecates exported service commands and moves the implementation
details to an unexported function.

Commands that are affected include:

- service.NewServiceCommand

Signed-off-by: Alano Terblanche <18033717+Benehiko@users.noreply.github.com>
This commit is contained in:
Alano Terblanche
2025-08-20 12:51:55 +02:00
parent 1d34432676
commit 88178eda32
2 changed files with 19 additions and 11 deletions

View File

@ -79,6 +79,7 @@ func AddCommands(cmd *cobra.Command, dockerCli command.Cli) {
node.NewNodeCommand(dockerCli),
//nolint:staticcheck // TODO: Remove when migration to cli/internal/commands.Register is complete. (see #6283)
secret.NewSecretCommand(dockerCli),
//nolint:staticcheck // TODO: Remove when migration to cli/internal/commands.Register is complete. (see #6283)
service.NewServiceCommand(dockerCli),
stack.NewStackCommand(dockerCli),
swarm.NewSwarmCommand(dockerCli),

View File

@ -7,27 +7,34 @@ import (
)
// NewServiceCommand returns a cobra command for `service` subcommands
func NewServiceCommand(dockerCli command.Cli) *cobra.Command {
//
// Deprecated: Do not import commands directly. They will be removed in a future release.
func NewServiceCommand(dockerCLI command.Cli) *cobra.Command {
return newServiceCommand(dockerCLI)
}
// newServiceCommand returns a cobra command for `service` subcommands
func newServiceCommand(dockerCLI command.Cli) *cobra.Command {
cmd := &cobra.Command{
Use: "service",
Short: "Manage Swarm services",
Args: cli.NoArgs,
RunE: command.ShowHelp(dockerCli.Err()),
RunE: command.ShowHelp(dockerCLI.Err()),
Annotations: map[string]string{
"version": "1.24",
"swarm": "manager",
},
}
cmd.AddCommand(
newCreateCommand(dockerCli),
newInspectCommand(dockerCli),
newPsCommand(dockerCli),
newListCommand(dockerCli),
newRemoveCommand(dockerCli),
newScaleCommand(dockerCli),
newUpdateCommand(dockerCli),
newLogsCommand(dockerCli),
newRollbackCommand(dockerCli),
newCreateCommand(dockerCLI),
newInspectCommand(dockerCLI),
newPsCommand(dockerCLI),
newListCommand(dockerCLI),
newRemoveCommand(dockerCLI),
newScaleCommand(dockerCLI),
newUpdateCommand(dockerCLI),
newLogsCommand(dockerCLI),
newRollbackCommand(dockerCLI),
)
return cmd
}