@oberoncms/plugin-pgsql
Version:
A PostgreSQL database plugin for OberonCMS
32 lines (31 loc) • 936 B
JavaScript
import "server-cli-only";
import { USE_DEVELOPMENT_DATABASE_PLUGIN } from "@oberoncms/core";
import { migrate } from "drizzle-orm/node-postgres/migrator";
import { name, version } from "./package.json.js";
import { getDatabaseAdapter } from "./db/database-adapter.js";
import { getAuthAdapter } from "./db/auth-adapter.js";
import { db } from "./db/client.js";
const plugin = (adapter) => ({
name,
version,
disabled: USE_DEVELOPMENT_DATABASE_PLUGIN,
adapter: {
...getDatabaseAdapter(db),
...getAuthAdapter(db),
init: async () => {
await adapter.prebuild();
console.log(`Migrating database`);
if (!db) {
console.log("Prepare: No Database Connection Configured");
return;
}
await migrate(db, {
migrationsFolder: "node_modules/@oberoncms/plugin-pgsql/src/db/migrations"
});
console.log(`Database migration complete`);
}
}
});
export {
plugin
};