26 lines
1.2 KiB
SQL
26 lines
1.2 KiB
SQL
CREATE TABLE "ProjectSource" (
|
|
"id" TEXT NOT NULL,
|
|
"projectId" TEXT NOT NULL,
|
|
"repositoryLinkId" TEXT,
|
|
"title" TEXT NOT NULL,
|
|
"kind" TEXT NOT NULL DEFAULT 'document',
|
|
"inputMode" TEXT NOT NULL DEFAULT 'git',
|
|
"path" TEXT,
|
|
"url" TEXT,
|
|
"content" TEXT NOT NULL,
|
|
"summary" TEXT NOT NULL,
|
|
"status" TEXT NOT NULL DEFAULT 'processed',
|
|
"branch" TEXT,
|
|
"contentSha" TEXT,
|
|
"commitSha" TEXT,
|
|
"lastSyncedAt" TIMESTAMP(3),
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
CONSTRAINT "ProjectSource_pkey" PRIMARY KEY ("id")
|
|
);
|
|
CREATE UNIQUE INDEX "ProjectSource_repositoryLinkId_path_key" ON "ProjectSource"("repositoryLinkId", "path");
|
|
CREATE INDEX "ProjectSource_projectId_status_idx" ON "ProjectSource"("projectId", "status");
|
|
CREATE INDEX "ProjectSource_repositoryLinkId_lastSyncedAt_idx" ON "ProjectSource"("repositoryLinkId", "lastSyncedAt");
|
|
ALTER TABLE "ProjectSource" ADD CONSTRAINT "ProjectSource_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES "Project"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
ALTER TABLE "ProjectSource" ADD CONSTRAINT "ProjectSource_repositoryLinkId_fkey" FOREIGN KEY ("repositoryLinkId") REFERENCES "GiteaRepositoryLink"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|