Set values-file annotations with alias helm.image-name=image.repository and helm.image-tag=image.tag.\nEnsures updates commit into /helm-values/*.\n\nCommitted via Codex CLI.
Git write-back fails for Helm repo sources (multi-source): updater attempts to target external chart repos. Switch to argocd for plex, radarr, sonarr, flaresolverr, transmission, ollama. Keep git for prowlarr (chart path in this repo).\n\nCommitted via Codex CLI.
Set write-back-method=git with write-back-target to this repo, branch=master, and commit identity. Keeps image-list and strategies.\n\nCommitted via Codex CLI.
Uses multi-source Application: chart path "prowlarr/" + values from this repo at "helm-values/prowlarr_values.yml".\nPreserves existing ports, PVCs, and mounts.\n\nCommitted via Codex CLI.
Helm reference that worked: "helm install transmission bananaspliff/transmission-openvpn --values transmission_values.yml".\nArgoCD now points to the same chart.\n\nCommitted via Codex CLI.
ArgoCD reported: chart 'transmission-openvpn' not found in https://k8s-at-home.com/charts/.\nSwitch to bananaspliff/geek-charts 'transmission' which matches our values pattern (env/volumes/volumeMounts).\n\nCommitted via Codex CLI.
- Update domain from gitea.turing.lan to gitea.gilgamezh.me
- Configure Traefik ingress with TLS termination
- Set ROOT_URL to https while keeping internal protocol as http
- Enable Let's Encrypt certificate generation
Gitea is now accessible at https://gitea.gilgamezh.me with proper styling.
CSS 404 errors in dev tools are expected - assets are embedded in binary.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add comprehensive documentation for resolving ArgoCD image-updater credential
errors with multi-source applications. Documents the solution of using ArgoCD
API write-back method instead of git write-back for applications that use
external Helm charts with local values repositories.
Key learnings:
- Multi-source apps need argocd write-back method not git
- External chart repos don't need write credentials with API method
- Includes step-by-step implementation and verification commands
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix ArgoCD multi-source applications (remove conflicting source: section)
- Restore original volume mount configuration using plex-data PVC
- Update ingress class from nginx to traefik for K3s compatibility
- Remove unnecessary compatibility patches (myvolume PVC)
- Document comprehensive ArgoCD migration guidelines in CLAUDE.md
- Add chart-specific configuration patterns for Bananaspliff charts
- Include pre/post migration checklists and verification commands
Both applications now working exactly as before migration with:
- Original service ports (Radarr:7878, Sonarr:8989)
- Complete access to existing configurations and databases
- External accessibility via radarr.gilgamezh.me and sonarr.gilgamezh.me
- Automatic image updates enabled for latest tag tracking
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Use original volumes/volumeMounts structure instead of persistence
- Mount plex-data PVC to /config with correct subPath
- Restore exact working configuration from before ArgoCD migration
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Use service.port directly as per chart schema
- Radarr: service.port: 7878
- Sonarr: service.port: 8989
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix service port configuration to respect original working setup
- Radarr service port: 7878 (was incorrectly defaulting to 80)
- Sonarr service port: 8989 (was incorrectly defaulting to 80)
- Use proper Bananaspliff chart service structure with main.ports.http
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Create myvolume PVC required by Bananaspliff Radarr/Sonarr charts
- Uses nfs-client storage class with 450Gi capacity
- Enables Radarr and Sonarr pods to schedule and run successfully
- Maintains compatibility with existing Bananaspliff chart structure
- Fix Radarr and Sonarr values to use Bananaspliff chart structure
- Use persistence.config and persistence.media instead of volumes/volumeMounts
- Reference existing plex-data PVC with proper subPaths
- Fixes FailedScheduling due to missing 'myvolume' PVC
- Change Plex image tag from 1.41.8 to latest for auto-updates
- Switch ArgoCD Image Updater strategy to 'digest' for latest tag tracking
- Enables automatic detection of newer Plex versions
- Tests complete GitOps workflow with image auto-updates
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Separate chart source (kube-plex) and values source (turingpi)
- Deploy to default namespace where existing PVCs are located
- Use complete plex_values.yml for proper GPU and persistence config
- Fixes storage class and duplicate port issues
- Point ArgoCD to dedicated kube-plex repository in Gitea
- Ensures GPU support changes are available to ArgoCD
- Separates chart from main configuration repository
- Switch from upstream kube-plex to our local version in Gitea
- Ensures GPU support changes are preserved in GitOps workflow
- Fixes ArgoCD Application source path
- 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>
- Replace extraVolumeMounts/extraVolumes with new gpu configuration
- Enable GPU support with cleaner, more maintainable config
- Use same /dev/dri paths for hardware-accelerated transcoding
- Leverages new kube-plex GPU feature for better integration
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add custom Helm chart for Home Assistant Voice LLMs integration
- Add Ollama configuration for local LLM inference
- Support AI voice assistant capabilities in homelab
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>