INNER CODE UNIT · Python
main
94fzb/zrlog · shell/release/generate_trust_metadata.py:102
def main() -> int:
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--artifact-dir", required=True, type=Path)
parser.add_argument("--source-commit", required=True)
parser.add_argument("--source-repository", required=True)
parser.add_argument("--workflow-url", required=True)
parser.add_argument("--build-timestamp")
args = parser.parse_args()
if not COMMIT_PATTERN.fullmatch(args.source_commit):
raise SystemExit("--source-commit must be a full lowercase commit SHA")
directory = args.artifact_dir.resolve()
if not directory.is_dir():
raise SystemExit(f"artifact directory does not exist: {directory}")
artifacts = release_artifacts(directory)
if not artifacts:
raise SystemExit(f"no versioned release artifacts found in {directory}")