1. change glog to klog
2. move types to api package to avoid cyclic import
This commit is contained in:
@@ -20,19 +20,19 @@ package iam
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/go-ldap/ldap"
|
||||
"github.com/golang/glog"
|
||||
rbacv1 "k8s.io/api/rbac/v1"
|
||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/labels"
|
||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||
"k8s.io/klog"
|
||||
"kubesphere.io/kubesphere/pkg/constants"
|
||||
"kubesphere.io/kubesphere/pkg/informers"
|
||||
"kubesphere.io/kubesphere/pkg/models"
|
||||
"kubesphere.io/kubesphere/pkg/models/iam/policy"
|
||||
"kubesphere.io/kubesphere/pkg/models/kubectl"
|
||||
"kubesphere.io/kubesphere/pkg/models/resources"
|
||||
"kubesphere.io/kubesphere/pkg/params"
|
||||
"kubesphere.io/kubesphere/pkg/server/params"
|
||||
"kubesphere.io/kubesphere/pkg/simple/client"
|
||||
"kubesphere.io/kubesphere/pkg/utils/k8sutil"
|
||||
"kubesphere.io/kubesphere/pkg/utils/sliceutil"
|
||||
@@ -99,7 +99,7 @@ func GetUserRoles(namespace, username string) ([]*rbacv1.Role, error) {
|
||||
roleBindings, err := roleBindingLister.RoleBindings(namespace).List(labels.Everything())
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get role bindings", namespace, err)
|
||||
klog.Errorln("get role bindings", namespace, err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -111,10 +111,10 @@ func GetUserRoles(namespace, username string) ([]*rbacv1.Role, error) {
|
||||
clusterRole, err := clusterRoleLister.Get(roleBinding.RoleRef.Name)
|
||||
if err != nil {
|
||||
if apierrors.IsNotFound(err) {
|
||||
glog.Warningf("cluster role %s not found but bind user %s in namespace %s", roleBinding.RoleRef.Name, username, namespace)
|
||||
klog.Warningf("cluster role %s not found but bind user %s in namespace %s", roleBinding.RoleRef.Name, username, namespace)
|
||||
continue
|
||||
} else {
|
||||
glog.Errorln("get cluster role", roleBinding.RoleRef.Name, err)
|
||||
klog.Errorln("get cluster role", roleBinding.RoleRef.Name, err)
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
@@ -129,10 +129,10 @@ func GetUserRoles(namespace, username string) ([]*rbacv1.Role, error) {
|
||||
|
||||
if err != nil {
|
||||
if apierrors.IsNotFound(err) {
|
||||
glog.Warningf("namespace %s role %s not found, but bind user %s", namespace, roleBinding.RoleRef.Name, username)
|
||||
klog.Warningf("namespace %s role %s not found, but bind user %s", namespace, roleBinding.RoleRef.Name, username)
|
||||
continue
|
||||
} else {
|
||||
glog.Errorln("get role", roleBinding.Namespace, roleBinding.RoleRef.Name, err)
|
||||
klog.Errorln("get role", roleBinding.Namespace, roleBinding.RoleRef.Name, err)
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
@@ -150,7 +150,7 @@ func GetUserClusterRoles(username string) (*rbacv1.ClusterRole, []*rbacv1.Cluste
|
||||
clusterRoleBindings, err := clusterRoleBindingLister.List(labels.Everything())
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get cluster role bindings", err)
|
||||
klog.Errorln("get cluster role bindings", err)
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
@@ -161,10 +161,10 @@ func GetUserClusterRoles(username string) (*rbacv1.ClusterRole, []*rbacv1.Cluste
|
||||
clusterRole, err := clusterRoleLister.Get(clusterRoleBinding.RoleRef.Name)
|
||||
if err != nil {
|
||||
if apierrors.IsNotFound(err) {
|
||||
glog.Warningf("cluster role %s not found but bind user %s", clusterRoleBinding.RoleRef.Name, username)
|
||||
klog.Warningf("cluster role %s not found but bind user %s", clusterRoleBinding.RoleRef.Name, username)
|
||||
continue
|
||||
} else {
|
||||
glog.Errorln("get cluster role", clusterRoleBinding.RoleRef.Name, err)
|
||||
klog.Errorln("get cluster role", clusterRoleBinding.RoleRef.Name, err)
|
||||
return nil, nil, err
|
||||
}
|
||||
}
|
||||
@@ -221,7 +221,7 @@ func GetWorkspaceRoleBindings(workspace string) ([]*rbacv1.ClusterRoleBinding, e
|
||||
clusterRoleBindings, err := informers.SharedInformerFactory().Rbac().V1().ClusterRoleBindings().Lister().List(labels.Everything())
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get cluster role bindings", err)
|
||||
klog.Errorln("get cluster role bindings", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -249,7 +249,7 @@ func GetUserWorkspaceRoleMap(username string) (map[string]string, error) {
|
||||
clusterRoleBindings, err := informers.SharedInformerFactory().Rbac().V1().ClusterRoleBindings().Lister().List(labels.Everything())
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get cluster role bindings", err)
|
||||
klog.Errorln("get cluster role bindings", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -284,7 +284,7 @@ func GetRoleBindings(namespace string, roleName string) ([]*rbacv1.RoleBinding,
|
||||
roleBindings, err := roleBindingLister.RoleBindings(namespace).List(labels.Everything())
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get role bindings", namespace, err)
|
||||
klog.Errorln("get role bindings", namespace, err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -306,7 +306,7 @@ func GetClusterRoleBindings(clusterRoleName string) ([]*rbacv1.ClusterRoleBindin
|
||||
roleBindings, err := clusterRoleBindingLister.List(labels.Everything())
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get cluster role bindings", err)
|
||||
klog.Errorln("get cluster role bindings", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -337,7 +337,7 @@ func ListClusterRoleUsers(clusterRoleName string, conditions *params.Conditions,
|
||||
continue
|
||||
}
|
||||
if err != nil {
|
||||
glog.Errorln("get user info", subject.Name, err)
|
||||
klog.Errorln("get user info", subject.Name, err)
|
||||
return nil, err
|
||||
}
|
||||
users = append(users, user)
|
||||
@@ -431,7 +431,7 @@ func ListClusterRoles(conditions *params.Conditions, orderBy string, reverse boo
|
||||
func NamespaceUsers(namespaceName string) ([]*models.User, error) {
|
||||
namespace, err := informers.SharedInformerFactory().Core().V1().Namespaces().Lister().Get(namespaceName)
|
||||
if err != nil {
|
||||
glog.Errorln("get namespace", namespaceName, err)
|
||||
klog.Errorln("get namespace", namespaceName, err)
|
||||
return nil, err
|
||||
}
|
||||
roleBindings, err := GetRoleBindings(namespaceName, "")
|
||||
@@ -540,7 +540,7 @@ func GetClusterRoleSimpleRules(clusterRoleName string) ([]models.SimpleRule, err
|
||||
clusterRole, err := clusterRoleLister.Get(clusterRoleName)
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get cluster role", clusterRoleName, clusterRoleName)
|
||||
klog.Errorln("get cluster role", clusterRoleName, clusterRoleName)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -576,7 +576,7 @@ func GetRoleSimpleRules(namespace string, roleName string) ([]models.SimpleRule,
|
||||
role, err := roleLister.Roles(namespace).Get(roleName)
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get role", namespace, roleName, err)
|
||||
klog.Errorln("get role", namespace, roleName, err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -624,20 +624,20 @@ func CreateClusterRoleBinding(username string, clusterRoleName string) error {
|
||||
_, err := clusterRoleLister.Get(clusterRoleName)
|
||||
|
||||
if err != nil {
|
||||
glog.Errorln("get cluster role", clusterRoleName, err)
|
||||
klog.Errorln("get cluster role", clusterRoleName, err)
|
||||
return err
|
||||
}
|
||||
|
||||
if clusterRoleName == constants.ClusterAdmin {
|
||||
// create kubectl pod if cluster role is cluster-admin
|
||||
if err := kubectl.CreateKubectlDeploy(username); err != nil {
|
||||
glog.Error("create user terminal pod failed", username, err)
|
||||
klog.Error("create user terminal pod failed", username, err)
|
||||
}
|
||||
|
||||
} else {
|
||||
// delete kubectl pod if cluster role is not cluster-admin, whether it exists or not
|
||||
if err := kubectl.DelKubectlDeploy(username); err != nil {
|
||||
glog.Error("delete user terminal pod failed", username, err)
|
||||
klog.Error("delete user terminal pod failed", username, err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -652,7 +652,7 @@ func CreateClusterRoleBinding(username string, clusterRoleName string) error {
|
||||
if apierrors.IsNotFound(err) {
|
||||
_, err = client.ClientSets().K8s().Kubernetes().RbacV1().ClusterRoleBindings().Create(clusterRoleBinding)
|
||||
if err != nil {
|
||||
glog.Errorln("create cluster role binding", err)
|
||||
klog.Errorln("create cluster role binding", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
@@ -667,7 +667,7 @@ func CreateClusterRoleBinding(username string, clusterRoleName string) error {
|
||||
deleteOption := &metav1.DeleteOptions{PropagationPolicy: &deletePolicy, GracePeriodSeconds: &gracePeriodSeconds}
|
||||
err = client.ClientSets().K8s().Kubernetes().RbacV1().ClusterRoleBindings().Delete(found.Name, deleteOption)
|
||||
if err != nil {
|
||||
glog.Errorln("delete cluster role binding", err)
|
||||
klog.Errorln("delete cluster role binding", err)
|
||||
return err
|
||||
}
|
||||
maxRetries := 3
|
||||
@@ -678,7 +678,7 @@ func CreateClusterRoleBinding(username string, clusterRoleName string) error {
|
||||
}
|
||||
time.Sleep(300 * time.Millisecond)
|
||||
}
|
||||
glog.Errorln("create cluster role binding", err)
|
||||
klog.Errorln("create cluster role binding", err)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -686,7 +686,7 @@ func CreateClusterRoleBinding(username string, clusterRoleName string) error {
|
||||
found.Subjects = clusterRoleBinding.Subjects
|
||||
_, err = client.ClientSets().K8s().Kubernetes().RbacV1().ClusterRoleBindings().Update(found)
|
||||
if err != nil {
|
||||
glog.Errorln("update cluster role binding", err)
|
||||
klog.Errorln("update cluster role binding", err)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ import (
|
||||
"kubesphere.io/kubesphere/pkg/models/devops"
|
||||
"kubesphere.io/kubesphere/pkg/models/kubeconfig"
|
||||
"kubesphere.io/kubesphere/pkg/models/kubectl"
|
||||
"kubesphere.io/kubesphere/pkg/params"
|
||||
"kubesphere.io/kubesphere/pkg/server/params"
|
||||
clientset "kubesphere.io/kubesphere/pkg/simple/client"
|
||||
"kubesphere.io/kubesphere/pkg/utils/k8sutil"
|
||||
"kubesphere.io/kubesphere/pkg/utils/sliceutil"
|
||||
|
||||
Reference in New Issue
Block a user