diff --git a/controller/unbootstrap.go b/controller/unbootstrap.go index 4bf69df4..d9f5cf91 100644 --- a/controller/unbootstrap.go +++ b/controller/unbootstrap.go @@ -7,6 +7,7 @@ import ( apiConfig "github.com/openziti/edge-api/rest_management_api_client/config" "github.com/openziti/edge-api/rest_management_api_client/edge_router_policy" "github.com/openziti/edge-api/rest_management_api_client/identity" + "github.com/openziti/edge-api/rest_management_api_client/service" "github.com/openziti/edge-api/rest_management_api_client/service_edge_router_policy" "github.com/openziti/edge-api/rest_management_api_client/service_policy" "github.com/openziti/zrok/controller/config" @@ -26,15 +27,18 @@ func Unbootstrap(cfg *config.Config) error { if err := unbootstrapServicePolicies(edge); err != nil { logrus.Errorf("error unbootstrapping service policies: %v", err) } + if err := unbootstrapConfigs(edge); err != nil { + logrus.Errorf("error unbootrapping configs: %v", err) + } + if err := unbootstrapServices(edge); err != nil { + logrus.Errorf("error unbootstrapping services: %v", err) + } if err := unbootstrapEdgeRouterPolicies(edge); err != nil { logrus.Errorf("error unbootstrapping edge router policies: %v", err) } if err := unbootstrapIdentities(edge); err != nil { logrus.Errorf("error unbootstrapping identities: %v", err) } - if err := unbootstrapConfigs(edge); err != nil { - logrus.Errorf("error unbootrapping configs: %v", err) - } if err := unbootstrapConfigType(edge); err != nil { logrus.Errorf("error unbootstrapping config type: %v", err) } @@ -45,17 +49,17 @@ func unbootstrapServiceEdgeRouterPolicies(edge *rest_management_api_client.ZitiE filter := "tags.zrok != null" limit := int64(100) offset := int64(0) - listReq := &service_edge_router_policy.ListServiceEdgeRouterPoliciesParams{ + req := &service_edge_router_policy.ListServiceEdgeRouterPoliciesParams{ Filter: &filter, Limit: &limit, Offset: &offset, Context: context.Background(), } - listResp, err := edge.ServiceEdgeRouterPolicy.ListServiceEdgeRouterPolicies(listReq, nil) + resp, err := edge.ServiceEdgeRouterPolicy.ListServiceEdgeRouterPolicies(req, nil) if err != nil { return err } - for _, serp := range listResp.Payload.Data { + for _, serp := range resp.Payload.Data { logrus.Infof("found service edge router policy: %v", *serp.ID) } return nil @@ -81,21 +85,41 @@ func unbootstrapServicePolicies(edge *rest_management_api_client.ZitiEdgeManagem return nil } -func unbootstrapEdgeRouterPolicies(edge *rest_management_api_client.ZitiEdgeManagement) error { +func unbootstrapServices(edge *rest_management_api_client.ZitiEdgeManagement) error { filter := "tags.zrok != null" limit := int64(100) offset := int64(0) - listReq := &edge_router_policy.ListEdgeRouterPoliciesParams{ + req := &service.ListServicesParams{ Filter: &filter, Limit: &limit, Offset: &offset, Context: context.Background(), } - listResp, err := edge.EdgeRouterPolicy.ListEdgeRouterPolicies(listReq, nil) + resp, err := edge.Service.ListServices(req, nil) if err != nil { return err } - for _, erp := range listResp.Payload.Data { + for _, svc := range resp.Payload.Data { + logrus.Infof("found service: %v (%v)", *svc.ID, *svc.Name) + } + return nil +} + +func unbootstrapEdgeRouterPolicies(edge *rest_management_api_client.ZitiEdgeManagement) error { + filter := "tags.zrok != null" + limit := int64(100) + offset := int64(0) + req := &edge_router_policy.ListEdgeRouterPoliciesParams{ + Filter: &filter, + Limit: &limit, + Offset: &offset, + Context: context.Background(), + } + resp, err := edge.EdgeRouterPolicy.ListEdgeRouterPolicies(req, nil) + if err != nil { + return err + } + for _, erp := range resp.Payload.Data { logrus.Infof("found edge router policy: %v", *erp.ID) } return nil @@ -105,17 +129,17 @@ func unbootstrapIdentities(edge *rest_management_api_client.ZitiEdgeManagement) filter := "tags.zrok != null" limit := int64(100) offset := int64(0) - listReq := &identity.ListIdentitiesParams{ + req := &identity.ListIdentitiesParams{ Filter: &filter, Limit: &limit, Offset: &offset, Context: context.Background(), } - listResp, err := edge.Identity.ListIdentities(listReq, nil) + resp, err := edge.Identity.ListIdentities(req, nil) if err != nil { return err } - for _, identity := range listResp.Payload.Data { + for _, identity := range resp.Payload.Data { logrus.Infof("found identity: %v", *identity.ID) } return nil @@ -125,17 +149,17 @@ func unbootstrapConfigs(edge *rest_management_api_client.ZitiEdgeManagement) err filter := "tags.zrok != null" limit := int64(100) offset := int64(0) - listReq := &apiConfig.ListConfigsParams{ + req := &apiConfig.ListConfigsParams{ Filter: &filter, Limit: &limit, Offset: &offset, Context: context.Background(), } - listResp, err := edge.Config.ListConfigs(listReq, nil) + resp, err := edge.Config.ListConfigs(req, nil) if err != nil { return err } - for _, listCfg := range listResp.Payload.Data { + for _, listCfg := range resp.Payload.Data { logrus.Infof("found config: %v", *listCfg.ID) } return nil @@ -145,17 +169,17 @@ func unbootstrapConfigType(edge *rest_management_api_client.ZitiEdgeManagement) filter := fmt.Sprintf("name = \"%v\"", sdk.ZrokProxyConfig) limit := int64(100) offset := int64(0) - listReq := &apiConfig.ListConfigTypesParams{ + req := &apiConfig.ListConfigTypesParams{ Filter: &filter, Limit: &limit, Offset: &offset, Context: context.Background(), } - listResp, err := edge.Config.ListConfigTypes(listReq, nil) + resp, err := edge.Config.ListConfigTypes(req, nil) if err != nil { return err } - for _, listCfgType := range listResp.Payload.Data { + for _, listCfgType := range resp.Payload.Data { logrus.Infof("found config type: %v (%v)", *listCfgType.ID, *listCfgType.Name) } return nil