스테이징 배포은(는) 무엇을 하나요?
스테이징에 안전하게 배포하기 위한 반복 가능한 절차입니다.
데모 대상: ex_staging/ 폴더 (실제 클라우드가 아닌 로컬 시뮬레이션 스테이징).
단계
- 대상(
ex_staging또는@-언급된 경로)으로cd합니다. - 대상의 git 트리를 확인합니다:
git status --porcelain -- .(해당 폴더에서) 또는git status --porcelain -- ex_staging. 대상에 커밋되지 않은 변경 사항이 있으면 중단하고 알립니다. (코스 모노레포의 다른 폴더에 있는 변경 사항은 알린 후 무시할 수 있습니다.) - 테스트 실행:
npm test. 실패하면 중단하고 출력을 보여줍니다. - 빌드:
npm run build. 실패하면 중단합니다. - 배포 전 인간 확인을 요청합니다 (외부 작업 / 프로덕션에서 되돌릴 수 없음). 이 채팅에서 사용자의 명시적 승인이 있을 때까지 배포를 실행하지 마세요.
- 승인 후:
npm run deploy:staging(node scripts/deploy.mjs staging과 동일).- 이 데모에서는 로컬 서버를 시작하고
.staging-url을 작성합니다. - 실제 저장소에서는
./scripts/deploy.sh staging또는 파이프라인으로 대체하세요.
- 이 데모에서는 로컬 서버를 시작하고
- 스모크 체크:
.staging-url을 읽고GET {url}/health를 호출합니다 (curl,Invoke-WebRequest또는fetch). HTTP 200 및ok: true여야 합니다. - 요약: 배포된 내용, URL, 스모크 결과. 데모를 종료하려면
npm run staging:stop을 언급합니다.
규칙
- 절대 테스트가 실패하거나 대상이 더러운 상태에서 배포하지 마세요.
- 절대 명시적인 인간 요청/확인 없이 배포하지 마세요 (핸드오프 게이트).
- 항상 각 명령어의 실제 출력을 보여주세요.
- 이 저장소에서
staging.example.com을 사용하지 마세요. 스모크는.staging-url의 로컬 URL을 대상으로 합니다.