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.
|
Where "$provider_TOKEN" is the expected env var format.
|
||||||
`,
|
`,
|
||||||
ArgsUsage: "<provider>",
|
|
||||||
Flags: []cli.Flag{
|
Flags: []cli.Flag{
|
||||||
internal.ServerProviderFlag,
|
internal.ServerProviderFlag,
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,7 @@ destroyed.
|
||||||
var serverRemoveCommand = &cli.Command{
|
var serverRemoveCommand = &cli.Command{
|
||||||
Name: "remove",
|
Name: "remove",
|
||||||
Aliases: []string{"rm"},
|
Aliases: []string{"rm"},
|
||||||
ArgsUsage: "<server>",
|
ArgsUsage: "[<server>]",
|
||||||
Usage: "Remove a managed server",
|
Usage: "Remove a managed server",
|
||||||
Description: `
|
Description: `
|
||||||
This command removes a server from Abra management.
|
This command removes a server from Abra management.
|
||||||
|
@ -117,15 +117,20 @@ like tears in rain.
|
||||||
`,
|
`,
|
||||||
Flags: []cli.Flag{
|
Flags: []cli.Flag{
|
||||||
rmServerFlag,
|
rmServerFlag,
|
||||||
|
internal.ServerProviderFlag,
|
||||||
|
|
||||||
// Hetzner
|
// Hetzner
|
||||||
internal.HetznerCloudNameFlag,
|
internal.HetznerCloudNameFlag,
|
||||||
internal.HetznerCloudAPITokenFlag,
|
internal.HetznerCloudAPITokenFlag,
|
||||||
},
|
},
|
||||||
Action: func(c *cli.Context) error {
|
Action: func(c *cli.Context) error {
|
||||||
serverName, err := internal.ValidateServer(c)
|
serverName := c.Args().Get(1)
|
||||||
if err != nil {
|
if serverName != "" {
|
||||||
logrus.Fatal(err)
|
var err error
|
||||||
|
serverName, err = internal.ValidateServer(c)
|
||||||
|
if err != nil {
|
||||||
|
logrus.Fatal(err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !rmServer {
|
if !rmServer {
|
||||||
|
@ -160,15 +165,17 @@ like tears in rain.
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := client.DeleteContext(serverName); err != nil {
|
if serverName != "" {
|
||||||
logrus.Fatal(err)
|
if err := client.DeleteContext(serverName); err != nil {
|
||||||
}
|
logrus.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
if err := os.RemoveAll(filepath.Join(config.SERVERS_DIR, serverName)); err != nil {
|
if err := os.RemoveAll(filepath.Join(config.SERVERS_DIR, serverName)); err != nil {
|
||||||
logrus.Fatal(err)
|
logrus.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
logrus.Infof("server at %s has been lost in time, like tears in rain", serverName)
|
logrus.Infof("server at %s has been lost in time, like tears in rain", serverName)
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue