INNER CODE UNIT · Go

GetNamespaceRoleAnnotation

jtblin/kube2iam · namespace.go:68

func GetNamespaceRoleAnnotation(ns *v1.Namespace, namespaceKey string) []string {
	rolesString := ns.GetAnnotations()[namespaceKey]
	if rolesString != "" {
		var decoded []string
		if err := json.Unmarshal([]byte(rolesString), &decoded); err != nil {
			log.Errorf("Unable to decode roles on namespace %s ( role annotation is '%s' ) with error: %s", ns.Name, rolesString, err)
		}
		return decoded
	}
	return nil
}

// NamespaceIndexFunc maps a namespace to it's name.
func NamespaceIndexFunc(obj interface{}) ([]string, error) {
	namespace, ok := obj.(*v1.Namespace)
	if !ok {
		return nil, fmt.Errorf("expected namespace but received: %+v", obj)
	}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…