feat: allow to only destroy remote server
This commit is contained in:
parent
2c78ac22e0
commit
93c7612efc
@ -222,7 +222,6 @@ API tokens are read from the environment if specified, e.g.
|
||||
|
||||
Where "$provider_TOKEN" is the expected env var format.
|
||||
`,
|
||||
ArgsUsage: "<provider>",
|
||||
Flags: []cli.Flag{
|
||||
internal.ServerProviderFlag,
|
||||
|
||||
|
@ -102,7 +102,7 @@ destroyed.
|
||||
var serverRemoveCommand = &cli.Command{
|
||||
Name: "remove",
|
||||
Aliases: []string{"rm"},
|
||||
ArgsUsage: "<server>",
|
||||
ArgsUsage: "[<server>]",
|
||||
Usage: "Remove a managed server",
|
||||
Description: `
|
||||
This command removes a server from Abra management.
|
||||
@ -117,16 +117,21 @@ like tears in rain.
|
||||
`,
|
||||
Flags: []cli.Flag{
|
||||
rmServerFlag,
|
||||
internal.ServerProviderFlag,
|
||||
|
||||
// Hetzner
|
||||
internal.HetznerCloudNameFlag,
|
||||
internal.HetznerCloudAPITokenFlag,
|
||||
},
|
||||
Action: func(c *cli.Context) error {
|
||||
serverName, err := internal.ValidateServer(c)
|
||||
serverName := c.Args().Get(1)
|
||||
if serverName != "" {
|
||||
var err error
|
||||
serverName, err = internal.ValidateServer(c)
|
||||
if err != nil {
|
||||
logrus.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
if !rmServer {
|
||||
logrus.Warn("did not pass -s/--server for actual server deletion, prompting")
|
||||
@ -160,6 +165,7 @@ like tears in rain.
|
||||
|
||||
}
|
||||
|
||||
if serverName != "" {
|
||||
if err := client.DeleteContext(serverName); err != nil {
|
||||
logrus.Fatal(err)
|
||||
}
|
||||
@ -169,6 +175,7 @@ like tears in rain.
|
||||
}
|
||||
|
||||
logrus.Infof("server at %s has been lost in time, like tears in rain", serverName)
|
||||
}
|
||||
|
||||
return nil
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user