diff --git a/charts/other/myprecious/Chart.yaml b/charts/other/myprecious/Chart.yaml index 16282ab24..1178dd164 100644 --- a/charts/other/myprecious/Chart.yaml +++ b/charts/other/myprecious/Chart.yaml @@ -285,6 +285,11 @@ dependencies: repository: http://chartmuseum.chartmuseum:8080 condition: plexmetamanager.enabled alias: plexmetamanager + - name: kometa + version: ~2.4.0 + repository: http://chartmuseum.chartmuseum:8080 + condition: kometa.enabled + alias: kometa - name: filebot-node version: ~0.0.1 repository: http://chartmuseum.chartmuseum:8080 diff --git a/charts/other/myprecious/templates/configmaps/configmap-gatus-config.yaml b/charts/other/myprecious/templates/configmaps/configmap-gatus-config.yaml index 20d74e84d..05ba19e90 100644 --- a/charts/other/myprecious/templates/configmaps/configmap-gatus-config.yaml +++ b/charts/other/myprecious/templates/configmaps/configmap-gatus-config.yaml @@ -601,6 +601,17 @@ data: - type: email {{ end }} + {{ if .Values.kometa.enabled }} + - name: kometa + group: manage-media + url: "http://kometa:9898" + interval: 5m + conditions: + - "[STATUS] == 200" + alerts: + - type: email + {{ end }} + {{ if or .Values.autoscan.enabled }} - name: autoscan group: manage-media diff --git a/charts/other/myprecious/templates/configmaps/configmap-homepage-config.yaml b/charts/other/myprecious/templates/configmaps/configmap-homepage-config.yaml index 91fe11ab0..32c01e3a6 100644 --- a/charts/other/myprecious/templates/configmaps/configmap-homepage-config.yaml +++ b/charts/other/myprecious/templates/configmaps/configmap-homepage-config.yaml @@ -526,6 +526,14 @@ data: siteMonitor: http://plexmetamanager:9898 {{ end }} + {{ if .Values.kometa.enabled }} + - Kometa: + icon: mdi-folder-information + href: https://{{ .Release.Name }}-filebrowser.elfhosted.com/files/config/kometa/ + description: Manage Plex Metadata + siteMonitor: http://kometa:9898 + {{ end }} + {{ if or .Values.autoscan.enabled }} - Autoscan: icon: mdi-magnify-scan diff --git a/charts/other/myprecious/templates/configmaps/configmap-homer-config.yaml b/charts/other/myprecious/templates/configmaps/configmap-homer-config.yaml index 88571e771..d2ac92b0f 100644 --- a/charts/other/myprecious/templates/configmaps/configmap-homer-config.yaml +++ b/charts/other/myprecious/templates/configmaps/configmap-homer-config.yaml @@ -823,13 +823,25 @@ data: # logo: "assets/png/unpackerr.png" # Alternatively a fa icon can be provided: icon: "fas fa-photo-film" - subtitle: "Unpack Media" + subtitle: "Manage Plex Libraries" tag: "protected" tagstyle: "is-success" url: "https://{{ .Release.Name }}-filebrowser.elfhosted.com/files/config/plexmetamanager/" target: "_blank" # optional html tag target attribute {{ end }} + {{ if .Values.kometa.enabled }} + - name: "Kometa" + logo: "assets/png/kometa.png" + # Alternatively a fa icon can be provided: + # icon: "fas fa-photo-film" + subtitle: "Manage Plex Metadata" + tag: "protected" + tagstyle: "is-success" + url: "https://{{ .Release.Name }}-filebrowser.elfhosted.com/files/config/kometa/" + target: "_blank" # optional html tag target attribute + {{ end }} + {{ if .Values.autoscan.enabled }} - name: "Autoscan" # logo: "assets/png/autoscan.png" diff --git a/charts/other/myprecious/templates/pvcs-ssd/pvc-config-kometa.yaml b/charts/other/myprecious/templates/pvcs-ssd/pvc-config-kometa.yaml new file mode 100644 index 000000000..eac3eeaf9 --- /dev/null +++ b/charts/other/myprecious/templates/pvcs-ssd/pvc-config-kometa.yaml @@ -0,0 +1,15 @@ +{{ if .Values.kometa.enabled }} +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: config-kometa + annotations: + helm.sh/resource-policy: keep +spec: + accessModes: + - ReadWriteMany + resources: + requests: + storage: 10Gi + storageClassName: ceph-filesystem +{{ end }} \ No newline at end of file diff --git a/charts/other/myprecious/templates/services/service-kometa.yaml b/charts/other/myprecious/templates/services/service-kometa.yaml new file mode 100644 index 000000000..625db14b7 --- /dev/null +++ b/charts/other/myprecious/templates/services/service-kometa.yaml @@ -0,0 +1,20 @@ +{{ if .Values.kometa.enabled }} +apiVersion: v1 +kind: Service +metadata: + name: kometa + labels: + app.kubernetes.io/name: kometa + app.kubernetes.io/instance: {{ .Release.Name }} + annotations: +spec: + type: ClusterIP + ports: + - port: 9898 + targetPort: 9898 + protocol: TCP + name: http + selector: + app.kubernetes.io/name: kometa + app.kubernetes.io/instance: {{ .Release.Name }} +{{ end }} \ No newline at end of file diff --git a/charts/other/myprecious/values.yaml b/charts/other/myprecious/values.yaml index 819cd376c..836f4446c 100644 --- a/charts/other/myprecious/values.yaml +++ b/charts/other/myprecious/values.yaml @@ -2850,6 +2850,13 @@ filebrowser: volumeSpec: persistentVolumeClaim: claimName: config-jellyseerr-ssd + kometa: + enabled: false + type: custom + mountPath: /storage/config/kometa/ + volumeSpec: + persistentVolumeClaim: + claimName: config-kometa pyload: enabled: false type: custom @@ -7471,6 +7478,108 @@ plexmetamanager: podinfo: image: stefanprodan/podinfo # used to run probes from gatus +kometa: + enabled: false + sso: + enabled: true + priorityClassName: tenant-normal + image: + repository: ghcr.io/geek-cookbook/plex-meta-manager + tag: v2.0.1@sha256:5ceaedbbafb0ff7f22a291a6834caf8e0580ecab9d19914a5865b62e78b4e885 + securityContext: + seccompProfile: + type: RuntimeDefault + readOnlyRootFilesystem: true + controller: + annotations: + configmap.reloader.stakater.com/reload: "elfbot-all,storage-changed,elfbot-kometa" + podSecurityContext: + seccompProfile: + type: RuntimeDefault + runAsUser: 568 + runAsGroup: 568 + fsGroup: 568 + fsGroupChangePolicy: "OnRootMismatch" + automountServiceAccountToken: false + service: + main: + enabled: true # necessary for probes + ports: + http: + port: 9898 # doesn't matter this doesn,t actually use ports + envFrom: + - configMapRef: + name: elfbot-kometa + optional: true + persistence: + <<: *appmounts + config: + enabled: true + type: custom + mountPath: /config/ + volumeSpec: + persistentVolumeClaim: + claimName: config-kometa + elfbot: + enabled: "true" + type: "custom" + volumeSpec: + configMap: + name: elfbot-kometa + optional: true + example-config: + enabled: "true" + type: "custom" + volumeSpec: + configMap: + name: kometa-config + initContainers: + bootstrap: *bootstrap + copy-example-config: + image: *tooling_image + imagePullPolicy: IfNotPresent + command: + - /bin/bash + - -c + - | + set -x + set -e + + # If we don't already have an example config, create one + if [ ! -f /config/config.yml ]; + then + cp /bootstrap/config.yml /config/ + fi + volumeMounts: + - mountPath: /config + name: config + - name: example-config + mountPath: "/bootstrap/" + securityContext: + seccompProfile: + type: RuntimeDefault + readOnlyRootFilesystem: true + ingress: + main: + enabled: false + resources: + requests: + cpu: 10m + memory: 64Mi + limits: + cpu: 1 + memory: 2Gi + probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false + additionalContainers: + podinfo: + image: stefanprodan/podinfo # used to run probes from gatus + rcloneui: enabled: false priorityClassName: tenant-normal