Download bundle/verify_package.py from gwd200/orena-procedure-runtime: direct link, hf CLI and curl.
- Browser
- Download file 1.68 kB
-
https://huggingface.co/gwd200/orena-procedure-runtime/resolve/main/bundle/verify_package.py
- Command line
-
hf download hf://gwd200/orena-procedure-runtime/bundle/verify_package.py
-
curl -L -o verify_package.py https://huggingface.co/gwd200/orena-procedure-runtime/resolve/main/bundle/verify_package.py
1.68 kB
| """Verify the complete model, runtime, and dependency-lock package.""" | |
| from __future__ import annotations | |
| import argparse | |
| import hashlib | |
| import json | |
| from pathlib import Path | |
| from typing import Sequence | |
| from .verify_model import verify_model | |
| from .verify_runtime import verify_runtime | |
| def _file_receipt(path: Path) -> dict[str, str | int]: | |
| resolved = path.resolve(strict=True) | |
| if not resolved.is_file(): | |
| raise RuntimeError(f"package artifact must be a regular file: {resolved}") | |
| return { | |
| "path": str(resolved), | |
| "bytes": resolved.stat().st_size, | |
| "sha256": hashlib.sha256(resolved.read_bytes()).hexdigest(), | |
| } | |
| def build_parser() -> argparse.ArgumentParser: | |
| parser = argparse.ArgumentParser(description=__doc__) | |
| parser.add_argument("--model-root", type=Path, required=True) | |
| parser.add_argument("--manifest", type=Path, required=True) | |
| parser.add_argument("--requirements-direct", type=Path, required=True) | |
| parser.add_argument("--requirements-lock", type=Path, required=True) | |
| return parser | |
| def main(argv: Sequence[str] | None = None) -> int: | |
| args = build_parser().parse_args(argv) | |
| report = { | |
| "schema_version": "procedure.ep15_merged3225.package_verify.v1", | |
| "status": "PASS", | |
| "model": verify_model(args.model_root, args.manifest), | |
| "runtime": verify_runtime(), | |
| "requirements": { | |
| "direct": _file_receipt(args.requirements_direct), | |
| "lock": _file_receipt(args.requirements_lock), | |
| }, | |
| } | |
| print(json.dumps(report, ensure_ascii=False, sort_keys=True)) | |
| return 0 | |
| if __name__ == "__main__": | |
| raise SystemExit(main()) | |