import { CreationAttributes } from "@sequelize/core" import { isNil } from "lodash" import logger from "@/utils/logger" import { CreateService } from "@/services/users" import { User } from "@/models" export async function seed(): Promise { const systemUserAttributes: CreationAttributes = { email: "system.user@alphane.com", auth0Subject: "NO_LOGIN_system.user@alphane.com", firstName: "System", lastName: "User", displayName: "System User", roles: [User.Roles.SYSTEM_ADMIN], } const user = await User.findOne({ where: { email: systemUserAttributes.email, }, }) if (isNil(user)) { const createdUser = await CreateService.perform(systemUserAttributes) logger.debug("System User created:", createdUser.dataValues) } else { await user.update(systemUserAttributes) logger.debug("System User updated:", user.dataValues) } }