생성 위치
비밀 값은 로컬 .env, CI secret, 클라우드 secret manager처럼 저장소와 분리된 장소에서 만듭니다.
ConfigModule로 읽는 값이 생성, 주입, 검증, 교체 단계를 지나며 코드 저장소 밖에 머무는지 확인합니다.
비밀 값은 로컬 .env, CI secret, 클라우드 secret manager처럼 저장소와 분리된 장소에서 만듭니다.
ConfigModule과 ConfigService가 모듈 경계에서 필요한 값만 읽어 service로 전달하도록 범위를 좁힙니다.
필수 값이 없거나 형식이 맞지 않으면 앱 시작 시점에 중단해 런타임 장애를 앞에서 막습니다.
port, database url, jwt secret처럼 필수 값은 validation schema나 factory에서 명시합니다.
로그, 예외 응답, 테스트 스냅샷에 실제 secret이 노출되지 않는지 확인합니다.
배포 환경별 값은 이미지 안에 굽지 않고 실행 시점 설정으로 교체할 수 있게 둡니다.