43 lines
1.2 KiB
SQL
43 lines
1.2 KiB
SQL
-- CreateSchema
|
|
CREATE SCHEMA IF NOT EXISTS "public";
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Server" (
|
|
"id" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"ipAddress" TEXT NOT NULL,
|
|
"description" TEXT,
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "Server_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Service" (
|
|
"id" TEXT NOT NULL,
|
|
"serverId" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"port" INTEGER NOT NULL,
|
|
"endpoint" TEXT NOT NULL,
|
|
"method" TEXT NOT NULL DEFAULT 'POST',
|
|
"requestTemplate" JSONB,
|
|
"notes" TEXT,
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "Service_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Server_ipAddress_key" ON "Server"("ipAddress");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "Service_serverId_idx" ON "Service"("serverId");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Service_serverId_port_endpoint_key" ON "Service"("serverId", "port", "endpoint");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Service" ADD CONSTRAINT "Service_serverId_fkey" FOREIGN KEY ("serverId") REFERENCES "Server"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|