diff --git a/parsl/executors/taskvine/executor.py b/parsl/executors/taskvine/executor.py index 207675147e..0cd7fac697 100644 --- a/parsl/executors/taskvine/executor.py +++ b/parsl/executors/taskvine/executor.py @@ -196,8 +196,9 @@ def __synchronize_manager_factory_comm_settings(self): if self.manager_config.port == 0 and self.manager_config.project_name is None: self.manager_config.project_name = "parsl-vine-" + str(uuid.uuid4()) - # guess the host name if the project name is not given - if not self.manager_config.project_name: + # guess the host name if the project name is not given and none has been supplied + # explicitly in the manager config. + if not self.manager_config.project_name and self.manager_config.address is None: self.manager_config.address = get_any_address() # Factory communication settings are overridden by manager communication settings. diff --git a/parsl/executors/taskvine/manager_config.py b/parsl/executors/taskvine/manager_config.py index a037717366..18e58a0b90 100644 --- a/parsl/executors/taskvine/manager_config.py +++ b/parsl/executors/taskvine/manager_config.py @@ -1,4 +1,3 @@ -import socket from dataclasses import dataclass from typing import Optional @@ -23,9 +22,9 @@ class TaskVineManagerConfig: A value of 0 means TaskVine chooses any available port. Default is VINE_DEFAULT_PORT. - address: str + address: Optional[str] Address of the local machine. - Default is socket.gethostname(). + If None, socket.gethostname() will be used to determine the address. project_name: Optional[str] If given, TaskVine will periodically report its status and performance @@ -161,7 +160,7 @@ class TaskVineManagerConfig: # Connection and communication settings port: int = VINE_DEFAULT_PORT - address: str = socket.gethostname() + address: Optional[str] = None project_name: Optional[str] = None project_password_file: Optional[str] = None