mache.deploy.init_update.init_or_update_repo
- mache.deploy.init_update.init_or_update_repo(repo_root: str, software: str, mache_version: str | None, update: bool = False, overwrite: bool = False) None[source]
Init: Create/refresh the deploy starter kit in a target-software repo. Update: Update only a subset of deployed files for a new mache version.
- Writes:
deploy.py (repo root)
deploy/cli_spec.json
deploy/custom_cli_spec.json (init only, downstream-owned)
deploy/pins.cfg (init only)
deploy/config.yaml.j2 (init only)
deploy/spack.yaml.j2 (init only)
deploy/hooks.py (init only, example-only)
- Parameters:
repo_root (str) – Path to target repo root.
software (str) – Target software name (e.g. polaris).
mache_version (str | None) – Pinned mache version for this repo, default is the current mache version.
update (bool, optional) – If True, perform an update rather than an init.
overwrite (bool, optional) – If True, overwrite existing deploy files.