'Deploy 됨' 은 '동작' 아냐
deploy job 이 green 이면 코드가 runtime 에 닿았다는 거. Runtime 이 동작 하는지는 별도 질문. Smoke test 가 그걸 답해.
뭘 검사할까
- Health 엔드포인트 —
/health가 방금 deploy 한 build SHA 와 매치하는 200 반환. - 골든 사용자 플로우 하나 — 로그인, 프로필 fetch, 로그아웃. 최소 '앱 살아있나' 모양.
- 외부 통합 — DB 쿼리, cache hit, third-party API ping.
- Asset URL — 메인 페이지가 예상 제목 + CSS bundle hash 포함 HTML 반환.
Smoke 가 어디에 맞는가
- 사전-deploy: staging deploy job 후, prod deploy 시작 전 staging 에 smoke.
- 사후-deploy: prod deploy 직후 prod 에 smoke. 실패면 rollback workflow 발사.
Smoke vs full e2e
Smoke 는 빠르고 (60 초 이하) 생존 여부 테스트. Full end-to-end 는 더 느리고 (5-30 분) 현실적 조건에서 동작 테스트. 다른 역할. Smoke 가 deploy gate; e2e 는 nightly 에.