Settings: [main] CI/CD에 대한 문서 업데이트
All checks were successful
baekjoon-bot-cicd / build_push_deploy (push) Successful in 1m32s
All checks were successful
baekjoon-bot-cicd / build_push_deploy (push) Successful in 1m32s
This commit is contained in:
19
README.md
19
README.md
@@ -91,3 +91,22 @@ curl -s http://localhost:8000/ | cat
|
||||
- Development: `docs/DEVELOPMENT.md`
|
||||
- API: `docs/API.md`
|
||||
|
||||
## CI/CD
|
||||
- Workflow: `.gitea/workflows/cicd.yml`
|
||||
- Trigger: `main` 브랜치로 `push` 시 실행
|
||||
- Flow:
|
||||
1) (수동) checkout: Gitea 서브패스(`/gitea`)를 고려해 `git init` + `git fetch`로 소스 가져옴
|
||||
2) Docker Hub 로그인
|
||||
3) 이미지 빌드/푸시: `${DOCKERHUB_USERNAME}/baekjoon-bot:latest`
|
||||
4) 서버 배포: 서버에 존재하는 compose 파일(`/nkeysworld/compose.yml`)로 `pull/up -d` 수행
|
||||
5) Discord Webhook으로 성공/실패 알림 전송
|
||||
|
||||
### Required Secrets
|
||||
| Key | Used for |
|
||||
|---|---|
|
||||
| `NKEY_PAT` | workflow 내 수동 checkout 시 Gitea repo fetch 인증 |
|
||||
| `DOCKERHUB_USERNAME` | Docker Hub 이미지 네임스페이스 |
|
||||
| `DOCKERHUB_TOKEN` | Docker Hub 로그인 토큰 |
|
||||
| `DISCORD_WEBHOOK` | CI/CD 결과 알림 전송 |
|
||||
|
||||
> NOTE: workflow의 빌드 단계는 `docker build -t ... .`(기본 Dockerfile 사용) 형태입니다. 레포의 빌드 파일명은 `dockerfile`(소문자)이므로, CI 환경에서 기본 Dockerfile을 쓰려면 파일명/옵션 정합성을 확인하세요.
|
||||
|
||||
Reference in New Issue
Block a user