idf_build_apps.manifest package

Submodules

class idf_build_apps.manifest.manifest.IfClause(stmt: str, temporary: bool = False, reason: Optional[str] = None)

Bases: object

get_value(target: str, config_name: str) Any
class idf_build_apps.manifest.manifest.SwitchClause(if_clauses: List[IfClause], contents: List[List[str]], default_clause: List[str])

Bases: object

get_value(target: str, config_name: str) Any
class idf_build_apps.manifest.manifest.FolderRule(folder: str, enable: Optional[List[Dict[str, Any]]] = None, disable: Optional[List[Dict[str, Any]]] = None, disable_test: Optional[List[Dict[str, Any]]] = None, depends_components: Optional[List[Union[str, Dict[str, Any]]]] = None, depends_filepatterns: Optional[List[Union[str, Dict[str, Any]]]] = None, manifest_filepath: Optional[str] = None)

Bases: object

DEFAULT_BUILD_TARGETS = []
property sha: str

SHA of the FolderRule instance

Returns:

SHA value

property by_manifest_file: Optional[str]
enable_build_targets(default_sdkconfig_target: Optional[str] = None, config_name: Optional[str] = None) List[str]
enable_test_targets(default_sdkconfig_target: Optional[str] = None, config_name: Optional[str] = None) List[str]
class idf_build_apps.manifest.manifest.DefaultRule(folder: str)

Bases: FolderRule

class idf_build_apps.manifest.manifest.Manifest(rules: Iterable[FolderRule], *, root_path: str = '.')

Bases: object

CHECK_MANIFEST_RULES = False
classmethod from_files(paths: Iterable[Union[str, Path]], *, root_path: str = '.') Manifest

Create a Manifest instance from multiple manifest files

Parameters:
  • paths – manifest file paths

  • root_path – root path for relative paths in manifest files

Returns:

Manifest instance

classmethod from_file(path: Union[str, Path], *, root_path: str = '.') Manifest

Create a Manifest instance from a manifest file

Parameters:
  • path – path to the manifest file

  • root_path – root path for relative paths in manifest file

Returns:

Manifest instance

dump_sha_values(sha_filepath: str) None

Dump the (relative path of the folder, SHA of the FolderRule instance) pairs for all rules to the file in format: <relative_path>:<SHA>

Parameters:

sha_filepath – output file path

Returns:

None

diff_sha_with_filepath(sha_filepath: str, use_abspath: bool = False) Set[str]

Compare the SHA recorded in the file with the current Manifest instance.

Parameters:
  • sha_filepath – dumped SHA file path

  • use_abspath – whether to return the absolute path of the folders

Returns:

Set of folders that have different SHA values

most_suitable_rule(_folder: str) FolderRule
enable_build_targets(folder: str, default_sdkconfig_target: Optional[str] = None, config_name: Optional[str] = None) List[str]
enable_test_targets(folder: str, default_sdkconfig_target: Optional[str] = None, config_name: Optional[str] = None) List[str]
depends_components(folder: str, default_sdkconfig_target: Optional[str] = None, config_name: Optional[str] = None) List[str]
depends_filepatterns(folder: str, default_sdkconfig_target: Optional[str] = None, config_name: Optional[str] = None) List[str]

Module contents

Manifest file

idf_build_apps.manifest.folder_rule_attr(target, **kwargs)