1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-06 07:57:07 +00:00
kyverno/pkg/utils/engine/labels.go

22 lines
773 B
Go
Raw Normal View History

package engine
import (
"github.com/go-logr/logr"
"github.com/kyverno/kyverno/pkg/logging"
corev1listers "k8s.io/client-go/listers/core/v1"
)
// GetNamespaceSelectorsFromNamespaceLister - extract the namespacelabels when namespace lister is passed
func GetNamespaceSelectorsFromNamespaceLister(kind, namespaceOfResource string, nsLister corev1listers.NamespaceLister, logger logr.Logger) map[string]string {
namespaceLabels := make(map[string]string)
if kind != "Namespace" && namespaceOfResource != "" {
namespaceObj, err := nsLister.Get(namespaceOfResource)
if err != nil {
logging.Error(err, "failed to get the namespace", "name", namespaceOfResource)
return namespaceLabels
}
return namespaceObj.DeepCopy().GetLabels()
}
return namespaceLabels
}