hpcflow.sdk.core.environment.Environment#
- class hpcflow.sdk.core.environment.Environment(name, setup=None, specifiers=None, executables=None, _hash_value=None)#
Bases:
JSONLike
An execution environment that contains a number of executables.
- Parameters:
name (str) – The name of the environment.
setup (list[str]) – Commands to run to enter the environment.
specifiers (dict[str, str]) – Dictionary of attributes that may be used to supply addional key/value pairs to look up an environment by.
executables (list[Executable]) – List of abstract executables in the environment.
Methods
Make an instance of this class from JSON (or YAML) data.
Serialize this object as a dictionary.
Serialize this object as an object structure that can be trivially converted to JSON.
Attributes
The name of the environment.
Commands to run to enter the environment.
Dictionary of attributes that may be used to supply addional key/value pairs to look up an environment by.
List of abstract executables in the environment.
- executables#
List of abstract executables in the environment.
- classmethod from_json_like(json_like, shared_data=None)#
Make an instance of this class from JSON (or YAML) data.
- Parameters:
json_like (Union[Dict, List]) – The data to deserialise.
shared_data (Optional[Dict[str, ObjectList]]) – Shared context data.
- Return type:
The deserialised object.
- name#
The name of the environment.
- setup#
Commands to run to enter the environment.
- specifiers#
Dictionary of attributes that may be used to supply addional key/value pairs to look up an environment by.
- to_dict()#
Serialize this object as a dictionary.
- to_json_like(dct=None, shared_data=None, exclude=None, path=None)#
Serialize this object as an object structure that can be trivially converted to JSON. Note that YAML can also be produced from the result of this method; it just requires a different final serialization step.