diff --git a/migrations/create.admin.ts b/migrations/create.admin.ts new file mode 100644 index 0000000000000000000000000000000000000000..cc81b6fa2d2bb4ae83aff820885661fe8dd67f2a --- /dev/null +++ b/migrations/create.admin.ts @@ -0,0 +1,25 @@ +import { connect } from "mongoose"; +import { mongoUri } from "../src/config"; +import { Role, User } from "../src/models"; +import { userDb } from "../src/db"; + +const roles = [ + ["admin", 1], + ["manager", 10], + ["staff", 100], + ["user", 1000], + ["guest", 10000], +]; + +connect(mongoUri) + .then(async (mongoose) => { + const adminRole = await Role.findOne({ name: "admin" }); + await userDb.createUser({ + email: "admin@example.com", + name: "admin", + role: adminRole?._id, + password: "asdfasdf", + }); + await mongoose.disconnect(); + }) + .catch((error) => console.log("롤 초기 생성 에러", error)); diff --git a/migrations/create.roles.ts b/migrations/create.roles.ts new file mode 100644 index 0000000000000000000000000000000000000000..824d7611fb2be149aed1ec0a6d048191b04fbb95 --- /dev/null +++ b/migrations/create.roles.ts @@ -0,0 +1,28 @@ +import { connect } from "mongoose"; +import { mongoUri } from "../src/config"; +import { Role } from "../src/models"; + +const roles = [ + ["admin", 1], + ["manager", 10], + ["staff", 100], + ["user", 1000], + ["guest", 10000], +]; + +connect(mongoUri) + .then(async (mongoose) => { + const retRoles = roles.map(async ([name, priority]) => { + const result = await Role.create({ name, priority }); + return result; + }); + try { + await Promise.all(retRoles); + console.log("roles created successfully."); + } catch (error) { + console.log("error:", error); + } finally { + await mongoose.disconnect(); + } + }) + .catch((error) => console.log("롤 초기 생성 에러", error));