fix(scan): force-kill stale AE processes before each launch (fresh start)
Build backend images / build content-svc (push) Failing after 54s
Build backend images / build file-svc (push) Failing after 56s
Build backend images / build gateway (push) Failing after 57s
Build backend images / build identity-svc (push) Failing after 58s
Build backend images / build notification-svc (push) Failing after 1m4s
Build backend images / build render-svc (push) Failing after 2m27s
Build backend images / build studio-svc (push) Failing after 55s
Build backend images / build content-svc (push) Failing after 54s
Build backend images / build file-svc (push) Failing after 56s
Build backend images / build gateway (push) Failing after 57s
Build backend images / build identity-svc (push) Failing after 58s
Build backend images / build notification-svc (push) Failing after 1m4s
Build backend images / build render-svc (push) Failing after 2m27s
Build backend images / build studio-svc (push) Failing after 55s
PrepareFreshAE = taskkill AfterFX/aerender/AfterFXLib/dynamiclinkmanager/QT32 + 2s settle + clear crash markers, then launch. A hung/zombie AE from a prior job would otherwise block or corrupt the new run. RunScan now calls it. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -33,7 +33,7 @@ func WriteScanScript(workDir string) (string, error) {
|
||||
// afterfx -r runs the script and the script calls app.quit(); we still poll for the
|
||||
// output file because afterfx can return before the file is flushed.
|
||||
func RunScan(ctx context.Context, afterfxPath, aepPath, workDir, outPath, mode string) ([]byte, error) {
|
||||
ClearAECrashState() // avoid the "Crash Repair Options" dialog hanging a headless launch
|
||||
PrepareFreshAE() // kill any stale AE + clear crash/Safe-Mode markers → guaranteed fresh launch
|
||||
scriptPath, err := WriteScanScript(workDir)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("write scan script: %w", err)
|
||||
|
||||
Reference in New Issue
Block a user