본문으로 바로가기

6단계

수동 CI 실행기와 서비스별 품질 게이트

5회 조회

목차

CI의 핵심은 제품 이름이 아니라 같은 입력에 같은 검증을 반복하고, 실패 증거를 남기는 것입니다. 예시 저장소는 하나의 운영체제 독립 Node 실행기를 직접 사용합니다.

실행 경계

실행할 때는 전체 모노레포를 무작정 돌리지 않고 Node SSOT에 web, console, worker처럼 대상 서비스를 명시합니다. 불필요한 셸별 wrapper가 없어 어느 운영체제에서도 명령과 종료 코드가 같습니다.

node tools/quality-gate.mjs web
node tools/quality-gate.mjs console

실제 인자는 현재 품질 실행기와 각 workspace manifest를 확인합니다. 결과에는 테스트·typecheck·lint·build의 성공 여부와 실행 환경을 남깁니다.

품질 게이트의 층

  1. 빠른 콘텐츠 인벤토리·단위 테스트·타입 검사
  2. 실제 DB를 쓰는 testcontainer 통합 테스트
  3. 쓰기 경계를 보호한 브라우저 smoke/E2E
  4. Git SHA 이미지·readiness·실제 DB 조회 smoke
  5. 실패 시 대상 서비스만 rollback하고 복구 증거 보존

PR 차단이나 Slack 알림을 외부 CI 서비스에 맡기지 않는 대신, 로컬·운영 실행기의 로그와 release tag가 어느 commit을 검증했는지 분명히 합니다. 나중에 원격 CI를 도입하려면 이 Node SSOT를 호출하고, secret·artifact·branch 보호 정책을 먼저 합의해야 합니다.

직접 해 보기

콘텐츠 파일 하나를 바꾸고 서비스 범위를 명시해 실행합니다. 그 뒤 같은 commit으로 PROD dry-run과 smoke 계획을 확인합니다. 명령이 실패했을 때 마지막 성공 단계와 재실행 방법이 출력되는지 확인하세요.

Next