fix&refactor: improve error handling in download process and enhance start_emulator method signature

This commit is contained in:
adlsdztony
2025-06-06 09:08:14 +00:00
parent 8b6ff51ebb
commit 71e9a1ead8
3 changed files with 4 additions and 2 deletions

View File

@@ -121,7 +121,7 @@ class SetupController:
logger.error(
f"Failed to download {url} caused by {e}. Retrying... ({max_retries - i - 1} attempts left)")
if not downloaded:
raise requests.RequestException(f"Failed to download {url}. No retries left. Error: {e}")
raise requests.RequestException(f"Failed to download {url}. No retries left.")
form = MultipartEncoder({
"file_path": path,

View File

@@ -113,7 +113,7 @@ echo "$(date): Configured proxy {self.current_proxy.host}:{self.current_proxy.po
else:
return f"{proxy.protocol}://{proxy.host}:{proxy.port}"
def start_emulator(self, path_to_vm: str, headless: bool):
def start_emulator(self, path_to_vm: str, headless: bool, *args, **kwargs):
logger.info("Starting AWS VM with proxy configuration...")
ec2_client = boto3.client('ec2', region_name=self.region)

View File

@@ -237,7 +237,9 @@ def run_env_tasks(env_idx: int, env_tasks: dict, args: argparse.Namespace, share
shared_scores,
)
except Exception as e:
import traceback
logger.error(f"Exception in Env{env_idx+1} {domain}/{example_id}: {e}")
logger.error(traceback.format_exc())
try:
env.controller.end_recording(
os.path.join(example_result_dir, "recording.mp4")