initial role differentiation of DevOps project and namespace

Signed-off-by: hongming <talonwan@yunify.com>
This commit is contained in:
hongming
2020-07-31 12:22:17 +08:00
parent 74533cb533
commit 03e7987655
3 changed files with 15 additions and 7 deletions

View File

@@ -105,18 +105,16 @@ func (d *rolesGetter) fetchAggregationRoles(namespace, name string) ([]*rbacv1.R
if annotation := obj.(*rbacv1.Role).Annotations[iamv1alpha2.AggregationRolesAnnotation]; annotation != "" {
var roleNames []string
if err = json.Unmarshal([]byte(annotation), &roleNames); err == nil {
for _, roleName := range roleNames {
role, err := d.Get(namespace, roleName)
if err != nil {
if errors.IsNotFound(err) {
klog.Warningf("invalid aggregation role found: %s, %s", name, roleName)
klog.V(6).Infof("invalid aggregation role found: %s, %s", name, roleName)
continue
}
klog.Error(err)
return nil, err
}
roles = append(roles, role.(*rbacv1.Role))
}
}