feat: add workspace build start/stop to audit log (#4744)

* adding workspace_build resource

* added migration

* fix keyword

* got rid oof diffs for workspace builds

* adding workspace name to string

* renamed migrations

* fixed lint

* pass throough AdditionalFields and fix tests

* no need to pass through each handler

* cleaned up migrations

* generated types; fixed missing cases

* logging error
This commit is contained in:
Kira Pilot
2022-10-25 15:34:48 -04:00
committed by GitHub
parent 9070fcd5e7
commit 3c5e292c5a
13 changed files with 131 additions and 32 deletions

View File

@ -14,7 +14,9 @@ CREATE TYPE app_sharing_level AS ENUM (
CREATE TYPE audit_action AS ENUM (
'create',
'write',
'delete'
'delete',
'start',
'stop'
);
CREATE TYPE build_reason AS ENUM (
@ -88,7 +90,8 @@ CREATE TYPE resource_type AS ENUM (
'workspace',
'git_ssh_key',
'api_key',
'group'
'group',
'workspace_build'
);
CREATE TYPE user_status AS ENUM (

View File

@ -0,0 +1,2 @@
-- It's not possible to drop enum values from enum types, so the UP has "IF NOT
-- EXISTS".

View File

@ -0,0 +1,4 @@
ALTER TYPE audit_action ADD VALUE IF NOT EXISTS 'start';
ALTER TYPE audit_action ADD VALUE IF NOT EXISTS 'stop';
ALTER TYPE resource_type ADD VALUE IF NOT EXISTS 'workspace_build';

View File

@ -60,6 +60,8 @@ const (
AuditActionCreate AuditAction = "create"
AuditActionWrite AuditAction = "write"
AuditActionDelete AuditAction = "delete"
AuditActionStart AuditAction = "start"
AuditActionStop AuditAction = "stop"
)
func (e *AuditAction) Scan(src interface{}) error {
@ -302,6 +304,7 @@ const (
ResourceTypeGitSshKey ResourceType = "git_ssh_key"
ResourceTypeApiKey ResourceType = "api_key"
ResourceTypeGroup ResourceType = "group"
ResourceTypeWorkspaceBuild ResourceType = "workspace_build"
)
func (e *ResourceType) Scan(src interface{}) error {