kanban-dev-webapp/scripts/apply-plan-schema.ts

24 lines
833 B
TypeScript
Raw Permalink Normal View History

/** Apply only the Plan field to the shared PocketBase instance. */
import PocketBase from "pocketbase";
import { ensureProjectPlanDataField } from "./plan-schema";
async function main() {
const url = process.env.NEXT_PUBLIC_PB_URL;
const email = process.env.PB_SUPERUSER_EMAIL;
const password = process.env.PB_SUPERUSER_PASSWORD;
if (!url || !email || !password) {
throw new Error("NEXT_PUBLIC_PB_URL and PocketBase superuser credentials are required");
}
const pb = new PocketBase(url);
pb.autoCancellation(false);
await pb.collection("_superusers").authWithPassword(email, password);
const added = await ensureProjectPlanDataField(pb);
console.log(added ? "Added projects.plan_data" : "projects.plan_data already exists");
}
main().catch((error) => {
console.error(error);
process.exitCode = 1;
});