Files
homelab/k8s/argocd/apps/20-logging.yaml
T
Story Crater Bot 64ee19c822 fix(argocd): repoURL http://forgejo.riotpiao.com:3000 -> https://forgejo.riotpiao.com
Root cause of widespread 'Unknown' sync status / Skipping auto-sync across
almost every Application: CoreDNS rewrites forgejo.riotpiao.com to the nginx
ingress controller service (rewrite name forgejo.riotpiao.com -> ingress-nginx-
controller...), which only listens on 80/443, not 3000. Every git fetch from
argocd-repo-server to the :3000 repoURL was timing out (context deadline
exceeded), so ArgoCD couldn't compare desired vs live state for any app.

Fix: use https://forgejo.riotpiao.com (no port, TLS via nginx + wildcard cert)
consistent with the 'all external endpoints HTTPS' requirement. Verified git
smart-http response 200 on the new URL before committing.
2026-07-21 16:03:38 -07:00

107 lines
3.1 KiB
YAML

# Wave 2 — Loki / Grafana / Promtail (Grafana Helm charts).
# NOTE: loki-values / grafana-values reference secrets (S3 creds, admin password)
# that helmfile used to inject via --set. Under ArgoCD these come from the
# *.enc.yaml SOPS files in the same dir via the SOPS plugin — verify the plugin
# is configured before first sync, or these will render with empty secrets.
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: loki
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "2"
spec:
project: homelab
sources:
- repoURL: https://grafana.github.io/helm-charts
chart: loki
targetRevision: "*"
helm:
valueFiles:
- $values/k8s/platform/logging/loki-values.yaml
- repoURL: https://forgejo.riotpiao.com/riotpiao.com/homelab.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: logging
syncPolicy:
managedNamespaceMetadata:
# promtail needs privileged (hostPath log/journal, DAC_READ_SEARCH,
# privileged:true) to tail node logs — default baseline PSS blocks it.
labels:
pod-security.kubernetes.io/enforce: privileged
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: grafana
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "2"
spec:
project: homelab
sources:
- repoURL: https://grafana.github.io/helm-charts
chart: grafana
targetRevision: "*"
helm:
valueFiles:
- $values/k8s/platform/logging/grafana-values.yaml
- repoURL: https://forgejo.riotpiao.com/riotpiao.com/homelab.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: logging
syncPolicy:
managedNamespaceMetadata:
# promtail needs privileged (hostPath log/journal, DAC_READ_SEARCH,
# privileged:true) to tail node logs — default baseline PSS blocks it.
labels:
pod-security.kubernetes.io/enforce: privileged
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: promtail
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "2"
spec:
project: homelab
sources:
- repoURL: https://grafana.github.io/helm-charts
chart: promtail
targetRevision: "*"
helm:
valueFiles:
- $values/k8s/platform/logging/promtail-values.yaml
- repoURL: https://forgejo.riotpiao.com/riotpiao.com/homelab.git
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: logging
syncPolicy:
managedNamespaceMetadata:
# promtail needs privileged (hostPath log/journal, DAC_READ_SEARCH,
# privileged:true) to tail node logs — default baseline PSS blocks it.
labels:
pod-security.kubernetes.io/enforce: privileged
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true