github.com/netdata/go.d.plugin@v0.58.1/modules/k8s_state/update_state.go (about) 1 // SPDX-License-Identifier: GPL-3.0-or-later 2 3 package k8s_state 4 5 func (ks *KubeState) runUpdateState(in <-chan resource) { 6 for { 7 select { 8 case <-ks.ctx.Done(): 9 return 10 case r := <-in: 11 ks.state.Lock() 12 switch r.kind() { 13 case kubeResourceNode: 14 ks.updateNodeState(r) 15 case kubeResourcePod: 16 ks.updatePodState(r) 17 } 18 ks.state.Unlock() 19 } 20 } 21 } 22 23 func copyLabels(dst, src map[string]string) { 24 for k, v := range src { 25 dst[k] = v 26 } 27 }