f8d3cbdd59
Add the FastAPI app, PostgreSQL migrations, Docker/Helm packaging, API contracts, docs, client examples, and the unit/integration/compatibility test suite for local client and tooling labs without a real vCenter.
31 lines
911 B
Python
31 lines
911 B
Python
#!/usr/bin/env python3
|
|
"""Regenerate evidence/vsphere-*.json ledgers from the live coverage matrix."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import json
|
|
from pathlib import Path
|
|
|
|
from app.vsphere.contracts.compatibility import evidence_ledger
|
|
from app.vsphere.contracts.matrix import VERSIONS
|
|
|
|
ROOT = Path(__file__).resolve().parents[1] / "evidence"
|
|
|
|
|
|
def main() -> int:
|
|
ROOT.mkdir(parents=True, exist_ok=True)
|
|
for major, meta in VERSIONS.items():
|
|
payload = evidence_ledger(major)
|
|
path = ROOT / f"vsphere-{meta['version']}.json"
|
|
path.write_text(json.dumps(payload, indent=2) + "\n", encoding="utf-8")
|
|
summary = payload["summary"]
|
|
print(
|
|
f"{path} implemented={summary['implemented_methods']}/"
|
|
f"{summary['universe_methods']} coverage={summary['coverage']}"
|
|
)
|
|
return 0
|
|
|
|
|
|
if __name__ == "__main__":
|
|
raise SystemExit(main())
|