Some checks failed
Release / Test backend (push) Successful in 1m2s
Release / Check ui (push) Successful in 1m0s
Release / Docker (push) Successful in 4m39s
Release / Deploy to prod (push) Successful in 2m18s
Release / Deploy to homelab (push) Failing after 4s
Release / Gitea Release (push) Successful in 29s
1.5 KiB
1.5 KiB
Homelab Deployment Secrets Setup
The release workflow now includes automatic deployment to the homelab runner server. You need to add these secrets to Gitea.
Required Secrets
Go to: https://gitea.kalekber.cc/kamil/libnovel/settings/secrets/actions
1. HOMELAB_HOST
192.168.0.109
2. HOMELAB_USER
root
3. HOMELAB_SSH_KEY
If you want to use the same SSH key as prod:
- Copy the value from
PROD_SSH_KEYsecret
If you want a separate key:
# On your local machine or CI runner
cat ~/.ssh/id_rsa # or your preferred key
4. HOMELAB_SSH_KNOWN_HOSTS
Run this when the homelab server is reachable:
ssh-keyscan -H 192.168.0.109 2>/dev/null
Expected output format:
|1|base64hash...|192.168.0.109 ssh-rsa AAAAB3NzaC...
|1|base64hash...|192.168.0.109 ecdsa-sha2-nistp256 AAAAE2...
|1|base64hash...|192.168.0.109 ssh-ed25519 AAAAC3...
Testing
After adding the secrets, the next release (e.g., v4.1.10) will automatically:
- Build all Docker images
- Deploy to prod (165.22.70.138) ✅
- Deploy to homelab (192.168.0.109) ✅ NEW
- Create a Gitea release
Both deployments run in parallel for faster releases.
Troubleshooting
If the homelab deployment fails:
- Check that the secrets are set correctly
- Verify SSH access:
ssh root@192.168.0.109 - Check Doppler config exists:
doppler configs --project libnovel - Manually test:
cd /opt/libnovel-runner && doppler run --project libnovel --config prd_homelab -- docker compose pull runner