track requesters for builds releases deployments and migrations
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
2026-07-10 10:43:02 +09:00
parent dd09471267
commit 3873ce3169
17 changed files with 690 additions and 61 deletions
@@ -0,0 +1,11 @@
ALTER TABLE "launcher_build_jobs"
ADD COLUMN "requested_by_id" UUID,
ADD COLUMN "requested_by_name" TEXT,
ADD COLUMN "requested_by_email" TEXT;
CREATE INDEX IF NOT EXISTS "launcher_build_jobs_requested_by_id_idx"
ON "launcher_build_jobs"("requested_by_id");
COMMENT ON COLUMN "launcher_build_jobs"."requested_by_id" IS '빌드 작업을 요청한 관리자 ID';
COMMENT ON COLUMN "launcher_build_jobs"."requested_by_name" IS '빌드 작업을 요청한 관리자 이름';
COMMENT ON COLUMN "launcher_build_jobs"."requested_by_email" IS '빌드 작업을 요청한 관리자 이메일';
@@ -0,0 +1,41 @@
ALTER TABLE "build_jobs"
ADD COLUMN "requested_by_id" UUID,
ADD COLUMN "requested_by_name" TEXT,
ADD COLUMN "requested_by_email" TEXT;
ALTER TABLE "app_releases"
ADD COLUMN "requested_by_id" UUID,
ADD COLUMN "requested_by_name" TEXT,
ADD COLUMN "requested_by_email" TEXT;
ALTER TABLE "deployment_jobs"
ADD COLUMN "requested_by_id" UUID,
ADD COLUMN "requested_by_name" TEXT,
ADD COLUMN "requested_by_email" TEXT;
ALTER TABLE "runtime_control_jobs"
ADD COLUMN "requested_by_id" UUID,
ADD COLUMN "requested_by_name" TEXT,
ADD COLUMN "requested_by_email" TEXT;
CREATE INDEX IF NOT EXISTS "build_jobs_requested_by_id_idx"
ON "build_jobs"("requested_by_id");
CREATE INDEX IF NOT EXISTS "app_releases_requested_by_id_idx"
ON "app_releases"("requested_by_id");
CREATE INDEX IF NOT EXISTS "deployment_jobs_requested_by_id_idx"
ON "deployment_jobs"("requested_by_id");
CREATE INDEX IF NOT EXISTS "runtime_control_jobs_requested_by_id_idx"
ON "runtime_control_jobs"("requested_by_id");
COMMENT ON COLUMN "build_jobs"."requested_by_id" IS '작업을 요청한 관리자 ID';
COMMENT ON COLUMN "build_jobs"."requested_by_name" IS '작업을 요청한 관리자 이름';
COMMENT ON COLUMN "build_jobs"."requested_by_email" IS '작업을 요청한 관리자 이메일';
COMMENT ON COLUMN "app_releases"."requested_by_id" IS '작업을 요청한 관리자 ID';
COMMENT ON COLUMN "app_releases"."requested_by_name" IS '작업을 요청한 관리자 이름';
COMMENT ON COLUMN "app_releases"."requested_by_email" IS '작업을 요청한 관리자 이메일';
COMMENT ON COLUMN "deployment_jobs"."requested_by_id" IS '작업을 요청한 관리자 ID';
COMMENT ON COLUMN "deployment_jobs"."requested_by_name" IS '작업을 요청한 관리자 이름';
COMMENT ON COLUMN "deployment_jobs"."requested_by_email" IS '작업을 요청한 관리자 이메일';
COMMENT ON COLUMN "runtime_control_jobs"."requested_by_id" IS '작업을 요청한 관리자 ID';
COMMENT ON COLUMN "runtime_control_jobs"."requested_by_name" IS '작업을 요청한 관리자 이름';
COMMENT ON COLUMN "runtime_control_jobs"."requested_by_email" IS '작업을 요청한 관리자 이메일';
+15
View File
@@ -217,6 +217,9 @@ model BuildJob {
artifact String?
image String?
status JobStatus @default(PENDING)
requestedById String? @map("requested_by_id") @db.Uuid
requestedByName String? @map("requested_by_name")
requestedByEmail String? @map("requested_by_email")
logs String?
startedAt DateTime? @map("started_at") @db.Timestamptz(3)
finishedAt DateTime? @map("finished_at") @db.Timestamptz(3)
@@ -238,6 +241,9 @@ model AppRelease {
artifact String?
imageTags Json? @map("image_tags")
status JobStatus @default(PENDING)
requestedById String? @map("requested_by_id") @db.Uuid
requestedByName String? @map("requested_by_name")
requestedByEmail String? @map("requested_by_email")
logs String?
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(3)
updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz(3)
@@ -256,6 +262,9 @@ model DeploymentJob {
namespace String
status JobStatus @default(PENDING)
requestedBy String? @map("requested_by")
requestedById String? @map("requested_by_id") @db.Uuid
requestedByName String? @map("requested_by_name")
requestedByEmail String? @map("requested_by_email")
logs String?
startedAt DateTime? @map("started_at") @db.Timestamptz(3)
finishedAt DateTime? @map("finished_at") @db.Timestamptz(3)
@@ -278,6 +287,9 @@ model LauncherBuildJob {
uploadPath String @map("upload_path")
downloadUrl String @map("download_url")
status JobStatus @default(PENDING)
requestedById String? @map("requested_by_id") @db.Uuid
requestedByName String? @map("requested_by_name")
requestedByEmail String? @map("requested_by_email")
logs String?
startedAt DateTime? @map("started_at") @db.Timestamptz(3)
finishedAt DateTime? @map("finished_at") @db.Timestamptz(3)
@@ -299,6 +311,9 @@ model RuntimeControlJob {
action RuntimeAction
status JobStatus @default(PENDING)
requestedBy String? @map("requested_by")
requestedById String? @map("requested_by_id") @db.Uuid
requestedByName String? @map("requested_by_name")
requestedByEmail String? @map("requested_by_email")
request Json?
result Json?
logs String?