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
1020 B
SQL
31 lines
1020 B
SQL
-- 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}'
|
|
);
|