Skip to content

Commit 74ee20f

Browse files
feat: migration 파일 생성
1 parent 99456c4 commit 74ee20f

File tree

12 files changed

+158
-104
lines changed

12 files changed

+158
-104
lines changed

packages/server/data-source.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { DataSource } from 'typeorm';
2+
import path from 'path';
3+
import * as dotenv from 'dotenv';
4+
5+
dotenv.config();
6+
console.log('Entities Path:', path.join(__dirname, '../**/**/*.entity.{js,ts}'));
7+
export const AppDataSource = new DataSource({
8+
type: process.env.DB_TYPE as 'mysql',
9+
host: process.env.DB_HOST,
10+
port: Number(process.env.DB_PORT),
11+
username: process.env.DB_USERNAME,
12+
password: process.env.DB_PASSWORD,
13+
database: process.env.DB_DATABASE,
14+
entities: [path.resolve(__dirname, '../server/src/**/*.entity.{js,ts}')],
15+
migrations: [path.resolve(__dirname, '../server/src/migrations/*.{js,ts}')],
16+
synchronize: false,
17+
});

packages/server/package.json

Lines changed: 96 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,98 @@
11
{
2-
"name": "server",
3-
"version": "0.0.1",
4-
"description": "",
5-
"author": "",
6-
"private": true,
7-
"license": "UNLICENSED",
8-
"scripts": {
9-
"build": "nest build",
10-
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
11-
"start": "nest start",
12-
"start:dev": "nest start --watch",
13-
"start:debug": "nest start --debug --watch",
14-
"start:prod": "node dist/src/main.js",
15-
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
16-
"test": "jest",
17-
"test:watch": "jest --watch",
18-
"test:cov": "jest --coverage",
19-
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
20-
"test:e2e": "jest --config ./test/jest-e2e.json"
21-
},
22-
"dependencies": {
23-
"@nestjs/axios": "^3.1.2",
24-
"@nestjs/common": "^10.0.0",
25-
"@nestjs/core": "^10.4.7",
26-
"@nestjs/jwt": "^10.2.0",
27-
"@nestjs/platform-express": "^10.0.0",
28-
"@nestjs/platform-socket.io": "^10.4.7",
29-
"@nestjs/schedule": "^4.1.1",
30-
"@nestjs/swagger": "^8.0.5",
31-
"@nestjs/typeorm": "9.0.0",
32-
"@nestjs/websockets": "^10.4.7",
33-
"@types/swagger-ui-express": "^4.1.7",
34-
"axios": "^1.7.7",
35-
"class-transformer": "^0.5.1",
36-
"class-validator": "^0.14.1",
37-
"config": "^3.3.12",
38-
"dotenv": "^16.4.5",
39-
"i": "^0.3.7",
40-
"ioredis": "^5.4.1",
41-
"js-yaml": "^4.1.0",
42-
"mysql2": "^3.11.3",
43-
"reflect-metadata": "^0.2.0",
44-
"rxjs": "^7.8.1",
45-
"tunnel-ssh": "^5.1.2",
46-
"typeorm": "0.3.7",
47-
"uuid": "^11.0.3",
48-
"ws": "^8.18.0"
49-
},
50-
"devDependencies": {
51-
"@nestjs/cli": "^10.0.0",
52-
"@nestjs/schematics": "^10.0.0",
53-
"@nestjs/testing": "^10.0.0",
54-
"@types/config": "^3",
55-
"@types/dotenv": "^8.2.3",
56-
"@types/express": "^5.0.0",
57-
"@types/jest": "^29.5.2",
58-
"@types/js-yaml": "^4",
59-
"@types/node": "^20.3.1",
60-
"@types/socket.io": "^3.0.2",
61-
"@types/supertest": "^6.0.0",
62-
"@types/ws": "^8.5.13",
63-
"@typescript-eslint/eslint-plugin": "^8.0.0",
64-
"@typescript-eslint/parser": "^8.0.0",
65-
"@yarnpkg/pnpify": "^4.1.3",
66-
"eslint": "^8.0.0",
67-
"eslint-config-prettier": "^9.0.0",
68-
"eslint-plugin-prettier": "^5.0.0",
69-
"jest": "^29.5.0",
70-
"prettier": "^3.0.0",
71-
"source-map-support": "^0.5.21",
72-
"supertest": "^7.0.0",
73-
"ts-jest": "^29.1.0",
74-
"ts-loader": "^9.4.3",
75-
"ts-node": "^10.9.1",
76-
"tsconfig-paths": "^4.2.0",
77-
"typescript": "^5.6.3"
78-
},
79-
"jest": {
80-
"moduleFileExtensions": [
81-
"js",
82-
"json",
83-
"ts"
84-
],
85-
"rootDir": "src",
86-
"testRegex": ".*\\.spec\\.ts$",
87-
"transform": {
88-
"^.+\\.(t|j)s$": "ts-jest"
89-
},
90-
"collectCoverageFrom": [
91-
"**/*.(t|j)s"
92-
],
93-
"coverageDirectory": "../coverage",
94-
"testEnvironment": "node"
95-
}
2+
"name": "server",
3+
"version": "0.0.1",
4+
"description": "",
5+
"author": "",
6+
"private": true,
7+
"license": "UNLICENSED",
8+
"scripts": {
9+
"build": "nest build",
10+
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
11+
"start": "nest start",
12+
"start:dev": "nest start --watch",
13+
"start:debug": "nest start --debug --watch",
14+
"start:prod": "node dist/src/main.js",
15+
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
16+
"test": "jest",
17+
"test:watch": "jest --watch",
18+
"test:cov": "jest --coverage",
19+
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
20+
"test:e2e": "jest --config ./test/jest-e2e.json",
21+
"typeorm": "ts-node -P ./tsconfig.typeorm.json $(yarn bin typeorm) -d ./data-source.ts"
22+
},
23+
"dependencies": {
24+
"@nestjs/axios": "^3.1.2",
25+
"@nestjs/common": "^10.0.0",
26+
"@nestjs/core": "^10.4.7",
27+
"@nestjs/jwt": "^10.2.0",
28+
"@nestjs/platform-express": "^10.0.0",
29+
"@nestjs/platform-socket.io": "^10.4.7",
30+
"@nestjs/schedule": "^4.1.1",
31+
"@nestjs/swagger": "^8.0.5",
32+
"@nestjs/typeorm": "9.0.0",
33+
"@nestjs/websockets": "^10.4.7",
34+
"@types/swagger-ui-express": "^4.1.7",
35+
"axios": "^1.7.7",
36+
"class-transformer": "^0.5.1",
37+
"class-validator": "^0.14.1",
38+
"config": "^3.3.12",
39+
"dotenv": "^16.4.5",
40+
"i": "^0.3.7",
41+
"ioredis": "^5.4.1",
42+
"js-yaml": "^4.1.0",
43+
"mysql2": "^3.11.3",
44+
"reflect-metadata": "^0.2.0",
45+
"rxjs": "^7.8.1",
46+
"tunnel-ssh": "^5.1.2",
47+
"typeorm": "^0.3.20",
48+
"uuid": "^11.0.3",
49+
"ws": "^8.18.0",
50+
"src": "workspace:*"
51+
},
52+
"devDependencies": {
53+
"@nestjs/cli": "^10.0.0",
54+
"@nestjs/schematics": "^10.0.0",
55+
"@nestjs/testing": "^10.0.0",
56+
"@types/config": "^3",
57+
"@types/dotenv": "^8.2.3",
58+
"@types/express": "^5.0.0",
59+
"@types/jest": "^29.5.2",
60+
"@types/js-yaml": "^4",
61+
"@types/node": "^20.3.1",
62+
"@types/socket.io": "^3.0.2",
63+
"@types/supertest": "^6.0.0",
64+
"@types/ws": "^8.5.13",
65+
"@typescript-eslint/eslint-plugin": "^8.0.0",
66+
"@typescript-eslint/parser": "^8.0.0",
67+
"@yarnpkg/pnpify": "^4.1.3",
68+
"eslint": "^8.0.0",
69+
"eslint-config-prettier": "^9.0.0",
70+
"eslint-plugin-prettier": "^5.0.0",
71+
"jest": "^29.5.0",
72+
"prettier": "^3.0.0",
73+
"source-map-support": "^0.5.21",
74+
"supertest": "^7.0.0",
75+
"ts-jest": "^29.1.0",
76+
"ts-loader": "^9.4.3",
77+
"ts-node": "^10.9.2",
78+
"tsconfig-paths": "^4.2.0",
79+
"typescript": "^5.6.3"
80+
},
81+
"jest": {
82+
"moduleFileExtensions": [
83+
"js",
84+
"json",
85+
"ts"
86+
],
87+
"rootDir": "src",
88+
"testRegex": ".*\\.spec\\.ts$",
89+
"transform": {
90+
"^.+\\.(t|j)s$": "ts-jest"
91+
},
92+
"collectCoverageFrom": [
93+
"**/*.(t|j)s"
94+
],
95+
"coverageDirectory": "../coverage",
96+
"testEnvironment": "node"
97+
}
9698
}

