mirror of
https://github.com/goharbor/harbor.git
synced 2024-09-12 05:58:23 +02:00
Merge remote-tracking branch 'upstream/job-service' into author
This commit is contained in:
commit
f8e4749950
@ -18,7 +18,7 @@ package api
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
"unicode"
|
||||
"strings"
|
||||
|
||||
"github.com/vmware/harbor/dao"
|
||||
"github.com/vmware/harbor/models"
|
||||
@ -294,10 +294,10 @@ func validateProjectReq(req projectReq) error {
|
||||
if isContainIllegalChar(req.ProjectName, []string{"~", "-", "$", "\\", "[", "]", "{", "}", "(", ")", "&", "^", "%", "*", "<", ">", "\"", "'", "/", "?", "@"}) {
|
||||
return fmt.Errorf("project name contains illegal characters")
|
||||
}
|
||||
for _, v := range pn {
|
||||
if !unicode.IsLower(v) {
|
||||
return fmt.Errorf("project name must be in lower case")
|
||||
}
|
||||
|
||||
if pn != strings.ToLower(pn) {
|
||||
return fmt.Errorf("project name must be in lower case")
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
@ -59,11 +59,13 @@ func listRoles(userID int, projectID int64) ([]models.Role, error) {
|
||||
roles := make([]models.Role, 0, 1)
|
||||
isSysAdmin, err := dao.IsAdminRole(userID)
|
||||
if err != nil {
|
||||
log.Errorf("failed to determine whether the user %d is system admin: %v", userID, err)
|
||||
return roles, err
|
||||
}
|
||||
if isSysAdmin {
|
||||
role, err := dao.GetRoleByID(models.PROJECTADMIN)
|
||||
if err != nil {
|
||||
log.Errorf("failed to get role %d: %v", models.PROJECTADMIN, err)
|
||||
return roles, err
|
||||
}
|
||||
roles = append(roles, *role)
|
||||
@ -72,6 +74,7 @@ func listRoles(userID int, projectID int64) ([]models.Role, error) {
|
||||
|
||||
rs, err := dao.GetUserProjectRoles(userID, projectID)
|
||||
if err != nil {
|
||||
log.Errorf("failed to get user %d 's roles for project %d: %v", userID, projectID, err)
|
||||
return roles, err
|
||||
}
|
||||
roles = append(roles, rs...)
|
||||
|
Loading…
Reference in New Issue
Block a user