cleanUrl: /앱-구성-관리하기
floatFirstTOC: right
NestJS에서 개발과 테스트 환경을 나눈 건 정말 중요한 작업이다.
이번 글에서는 이걸 어떻게 해낼 수 있을지, 그리고 ConfigService
를 어떻게 활용할지 차근차근 알아보자.
AppModule을 열어보면 TypeOrmModule이 있다.
이 안에서 DB 연결 정보를 설정하고 있는데 보통은 여기에 db.sqlite 같은 파일명을 직접 써넣는다.
그런데 개발과 테스트에 따라 다른 DB를 써야한다면?
TypeOrmModule.forRoot({
type: 'sqlite',
database: process.env.NODE_ENV === 'test' ? 'test.sqlite' : 'db.sqlite',
...
})
이런 식으로 삼항 연산자로 해결할 수도 있다.
간단하고 깔끔하지만 우리는 NestJS에서 권장하는 방식을 따를 것이다.
@nestjs/config
패키지 설치하기우선 Nest에서는 @nestjs/config를 통해 환경 변수를 설정하는 걸 권장한다.