Skip to content

Commit 2521976

Browse files
committed
chore: update Audit docs to include Audit Actions
1 parent 3d58e69 commit 2521976

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

enterprise/audit/table.go

+18
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,26 @@ import (
44
"reflect"
55

66
"github.com/coder/coder/coderd/database"
7+
"github.com/coder/coder/codersdk"
78
)
89

10+
// This mapping creates a relationship between an Auditable Resource
11+
// and the Audit Actions we track for that resource.
12+
// It is important to maintain this mapping when adding a new Auditable Resource to the
13+
// AuditableResources map (below) as our documentation - generated in scripts/auditdocgen/main.go -
14+
// depends upon it.
15+
var AuditActionMap = map[string][]string{
16+
"GitSSHKey": {string(codersdk.AuditActionCreate)},
17+
"OrganizationMember": {},
18+
"Organization": {},
19+
"Template": {string(codersdk.AuditActionWrite), string(codersdk.AuditActionDelete)},
20+
"TemplateVersion": {string(codersdk.AuditActionCreate), string(codersdk.AuditActionWrite)},
21+
"User": {string(codersdk.AuditActionCreate), string(codersdk.AuditActionWrite), string(codersdk.AuditActionDelete)},
22+
"Workspace": {string(codersdk.AuditActionCreate), string(codersdk.AuditActionWrite), string(codersdk.AuditActionDelete)},
23+
"WorkspaceBuild": {string(codersdk.AuditActionStart), string(codersdk.AuditActionStop)},
24+
"AuditableGroup": {string(codersdk.AuditActionCreate), string(codersdk.AuditActionWrite), string(codersdk.AuditActionDelete)},
25+
}
26+
927
type Action string
1028

1129
const (

scripts/auditdocgen/main.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,8 @@ func updateAuditDoc(doc []byte, auditableResourcesMap AuditableResourcesMap) ([]
117117
buffer.WriteString("|--|-----------------|\n")
118118

119119
for _, resourceName := range sortedResourceNames {
120-
buffer.WriteString("|" + resourceName + "|<table><thead><tr><th>Field</th><th>Tracked</th></tr></thead><tbody>")
120+
auditActionsString := strings.Join(audit.AuditActionMap[resourceName], ", ")
121+
buffer.WriteString("|" + resourceName + "<br><i>" + auditActionsString + "|<table><thead><tr><th>Field</th><th>Tracked</th></tr></thead><tbody>")
121122

122123
// We must sort the field names to ensure sub-table ordering
123124
sortedFieldNames := sortKeys(auditableResourcesMap[resourceName])

0 commit comments

Comments
 (0)