37 lines
1.7 KiB
Markdown
37 lines
1.7 KiB
Markdown
# Gitea Push 런북 (yakcloud-packages)
|
|
|
|
> 이 저장소는 로컬에서 `git init` + 초기 커밋만 된 상태다. 실제 push 는 Gitea 저장소 생성 + 자격이 필요해 **수동/승인 단계**로 남긴다.
|
|
|
|
## 1) Gitea 저장소 생성 (1회)
|
|
Gitea UI 또는 API 로 `yakcloud/yakcloud-packages` 저장소를 만든다(빈 저장소, README 없이).
|
|
```bash
|
|
# API 예시 (Gitea PAT 필요)
|
|
curl -X POST "https://gitea.yakenator.io/api/v1/orgs/yakcloud/repos" \
|
|
-H "Authorization: token $GITEA_TOKEN" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"name":"yakcloud-packages","private":false,"default_branch":"main"}'
|
|
```
|
|
|
|
## 2) Push
|
|
```bash
|
|
cd ~/Desktop/yakcloud-packages
|
|
# remote 는 이미 origin=https://gitea.yakenator.io/yakcloud/yakcloud-packages.git 로 설정됨
|
|
git push -u origin main # 자격증명 프롬프트: 사용자 / Gitea PAT
|
|
```
|
|
|
|
## 3) 패키지 발행 (npm registry = Gitea)
|
|
`.npmrc` 는 `@yakcloud:registry=https://gitea.yakenator.io/api/packages/yakcloud/npm/` 로 설정됨.
|
|
발행 인증(publish 시):
|
|
```bash
|
|
npm config set -- '//gitea.yakenator.io/api/packages/yakcloud/npm/:_authToken' "$GITEA_TOKEN"
|
|
pnpm -r publish --no-git-checks # 추출(B3+) 후 dist 빌드가 있을 때
|
|
```
|
|
|
|
## 4) CI (Gitea Actions)
|
|
`.gitea/workflows/ci.yml` — Gitea Actions Runner 가 조직/저장소에 등록돼 있어야 동작.
|
|
`bind-env-drift` 잡은 private-cluster `infra/api/yakcloud_api.py` 를 sparse-checkout 하는 읽기전용 토큰(secret)이 필요(TODO).
|
|
|
|
## 참고
|
|
- 로고 바이너리는 저장소에 없음(상표 미번들). air-gap/배포 시 `logoBase` 로 주입 — `docs/LOGO_ATTRIBUTION.md`.
|
|
- 현재는 B1 스켈레톤. 실제 추출(B3~)·MinIO(Phase 1)·백업(M5)은 후속.
|