diff --git a/desktop_env/desktop_env.py b/desktop_env/desktop_env.py index 48e6dd1..6a58fe9 100644 --- a/desktop_env/desktop_env.py +++ b/desktop_env/desktop_env.py @@ -163,7 +163,6 @@ class DesktopEnv(gym.Env): self.vlc_port = 8080 # Initialize with default (no proxy) provider - self.current_use_proxy = False self.manager, self.provider = create_vm_manager_and_provider(provider_name, region, use_proxy=False) self.os_type = os_type @@ -194,15 +193,8 @@ class DesktopEnv(gym.Env): self.require_terminal = require_terminal # Initialize emulator and controller - # Docker provider needs delayed initialization due to container lifecycle - if provider_name == "docker": - logger.info("Docker provider detected - will initialize on first reset()") - # Initialize controllers as None for Docker - they'll be set up in reset() - self.controller = None - self.setup_controller = None - else: - logger.info("Initializing...") - self._start_emulator() + logger.info("Initializing...") + self._start_emulator() # mode: human or machine self.instruction = None @@ -232,6 +224,7 @@ class DesktopEnv(gym.Env): # Get the ip from the virtual machine, and setup the controller vm_ip_ports = self.provider.get_ip_address(self.path_to_vm).split(':') self.vm_ip = vm_ip_ports[0] + # Get the ports from the virtual machine (for Docker provider only) if len(vm_ip_ports) > 1: self.server_port = int(vm_ip_ports[1]) self.chromium_port = int(vm_ip_ports[2]) @@ -271,17 +264,6 @@ class DesktopEnv(gym.Env): self.action_history.clear() for attempt in range(MAX_RETRIES): - # Check and handle proxy requirement changes BEFORE starting emulator - if task_config is not None: - # Only consider task proxy requirement if proxy is enabled at system level - task_use_proxy = task_config.get("proxy", False) and self.enable_proxy - if not self.enable_proxy and task_config.get("proxy", False): - logger.info("Task requires proxy but proxy is disabled at system level, ignoring proxy requirement.") - - if task_use_proxy != self.current_use_proxy: - # keep because get_info_from_website depend on this - self.current_use_proxy = task_use_proxy - # Only revert to snapshot if environment has been used (step/setup) # This optimization is especially important for cloud providers like AWS # where unnecessary snapshot operations are costly and time-consuming @@ -295,11 +277,6 @@ class DesktopEnv(gym.Env): self.is_environment_used = False else: logger.info("Environment is clean, skipping snapshot revert (provider: {}).".format(self.provider_name)) - - # Initialize Docker provider controllers if not already done - if self.provider_name == "docker" and self.controller is None: - logger.info("Initializing Docker provider controllers...") - self._start_emulator() if task_config is not None: if task_config.get("proxy", False) and self.enable_proxy: