ghostguild-org/server/plugins/validate-env.js
Jennie Robinson Faber 04eb33df6e
Some checks failed
Test / vitest (push) Successful in 11m10s
Test / playwright (push) Failing after 14m51s
Test / visual (push) Failing after 11m1s
Test / Notify on failure (push) Successful in 3s
refactor(env): unify required-env validation through useRuntimeConfig
validate-env.js now reads all four required vars (MONGODB_URI, JWT_SECRET,
RESEND_API_KEY, HELCIM_API_TOKEN) from useRuntimeConfig() instead of mixing
direct process.env reads with a JWT-only special case. Mongoose and the six
Resend instantiations follow suit. Either bare or NUXT_-prefixed env names
are accepted, so Dokploy no longer needs duplicate entries.
2026-04-26 14:47:02 +01:00

17 lines
607 B
JavaScript

export default defineNitroPlugin(() => {
const config = useRuntimeConfig()
const checks = {
MONGODB_URI: config.mongodbUri,
JWT_SECRET: config.jwtSecret,
RESEND_API_KEY: config.resendApiKey,
HELCIM_API_TOKEN: config.helcimApiToken,
}
const missing = Object.entries(checks).filter(([, value]) => !value).map(([key]) => key)
if (missing.length > 0) {
console.error(`FATAL: Missing required environment variables: ${missing.join(', ')}`)
console.error('Set these (or their NUXT_-prefixed equivalents) in your .env file or environment variables.')
process.exit(1)
}
})