File tree Expand file tree Collapse file tree 1 file changed +13
-5
lines changed
cloud/services/compute/storage Expand file tree Collapse file tree 1 file changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ package storage
22
33import (
44 "context"
5+ "errors"
56 "fmt"
67
78 "github.com/sp-yduck/proxmox/pkg/api"
@@ -28,11 +29,7 @@ func (s *Service) Reconcile(ctx context.Context) error {
2829}
2930
3031func (s * Service ) Delete (ctx context.Context ) error {
31- // return s.deleteStorage(ctx)
32- // not worthy to delete Storage
33- // since deleting Storage will block vm deletion
34- // and does not delete actual content in the node
35- return nil
32+ return s .deleteStorage (ctx )
3633}
3734
3835// createOrGetStorage gets Proxmox Storage for VMs
@@ -77,6 +74,17 @@ func (s *Service) deleteStorage(ctx context.Context) error {
7774 log .Info (err .Error ())
7875 continue
7976 }
77+
78+ // check if storage is empty
79+ contents , err := storage .Contents ()
80+ if err != nil {
81+ return err
82+ }
83+ if len (contents ) > 0 {
84+ return errors .New ("Storage must be empty to be deleted" )
85+ }
86+
87+ // delete
8088 if _ , err := storage .Delete (); err != nil {
8189 log .Info (err .Error ())
8290 return err
You can’t perform that action at this time.
0 commit comments