Source code for b2luigi.basf2_helper.utils

import os
import warnings


[docs]def get_basf2_git_hash(): """ Retrieve the version or git hash of the ``basf2`` release being used. This function determines the version of the ``basf2`` framework in use. If the environment variable ``BELLE2_RELEASE`` is set to ``"head"`` or is not defined, it attempts to import the ``basf2.version`` module to retrieve the version information. If the import fails, a warning is issued, and the version is set to ``"not_set"``. Returns: str: The basf2 release name, its version hash, or "not_set" if basf2 cannot be imported or no release is configured. Warnings: ImportWarning: Raised if the `basf2.version` module cannot be imported. """ basf2_release = os.getenv("BELLE2_RELEASE") if basf2_release in ("head", None): try: import basf2.version basf2_release = basf2.version.get_version() except ImportError as err: warnings.warn( f'No basf2 was found. Setting basf2 git hash to "not_set": \n {err}', category=ImportWarning, ) basf2_release = "not_set" return basf2_release