mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
chore: add agent-connection-watch for workspaces (#24507)
<!-- If you have used AI to produce some or all of this PR, please ensure you have read our [AI Contribution guidelines](https://coder.com/docs/about/contributing/AI_CONTRIBUTING) before submitting. --> relates to GRU-18 Adds basic implementation for Workspace Agent Connection Watch and tests. Missing are handling of logs.
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
package coderdtest
|
||||
|
||||
import (
|
||||
"github.com/google/uuid"
|
||||
|
||||
"github.com/coder/coder/v2/coderd/rbac"
|
||||
"github.com/coder/coder/v2/coderd/rbac/rolestore"
|
||||
)
|
||||
|
||||
func MemberSubject(userID, orgID uuid.UUID) rbac.Subject {
|
||||
memberRole, err := rbac.RoleByName(rbac.RoleMember())
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
orgMember, err := rolestore.TestingGetSystemRole(
|
||||
rbac.RoleOrgMember(),
|
||||
orgID,
|
||||
rbac.OrgSettings{ShareableWorkspaceOwners: rbac.ShareableWorkspaceOwnersNone},
|
||||
)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
return rbac.Subject{
|
||||
FriendlyName: "coderdtest-member",
|
||||
Email: "member@coderd.test",
|
||||
Type: rbac.SubjectTypeUser,
|
||||
ID: userID.String(),
|
||||
Roles: rbac.Roles{memberRole, orgMember},
|
||||
Scope: rbac.ScopeAll,
|
||||
}.WithCachedASTValue()
|
||||
}
|
||||
Reference in New Issue
Block a user