diff --git a/prisma/migrations/20260801160032_init/migration.sql b/prisma/migrations/20260801160032_init/migration.sql new file mode 100644 index 0000000..71b6583 --- /dev/null +++ b/prisma/migrations/20260801160032_init/migration.sql @@ -0,0 +1,42 @@ +-- 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;