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  }