forked from toolshed/abra
feat: support hetzner cloud server removal
Part of coop-cloud/organising#212.
This commit is contained in:
@ -126,3 +126,31 @@ func ValidateSubCmdFlags(c *cli.Context) bool {
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
// ValidateServer ensures the server name arg is valid.
|
||||
func ValidateServer(c *cli.Context) (string, error) {
|
||||
serverName := c.Args().First()
|
||||
|
||||
serverNames, err := config.ReadServerNames()
|
||||
if err != nil {
|
||||
return serverName, err
|
||||
}
|
||||
|
||||
if serverName == "" && !NoInput {
|
||||
prompt := &survey.Select{
|
||||
Message: "Specify a server name",
|
||||
Options: serverNames,
|
||||
}
|
||||
if err := survey.AskOne(prompt, &serverName); err != nil {
|
||||
return serverName, err
|
||||
}
|
||||
}
|
||||
|
||||
if serverName == "" {
|
||||
ShowSubcommandHelpAndError(c, errors.New("no server provided"))
|
||||
}
|
||||
|
||||
logrus.Debugf("validated '%s' as server argument", serverName)
|
||||
|
||||
return serverName, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user