Files
calebburke.dev/api/src/db/seeds/production/000.seed-system-user.ts
T
2026-06-24 23:47:55 -07:00

32 lines
904 B
TypeScript

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<void> {
const systemUserAttributes: CreationAttributes<User> = {
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)
}
}