jobflow_remote.jobs.daemon module#

exception jobflow_remote.jobs.daemon.DaemonError[source]#

Bases: Exception

class jobflow_remote.jobs.daemon.DaemonManager(daemon_dir: str | Path, log_dir: str | Path, project: Project)[source]#

Bases: object

check_status() DaemonStatus[source]#
check_supervisord_process() bool[source]#
clean_files() None[source]#
property conf_filepath: Path#
conf_template_single = <string.Template object>#
conf_template_split = <string.Template object>#
foreground_process(name, print_function: Callable | None = None) None[source]#
foreground_processes(processes_names: list | None = None, print_function: Callable | None = None) None[source]#
classmethod from_project(project: Project)[source]#
classmethod from_project_name(project_name: str | None = None)[source]#
get_controller()[source]#
get_interface()[source]#
get_processes_info() dict[str, dict] | None[source]#
get_supervisord_pid() int | None[source]#
kill(raise_on_error: bool = False) bool[source]#
property log_filepath: Path#
property pid_filepath: Path#
shut_down(raise_on_error: bool = False) bool[source]#
property sock_filepath: Path#
start(num_procs_transfer: int = 1, num_procs_complete: int = 1, single: bool = True, log_level: str = 'info', raise_on_error: bool = False, connect_interactive: bool = False) bool[source]#
start_processes() str | None[source]#
start_supervisord(num_procs_transfer: int = 1, num_procs_complete: int = 1, single: bool = True, log_level: str = 'info', nodaemon: bool = False, connect_interactive: bool = False) str | None[source]#
stop(wait: bool = False, raise_on_error: bool = False) bool[source]#
wait_start(timeout: int = 30) None[source]#
write_config(num_procs_transfer: int = 1, num_procs_complete: int = 1, single: bool = True, log_level: str = 'info', nodaemon: bool = False, connect_interactive: bool = False) None[source]#
class jobflow_remote.jobs.daemon.DaemonStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Bases: Enum

PARTIALLY_RUNNING = 'PARTIALLY_RUNNING'#
RUNNING = 'RUNNING'#
SHUT_DOWN = 'SHUT_DOWN'#
STARTING = 'STARTING'#
STOPPED = 'STOPPED'#
STOPPING = 'STOPPING'#