mirror of
https://github.com/yusufipk/OpenFrame.git
synced 2026-09-11 09:36:08 +00:00
- Added support for self-hosted S3 video uploads with new environment variables: OPENFRAME_ENABLE_S3_VIDEO_UPLOADS and OPENFRAME_MAX_VIDEO_UPLOAD_BYTES. - Updated .env.example and .env.docker.example to reflect new configuration options. - Enhanced Content Security Policy to include origins for S3-compatible storage. - Updated dependencies for AWS SDK to support new features. - Refactored upload logic to accommodate both Bunny and S3 upload providers. - Updated documentation to clarify the usage of direct uploads and S3 configurations. - Closes #11
42 lines
1.5 KiB
SQL
42 lines
1.5 KiB
SQL
-- CreateEnum
|
|
CREATE TYPE "UploadSessionStatus" AS ENUM ('INITIATED', 'FINALIZED', 'CANCELLED', 'EXPIRED');
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "video_upload_sessions" (
|
|
"id" TEXT NOT NULL,
|
|
"upload_jti" TEXT NOT NULL,
|
|
"userId" TEXT NOT NULL,
|
|
"projectId" TEXT NOT NULL,
|
|
"billed_user_id" TEXT NOT NULL,
|
|
"object_key" TEXT NOT NULL,
|
|
"thumbnail_object_key" TEXT NOT NULL,
|
|
"declared_size_bytes" BIGINT NOT NULL,
|
|
"content_type" TEXT NOT NULL,
|
|
"reservation_id" TEXT,
|
|
"expires_at" TIMESTAMP(3) NOT NULL,
|
|
"status" "UploadSessionStatus" NOT NULL DEFAULT 'INITIATED',
|
|
"consumed_at" TIMESTAMP(3),
|
|
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updated_at" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "video_upload_sessions_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "video_upload_sessions_upload_jti_key" ON "video_upload_sessions"("upload_jti");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "video_upload_sessions_object_key_key" ON "video_upload_sessions"("object_key");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "video_upload_sessions_projectId_status_idx" ON "video_upload_sessions"("projectId", "status");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "video_upload_sessions_userId_status_idx" ON "video_upload_sessions"("userId", "status");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "video_upload_sessions_billed_user_id_idx" ON "video_upload_sessions"("billed_user_id");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "video_upload_sessions_expires_at_idx" ON "video_upload_sessions"("expires_at");
|