Add sync option on lease removal
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
This commit is contained in:
@@ -163,6 +163,12 @@ var deleteCommand = cli.Command{
|
||||
Usage: "delete a lease",
|
||||
ArgsUsage: "[flags] <lease id> ...",
|
||||
Description: "delete a lease",
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "sync",
|
||||
Usage: "Synchronously remove leases and all unreferenced resources",
|
||||
},
|
||||
},
|
||||
Action: func(context *cli.Context) error {
|
||||
var lids = context.Args()
|
||||
if len(lids) == 0 {
|
||||
@@ -175,11 +181,17 @@ var deleteCommand = cli.Command{
|
||||
defer cancel()
|
||||
|
||||
ls := client.LeasesService()
|
||||
for _, lid := range lids {
|
||||
sync := context.Bool("sync")
|
||||
for i, lid := range lids {
|
||||
var opts []leases.DeleteOpt
|
||||
if sync && i == len(lids)-1 {
|
||||
opts = append(opts, leases.SynchronousDelete)
|
||||
}
|
||||
|
||||
lease := leases.Lease{
|
||||
ID: lid,
|
||||
}
|
||||
if err := ls.Delete(ctx, lease); err != nil {
|
||||
if err := ls.Delete(ctx, lease, opts...); err != nil {
|
||||
return err
|
||||
}
|
||||
fmt.Println(lid)
|
||||
|
Reference in New Issue
Block a user