-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathprisma.config.ts
More file actions
30 lines (26 loc) · 870 Bytes
/
prisma.config.ts
File metadata and controls
30 lines (26 loc) · 870 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import '@dotenvx/dotenvx/config';
import { defineConfig, env } from 'prisma/config';
const DATABASE_HOST = env('DATABASE_HOST');
const DATABASE_PORT = env('DATABASE_PORT');
const DATABASE_USER = env('DATABASE_USER');
const DATABASE_PASSWORD = env('DATABASE_PASSWORD');
const DATABASE_NAME = env('DATABASE_NAME');
const hasIndividualVars =
DATABASE_HOST &&
DATABASE_PORT &&
DATABASE_USER &&
DATABASE_PASSWORD &&
DATABASE_NAME;
const DATABASE_URL = hasIndividualVars
? `postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@${DATABASE_HOST}:${DATABASE_PORT}/${DATABASE_NAME}?schema=public`
: (env('DATABASE_URL') ??
'postgresql://postgres:postgres@localhost:5432/postgres?schema=public');
export default defineConfig({
schema: 'prisma/schema.prisma',
migrations: {
path: 'prisma/migrations',
},
datasource: {
url: DATABASE_URL,
},
});