diff --git a/internal-packages/database/prisma/migrations/20250616083614_bulk_action_v2/migration.sql b/internal-packages/database/prisma/migrations/20250616083614_bulk_action_v2/migration.sql new file mode 100644 index 000000000..46621bc65 --- /dev/null +++ b/internal-packages/database/prisma/migrations/20250616083614_bulk_action_v2/migration.sql @@ -0,0 +1,39 @@ +-- AlterEnum +ALTER TYPE "BulkActionType" ADD VALUE 'CANCEL_THEN_REPLAY'; + +-- AlterTable +ALTER TABLE "BulkActionGroup" +ADD COLUMN IF NOT EXISTS "cursor" JSONB, +ADD COLUMN IF NOT EXISTS "environmentId" TEXT, +ADD COLUMN IF NOT EXISTS "params" JSONB, +ADD COLUMN IF NOT EXISTS "processedCount" INTEGER NOT NULL DEFAULT 0, +ADD COLUMN IF NOT EXISTS "queryName" TEXT, +ADD COLUMN IF NOT EXISTS "reason" TEXT, +ADD COLUMN IF NOT EXISTS "totalCount" INTEGER NOT NULL DEFAULT 0, +ADD COLUMN IF NOT EXISTS "userId" TEXT; + +-- Add foreign key constraints if they don't exist +DO $$ +BEGIN + IF NOT EXISTS ( + SELECT 1 FROM pg_constraint + WHERE conname = 'BulkActionGroup_environmentId_fkey' + ) THEN + ALTER TABLE "BulkActionGroup" + ADD CONSTRAINT "BulkActionGroup_environmentId_fkey" + FOREIGN KEY ("environmentId") + REFERENCES "RuntimeEnvironment"("id") + ON DELETE CASCADE ON UPDATE CASCADE; + END IF; + + IF NOT EXISTS ( + SELECT 1 FROM pg_constraint + WHERE conname = 'BulkActionGroup_userId_fkey' + ) THEN + ALTER TABLE "BulkActionGroup" + ADD CONSTRAINT "BulkActionGroup_userId_fkey" + FOREIGN KEY ("userId") + REFERENCES "User"("id") + ON DELETE SET NULL ON UPDATE CASCADE; + END IF; +END $$; \ No newline at end of file diff --git a/internal-packages/database/prisma/migrations/20250616084546_bulk_action_item_drop_friendly_id_unique_constraint/migration.sql b/internal-packages/database/prisma/migrations/20250616084546_bulk_action_item_drop_friendly_id_unique_constraint/migration.sql new file mode 100644 index 000000000..e476fdd9d --- /dev/null +++ b/internal-packages/database/prisma/migrations/20250616084546_bulk_action_item_drop_friendly_id_unique_constraint/migration.sql @@ -0,0 +1,2 @@ +-- DropIndex +DROP INDEX CONCURRENTLY IF EXISTS "BulkActionItem_friendlyId_key"; \ No newline at end of file diff --git a/internal-packages/database/prisma/migrations/20250616084735_bulk_action_item_friendly_id_optional/migration.sql b/internal-packages/database/prisma/migrations/20250616084735_bulk_action_item_friendly_id_optional/migration.sql new file mode 100644 index 000000000..cd879e44d --- /dev/null +++ b/internal-packages/database/prisma/migrations/20250616084735_bulk_action_item_friendly_id_optional/migration.sql @@ -0,0 +1,4 @@ +-- AlterTable +ALTER TABLE "BulkActionItem" +ALTER COLUMN "friendlyId" +DROP NOT NULL; \ No newline at end of file diff --git a/internal-packages/database/prisma/schema.prisma b/internal-packages/database/prisma/schema.prisma index d2b32d7b9..bc7f1d1b9 100644 --- a/internal-packages/database/prisma/schema.prisma +++ b/internal-packages/database/prisma/schema.prisma @@ -1966,6 +1966,7 @@ enum BulkActionStatus { model BulkActionItem { id String @id @default(cuid()) + /// @deprecated not used in new BulkActions friendlyId String? group BulkActionGroup @relation(fields: [groupId], references: [id], onDelete: Cascade, onUpdate: Cascade)