From 0f75f3a89ecb64678fa8623fd53ebae082dd06c5 Mon Sep 17 00:00:00 2001 From: Daeki Yoon Date: Tue, 19 Jul 2022 15:21:49 +0900 Subject: [PATCH] =?UTF-8?q?db=20=EC=B4=88=EA=B8=B0=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- migrations/create.admin.ts | 25 +++++++++++++++++++++++++ migrations/create.roles.ts | 28 ++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 migrations/create.admin.ts create mode 100644 migrations/create.roles.ts diff --git a/migrations/create.admin.ts b/migrations/create.admin.ts new file mode 100644 index 0000000..cc81b6f --- /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 0000000..824d761 --- /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)); -- GitLab