-
Notifications
You must be signed in to change notification settings - Fork 2
Deploy Runbook
ClarusIubar edited this page May 20, 2026
·
10 revisions
이 문서는 STH-1-Class-One-Group/JamIssue의 Web Front service 배포만 다룹니다.
Backend API, Cloudflare Worker, DB migration, 관리자 서비스 배포는 ClarusIubar/JamIssue_admin에서 관리합니다.
- Cloudflare Pages project:
daejeon-jamissue-pages - 운영 Web Front: https://daejeon.jamissue.com
- 운영 API: https://api.daejeon.jamissue.com
| Workflow | 목적 | 현재 책임 |
|---|---|---|
ci |
lint, typecheck, build, unit/smoke 검증 | Web Front service |
cloudflare-pages |
Cloudflare Pages 배포 또는 PR build-only 검증 | Web Front service |
production-smoke |
운영 Web/API 연결 smoke | Web Front consumer 검증 |
CodeQL |
정적 보안 분석 | Web Front service |
Worker/API 배포 workflow는 이 레포의 책임이 아닙니다.
이 레포에는 public Web Front 배포에 필요한 값만 둡니다.
| 이름 | 용도 |
|---|---|
CLOUDFLARE_ACCOUNT_ID |
Cloudflare Pages 배포 |
CLOUDFLARE_API_TOKEN |
Cloudflare Pages 배포 |
PUBLIC_APP_BASE_URL |
Web Front가 호출할 API base URL |
PUBLIC_SUPABASE_ANON_KEY |
public client에서 허용된 anon key |
다음 항목은 이 레포에 두지 않습니다.
- Supabase service-role key
- OAuth client secret
- Worker runtime secret
- DB migration credential
- backend deploy token
npm ci
npm run lint
npm run typecheck
npm run build
npm run smoke:public필요한 경우 추가로 실행합니다.
npm run test:unit
npm run test:integration
npm run test:regression
npm run test:smoke:ui- https://daejeon.jamissue.com 접속
- React SPA 직접 경로 진입 확인
-
PUBLIC_APP_BASE_URL이https://api.daejeon.jamissue.com인지 확인 - 공개 smoke 통과 확인
- 로그인 진입 경로가 backend API로 이동하는지 확인
- GitHub Actions
ci,cloudflare-pages,production-smoke,CodeQL통과 확인
GitHub Actions runner가 운영 API 호출 중 Cloudflare challenge HTML을 받을 수 있습니다.
이 경우 production-smoke는 CI 환경에서만 해당 응답을 네트워크/봇 차단 상태로 판정해 허용합니다. 로컬 smoke는 실제 사용자 접근 검증으로 계속 엄격하게 봅니다.
| 증상 | 확인 위치 |
|---|---|
| Pages 배포 실패 |
cloudflare-pages workflow |
| build 실패 |
ci workflow |
| 운영 smoke 실패 |
production-smoke workflow와 API 응답 |
| API shape 불일치 |
ClarusIubar/JamIssue_admin API contract |
| 로그인 callback 실패 |
ClarusIubar/JamIssue_admin OAuth/Worker 설정 |