Skip to content

Commit

Permalink
add service kind
Browse files Browse the repository at this point in the history
  • Loading branch information
jreisinger committed May 17, 2022
1 parent 3be4eac commit a6b06fd
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
2 changes: 1 addition & 1 deletion TODO.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
* [x] add support for selecting namespace: -n
* [x] try to read ~/.kube/config if no KUBECONFIG nor args
* [ ] add service kind
* [x] add service kind
18 changes: 18 additions & 0 deletions object.go
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,8 @@ func countObjects(cluster Cluster, kind, labelSelector string) (Count, error) {
n, newest, oldest, err = countSecrets(clientSet, cluster.namespace, labelSelector, timeout)
case "ingress":
n, newest, oldest, err = countIngresses(clientSet, cluster.namespace, labelSelector, timeout)
case "service":
n, newest, oldest, err = countServices(clientSet, cluster.namespace, labelSelector, timeout)
default:
return Count{}, fmt.Errorf("unsupported kind: %s", kind)
}
Expand Down Expand Up @@ -233,6 +235,22 @@ func countIngresses(clientset *kubernetes.Clientset, namespace string, labelSele
return count, newest, oldest, nil
}

func countServices(clientset *kubernetes.Clientset, namespace string, labelSelector string, timeoutSeconds int64) (int, metav1.Time, metav1.Time, error) {
services, err := clientset.CoreV1().Services(namespace).List(
context.TODO(),
metav1.ListOptions{LabelSelector: labelSelector, TimeoutSeconds: &timeoutSeconds})
if err != nil {
return 0, metav1.Time{}, metav1.Time{}, err
}

var items []metav1.ObjectMeta
for _, item := range services.Items {
items = append(items, item.ObjectMeta)
}
count, newest, oldest := countItems(items)
return count, newest, oldest, nil
}

func countItems(items []metav1.ObjectMeta) (int, metav1.Time, metav1.Time) {
var newest, oldest metav1.Time
for i, item := range items {
Expand Down

0 comments on commit a6b06fd

Please sign in to comment.