diff --git a/pkg/apiserver/resources/application.go b/pkg/apiserver/resources/application.go index 1d17384ebc0040597a609c37ed7292808ebffd97..11ec96b108361cef6f31059f5966b4b5479c5bb1 100644 --- a/pkg/apiserver/resources/application.go +++ b/pkg/apiserver/resources/application.go @@ -63,6 +63,7 @@ func ApplicationHandler(req *restful.Request, resp *restful.Response) { func NamespacedApplicationHandler(req *restful.Request, resp *restful.Response) { limit, offset := params.ParsePaging(req.QueryParameter(params.PagingParam)) namespaceName := req.PathParameter("namespace") + clusterId := req.QueryParameter("cluster_id") conditions, err := params.ParseConditions(req.QueryParameter(params.ConditionsParam)) if err != nil { if err != nil { @@ -70,6 +71,15 @@ func NamespacedApplicationHandler(req *restful.Request, resp *restful.Response) return } } + if len(clusterId) > 0 { + app, err := applications.GetApp(clusterId) + if err != nil { + resp.WriteHeaderAndEntity(http.StatusInternalServerError, errors.Wrap(err)) + return + } + resp.WriteEntity(app) + return + } namespace, err := resources.GetResource("", resources.Namespaces, namespaceName) diff --git a/pkg/models/iam/am.go b/pkg/models/iam/am.go index a6d04786925de4b1673240cf64fb360613d89a6c..d89aac0f757ecbb0c6893637a5c2416364325f4f 100644 --- a/pkg/models/iam/am.go +++ b/pkg/models/iam/am.go @@ -643,10 +643,10 @@ func CreateClusterRoleBinding(username string, clusterRoleName string) error { glog.Errorln("create cluster role binding", err) return err } + if err := kubeconfig.CreateKubeConfig(username); err != nil { + glog.Errorln("create user kubeconfig failed", username, err) + } if clusterRoleName == constants.ClusterAdmin { - if err := kubeconfig.CreateKubeConfig(username); err != nil { - glog.Errorln("create user kubeconfig failed", username, err) - } if err := kubectl.CreateKubectlDeploy(username); err != nil { glog.Errorln("create user terminal pod failed", username, err) }