github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/orbiter/kinds/clusters/kubernetes/destroy.go (about) 1 package kubernetes 2 3 import ( 4 "github.com/caos/orbos/internal/operator/orbiter/kinds/clusters/core/infra" 5 "github.com/caos/orbos/pkg/kubernetes" 6 ) 7 8 func destroy(providerCurrents map[string]interface{}, k8sClient *kubernetes.Client) error { 9 10 if k8sClient != nil { 11 k8sClient.DeleteDeployment("caos-system", "orbiter") 12 } 13 14 for _, provider := range providerCurrents { 15 prov := provider.(infra.ProviderCurrent) 16 for _, pool := range prov.Pools() { 17 machines, err := pool.GetMachines() 18 if err != nil { 19 return err 20 } 21 for _, machine := range machines { 22 remove, err := machine.Destroy() 23 if err != nil { 24 return err 25 } 26 if err := remove(); err != nil { 27 return err 28 } 29 } 30 } 31 } 32 return nil 33 }