Initial commit: VMware vSphere API simulator scaffold.
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.
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
#!/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())
|
||||
Reference in New Issue
Block a user