development, staging, production, test, fixture 같은 DB preset을 만듭니다.
필수 변수
.env.development
데이터베이스 이름
Sonamu는 다음 순서로 데이터베이스 이름을 결정합니다.- 현재 환경의
SONAMU_DB_NAME projectName기반 자동 생성 이름
sonamu.config.ts
이제 config에database.name이나 database.environments를 둘 필요가 없습니다.
sonamu.config.ts
defaultOptions에는 pool, timeout, SSL 기본값, debug 설정처럼 모든 preset에 공통으로 적용할
Knex 옵션만 둡니다. host, port, user, password, database는 Sonamu가 SONAMU_DB_* 값으로
채웁니다.
환경별 파일
- 개발
- 스테이징
- 프로덕션
.env.development
읽기 전용 replica
환경에 별도 읽기 전용 DB가 있으면SONAMU_DB_READONLY_* 값을 설정합니다. 없는 read-only 필드는
같은 환경의 main DB 값을 사용합니다.
.env.production
DB.getDB("r")을 사용합니다. NODE_ENV에 따라 development_readonly,
staging_readonly, production_readonly, test_readonly로 해석됩니다.
Fixture 데이터베이스
Fixture 변수는 테스트 fixture DB에만 사용합니다..env.test
SONAMU_DB_FIXTURE_NAME이 없으면 Sonamu가 자동 생성한 fixture DB 이름을 사용합니다.