diff --git a/pkg/apis/iam/v1alpha2/register.go b/pkg/apis/iam/v1alpha2/register.go index 0771f0c5b..955448c50 100644 --- a/pkg/apis/iam/v1alpha2/register.go +++ b/pkg/apis/iam/v1alpha2/register.go @@ -121,10 +121,10 @@ func addWebService(c *restful.Container) error { Reads(iam.LoginRequest{}). Returns(http.StatusOK, ok, models.Token{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/users/{username}"). + ws.Route(ws.GET("/users/{user}"). To(iam.DescribeUser). - Doc("Describes the specified user."). - Param(ws.PathParameter("username", "username")). + Doc("Describe the specified user."). + Param(ws.PathParameter("user", "username")). Returns(http.StatusOK, ok, models.User{}). Metadata(restfulspec.KeyOpenAPITags, tags)) ws.Route(ws.POST("/users"). @@ -133,23 +133,23 @@ func addWebService(c *restful.Container) error { Reads(CreateUserRequest{}). Returns(http.StatusOK, ok, errors.Error{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.DELETE("/users/{username}"). + ws.Route(ws.DELETE("/users/{user}"). To(iam.DeleteUser). Doc("Remove a specified user."). - Param(ws.PathParameter("username", "username")). + Param(ws.PathParameter("user", "username")). Returns(http.StatusOK, ok, errors.Error{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.PUT("/users/{username}"). + ws.Route(ws.PUT("/users/{user}"). To(iam.UpdateUser). Doc("Updates information about the specified user."). - Param(ws.PathParameter("username", "username")). + Param(ws.PathParameter("user", "username")). Reads(UserUpdateRequest{}). Returns(http.StatusOK, ok, errors.Error{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/users/{username}/log"). - To(iam.UserLoginLog). + ws.Route(ws.GET("/users/{user}/logs"). + To(iam.UserLoginLogs). Doc("This method is used to retrieve the \"login logs\" for the specified user."). - Param(ws.PathParameter("username", "username")). + Param(ws.PathParameter("user", "username")). Returns(http.StatusOK, ok, LoginLog{}). Metadata(restfulspec.KeyOpenAPITags, tags)) ws.Route(ws.GET("/users"). @@ -160,43 +160,39 @@ func addWebService(c *restful.Container) error { ws.Route(ws.GET("/groups"). To(iam.ListGroups). Doc("List all user groups."). - Returns(http.StatusOK, ok, []models.Group{}). - Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/groups/{path}"). + Returns(http.StatusOK, ok, []models.Group{})) + ws.Route(ws.GET("/groups/{group}"). To(iam.DescribeGroup). - Doc("Describes the specified user group."). - Param(ws.PathParameter("path", "user group path separated by colon.")). - Returns(http.StatusOK, ok, models.Group{}). - Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/groups/{path}/users"). + Doc("Describe the specified user group."). + Param(ws.PathParameter("group", "user group path separated by colon.")). + Returns(http.StatusOK, ok, models.Group{})) + ws.Route(ws.GET("/groups/{group}/users"). To(iam.ListGroupUsers). Doc("List all users in the specified user group."). - Param(ws.PathParameter("path", "user group path separated by colon.")). - Returns(http.StatusOK, ok, []models.User{}). - Metadata(restfulspec.KeyOpenAPITags, tags)) + Param(ws.PathParameter("group", "user group path separated by colon.")). + Returns(http.StatusOK, ok, []models.User{})) ws.Route(ws.POST("/groups"). To(iam.CreateGroup). Doc("Create a user group."). Reads(models.Group{}). - Returns(http.StatusOK, ok, models.Group{}). - Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.DELETE("/groups/{path}"). + Returns(http.StatusOK, ok, models.Group{})) + ws.Route(ws.DELETE("/groups/{group}"). To(iam.DeleteGroup). Doc("Delete a user group."). - Param(ws.PathParameter("path", "user group path separated by colon.")). + Param(ws.PathParameter("group", "user group path separated by colon.")). Returns(http.StatusOK, ok, errors.Error{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.PUT("/groups/{path}"). + ws.Route(ws.PUT("/groups/{group}"). To(iam.UpdateGroup). Doc("Updates information about the user group."). - Param(ws.PathParameter("path", "user group path separated by colon.")). + Param(ws.PathParameter("group", "user group path separated by colon.")). Reads(models.Group{}). Returns(http.StatusOK, ok, models.Group{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/users/{username}/roles"). + ws.Route(ws.GET("/users/{user}/roles"). To(iam.ListUserRoles). Doc("This method is used to retrieve all the roles that are assigned to the user."). - Param(ws.PathParameter("username", "username")). + Param(ws.PathParameter("user", "username")). Returns(http.StatusOK, ok, iam.RoleList{}). Metadata(restfulspec.KeyOpenAPITags, tags)) ws.Route(ws.GET("/namespaces/{namespace}/roles"). @@ -267,7 +263,7 @@ func addWebService(c *restful.Container) error { Metadata(restfulspec.KeyOpenAPITags, tags)) ws.Route(ws.GET("/workspaces/{workspace}/roles/{role}"). To(iam.DescribeWorkspaceRole). - Doc("Describes the workspace role."). + Doc("Describe the workspace role."). Param(ws.PathParameter("workspace", "workspace name")). Param(ws.PathParameter("role", "workspace role name")). Returns(http.StatusOK, ok, rbacv1.ClusterRole{}). @@ -292,18 +288,18 @@ func addWebService(c *restful.Container) error { Reads(InviteUserRequest{}). Returns(http.StatusOK, ok, errors.Error{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.DELETE("/workspaces/{workspace}/members/{username}"). + ws.Route(ws.DELETE("/workspaces/{workspace}/members/{member}"). To(iam.RemoveUser). Doc("Remove members from workspace."). Param(ws.PathParameter("workspace", "workspace name")). - Param(ws.PathParameter("username", "username")). + Param(ws.PathParameter("member", "username")). Returns(http.StatusOK, ok, errors.Error{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/workspaces/{workspace}/members/{username}"). + ws.Route(ws.GET("/workspaces/{workspace}/members/{member}"). To(iam.DescribeWorkspaceUser). - Doc("Describes the specified user."). + Doc("Describe the specified user."). Param(ws.PathParameter("workspace", "workspace name")). - Param(ws.PathParameter("username", "username")). + Param(ws.PathParameter("member", "username")). Returns(http.StatusOK, ok, DescribeWorkspaceUserResponse{}). Metadata(restfulspec.KeyOpenAPITags, tags)) c.Add(ws) diff --git a/pkg/apis/operations/v1alpha2/register.go b/pkg/apis/operations/v1alpha2/register.go index b3b23d755..06352280c 100644 --- a/pkg/apis/operations/v1alpha2/register.go +++ b/pkg/apis/operations/v1alpha2/register.go @@ -19,7 +19,6 @@ package v1alpha2 import ( "github.com/emicklei/go-restful" - "github.com/emicklei/go-restful-openapi" "k8s.io/apimachinery/pkg/runtime/schema" "kubesphere.io/kubesphere/pkg/apiserver/operations" "kubesphere.io/kubesphere/pkg/apiserver/runtime" @@ -38,20 +37,17 @@ var ( func addWebService(c *restful.Container) error { - tags := []string{"Operations"} ok := "ok" webservice := runtime.NewWebService(GroupVersion) webservice.Route(webservice.POST("/nodes/{node}/drainage"). To(operations.DrainNode). - Metadata(restfulspec.KeyOpenAPITags, tags). Doc("Drain node"). Param(webservice.PathParameter("node", "node name")). Returns(http.StatusOK, ok, errors.Error{})) webservice.Route(webservice.POST("/namespaces/{namespace}/jobs/{job}"). To(operations.RerunJob). - Metadata(restfulspec.KeyOpenAPITags, tags). Doc("Job rerun"). Param(webservice.PathParameter("job", "job name")). Param(webservice.PathParameter("namespace", "job's namespace")). diff --git a/pkg/apis/resources/v1alpha2/register.go b/pkg/apis/resources/v1alpha2/register.go index 824adfa66..9777f568d 100644 --- a/pkg/apis/resources/v1alpha2/register.go +++ b/pkg/apis/resources/v1alpha2/register.go @@ -25,6 +25,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "kubesphere.io/kubesphere/pkg/apiserver/components" "kubesphere.io/kubesphere/pkg/apiserver/git" + "kubesphere.io/kubesphere/pkg/apiserver/operations" "kubesphere.io/kubesphere/pkg/apiserver/quotas" "kubesphere.io/kubesphere/pkg/apiserver/registries" "kubesphere.io/kubesphere/pkg/apiserver/resources" @@ -74,6 +75,15 @@ func addWebService(c *restful.Container) error { DefaultValue("limit=10,page=1")). Returns(http.StatusOK, ok, models.PageableResponse{})) + webservice.Route(webservice.POST("/namespaces/{namespace}/jobs/{job}"). + To(operations.RerunJob). + Metadata(restfulspec.KeyOpenAPITags, tags). + Doc("Rerun job whether the job is complete or not"). + Param(webservice.PathParameter("job", "job name")). + Param(webservice.PathParameter("namespace", "job's namespace")). + Param(webservice.QueryParameter("a", "action")). + Returns(http.StatusOK, ok, errors.Error{})) + tags = []string{"Cluster resources"} webservice.Route(webservice.GET("/{resources}"). @@ -91,6 +101,15 @@ func addWebService(c *restful.Container) error { DataFormat("limit=%d,page=%d"). DefaultValue("limit=10,page=1"))) + webservice.Route(webservice.POST("/nodes/{node}/drainage"). + To(operations.DrainNode). + Metadata(restfulspec.KeyOpenAPITags, tags). + Doc("Drain node"). + Param(webservice.PathParameter("node", "node name")). + Returns(http.StatusOK, ok, errors.Error{})) + + c.Add(webservice) + tags = []string{"Applications"} webservice.Route(webservice.GET("/applications"). @@ -124,13 +143,13 @@ func addWebService(c *restful.Container) error { DataFormat("limit=%d,page=%d"). DefaultValue("limit=10,page=1"))) - webservice.Route(webservice.GET("/namespaces/{namespace}/applications/{cluster_id}"). + webservice.Route(webservice.GET("/namespaces/{namespace}/applications/{application}"). To(resources.DescribeApplication). Returns(http.StatusOK, ok, applications.Application{}). Metadata(restfulspec.KeyOpenAPITags, tags). Doc("Describe application"). Param(webservice.PathParameter("namespace", "namespace name")). - Param(webservice.PathParameter("cluster_id", "application id"))) + Param(webservice.PathParameter("application", "application id"))) webservice.Route(webservice.POST("/namespaces/{namespace}/applications"). To(resources.DeployApplication). @@ -140,28 +159,28 @@ func addWebService(c *restful.Container) error { Returns(http.StatusOK, ok, errors.Error{}). Param(webservice.PathParameter("namespace", "namespace name"))) - webservice.Route(webservice.DELETE("/namespaces/{namespace}/applications/{cluster_id}"). + webservice.Route(webservice.DELETE("/namespaces/{namespace}/applications/{application}"). To(resources.DeleteApplication). Doc("Delete application"). Metadata(restfulspec.KeyOpenAPITags, tags). Returns(http.StatusOK, ok, errors.Error{}). Param(webservice.PathParameter("namespace", "namespace name")). - Param(webservice.PathParameter("cluster_id", "application id"))) + Param(webservice.PathParameter("application", "application id"))) tags = []string{"User resources"} - webservice.Route(webservice.GET("/users/{username}/kubectl"). + webservice.Route(webservice.GET("/users/{user}/kubectl"). To(resources.GetKubectl). Doc("get user's kubectl pod"). - Param(webservice.PathParameter("username", "username")). + Param(webservice.PathParameter("user", "username")). Metadata(restfulspec.KeyOpenAPITags, tags). Returns(http.StatusOK, ok, models.PodInfo{})) - webservice.Route(webservice.GET("/users/{username}/kubeconfig"). + webservice.Route(webservice.GET("/users/{user}/kubeconfig"). Produces("text/plain"). To(resources.GetKubeconfig). Doc("get users' kubeconfig"). - Param(webservice.PathParameter("username", "username")). + Param(webservice.PathParameter("user", "username")). Returns(http.StatusOK, ok, ""). Metadata(restfulspec.KeyOpenAPITags, tags)) @@ -178,7 +197,7 @@ func addWebService(c *restful.Container) error { Doc(""). Param(webservice.PathParameter("component", "component name")). Returns(http.StatusOK, ok, models.Component{})) - webservice.Route(webservice.GET("/health"). + webservice.Route(webservice.GET("/componenthealth"). To(components.GetSystemHealthStatus). Metadata(restfulspec.KeyOpenAPITags, tags). Doc(""). @@ -202,7 +221,7 @@ func addWebService(c *restful.Container) error { tags = []string{"Registries"} - webservice.Route(webservice.POST("registries/verify"). + webservice.Route(webservice.POST("registry/verify"). To(registries.RegistryVerify). Metadata(restfulspec.KeyOpenAPITags, tags). Doc("docker registry verify"). @@ -279,17 +298,17 @@ func addWebService(c *restful.Container) error { tags = []string{"WorkloadStatus"} - webservice.Route(webservice.GET("/workloadstatuses"). + webservice.Route(webservice.GET("/abnormalworkloads"). Doc("get abnormal workloads' count of whole cluster"). Metadata(restfulspec.KeyOpenAPITags, tags). Returns(http.StatusOK, ok, status.WorkLoadStatus{}). - To(workloadstatuses.GetClusterResourceStatus)) - webservice.Route(webservice.GET("/namespaces/{namespace}/workloadstatuses"). + To(workloadstatuses.GetClusterAbnormalWorkloads)) + webservice.Route(webservice.GET("/namespaces/{namespace}/abnormalworkloads"). Doc("get abnormal workloads' count of specified namespace"). Param(webservice.PathParameter("namespace", "the name of namespace")). Metadata(restfulspec.KeyOpenAPITags, tags). Returns(http.StatusOK, ok, status.WorkLoadStatus{}). - To(workloadstatuses.GetNamespacesResourceStatus)) + To(workloadstatuses.GetNamespacedAbnormalWorkloads)) c.Add(webservice) diff --git a/pkg/apis/tenant/v1alpha2/register.go b/pkg/apis/tenant/v1alpha2/register.go index 51b4f3ed1..eedcdc32e 100644 --- a/pkg/apis/tenant/v1alpha2/register.go +++ b/pkg/apis/tenant/v1alpha2/register.go @@ -87,10 +87,10 @@ func addWebService(c *restful.Container) error { Doc("List the namespaces for the current user"). Returns(http.StatusOK, ok, []v1.Namespace{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/workspaces/{workspace}/members/{username}/namespaces"). + ws.Route(ws.GET("/workspaces/{workspace}/members/{member}/namespaces"). To(tenant.ListNamespacesByUsername). Param(ws.PathParameter("workspace", "workspace name")). - Param(ws.PathParameter("username", "workspace member's username")). + Param(ws.PathParameter("member", "workspace member's username")). Doc("List the namespaces for the workspace member"). Returns(http.StatusOK, ok, []v1.Namespace{}). Metadata(restfulspec.KeyOpenAPITags, tags)) @@ -120,10 +120,10 @@ func addWebService(c *restful.Container) error { DataFormat("key=%s,key~%s")). Doc("List devops projects for the current user"). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/workspaces/{workspace}/members/{username}/devops"). + ws.Route(ws.GET("/workspaces/{workspace}/members/{member}/devops"). To(tenant.ListDevopsProjectsByUsername). Param(ws.PathParameter("workspace", "workspace name")). - Param(ws.PathParameter("username", "workspace member's username")). + Param(ws.PathParameter("member", "workspace member's username")). Param(ws.QueryParameter(params.PagingParam, "page"). Required(false). DataFormat("limit=%d,page=%d"). @@ -141,14 +141,14 @@ func addWebService(c *restful.Container) error { Reads(devops.DevOpsProject{}). Returns(http.StatusOK, RespOK, devops.DevOpsProject{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.DELETE("/workspaces/{workspace}/devops/{id}"). + ws.Route(ws.DELETE("/workspaces/{workspace}/devops/{devops}"). To(tenant.DeleteDevopsProject). Param(ws.PathParameter("workspace", "workspace name")). - Param(ws.PathParameter("id", "devops project id")). + Param(ws.PathParameter("devops", "devops project id")). Doc("Delete devops project"). Returns(http.StatusOK, RespOK, devops.DevOpsProject{}). Metadata(restfulspec.KeyOpenAPITags, tags)) - ws.Route(ws.GET("/logging"). + ws.Route(ws.GET("/logs"). To(tenant.LogQuery). Doc("Query cluster-level logs in a multi-tenants environment"). Param(ws.QueryParameter("operation", "Query operation type. One of query, statistics, histogram.").DataType("string").Required(true)). diff --git a/pkg/apiserver/iam/am.go b/pkg/apiserver/iam/am.go index 51aa7b4b6..21699c72c 100644 --- a/pkg/apiserver/iam/am.go +++ b/pkg/apiserver/iam/am.go @@ -116,7 +116,7 @@ func ListNamespaceUsers(req *restful.Request, resp *restful.Response) { func ListUserRoles(req *restful.Request, resp *restful.Response) { - username := req.PathParameter("username") + username := req.PathParameter("user") roles, err := iam.GetUserRoles("", username) diff --git a/pkg/apiserver/iam/groups.go b/pkg/apiserver/iam/groups.go index cd0cce07b..9b978ce6c 100644 --- a/pkg/apiserver/iam/groups.go +++ b/pkg/apiserver/iam/groups.go @@ -61,7 +61,7 @@ func CreateGroup(req *restful.Request, resp *restful.Response) { } func DeleteGroup(req *restful.Request, resp *restful.Response) { - path := req.PathParameter("path") + path := req.PathParameter("group") if path == "" { resp.WriteHeaderAndEntity(http.StatusBadRequest, errors.Wrap(fmt.Errorf("group path must not be null"))) @@ -84,7 +84,7 @@ func DeleteGroup(req *restful.Request, resp *restful.Response) { } func UpdateGroup(req *restful.Request, resp *restful.Response) { - groupPathInPath := req.PathParameter("path") + groupPathInPath := req.PathParameter("group") var group models.Group @@ -108,7 +108,7 @@ func UpdateGroup(req *restful.Request, resp *restful.Response) { func DescribeGroup(req *restful.Request, resp *restful.Response) { - path := req.PathParameter("path") + path := req.PathParameter("group") group, err := iam.DescribeGroup(path) @@ -127,7 +127,7 @@ func DescribeGroup(req *restful.Request, resp *restful.Response) { func ListGroupUsers(req *restful.Request, resp *restful.Response) { - path := req.PathParameter("path") + path := req.PathParameter("group") group, err := iam.DescribeGroup(path) diff --git a/pkg/apiserver/iam/im.go b/pkg/apiserver/iam/im.go index 2a2ef4007..aa39cc02f 100644 --- a/pkg/apiserver/iam/im.go +++ b/pkg/apiserver/iam/im.go @@ -77,7 +77,7 @@ func CreateUser(req *restful.Request, resp *restful.Response) { } func DeleteUser(req *restful.Request, resp *restful.Response) { - username := req.PathParameter("username") + username := req.PathParameter("user") operator := req.HeaderParameter(constants.UserNameHeader) @@ -98,7 +98,7 @@ func DeleteUser(req *restful.Request, resp *restful.Response) { func UpdateUser(req *restful.Request, resp *restful.Response) { - usernameInPath := req.PathParameter("username") + usernameInPath := req.PathParameter("user") usernameInHeader := req.HeaderParameter(constants.UserNameHeader) var user models.User @@ -161,8 +161,8 @@ func isUserManager(username string) (bool, error) { return false, nil } -func UserLoginLog(req *restful.Request, resp *restful.Response) { - username := req.PathParameter("username") +func UserLoginLogs(req *restful.Request, resp *restful.Response) { + username := req.PathParameter("user") logs, err := iam.LoginLog(username) if err != nil { @@ -187,7 +187,7 @@ func UserLoginLog(req *restful.Request, resp *restful.Response) { func DescribeUser(req *restful.Request, resp *restful.Response) { - username := req.PathParameter("username") + username := req.PathParameter("user") user, err := iam.DescribeUser(username) diff --git a/pkg/apiserver/iam/workspaces.go b/pkg/apiserver/iam/workspaces.go index b850b4dcb..be0f46194 100644 --- a/pkg/apiserver/iam/workspaces.go +++ b/pkg/apiserver/iam/workspaces.go @@ -77,7 +77,7 @@ func DescribeWorkspaceRole(req *restful.Request, resp *restful.Response) { func DescribeWorkspaceUser(req *restful.Request, resp *restful.Response) { workspace := req.PathParameter("workspace") - username := req.PathParameter("username") + username := req.PathParameter("member") workspaceRole, err := iam.GetUserWorkspaceRole(workspace, username) @@ -132,7 +132,7 @@ func InviteUser(req *restful.Request, resp *restful.Response) { func RemoveUser(req *restful.Request, resp *restful.Response) { workspace := req.PathParameter("workspace") - username := req.PathParameter("username") + username := req.PathParameter("member") err := workspaces.RemoveUser(workspace, username) if err != nil { diff --git a/pkg/apiserver/resources/application.go b/pkg/apiserver/resources/application.go index ea705c4b0..77b10c2f7 100644 --- a/pkg/apiserver/resources/application.go +++ b/pkg/apiserver/resources/application.go @@ -117,7 +117,7 @@ func ListNamespacedApplication(req *restful.Request, resp *restful.Response) { } func DescribeApplication(req *restful.Request, resp *restful.Response) { - clusterId := req.PathParameter("cluster_id") + clusterId := req.PathParameter("application") namespaceName := req.PathParameter("namespace") app, err := applications.GetApp(clusterId) if err != nil { @@ -166,7 +166,7 @@ func DeployApplication(req *restful.Request, resp *restful.Response) { } func DeleteApplication(req *restful.Request, resp *restful.Response) { - clusterId := req.PathParameter("cluster_id") + clusterId := req.PathParameter("application") namespaceName := req.PathParameter("namespace") app, err := applications.GetApp(clusterId) if err != nil { diff --git a/pkg/apiserver/resources/user.go b/pkg/apiserver/resources/user.go index 03b376322..5e8bf2945 100644 --- a/pkg/apiserver/resources/user.go +++ b/pkg/apiserver/resources/user.go @@ -29,7 +29,7 @@ import ( func GetKubectl(req *restful.Request, resp *restful.Response) { - user := req.PathParameter("username") + user := req.PathParameter("user") kubectlPod, err := kubectl.GetKubectlPod(user) @@ -43,7 +43,7 @@ func GetKubectl(req *restful.Request, resp *restful.Response) { func GetKubeconfig(req *restful.Request, resp *restful.Response) { - user := req.PathParameter("username") + user := req.PathParameter("user") kubectlConfig, err := kubeconfig.GetKubeConfig(user) diff --git a/pkg/apiserver/tenant/tenant.go b/pkg/apiserver/tenant/tenant.go index 99355bfdf..488c94cdd 100644 --- a/pkg/apiserver/tenant/tenant.go +++ b/pkg/apiserver/tenant/tenant.go @@ -107,7 +107,7 @@ func ListNamespacesByUsername(req *restful.Request, resp *restful.Response) { func ListNamespaces(req *restful.Request, resp *restful.Response) { workspace := req.PathParameter("workspace") - username := req.PathParameter("username") + username := req.PathParameter("member") // /workspaces/{workspace}/members/{username}/namespaces if username == "" { // /workspaces/{workspace}/namespaces @@ -218,7 +218,7 @@ func ListDevopsProjectsByUsername(req *restful.Request, resp *restful.Response) func ListDevopsProjects(req *restful.Request, resp *restful.Response) { workspace := req.PathParameter("workspace") - username := req.PathParameter(constants.UserNameHeader) + username := req.PathParameter("member") if username == "" { username = req.HeaderParameter(constants.UserNameHeader) } @@ -245,7 +245,7 @@ func ListDevopsProjects(req *restful.Request, resp *restful.Response) { } func DeleteDevopsProject(req *restful.Request, resp *restful.Response) { - projectId := req.PathParameter("id") + projectId := req.PathParameter("devops") workspaceName := req.PathParameter("workspace") username := req.HeaderParameter(constants.UserNameHeader) diff --git a/pkg/apiserver/workloadstatuses/workloadstatuses.go b/pkg/apiserver/workloadstatuses/workloadstatuses.go index 934441283..75e8f8fe4 100644 --- a/pkg/apiserver/workloadstatuses/workloadstatuses.go +++ b/pkg/apiserver/workloadstatuses/workloadstatuses.go @@ -26,7 +26,7 @@ import ( "kubesphere.io/kubesphere/pkg/models/status" ) -func GetClusterResourceStatus(req *restful.Request, resp *restful.Response) { +func GetClusterAbnormalWorkloads(req *restful.Request, resp *restful.Response) { res, err := status.GetClusterResourceStatus() if err != nil { resp.WriteHeaderAndEntity(http.StatusInternalServerError, errors.Wrap(err)) @@ -35,7 +35,7 @@ func GetClusterResourceStatus(req *restful.Request, resp *restful.Response) { resp.WriteAsJson(res) } -func GetNamespacesResourceStatus(req *restful.Request, resp *restful.Response) { +func GetNamespacedAbnormalWorkloads(req *restful.Request, resp *restful.Response) { res, err := status.GetNamespacesResourceStatus(req.PathParameter("namespace")) if err != nil { resp.WriteHeaderAndEntity(http.StatusInternalServerError, errors.Wrap(err)) diff --git a/pkg/models/applications/applications.go b/pkg/models/applications/applications.go index 78b792f83..80fb63528 100644 --- a/pkg/models/applications/applications.go +++ b/pkg/models/applications/applications.go @@ -45,8 +45,8 @@ type Application struct { Version string `json:"version" description:"application version"` VersionId string `json:"version_id" description:"application version id"` Status string `json:"status" description:"application status"` - UpdateTime time.Time `json:"updateTime" description:"update time"` - CreateTime time.Time `json:"createTime" description:"create name"` + UpdateTime time.Time `json:"updateTime" description:"the last time this application was updated"` + CreateTime time.Time `json:"createTime" description:"application creation time"` App string `json:"app" description:"application template name"` AppId string `json:"app_id" description:"application template id"` Description string `json:"description,omitempty" description:"application description"` diff --git a/pkg/models/kubeconfig/kubeconfig.go b/pkg/models/kubeconfig/kubeconfig.go index cef159e23..2c052a501 100644 --- a/pkg/models/kubeconfig/kubeconfig.go +++ b/pkg/models/kubeconfig/kubeconfig.go @@ -217,7 +217,7 @@ func createKubeConfig(username string) (string, error) { return "", err } base64ServerCa := base64.StdEncoding.EncodeToString(serverCa) - tmpClusterInfo := clusterInfo{CertificateAuthorityData: base64ServerCa, Server: k8s.KubeConfig.Host} + tmpClusterInfo := clusterInfo{CertificateAuthorityData: base64ServerCa, Server: k8s.MasterURL} tmpCluster := cluster{Cluster: tmpClusterInfo, Name: clusterName} tmpKubeConfig.Clusters = append(tmpKubeConfig.Clusters, tmpCluster) diff --git a/pkg/simple/client/k8s/k8sclient.go b/pkg/simple/client/k8s/k8sclient.go index 62f8a56da..399233707 100644 --- a/pkg/simple/client/k8s/k8sclient.go +++ b/pkg/simple/client/k8s/k8sclient.go @@ -34,12 +34,12 @@ var ( k8sClient *kubernetes.Clientset k8sClientOnce sync.Once KubeConfig *rest.Config - masterURL string + MasterURL string ) func init() { flag.StringVar(&kubeConfigFile, "kubeconfig", "", "path to kubeconfig file") - flag.StringVar(&masterURL, "master-url", "", "kube-apiserver url, only needed when out of cluster") + flag.StringVar(&MasterURL, "master-url", "", "kube-apiserver url, only needed when out of cluster") } func Client() *kubernetes.Clientset { @@ -63,7 +63,7 @@ func Client() *kubernetes.Clientset { func Config() (kubeConfig *rest.Config, err error) { if _, err = os.Stat(kubeConfigFile); err == nil { - kubeConfig, err = clientcmd.BuildConfigFromFlags(masterURL, kubeConfigFile) + kubeConfig, err = clientcmd.BuildConfigFromFlags(MasterURL, kubeConfigFile) } else { kubeConfig, err = rest.InClusterConfig() }