mirror of
https://github.com/Drop-OSS/drop.git
synced 2025-11-09 20:12:10 +10:00
immutable application settings framework
This commit is contained in:
17
server/plugins/app-setup.ts
Normal file
17
server/plugins/app-setup.ts
Normal file
@ -0,0 +1,17 @@
|
||||
import {
|
||||
applicationSettings,
|
||||
} from "../internal/config/application-configuration";
|
||||
import prisma from "../internal/db/database";
|
||||
|
||||
export default defineNitroPlugin(async (nitro) => {
|
||||
const applicationSettingsCount = await prisma.applicationSettings.count({});
|
||||
if (applicationSettingsCount > 0) {
|
||||
await applicationSettings.pullConfiguration();
|
||||
} else {
|
||||
await applicationSettings.initialiseConfiguration();
|
||||
}
|
||||
|
||||
nitro.hooks.hookOnce("close", async () => {
|
||||
await applicationSettings.waitForWrite();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user