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 @@
|
||||
-- Native vSphere inventory + sessions (independent of Proxmox resources).
|
||||
|
||||
CREATE TABLE vsphere_sessions (
|
||||
id text PRIMARY KEY,
|
||||
username text NOT NULL,
|
||||
created_at timestamptz NOT NULL DEFAULT now(),
|
||||
expires_at timestamptz NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX vsphere_sessions_expires_idx ON vsphere_sessions (expires_at);
|
||||
|
||||
CREATE TABLE vsphere_objects (
|
||||
moid text PRIMARY KEY,
|
||||
type text NOT NULL,
|
||||
name text NOT NULL,
|
||||
parent_moid text REFERENCES vsphere_objects (moid) ON DELETE SET NULL,
|
||||
props jsonb NOT NULL DEFAULT '{}'::jsonb,
|
||||
created_at timestamptz NOT NULL DEFAULT now(),
|
||||
updated_at timestamptz NOT NULL DEFAULT now()
|
||||
);
|
||||
|
||||
CREATE INDEX vsphere_objects_type_idx ON vsphere_objects (type);
|
||||
CREATE INDEX vsphere_objects_parent_idx ON vsphere_objects (parent_moid);
|
||||
CREATE INDEX vsphere_objects_name_idx ON vsphere_objects (name);
|
||||
|
||||
CREATE TABLE vsphere_credentials (
|
||||
username text PRIMARY KEY,
|
||||
password_hash text NOT NULL,
|
||||
roles text[] NOT NULL DEFAULT '{Administrator}'
|
||||
);
|
||||
Reference in New Issue
Block a user