diff --git a/packages/server/src/setup/dbAdmin/index.js b/packages/server/src/setup/dbAdmin/index.js new file mode 100644 index 00000000..9c20d664 --- /dev/null +++ b/packages/server/src/setup/dbAdmin/index.js @@ -0,0 +1,24 @@ +import { User } from "../../models" +import { createUser } from "../../lib" + +export default async () => { + // check if any user with includes admin role exists + const adminUser = await User.find({ + $or: [ + { roles: { $in: ['admin'] } }, + ], + }) + + // if no user with admin role exists, create one + if (adminUser.length === 0) { + console.log('Creating admin user...') + + await createUser({ + username: 'admin', + password: 'admin', + roles: ['admin'], + }) + + console.log('Admin user created!') + } +} \ No newline at end of file diff --git a/packages/server/src/setup/index.js b/packages/server/src/setup/index.js new file mode 100644 index 00000000..e136e2f9 --- /dev/null +++ b/packages/server/src/setup/index.js @@ -0,0 +1,6 @@ +import { default as dbAdmin } from "./dbAdmin" + +// set here the setup functions +export default [ + dbAdmin, +] \ No newline at end of file