76 lines
1.4 KiB
Markdown
76 lines
1.4 KiB
Markdown
# Quick Start — One-Time CI/CD Setup (3 minutes)
|
|
|
|
## 🚀 Setup
|
|
|
|
### 1. Add Secret to Repository
|
|
```bash
|
|
# Go to: https://git.riotpiao.com/rock/poimen-memory/settings/secrets
|
|
# Add: Name=REGISTRY_PAT, Value=bdf6a1d2317c28a332447083c61bb463d24defb7
|
|
# Save
|
|
|
|
# (This token is encrypted & managed in homelab via SOPS)
|
|
# See: CI-SETUP-WITH-KSOPS.md for details
|
|
```
|
|
|
|
### 3. Push to Trigger Build
|
|
```bash
|
|
cd ~/workplace/Poimen/memory
|
|
git commit --allow-empty -m "Trigger CI"
|
|
git push
|
|
```
|
|
|
|
---
|
|
|
|
## ✨ That's It!
|
|
|
|
After these 3 steps, every push automatically:
|
|
- ✅ Runs all tests
|
|
- ✅ Builds Docker image
|
|
- ✅ Pushes to `forgejo.riotpiao.com/rock/poimen-memory:latest`
|
|
- ✅ ArgoCD deploys to K8s
|
|
|
|
---
|
|
|
|
## 📊 Monitor
|
|
|
|
```bash
|
|
# Watch build
|
|
https://git.riotpiao.com/rock/poimen-memory/actions
|
|
|
|
# Watch deployment
|
|
kubectl get pods -n poimen -l app.kubernetes.io/name=poimen-memory -w
|
|
```
|
|
|
|
---
|
|
|
|
## 🧪 Test When Ready
|
|
|
|
```bash
|
|
# Port forward
|
|
kubectl port-forward -n poimen svc/poimen-memory 8080:80 &
|
|
|
|
# Health check
|
|
curl http://localhost:8080/health
|
|
```
|
|
|
|
---
|
|
|
|
## 🔄 Apply to Other Repos
|
|
|
|
Same pattern for `poimen`, `poimen-workflows`, etc:
|
|
|
|
1. Add `REGISTRY_PAT` secret
|
|
2. Copy `.forgejo/workflows/build.yaml` from this repo
|
|
3. Push
|
|
|
|
See `CI-SETUP.md` for details.
|
|
|
|
---
|
|
|
|
## Pattern Details
|
|
|
|
- **Based on**: homelab-frontend (proven pattern)
|
|
- **Runner**: docker:27-cli (supports buildx)
|
|
- **Tags**: commit SHA + "latest"
|
|
- **No manual steps**: Fully automated
|