Add Plex GitOps application for automatic image updates

- Create organized directory structure (applications/, helm-values/)
- Add ArgoCD Application manifest for Plex with image auto-updater
- Configure automatic upgrade detection from current 1.41.8 to latest
- Enable Git write-back for GitOps workflow
- Use existing kube-plex chart with LinuxServer Plex image

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
gilgamezh
2025-08-15 17:17:41 +02:00
parent 1f5d5988cb
commit 97329837d4
2 changed files with 103 additions and 0 deletions
+54
View File
@@ -0,0 +1,54 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: plex
namespace: argocd
annotations:
# Enable automatic image updates for Plex
argocd-image-updater.argoproj.io/image-list: plex=linuxserver/plex
# Use newest-build strategy to detect newer versions than 1.41.8
argocd-image-updater.argoproj.io/plex.update-strategy: newest-build
# Write changes back to Git repository (GitOps workflow)
argocd-image-updater.argoproj.io/write-back-method: git
# Git configuration for write-back
argocd-image-updater.argoproj.io/git-branch: master
argocd-image-updater.argoproj.io/git-commit-user: argocd-image-updater
argocd-image-updater.argoproj.io/git-commit-email: argocd@turing.lan
argocd-image-updater.argoproj.io/git-commit-message: "chore: update Plex image to {{.NewTag}}"
spec:
project: default
source:
# Use the kube-plex chart repository
repoURL: https://github.com/munnerz/kube-plex
path: charts/kube-plex
targetRevision: HEAD
helm:
releaseName: plex
# Override with values from our Gitea repository
parameters:
- name: image.repository
value: linuxserver/plex
- name: image.tag
value: "1.41.8"
- name: claimToken
value: "claim-Ku2YYmJzDB1mpyG6YD7x"
- name: timezone
value: "Europe/Amsterdam"
- name: service.type
value: "LoadBalancer"
- name: service.port
value: "32400"
- name: rbac.create
value: "true"
- name: kubePlex.enabled
value: "false"
destination:
server: https://kubernetes.default.svc
namespace: plex
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true