summaryrefslogtreecommitdiff
path: root/server/database
diff options
context:
space:
mode:
authorJoseph Ditton <jditton.atomic@gmail.com>2021-11-16 19:14:46 -0700
committerJoseph Ditton <jditton.atomic@gmail.com>2021-11-16 19:14:46 -0700
commitcba40b6aff598e821199c186c5f1795e5252bab9 (patch)
treea5e4ad3bae238c3921e10956f21f84ca352c7d6d /server/database
parente5f684001370d6f6348fd26f97bc26c765deb934 (diff)
downloadlocchat-cba40b6aff598e821199c186c5f1795e5252bab9.tar.gz
locchat-cba40b6aff598e821199c186c5f1795e5252bab9.zip
separate client and server apps
Diffstat (limited to 'server/database')
-rw-r--r--server/database/cli_config.ts22
-rw-r--r--server/database/config.ts16
-rw-r--r--server/database/migrations/1637028716848-AddUser.ts37
3 files changed, 75 insertions, 0 deletions
diff --git a/server/database/cli_config.ts b/server/database/cli_config.ts
new file mode 100644
index 0000000..ca7104a
--- /dev/null
+++ b/server/database/cli_config.ts
@@ -0,0 +1,22 @@
+import '../env';
+
+export = process.env.NODE_ENV === 'development'
+ ? {
+ type: 'postgres',
+ host: 'localhost',
+ port: 5432,
+ database: process.env.DATABASE_URL,
+ autoLoadEntities: true,
+ migrations: ['src/database/migrations/*.ts'],
+ cli: {
+ migrationsDir: 'src/database/migrations',
+ },
+ }
+ : {
+ url: process.env.DATABASE_URL,
+ ssl: { rejectUnauthorized: true },
+ migrations: ['src/database/migrations/*.ts'],
+ cli: {
+ migrationsDir: 'src/database/migrations',
+ },
+ };
diff --git a/server/database/config.ts b/server/database/config.ts
new file mode 100644
index 0000000..80f479a
--- /dev/null
+++ b/server/database/config.ts
@@ -0,0 +1,16 @@
+import { TypeOrmModuleOptions } from '@nestjs/typeorm';
+import '../env';
+
+export const config: TypeOrmModuleOptions =
+ process.env.NODE_ENV === 'development'
+ ? {
+ type: 'postgres',
+ host: 'localhost',
+ port: 5432,
+ database: process.env.DATABASE_URL,
+ autoLoadEntities: true,
+ }
+ : {
+ url: process.env.DATABASE_URL,
+ ssl: { rejectUnauthorized: true },
+ };
diff --git a/server/database/migrations/1637028716848-AddUser.ts b/server/database/migrations/1637028716848-AddUser.ts
new file mode 100644
index 0000000..6241637
--- /dev/null
+++ b/server/database/migrations/1637028716848-AddUser.ts
@@ -0,0 +1,37 @@
+import { MigrationInterface, QueryRunner, Table } from 'typeorm';
+
+export class AddUser1637028716848 implements MigrationInterface {
+ public async up(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.createTable(
+ new Table({
+ name: 'user',
+ columns: [
+ {
+ name: 'id',
+ type: 'int',
+ isPrimary: true,
+ },
+ {
+ name: 'name',
+ type: 'text',
+ isNullable: false,
+ },
+ {
+ name: 'password_hash',
+ type: 'text',
+ isNullable: false,
+ },
+ {
+ name: 'email',
+ type: 'text',
+ isNullable: false,
+ },
+ ],
+ }),
+ );
+ }
+
+ public async down(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.dropTable('user');
+ }
+}