packages/server/src/account/account.entity.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { Asset } from 'src/asset/asset.entity';
2-
import { User } from 'src/auth/user.entity';
1+
import { Asset } from '@src/asset/asset.entity';
2+
import { User } from '@src/auth/user.entity';
33
import {
44
Entity,
55
PrimaryGeneratedColumn,

packages/server/src/asset/asset.entity.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Account } from 'src/account/account.entity';
1+
import { Account } from '@src/account/account.entity';
22
import {
33
Entity,
44
PrimaryGeneratedColumn,

packages/server/src/auth/user.entity.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export class User extends BaseEntity {
2222

2323
@Column()
2424
username: string;
25-
25+
2626
@OneToOne(() => Account, (account) => account.user, {
2727
cascade: true,
2828
onDelete: 'CASCADE',

packages/server/src/main.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,7 @@ import { setupSshTunnel } from './configs/ssh-tunnel';
1010
import { AllExceptionsFilter } from 'common/all-exceptions.filter';
1111

1212
config();
13-
console.log({
14-
synchronize: process.env.DB_SYNCHRONIZE === "true", // "true" 문자열인 경우만 true로 변환
15-
dropSchema: process.env.DB_DROPSCHEMA === "true",
16-
});
13+
1714
async function bootstrap() {
1815
await setupSshTunnel();
1916
const app = await NestFactory.create(AppModule);
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import { MigrationInterface, QueryRunner } from "typeorm";
2+
3+
export class ConsentRecord1731911925616 implements MigrationInterface {
4+
5+
public async up(queryRunner: QueryRunner): Promise<void> {
6+
}
7+
8+
public async down(queryRunner: QueryRunner): Promise<void> {
9+
}
10+
11+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import { MigrationInterface, QueryRunner } from "typeorm";
2+
3+
export class ConsentRecord1731911957654 implements MigrationInterface {
4+
5+
public async up(queryRunner: QueryRunner): Promise<void> {
6+
}
7+
8+
public async down(queryRunner: QueryRunner): Promise<void> {
9+
}
10+
11+
}

packages/server/src/trade-history/trade-history.entity.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { User } from 'src/auth/user.entity';
1+
import { User } from '@src/auth/user.entity';
22
import {
33
Entity,
44
PrimaryGeneratedColumn,

packages/server/src/trade/trade.entity.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { User } from 'src/auth/user.entity';
1+
import { User } from '@src/auth/user.entity';
22
import {
33
Entity,
44
PrimaryGeneratedColumn,

packages/server/tsconfig.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818
"strictBindCallApply": false,
1919
"forceConsistentCasingInFileNames": false,
2020
"noFallthroughCasesInSwitch": false,
21+
"paths": {
22+
"@src/*": ["src/*"]
23+
}
2124

2225
}
2326
}

packages/server/tsconfig.typeorm.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"extends": "./tsconfig.json", // 기존 tsconfig.json 파일을 확장
3+
"compilerOptions": {
4+
"module": "CommonJS", // TypeORM CLI는 CommonJS를 필요로 함
5+
"target": "ES2020", // 실행 환경에 맞게 설정
6+
"outDir": "./dist", // 출력 디렉토리
7+
"strict": true,
8+
"esModuleInterop": true,
9+
"skipLibCheck": true
10+
},
11+
"include": ["./src/**/*.ts"], // 필요한 파일 경로 포함
12+
"exclude": ["node_modules"] // 불필요한 경로 제외
13+
}

0 commit comments

Comments
 (0)