bmctools.cli.commands.common
Common command utilities shared across all commands.
wrap_command
def wrap_command(func: Callable[[argparse.Namespace], Any], args: argparse.Namespace) -> intWrap command execution with common error handling.
Args: func: Command function to execute args: Parsed arguments
Returns: Exit code (0 for success, non-zero for error)
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
func | Callable[[argparse.Namespace], Any] | — | |
args | argparse.Namespace | — |
Returns: int
read_file_lines
def read_file_lines(file_path: str) -> listRead lines from a file.
Args: file_path: Path to file
Returns: List of lines (stripped of whitespace)
Raises: FileNotFoundError: If file doesn’t exist
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
file_path | str | — |
Returns: list
parse_comma_list
def parse_comma_list(value: str) -> listParse comma-separated list.
Args: value: Comma-separated string
Returns: List of strings
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
value | str | — |
Returns: list
confirm_action
def confirm_action(prompt: str, force: bool = False) -> boolPrompt user for confirmation on destructive operations.
Args: prompt: Confirmation prompt message force: If True, skip confirmation and return True
Returns: True if confirmed, False otherwise
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
prompt | str | — | |
force | bool | False |
Returns: bool
show_progress
def show_progress(message: str, done: bool = False) -> NoneDisplay progress indicator.
Args: message: Progress message done: If True, show completion, else show in-progress
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
message | str | — | |
done | bool | False |
Returns: None
validate_file_exists
def validate_file_exists(file_path: str) -> NoneValidate that a file exists.
Args: file_path: Path to file
Raises: FileNotFoundError: If file doesn’t exist
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
file_path | str | — |
Returns: None
parse_key_value_pairs
def parse_key_value_pairs(pairs: list) -> dictParse key=value pairs from list of strings.
Args: pairs: List of “key=value” strings
Returns: Dict of key-value pairs
Raises: ValueError: If format is invalid
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
pairs | list | — |
Returns: dict