45dfbfcfbb
- Deploy ArgoCD with Helm for GitOps continuous delivery * Configure LoadBalancer and Ingress access on LAN * Enable ArgoCD Image Updater for automatic "latest" tag updates * Simplified RBAC for single-user homelab environment - Deploy Gitea as self-hosted Git server for local repositories * PostgreSQL backend with NFS persistent storage * SSH and HTTP access via MetalLB LoadBalancer * Integration guides for ArgoCD GitOps workflows - Add example ArgoCD Application with auto-image updates - Include comprehensive migration guides from Helm to GitOps - Maintain compatibility with existing Helm-based deployments 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
40 lines
1.3 KiB
YAML
40 lines
1.3 KiB
YAML
# Example ArgoCD Application with Image Auto-Update
|
|
# This demonstrates how to set up your existing Helm applications in ArgoCD
|
|
# with automatic "latest" tag updates
|
|
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: plex-example
|
|
namespace: argocd
|
|
annotations:
|
|
# Enable automatic image updates for Plex
|
|
argocd-image-updater.argoproj.io/image-list: plex=ghcr.io/k8s-at-home/plex:latest
|
|
# Use 'newest-build' strategy for latest images
|
|
argocd-image-updater.argoproj.io/plex.update-strategy: newest-build
|
|
# Write back to ArgoCD (for testing - production should use git method)
|
|
argocd-image-updater.argoproj.io/write-back-method: argocd
|
|
spec:
|
|
project: default
|
|
source:
|
|
# Point to your repository (replace with your actual Git repo)
|
|
repoURL: https://github.com/munnerz/kube-plex
|
|
path: charts/kube-plex
|
|
targetRevision: HEAD
|
|
helm:
|
|
valueFiles:
|
|
# This would reference your existing plex_values.yml
|
|
# For now, this is just an example structure
|
|
- values.yaml
|
|
parameters:
|
|
- name: image.tag
|
|
value: latest
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: plex
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true |