pleiades.sammy.config module

Configuration management for SAMMY execution backends.

This module provides concrete configuration classes for each SAMMY backend type, inheriting from the base configuration defined in the interface module.

class pleiades.sammy.config.LocalSammyConfig(working_dir: Path, output_dir: Path, sammy_executable: Path, shell_path: Path = PosixPath('/bin/bash'), env_vars: Dict[str, str]=<factory>)[source]

Bases: BaseSammyConfig

Configuration for local SAMMY installation.

sammy_executable: Path
shell_path: Path = PosixPath('/bin/bash')
env_vars: Dict[str, str]
validate() bool[source]

Validate local SAMMY configuration.

class pleiades.sammy.config.DockerSammyConfig(working_dir: Path, output_dir: Path, image_name: str, container_working_dir: Path = PosixPath('/sammy/work'), container_data_dir: Path = PosixPath('/sammy/data'))[source]

Bases: BaseSammyConfig

Configuration for Docker-based SAMMY execution.

image_name: str
container_working_dir: Path = PosixPath('/sammy/work')
container_data_dir: Path = PosixPath('/sammy/data')
validate() bool[source]

Validate Docker SAMMY configuration.

Returns:

True if configuration is valid

Return type:

bool

Raises:

ConfigurationError – If configuration is invalid

class pleiades.sammy.config.NovaSammyConfig(working_dir: Path, output_dir: Path, url: str, api_key: str, tool_id: str = 'neutrons_imaging_sammy', timeout: int = 3600)[source]

Bases: BaseSammyConfig

Configuration for NOVA web service SAMMY execution.

Warning

NOVA backend support is currently paused. The NOVA API is under active development. See pleiades.sammy.backends.nova_ornl for details.

url: str
api_key: str
tool_id: str = 'neutrons_imaging_sammy'
timeout: int = 3600
validate() bool[source]

Validate NOVA SAMMY configuration.

Returns:

True if configuration is valid

Return type:

bool

Raises:

ConfigurationError – If configuration is invalid