Documentation
¶
Overview ¶
Package admin 定义控制面使用的租户、工作区、用户、角色、权限和审计领域类型。
Index ¶
Constants ¶
View Source
const ( PermissionSuperAdmin = "canSuperAdmin" PermissionWorkspaceRead = "workspace:read" PermissionWorkspaceCreate = "workspace:create" PermissionWorkspaceUpdate = "workspace:update" PermissionWorkspaceDelete = "workspace:delete" PermissionUserRead = "user:read" PermissionUserInvite = "user:invite" PermissionUserUpdate = "user:update" PermissionUserRemove = "user:remove" PermissionRoleRead = "role:read" PermissionRoleCreate = "role:create" PermissionRoleUpdate = "role:update" PermissionRoleDelete = "role:delete" PermissionWorkflowRead = "workflow:read" PermissionWorkflowCreate = "workflow:create" PermissionWorkflowUpdate = "workflow:update" PermissionWorkflowPublish = "workflow:publish" PermissionWorkflowDisable = "workflow:disable" PermissionWorkflowExecute = "workflow:execute" PermissionNodeRead = "node:read" PermissionNodeManage = "node:manage" PermissionTraceRead = "trace:read" PermissionAuditRead = "audit:read" PermissionApprovalRead = "approval:read" PermissionApprovalSubmit = "approval:submit" PermissionApprovalJudge = "approval:judge" PermissionPermissionRead = "permission:read" PermissionPermissionCreate = "permission:create" PermissionPermissionUpdate = "permission:update" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ApprovalObjectType ¶
type ApprovalObjectType string
ApprovalObjectType 表示审批单关联的对象类型。
const ( ApprovalObjectWorkspaceJoin ApprovalObjectType = "workspace_join" ApprovalObjectWorkflowPublish ApprovalObjectType = "workflow_publish" ApprovalObjectWorkflowDisable ApprovalObjectType = "workflow_disable" ApprovalObjectWorkflowRollback ApprovalObjectType = "workflow_rollback" )
type ApprovalRequest ¶
type ApprovalRequest struct {
ID string `json:"id"`
Workspace string `json:"workspace"`
ObjectType ApprovalObjectType `json:"objectType"`
ObjectID string `json:"objectId"`
Title string `json:"title"`
Reason string `json:"reason"`
Attrs map[string]interface{} `json:"attrs"`
RequesterID string `json:"requesterId"`
Requester string `json:"requester"`
ApproverIDs []string `json:"approverIds"`
ReviewerID string `json:"reviewerId"`
Reviewer string `json:"reviewer"`
Status ApprovalStatus `json:"status"`
Comment string `json:"comment"`
DecidedAt *time.Time `json:"decidedAt,omitempty"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}
ApprovalRequest 表示一张待处理或已完成的审批单。
type ApprovalStatus ¶
type ApprovalStatus string
ApprovalStatus 表示审批单生命周期状态。
const ( ApprovalStatusPending ApprovalStatus = "pending" ApprovalStatusApproved ApprovalStatus = "approved" ApprovalStatusRejected ApprovalStatus = "rejected" ApprovalStatusCancelled ApprovalStatus = "cancelled" )
type Permission ¶
type Permission struct {
ID string `json:"id"`
Workspace string `json:"workspace"`
Name string `json:"name"`
Description string `json:"description"`
}
Permission 表示一个可授权的操作点。
func DefaultPermissions ¶
func DefaultPermissions() []*Permission
DefaultPermissions 返回系统初始化时应创建的默认权限集合。
type Role ¶
type Role struct {
ID string `json:"id"`
Workspace string `json:"workspace"`
Name string `json:"name"`
Description string `json:"description"`
Permissions []*Permission `json:"permissions"`
}
Role 表示工作空间内的一组权限。
type User ¶
type User struct {
ID string `json:"id"`
Username string `json:"username"`
PasswordHash string `json:"-"`
IsSuperAdmin bool `json:"isSuperAdmin"`
Disabled bool `json:"disabled"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}
User 表示控制面用户账号。
func (*User) CheckPassword ¶
CheckPassword 校验明文密码是否匹配用户密码哈希。
func (*User) SetPassword ¶
SetPassword 计算并保存用户密码哈希。
type WorkflowProgress ¶
type WorkflowProgress struct {
Workspace string `json:"workspace"`
WorkflowID string `json:"workflowId"`
Version string `json:"version"`
CurrentEnv string `json:"currentEnv"`
PendingEnv string `json:"pendingEnv"`
ApprovalStatus ApprovalStatus `json:"approvalStatus"`
UpdatedBy string `json:"updatedBy"`
UpdatedAt time.Time `json:"updatedAt"`
}
WorkflowProgress 记录一个 workflow 版本在环境流水线中的推进位置和待发布目标授权。 workflow 定义本身统一保存在 workflow_versions 表;这里不重复保存 workflow JSON。
type Workspace ¶
type Workspace struct {
ID string `json:"id"`
Name string `json:"name"`
Tag string `json:"tag"`
Description string `json:"description"`
OwnerUserID string `json:"ownerUserId"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}
Workspace 表示控制面的一个工作空间。
type WorkspaceEnvironment ¶
type WorkspaceEnvironment struct {
ID uint `json:"id"`
Workspace string `json:"workspace"`
Env string `json:"env"`
Name string `json:"name"`
Description string `json:"description"`
Order int `json:"order"`
Enabled bool `json:"enabled"`
ApprovalRequired bool `json:"approvalRequired"`
ApproverIDs []string `json:"approverIds"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}
WorkspaceEnvironment 表示工作空间内可发布 workflow 的一个运行环境。 Order 决定发布推进顺序;ApprovalRequired 表示推进到该环境前必须先通过审批。
type WorkspaceMember ¶
type WorkspaceMember struct {
Workspace string `json:"workspace"`
UserID string `json:"userId"`
Roles []*Role `json:"roles"`
}
WorkspaceMember 表示用户在工作空间内的成员关系和角色。
Click to show internal directories.
Click to hide internal directories.