forked from BRETT/BRETT
Initial Commit
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
import { drizzle } from 'drizzle-orm/mysql2'
|
||||
import { migrate } from 'drizzle-orm/mysql2/migrator'
|
||||
import mysql from 'mysql2/promise'
|
||||
import { seedPermissions } from '../../shared/utils/permissions'
|
||||
|
||||
export default defineNitroPlugin(async () => {
|
||||
if (!import.meta.dev) return
|
||||
const { databaseUrl } = useRuntimeConfig()
|
||||
if (!databaseUrl) {
|
||||
console.warn('[db] DATABASE_URL is not set, skipping migrations')
|
||||
return
|
||||
}
|
||||
const connection = await mysql.createConnection(databaseUrl)
|
||||
try {
|
||||
await migrate(drizzle(connection), { migrationsFolder: './server/db/migrations' })
|
||||
await seedPermissions(connection)
|
||||
console.log('[db] migrations applied')
|
||||
}
|
||||
finally {
|
||||
await connection.end()
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user