feat: improve LimitRange management in namespaces #187

Merged
argoyle merged 1 commits from improve-limitrange-management-logging into master 2025-10-01 08:15:33 +00:00
+19 -11
View File
@@ -61,18 +61,26 @@ func main() {
} }
for _, ns := range namespaces.Items { for _, ns := range namespaces.Items {
log.Printf("Checking for LimitRange named extreme-request-defaults in namespace '%v'\n", ns.Name)
limitRanges, err := clientset.CoreV1().LimitRanges(ns.Name).List(ctx, metav1.ListOptions{FieldSelector: "metadata.name=extreme-request-defaults"})
if err != nil {
log.Printf("Unable to list LimitRanges in namespace '%v': Error: %v\n", ns.Name, err)
continue
}
if !nsExcluded(ns.Name, excludedNS) { if !nsExcluded(ns.Name, excludedNS) {
log.Printf("Checking for LimitRange named extreme-request-defaults in namespace '%v'\n", ns.Name) if len(limitRanges.Items) == 0 {
if limitRanges, err := clientset.CoreV1().LimitRanges(ns.Name).List(ctx, metav1.ListOptions{FieldSelector: "metadata.name=extreme-request-defaults"}); err != nil { log.Printf("Trying to create LimitRange\n")
panic(err) if _, err := clientset.CoreV1().LimitRanges(ns.Name).Create(ctx, &limitRange, metav1.CreateOptions{}); err != nil {
} else { log.Printf("Unable to create LimitRange in namespace '%v': Error: %v\n", ns.Name, err)
if len(limitRanges.Items) == 0 { } else {
log.Printf("Trying to create LimitRange\n") log.Printf("LimitRange extreme-request-defaults created in namespace '%v'\n", ns.Name)
if _, err := clientset.CoreV1().LimitRanges(ns.Name).Create(ctx, &limitRange, metav1.CreateOptions{}); err != nil { }
log.Printf("Unable to create LimitRange in namespace '%v': Error: %v\n", ns.Name, err) }
} else { } else {
log.Printf("LimitRange extreme-request-defaults created in namespace '%v'\n", ns.Name) if len(limitRanges.Items) > 0 {
} log.Printf("Trying to delete LimitRange\n")
if err := clientset.CoreV1().LimitRanges(ns.Name).Delete(ctx, "extreme-request-defaults", metav1.DeleteOptions{}); err != nil {
log.Printf("Unable to delete LimitRange in namespace '%v': Error: %v\n", ns.Name, err)
} }
} }
} }