From 798a413096b1c14a8b4e2bcf75d373d7cbf61626 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sun, 2 Jul 2023 05:48:09 -0400 Subject: [PATCH] feat: re-add apps and config cli aliases This better follows Heroku's output and is more useful to users. The subcommands will be treated as the primary, documented versions, while the aliases are there for convenience. Closes #5362 --- plugins/apps/src/commands/commands.go | 11 ++++++++++- plugins/config/src/commands/commands.go | 8 ++++---- tests/unit/apps_1.bats | 2 +- tests/unit/config.bats | 7 +++++++ 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/plugins/apps/src/commands/commands.go b/plugins/apps/src/commands/commands.go index 0e38ebbd9..b37257f76 100644 --- a/plugins/apps/src/commands/commands.go +++ b/plugins/apps/src/commands/commands.go @@ -7,6 +7,7 @@ import ( "strconv" "strings" + "github.com/dokku/dokku/plugins/apps" "github.com/dokku/dokku/plugins/common" ) @@ -37,7 +38,15 @@ func main() { cmd := flag.Arg(0) switch cmd { - case "apps", "apps:help": + case "apps": + args := flag.NewFlagSet("apps", flag.ExitOnError) + args.Usage = usage + args.Parse(os.Args[2:]) + + if err := apps.CommandList(); err != nil { + common.LogFailWithError(err) + } + case "apps:help": usage() case "help": command := common.NewShellCmd(fmt.Sprintf("ps -o command= %d", os.Getppid())) diff --git a/plugins/config/src/commands/commands.go b/plugins/config/src/commands/commands.go index df63fabaf..5c9d63c76 100644 --- a/plugins/config/src/commands/commands.go +++ b/plugins/config/src/commands/commands.go @@ -38,16 +38,16 @@ func main() { cmd := flag.Arg(0) switch cmd { case "config": - common.LogWarn("Deprecated: Use the 'config:show' command instead") - args := flag.NewFlagSet("config:show", flag.ExitOnError) + args := flag.NewFlagSet("config", flag.ExitOnError) + args.Usage = usage global := args.Bool("global", false, "--global: use the global environment") shell := args.Bool("shell", false, "--shell: in a single-line for usage in command-line utilities [deprecated]") export := args.Bool("export", false, "--export: print the env as eval-compatible exports [deprecated]") merged := args.Bool("merged", false, "--merged: display the app's environment merged with the global environment") args.Parse(os.Args[2:]) appName := args.Arg(0) - err := config.CommandShow(appName, *global, *merged, *shell, *export) - if err != nil { + + if err := config.CommandShow(appName, *global, *merged, *shell, *export); err != nil { common.LogFailWithError(err) } case "config:help": diff --git a/tests/unit/apps_1.bats b/tests/unit/apps_1.bats index cb353a439..c5086bcd4 100644 --- a/tests/unit/apps_1.bats +++ b/tests/unit/apps_1.bats @@ -11,7 +11,7 @@ teardown() { } @test "(apps) apps:help" { - run /bin/bash -c "dokku apps" + run /bin/bash -c "dokku apps --help" echo "output: $output" echo "status: $status" assert_output_contains "Manage apps" diff --git a/tests/unit/config.bats b/tests/unit/config.bats index 610fd0a63..6216fe441 100644 --- a/tests/unit/config.bats +++ b/tests/unit/config.bats @@ -19,10 +19,17 @@ teardown() { } @test "(config) config:help" { + run /bin/bash -c "dokku config --help" + echo "output: $output" + echo "status: $status" + assert_output_contains "Manage global and app-specific config vars" + help_output="$output" + run /bin/bash -c "dokku config:help" echo "output: $output" echo "status: $status" assert_output_contains "Manage global and app-specific config vars" + assert_output "$help_output" } @test "(config) config:set --global" {