# CI/CD 배포 가이드

## 개요

`.gitea/workflows/deploy.yml` 워크플로가 `main` 브랜치 푸시 시 자동으로
배포 서버(183.99.177.40)에 SSH 접속 → `docker compose up -d --build` 실행합니다.

## Gitea 시크릿 등록

Gitea 저장소 → **Settings → Actions → Secrets** 에 다음 시크릿을 추가하세요:

| 시크릿 이름 | 값 (예시) |
|-------------|----------|
| `DEPLOY_HOST` | `183.99.177.40` |
| `DEPLOY_USER` | `chpark` |
| `DEPLOY_SSH_KEY` | SSH 개인키 전체 (BEGIN/END 포함) |
| `DATABASE_URL` | `postgresql://postgres:qlalfqjsgh11@183.99.177.40:5432/distribution` |
| `NEXTAUTH_URL` | `https://momotogether.com` |
| `NEXTAUTH_SECRET` | 임의의 32바이트 hex (현재 .env.production 값 재사용 가능) |
| `MASTER_PWD` | `qlalfqjsgh11` |
| `AES_KEY` | `ILJIAESSECRETKEY` |

### SSH 키 생성 (최초 1회)

로컬에서:
```bash
ssh-keygen -t ed25519 -C "gitea-deploy" -f ~/.ssh/momo_deploy -N ""
# 공개키를 배포 서버에 등록
ssh-copy-id -i ~/.ssh/momo_deploy.pub chpark@183.99.177.40
# 개인키를 Gitea Secret `DEPLOY_SSH_KEY` 에 붙여넣기
cat ~/.ssh/momo_deploy
```

## Gitea Actions Runner

워크플로가 실행되려면 Gitea Actions Runner가 등록돼 있어야 합니다.
`git.junggomoa.com` 인스턴스에 Runner가 이미 있으면 이 단계는 생략.
없으면 배포 서버나 별도 머신에 [act_runner](https://gitea.com/gitea/act_runner) 설치 필요.

## 수동 배포 (CI/CD 우회)

긴급 시:
```bash
ssh chpark@183.99.177.40
cd ~/momo-erp/source
git pull
docker compose -f docker-compose.prod.yml up -d --build
```
