snowshu.core.utils¶
-
snowshu.core.utils.case_insensitive_dict_value(dictionary, caseless_key) → Any¶ finds a key in a dict without case sensitivity, returns value.
Searches for the FIRST match (insensitive dict keys can have multiple matches) and returns that value.
- Parameters
dictionary (-) – The dictionary to traverse.
caseless_key (-) – The key case-insensitive search the dictionary for.
- Returns
the value of insensitive key. Raises KeyError if not found.
-
snowshu.core.utils.correct_case(val: str, upper: bool = True)¶ Returns the case corrected value based on general sql identifier rules
If the value is entirely one case, made up of only word characters and doesn’t begin with a number, we can conform the case
- Parameters
val (-) – string that is the value to correct case for
upper (-) – flag to determine the case to conform to. Defaults to True (uppercase)
- Returns
the case corrected value
-
snowshu.core.utils.fetch_adapter()¶ Locates and returns the specified adapter.
- Parameters
name – The name of the adapter to look up.
section – One of (‘source’,’target’,’storage’).
- Returns
The adapter if found, raises
AdapterNotFound.
-
snowshu.core.utils.generate_unique_uuid_name(name: str) → str¶ Generates a unique name based on name and randomly generated uuid.
-
snowshu.core.utils.get_config_value(parent: dict, key: str, envar: Optional[str] = None, parent_name: Optional[str] = None) → Any¶
-
snowshu.core.utils.get_multiarch_list()¶ Finds an opposite arch to the one passed here and returns both as a list, ordered in a way that passed arch is first
-
snowshu.core.utils.key_for_value(dictionary, value)¶ finds the key for a given value in a dict.
-
snowshu.core.utils.load_from_file_or_path(loadable: Union[pathlib.Path, str, TextIO]) → dict¶
-
snowshu.core.utils.remove_dangling_replica_containers() → None¶ Cleans up existing containers in situation of a failed build