hpcflow.sdk.submission.shells.base.Shell#

class hpcflow.sdk.submission.shells.base.Shell(executable=None, os_args=None)#

Bases: ABC

Class to represent a shell and templates for jobscript composition.

This class represents a combination of a shell and an OS. For example, running bash on a POSIX OS, and provides snippets that are used to compose a jobscript for that combination.

Methods

get_direct_submit_command

Get the command for submitting a non-scheduled jobscript.

get_version_info

Get shell and operating system information.

get_wait_command

prepare_JS_path

prepare_element_run_dirs

process_JS_header_args

process_app_invoc_executable

Attributes

executable

shebang_executable

property executable: List[str]#
get_direct_submit_command(js_path)#

Get the command for submitting a non-scheduled jobscript.

Return type:

List[str]

abstract get_version_info(exclude_os=False)#

Get shell and operating system information.

Parameters:

exclude_os (bool | None) –

Return type:

Dict

get_wait_command(workflow_app_alias, sub_idx, deps)#
Parameters:
  • workflow_app_alias (str) –

  • sub_idx (int) –

  • deps (Dict) –

prepare_JS_path(js_path)#
Parameters:

js_path (Path) –

Return type:

str

prepare_element_run_dirs(run_dirs)#
Parameters:

run_dirs (List[List[Path]]) –

Return type:

List[List[str]]

process_JS_header_args(header_args)#
Parameters:

header_args (Dict) –

Return type:

Dict

static process_app_invoc_executable(app_invoc_exe)#
property shebang_executable: List[str]#