fix(acceptance): 物化验收任务的最终媒体

仅对已认证 Acceptance Run 强制下载并持久化 URL 型结果,确保集群外压测端能验证最终视频;普通生产任务继续遵循现有文件存储策略。压测器仅对 Gateway 自有地址做双入口重写,避免向第三方媒体域名泄露验收凭据。\n\n同时修复本地集群重复使用同一快照文件时的幂等复制失败。验证:Go 全量测试、go vet、gofmt、bash -n、ShellCheck 和 git diff --check 通过。
This commit is contained in:
2026-07-31 21:25:42 +08:00
parent 29a9b8c89f
commit add99e5421
6 changed files with 136 additions and 10 deletions
+11
View File
@@ -290,6 +290,17 @@ func TestGeneratedAssetUploadPolicyFromName(t *testing.T) {
}
}
func TestAcceptanceRunForcesURLMaterializationOnlyForAcceptanceTask(t *testing.T) {
configured := generatedAssetUploadPolicy{UploadInlineMedia: true}
if got := generatedAssetUploadPolicyForAcceptanceRun(configured, ""); got.UploadURLMedia {
t.Fatal("ordinary task unexpectedly enabled URL materialization")
}
got := generatedAssetUploadPolicyForAcceptanceRun(configured, "acceptance-run-id")
if !got.UploadInlineMedia || !got.UploadURLMedia {
t.Fatalf("acceptance policy=%+v", got)
}
}
func TestFinalizeGeneratedAssetsUploadsNestedInlineBinaryUnderDefaultPolicy(t *testing.T) {
storageDir := t.TempDir()
service := &Service{cfg: config.Config{LocalGeneratedStorageDir: storageDir}}