Manually fix migrations and startup

This commit is contained in:
Zoe Roux 2024-11-08 23:18:38 +01:00
parent 8d01a87b6c
commit d3fc3894bc
No known key found for this signature in database
5 changed files with 17 additions and 10 deletions

View File

@ -23,7 +23,7 @@ CREATE TABLE IF NOT EXISTS "kyoo"."shows" (
"id" uuid DEFAULT gen_random_uuid() NOT NULL,
"slug" varchar(255) NOT NULL,
"kind" "kyoo"."show_kind" NOT NULL,
"genres" genres[] NOT NULL,
"genres" "kyoo"."genres"[] NOT NULL,
"rating" smallint,
"status" "kyoo"."show_status" NOT NULL,
"startAir" date,
@ -34,7 +34,7 @@ CREATE TABLE IF NOT EXISTS "kyoo"."shows" (
"nextRefresh" timestamp with time zone,
CONSTRAINT "shows_id_unique" UNIQUE("id"),
CONSTRAINT "shows_slug_unique" UNIQUE("slug"),
CONSTRAINT "ratingValid" CHECK (0 <= "shows"."rating" && "shows"."rating" <= 100)
CONSTRAINT "ratingValid" CHECK ("shows"."rating" between 0 and 100)
);
--> statement-breakpoint
ALTER TABLE "kyoo"."entries" ADD COLUMN "createdAt" timestamp with time zone DEFAULT now();--> statement-breakpoint

View File

@ -391,7 +391,7 @@
"checkConstraints": {
"ratingValid": {
"name": "ratingValid",
"value": "0 <= \"shows\".\"rating\" && \"shows\".\"rating\" <= 100"
"value": "\"shows\".\"rating\" between 0 and 100"
}
}
}

View File

@ -15,7 +15,7 @@ export const db = drizzle({
database: process.env.POSTGRES_DB ?? "kyooDB",
host: process.env.POSTGRES_SERVER ?? "postgres",
port: Number(process.env.POSTGRES_PORT) || 5432,
ssl: true,
ssl: false,
},
casing: "snake_case",
});

View File

@ -70,7 +70,7 @@ export const shows = schema.table(
(t) => ({
ratingValid: check(
"ratingValid",
sql`0 <= ${t.rating} && ${t.rating} <= 100`,
sql`${t.rating} between 0 and 100`,
),
runtimeValid: check("runtimeValid", sql`0 <= ${t.runtime}`),
}),

View File

@ -5,18 +5,25 @@ import { migrate } from "drizzle-orm/node-postgres/migrator";
import { movies } from "./controllers/movies";
import jwt from "@elysiajs/jwt";
await migrate(db, { migrationsFolder: "" });
await migrate(db, { migrationsSchema: "kyoo", migrationsFolder: "./drizzle" });
if (process.env.SEED) {
}
let secret = process.env.JWT_SECRET;
if (!secret) {
const auth = process.env.AUTH_SERVER ?? "http://auth:4568";
try {
const ret = await fetch(`${auth}/info`);
const info = await ret.json();
secret = info.publicKey;
} catch (error) {
console.error(`Can't access auth server at ${auth}:\n${error}`);
}
}
if (!secret) {
console.error("missing jwt secret or auth server. exiting");
console.error("Missing jwt secret or auth server. exiting");
process.exit(1);
}