31 lines
1.2 KiB
SQL
31 lines
1.2 KiB
SQL
-- CreateEnum
|
|
CREATE TYPE "CheckpointType" AS ENUM ('DOCKER', 'KUBERNETES');
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Checkpoint" (
|
|
"id" TEXT NOT NULL,
|
|
"friendlyId" TEXT NOT NULL,
|
|
"type" "CheckpointType" NOT NULL,
|
|
"location" TEXT NOT NULL,
|
|
"reason" TEXT,
|
|
"attemptId" TEXT NOT NULL,
|
|
"projectId" TEXT NOT NULL,
|
|
"runtimeEnvironmentId" TEXT NOT NULL,
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "Checkpoint_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Checkpoint_friendlyId_key" ON "Checkpoint"("friendlyId");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Checkpoint" ADD CONSTRAINT "Checkpoint_attemptId_fkey" FOREIGN KEY ("attemptId") REFERENCES "TaskRunAttempt"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Checkpoint" ADD CONSTRAINT "Checkpoint_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES "Project"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "Checkpoint" ADD CONSTRAINT "Checkpoint_runtimeEnvironmentId_fkey" FOREIGN KEY ("runtimeEnvironmentId") REFERENCES "RuntimeEnvironment"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|