47 lines
948 B
Go
47 lines
948 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"strings"
|
|
)
|
|
|
|
func RunTarget(args ...string) error {
|
|
name, args := ParseCommandName(args)
|
|
|
|
// 从参数中解析出命令
|
|
switch name {
|
|
case "", "help":
|
|
return RunTargetHelp(args...)
|
|
case "list":
|
|
return RunTargetList(args...)
|
|
case "create":
|
|
return RunTargetCreate(args...)
|
|
case "delete":
|
|
return RunTargetDelete(args...)
|
|
default:
|
|
err := fmt.Errorf(`unknown command "%s"`+"\n"+`Run 'saastool target help' for usage`, name)
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
return err
|
|
}
|
|
}
|
|
|
|
func RunTargetHelp(args ...string) error {
|
|
fmt.Println(strings.TrimSpace(targetUsage))
|
|
return nil
|
|
}
|
|
|
|
const targetUsage = `
|
|
Usage: saastoola target COMMAND [OPTIONS]
|
|
|
|
Commands:
|
|
list List targets
|
|
create Create a new target
|
|
delete Delete an existing target
|
|
|
|
"help" is the default command.
|
|
|
|
Use "saastool target COMMAND -help" for more information about a command.
|
|
`
|