Move workflows under .gitea/workflows and publish images to git.ghabilee.ir instead of ghcr.io so deploy runs on self-hosted Gitea.
1.6 KiB
1.6 KiB
Branch protection on main (Gitea)
Configure in Gitea:
Repository → Settings → Branches → Add branch protection rule → Branch name pattern: main
Recommended settings:
- Enable push
- Enable merge
- Require pull request reviews (optional for solo work)
- Enable status check
- Require branches to be up to date before merging
Required status checks
Dependency vulnerability scanSecret scanBuild, test, and quality checks
Until status checks are wired, use Pull Request → merge (not direct push) and rely on
local Husky pre-push (pnpm prepush:check).
Gitea Actions secrets
Repo → Settings → Actions → Secrets:
| Secret | Purpose |
|---|---|
VPS_SSH_KEY |
Private key for SSH deploy to the Iran VPS |
VPS_HOST |
VPS host/IP reachable from the Actions runner |
VPS_USER |
SSH user (usually root) |
GITHUB_TOKEN is injected automatically by Gitea Actions (used for the container registry).
Container registry
Images publish to: git.ghabilee.ir/<owner>/<repo>:<sha>
Telegram deploy alerts
Notify scripts SSH into the VPS and use Telegram credentials already on the server
(/opt/ghabilee-admin / shared ops env). No extra Gitea secrets are required for notify
unless you change scripts/notify-via-vps.sh.
Remotes
- Gitea (canonical):
https://git.ghabilee.ir/AliSaZa/admin.git - Git SSH:
ssh://git@git.ghabilee.ir:222/AliSaZa/admin.git