mirror of
https://gitlab.kube.huskypup.net/Scooby/Homelabv4.git
synced 2026-08-20 23:16:49 +00:00
Pull-mirrors home GitLab's Homelabv4 repo on Gitea's own built-in mirror scheduler (6h interval) - no custom sync job needed, per the original plan. SQLite instead of the chart's default HA Postgres + Valkey cluster (single-instance standby holding one small repo, not worth the extra moving parts). A PostSync Job creates the mirror once, idempotently; Gitea's scheduler handles all ongoing pulls after that. Also added a public Cloudflare CNAME for gitlab.kube.huskypup.net -> home.kube.huskypup.net: the VPS has no route to home's LAN via Netbird (none of the mesh peers advertise that subnet, confirmed live), so GitLab needs to be reachable the same way any other internet client reaches it - home's public IP already has port 443 forwarded to istio-ingressgateway from earlier this session. Admin and GitLab-mirror credentials are plain Secrets created directly on the VPS cluster (kubectl, not git) - same pattern as vault-unseal-key. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
34 lines
929 B
YAML
34 lines
929 B
YAML
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: vps-gitea
|
|
namespace: argocd
|
|
annotations:
|
|
argocd.argoproj.io/sync-wave: "2" # same wave as vps-vault, both just need vps-minio
|
|
finalizers:
|
|
- resources-finalizer.argocd.argoproj.io
|
|
spec:
|
|
project: vps-standby
|
|
sources:
|
|
- repoURL: https://dl.gitea.com/charts/
|
|
chart: gitea
|
|
targetRevision: 12.7.0
|
|
helm:
|
|
valueFiles:
|
|
- $values/infrastructure/vps-standby/gitea/values.yaml
|
|
- repoURL: https://gitlab.kube.huskypup.net/Scooby/Homelabv4.git
|
|
targetRevision: main
|
|
ref: values
|
|
- repoURL: https://gitlab.kube.huskypup.net/Scooby/Homelabv4.git
|
|
targetRevision: main
|
|
path: infrastructure/vps-standby/gitea/manifests
|
|
destination:
|
|
name: vps-standby
|
|
namespace: gitea
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true
|