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:
2026-07-18 04:42:11 +03:00
commit f8d3cbdd59
422 changed files with 361335 additions and 0 deletions
+397
View File
@@ -0,0 +1,397 @@
{
"product": "vmware-api-simulator",
"plane": "vsphere-rest",
"major": 7,
"series": "vSphere 7.0 U3",
"version": "7.0.3",
"kind": "stub-openapi-matrix",
"notes": "Stub contract derived from app/vsphere/rest/coverage.py + PATH_FLOOR. Not a Broadcom OpenAPI dump; used for catalog browse and hot-swap gating.",
"method_count": 77,
"methods": [
{
"verb": "DELETE",
"path": "/api/cis/tagging/category/{category_id}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/cis/tagging/tag/{tag_id}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/session",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/vcenter/cluster/{cluster}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/vcenter/datacenter/{datacenter}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/vcenter/folder/{folder}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/vcenter/resource-pool/{resource_pool}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/vcenter/vm/{vm}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/api/vcenter/vm/{vm}/snapshots/{snapshot}",
"status": "implemented"
},
{
"verb": "DELETE",
"path": "/rest/com/vmware/cis/session",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/appliance/system/version",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/cis/tagging/category",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/cis/tagging/category/{category_id}",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/cis/tagging/tag",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/cis/tagging/tag/{tag_id}",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/cis/tasks",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/cis/tasks/{task}",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/session",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/cluster",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/datacenter",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/datastore",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/datastore/{datastore}",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/datastore/{datastore}/files",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/folder",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/folder/{folder}/children",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/host",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/host/{host}",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/network",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/resource-pool",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/guest/identity",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/guest/networking",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/guest/power",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/hardware",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/hardware/boot",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/hardware/cpu",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/hardware/disk",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/hardware/ethernet",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/hardware/memory",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/snapshots",
"status": "implemented"
},
{
"verb": "GET",
"path": "/api/vcenter/vm/{vm}/tools",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/appliance/system/version",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/com/vmware/cis/session",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/cluster",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/datacenter",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/datastore",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/host",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/network",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/vm",
"status": "implemented"
},
{
"verb": "GET",
"path": "/rest/vcenter/vm/{vm}",
"status": "implemented"
},
{
"verb": "PATCH",
"path": "/api/vcenter/vm/{vm}/hardware/cpu",
"status": "implemented"
},
{
"verb": "PATCH",
"path": "/api/vcenter/vm/{vm}/hardware/memory",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/cis/tagging/category",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/cis/tagging/tag",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/cis/tagging/tag-association",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/session",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/cluster",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/datacenter",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/datastore/{datastore}/files",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/folder",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/folder/{folder}",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/host/{host}/maintenance",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/resource-pool",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/clone",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/guest/power",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/hardware/disk",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/hardware/ethernet",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/power",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/relocate",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/snapshots",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/snapshots/{snapshot}",
"status": "implemented"
},
{
"verb": "POST",
"path": "/api/vcenter/vm/{vm}/tools",
"status": "implemented"
},
{
"verb": "POST",
"path": "/rest/com/vmware/cis/session",
"status": "implemented"
},
{
"verb": "POST",
"path": "/rest/vcenter/vm/{vm}/power",
"status": "implemented"
}
]
}