mirror of
				https://github.com/fluxcd/flux2.git
				synced 2025-10-31 08:17:19 +08:00 
			
		
		
		
	Remove network policies on uninstall
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
This commit is contained in:
		| @ -24,6 +24,7 @@ import ( | |||||||
| 	"github.com/spf13/cobra" | 	"github.com/spf13/cobra" | ||||||
| 	appsv1 "k8s.io/api/apps/v1" | 	appsv1 "k8s.io/api/apps/v1" | ||||||
| 	corev1 "k8s.io/api/core/v1" | 	corev1 "k8s.io/api/core/v1" | ||||||
|  | 	networkingv1 "k8s.io/api/networking/v1" | ||||||
| 	rbacv1 "k8s.io/api/rbac/v1" | 	rbacv1 "k8s.io/api/rbac/v1" | ||||||
| 	apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" | 	apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" | ||||||
| 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | ||||||
| @ -130,6 +131,18 @@ func uninstallComponents(ctx context.Context, kubeClient client.Client, namespac | |||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  | 	{ | ||||||
|  | 		var list networkingv1.NetworkPolicyList | ||||||
|  | 		if err := kubeClient.List(ctx, &list, client.InNamespace(namespace), selector); err == nil { | ||||||
|  | 			for _, r := range list.Items { | ||||||
|  | 				if err := kubeClient.Delete(ctx, &r, opts); err != nil { | ||||||
|  | 					logger.Failuref("NetworkPolicy/%s/%s deletion failed: %s", r.Namespace, r.Name, err.Error()) | ||||||
|  | 				} else { | ||||||
|  | 					logger.Successf("NetworkPolicy/%s/%s deleted %s", r.Namespace, r.Name, dryRunStr) | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
| 	{ | 	{ | ||||||
| 		var list corev1.ServiceAccountList | 		var list corev1.ServiceAccountList | ||||||
| 		if err := kubeClient.List(ctx, &list, client.InNamespace(namespace), selector); err == nil { | 		if err := kubeClient.List(ctx, &list, client.InNamespace(namespace), selector); err == nil { | ||||||
|  | |||||||
| @ -617,6 +617,7 @@ flux uninstall --namespace=flux-system | |||||||
| The above command performs the following operations: | The above command performs the following operations: | ||||||
|  |  | ||||||
| - deletes Flux components (deployments and services) | - deletes Flux components (deployments and services) | ||||||
|  | - deletes Flux network policies | ||||||
| - deletes Flux RBAC (service accounts, cluster roles and cluster role bindings) | - deletes Flux RBAC (service accounts, cluster roles and cluster role bindings) | ||||||
| - removes the Kubernetes finalizers from Flux custom resources | - removes the Kubernetes finalizers from Flux custom resources | ||||||
| - deletes Flux custom resource definitions and custom resources | - deletes Flux custom resource definitions and custom resources | ||||||
|  | |||||||
| @ -33,6 +33,7 @@ import ( | |||||||
| 	"github.com/olekukonko/tablewriter" | 	"github.com/olekukonko/tablewriter" | ||||||
| 	appsv1 "k8s.io/api/apps/v1" | 	appsv1 "k8s.io/api/apps/v1" | ||||||
| 	corev1 "k8s.io/api/core/v1" | 	corev1 "k8s.io/api/core/v1" | ||||||
|  | 	networkingv1 "k8s.io/api/networking/v1" | ||||||
| 	rbacv1 "k8s.io/api/rbac/v1" | 	rbacv1 "k8s.io/api/rbac/v1" | ||||||
| 	apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" | 	apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" | ||||||
| 	apiruntime "k8s.io/apimachinery/pkg/runtime" | 	apiruntime "k8s.io/apimachinery/pkg/runtime" | ||||||
| @ -169,6 +170,7 @@ func KubeClient(kubeConfigPath string, kubeContext string) (client.Client, error | |||||||
| 	_ = corev1.AddToScheme(scheme) | 	_ = corev1.AddToScheme(scheme) | ||||||
| 	_ = rbacv1.AddToScheme(scheme) | 	_ = rbacv1.AddToScheme(scheme) | ||||||
| 	_ = appsv1.AddToScheme(scheme) | 	_ = appsv1.AddToScheme(scheme) | ||||||
|  | 	_ = networkingv1.AddToScheme(scheme) | ||||||
| 	_ = sourcev1.AddToScheme(scheme) | 	_ = sourcev1.AddToScheme(scheme) | ||||||
| 	_ = kustomizev1.AddToScheme(scheme) | 	_ = kustomizev1.AddToScheme(scheme) | ||||||
| 	_ = helmv2.AddToScheme(scheme) | 	_ = helmv2.AddToScheme(scheme) | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 Stefan Prodan
					Stefan Prodan