func()

in pkg/k8s/registry.go [56:75]


func (r registry) OnAdd(obj interface{}) {
	switch o := obj.(type) {
	case *corev1.Pod:
		podID := id{namespace: o.Namespace, name: o.Name}.String()

		r.podIDIpMap.Add(podID, o.Status.PodIP)
		r.idPodMap.Add(podID, o)
	case *corev1.Service:
		svcID := id{namespace: o.Namespace, name: o.Name}.String()

		r.idSvcMap.Add(svcID, o)
	case *corev1.Endpoints:
		for _, subset := range o.Subsets {
			for _, address := range subset.Addresses {
				svcID := id{namespace: o.ObjectMeta.Namespace, name: o.ObjectMeta.Name}.String()
				r.ipSvcIDMap.Add(address.IP, svcID)
			}
		}
	}
}