30 lines
1022 B
SQL
30 lines
1022 B
SQL
CREATE TABLE "provisioned_devices" (
|
|
"id" UUID NOT NULL DEFAULT gen_random_uuid(),
|
|
"account_email" TEXT NOT NULL,
|
|
"auth_user_id" UUID,
|
|
"hostname" TEXT NOT NULL,
|
|
"tailscale_hostname" TEXT NOT NULL,
|
|
"ssh_user" TEXT,
|
|
"usage_type" TEXT NOT NULL DEFAULT 'personal',
|
|
"os" TEXT,
|
|
"arch" TEXT,
|
|
"kernel" TEXT,
|
|
"distro" TEXT,
|
|
"device" JSONB,
|
|
"installed_at" TIMESTAMPTZ(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"last_provisioned_at" TIMESTAMPTZ(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"created_at" TIMESTAMPTZ(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updated_at" TIMESTAMPTZ(3) NOT NULL,
|
|
|
|
CONSTRAINT "provisioned_devices_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
CREATE UNIQUE INDEX "provisioned_devices_account_email_tailscale_hostname_key"
|
|
ON "provisioned_devices"("account_email", "tailscale_hostname");
|
|
|
|
CREATE INDEX "provisioned_devices_account_email_idx"
|
|
ON "provisioned_devices"("account_email");
|
|
|
|
CREATE INDEX "provisioned_devices_tailscale_hostname_idx"
|
|
ON "provisioned_devices"("tailscale_hostname");
|