From f831d3bbd67efaf0e45d754ea109e614b3273cfd Mon Sep 17 00:00:00 2001 From: Harry Date: Wed, 21 Jan 2026 02:58:47 +0800 Subject: [PATCH] fix(app_assets_initializer): specify output directory for unzip command to ensure proper asset extraction --- api/core/sandbox/initializer/app_assets_initializer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/core/sandbox/initializer/app_assets_initializer.py b/api/core/sandbox/initializer/app_assets_initializer.py index dec580b20d..57102d1a9c 100644 --- a/api/core/sandbox/initializer/app_assets_initializer.py +++ b/api/core/sandbox/initializer/app_assets_initializer.py @@ -30,7 +30,7 @@ class AppAssetsInitializer(SandboxInitializer): # unzip with silent error and return 1 if the zip is empty # FIXME(Mairuis): should use a more robust way to check if the zip is empty .add( - ["sh", "-c", f"unzip {APP_ASSETS_ZIP_PATH} 2>/dev/null || [ $? -eq 1 ]"], + ["sh", "-c", f"unzip {APP_ASSETS_ZIP_PATH} -d {APP_ASSETS_PATH} 2>/dev/null || [ $? -eq 1 ]"], error_message="Failed to unzip assets", ) .execute(timeout=APP_ASSETS_DOWNLOAD_TIMEOUT, raise_on_error=True) @@ -60,7 +60,7 @@ class DraftAppAssetsInitializer(SandboxInitializer): # unzip with silent error and return 1 if the zip is empty # FIXME(Mairuis): should use a more robust way to check if the zip is empty .add( - ["sh", "-c", f"unzip {APP_ASSETS_ZIP_PATH} 2>/dev/null || [ $? -eq 1 ]"], + ["sh", "-c", f"unzip {APP_ASSETS_ZIP_PATH} -d {APP_ASSETS_PATH} 2>/dev/null || [ $? -eq 1 ]"], error_message="Failed to unzip assets", ) .execute(timeout=APP_ASSETS_DOWNLOAD_TIMEOUT, raise_on_error=True)