Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions charts/servarr/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ maintainers:
- name: kubitodev
url: https://kubito.dev
apiVersion: v2
appVersion: 1.1.7
version: 1.1.7
appVersion: 1.2.0
version: 1.2.0
description: Kubito Servarr Helm Chart
home: https://github.com/kubitodev/helm/tree/main/charts/servarr
icon: https://kubito.dev/images/kubito.svg
Expand All @@ -14,12 +14,11 @@ keywords:
- lidarr
- sonarr
- radarr
- readarr
- flaresolverr
- jellyfin
- jellyseerr
- qbittorrent
- prowlarr
- cleanuperr
- cleanuparr
sources:
- https://github.com/Servarr
223 changes: 52 additions & 171 deletions charts/servarr/README.md

Large diffs are not rendered by default.

102 changes: 102 additions & 0 deletions charts/servarr/templates/cleanuparr/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
{{- if .Values.cleanuparr.enabled }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-cleanuparr
labels:
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
spec:
{{- if not .Values.cleanuparr.autoscaling.enabled }}
replicas: {{ .Values.cleanuparr.replicaCount }}
{{- end }}
strategy:
{{- .Values.cleanuparr.deployment.strategy | toYaml | nindent 4 }}
selector:
matchLabels:
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
{{- with .Values.cleanuparr.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
spec:
{{- with .Values.cleanuparr.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ .Values.cleanuparr.serviceAccount.name | default (printf "%s-cleanuparr" .Release.Name) }}
securityContext:
{{- toYaml .Values.cleanuparr.podSecurityContext | nindent 8 }}
{{- if .Values.cleanuparr.initContainers }}
initContainers:
{{- toYaml .Values.cleanuparr.initContainers | nindent 8 }}
{{- end }}
volumes:
- name: config
{{- if .Values.cleanuparr.persistence.enabled }}
persistentVolumeClaim:
claimName: {{ .Values.cleanuparr.persistence.existingClaim | default (printf "%s-cleanuparr" .Release.Name) }}
{{- else }}
emptyDir: { }
{{- end }}
- name: media
{{- if and .Values.jellyfin.enabled .Values.jellyfin.persistence.media.enabled }}
persistentVolumeClaim:
claimName: {{ .Release.Name }}-jellyfin-media
{{- else }}
emptyDir: { }
{{- end }}
{{- if .Values.cleanuparr.persistence.additionalVolumes }}
{{- .Values.cleanuparr.persistence.additionalVolumes | toYaml | nindent 8}}
{{- end }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.cleanuparr.securityContext | nindent 12 }}
image: "{{ .Values.cleanuparr.image.repository }}:{{ .Values.cleanuparr.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.cleanuparr.image.pullPolicy }}
volumeMounts:
- mountPath: /config
name: config
{{- if and .Values.jellyfin.enabled .Values.jellyfin.persistence.media.enabled .Values.qbittorrent.persistence.enabled }}
- mountPath: "/media/{{ .Values.qbittorrent.persistence.path }}"
name: media
subPath: {{ .Values.qbittorrent.persistence.path }}
{{- end }}
{{- if .Values.cleanuparr.persistence.additionalMounts }}
{{- .Values.cleanuparr.persistence.additionalMounts | toYaml | nindent 12 }}
{{- end }}
ports:
- name: http
containerPort: {{ .Values.cleanuparr.service.port | default 11011 }}
protocol: TCP
env:
{{- range $k,$v := .Values.cleanuparr.env }}
- name: {{ $k }}
value: {{ $v | quote }}
{{- end }}
resources:
{{- toYaml .Values.cleanuparr.resources | nindent 12 }}
{{- with .Values.cleanuparr.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.cleanuparr.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.cleanuparr.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- end }}
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
{{- if and .Values.cleanuperr.enabled .Values.cleanuperr.autoscaling.enabled }}
{{- if and .Values.cleanuparr.enabled .Values.cleanuparr.autoscaling.enabled }}
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
name: {{ .Release.Name }}-cleanuperr
name: {{ .Release.Name }}-cleanuparr
labels:
app.kubernetes.io/name: cleanuperr
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: {{ .Release.Name }}-cleanuperr
minReplicas: {{ .Values.cleanuperr.autoscaling.minReplicas }}
maxReplicas: {{ .Values.cleanuperr.autoscaling.maxReplicas }}
name: {{ .Release.Name }}-cleanuparr
minReplicas: {{ .Values.cleanuparr.autoscaling.minReplicas }}
maxReplicas: {{ .Values.cleanuparr.autoscaling.maxReplicas }}
metrics:
{{- if .Values.cleanuperr.autoscaling.targetCPUUtilizationPercentage }}
{{- if .Values.cleanuparr.autoscaling.targetCPUUtilizationPercentage }}
- type: Resource
resource:
name: cpu
targetAverageUtilization: {{ .Values.cleanuperr.autoscaling.targetCPUUtilizationPercentage }}
targetAverageUtilization: {{ .Values.cleanuparr.autoscaling.targetCPUUtilizationPercentage }}
{{- end }}
{{- if .Values.cleanuperr.autoscaling.targetMemoryUtilizationPercentage }}
{{- if .Values.cleanuparr.autoscaling.targetMemoryUtilizationPercentage }}
- type: Resource
resource:
name: memory
targetAverageUtilization: {{ .Values.cleanuperr.autoscaling.targetMemoryUtilizationPercentage }}
targetAverageUtilization: {{ .Values.cleanuparr.autoscaling.targetMemoryUtilizationPercentage }}
{{- end }}
{{- end }}
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{{- if and .Values.readarr.enabled .Values.readarr.ingress.enabled }}
{{- $fullName := printf "%s-readarr" .Release.Name -}}
{{- $svcPort := .Values.readarr.service.port -}}
{{- if and .Values.readarr.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
{{- if not (hasKey .Values.readarr.ingress.annotations "kubernetes.io/ingress.class") }}
{{- $_ := set .Values.readarr.ingress.annotations "kubernetes.io/ingress.class" .Values.readarr.ingress.className}}
{{- if and .Values.cleanuparr.enabled .Values.cleanuparr.ingress.enabled -}}
{{- $fullName := printf "%s-cleanuparr" .Release.Name -}}
{{- $svcPort := .Values.cleanuparr.service.port -}}
{{- if and .Values.cleanuparr.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
{{- if not (hasKey .Values.cleanuparr.ingress.annotations "kubernetes.io/ingress.class") }}
{{- $_ := set .Values.cleanuparr.ingress.annotations "kubernetes.io/ingress.class" .Values.cleanuparr.ingress.className}}
{{- end }}
{{- end }}
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
Expand All @@ -17,21 +17,21 @@ kind: Ingress
metadata:
name: {{ $fullName }}
labels:
app.kubernetes.io/name: readarr
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
{{- with .Values.readarr.ingress.annotations }}
{{- with .Values.cleanuparr.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if and .Values.readarr.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
ingressClassName: {{ .Values.readarr.ingress.className }}
{{- if and .Values.cleanuparr.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
ingressClassName: {{ .Values.cleanuparr.ingress.className }}
{{- end }}
{{- if .Values.readarr.ingress.tls }}
{{- if .Values.cleanuparr.ingress.tls }}
tls:
{{- range .Values.readarr.ingress.tls }}
{{- range .Values.cleanuparr.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
Expand All @@ -40,7 +40,7 @@ spec:
{{- end }}
{{- end }}
rules:
{{- range .Values.readarr.ingress.hosts }}
{{- range .Values.cleanuparr.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
Expand Down
24 changes: 24 additions & 0 deletions charts/servarr/templates/cleanuparr/pvc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{{- if and .Values.cleanuparr.enabled .Values.cleanuparr.persistence.enabled (not .Values.cleanuparr.persistence.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ .Release.Name }}-cleanuparr
labels:
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
{{- if .Values.cleanuparr.persistence.annotations }}
annotations:
{{- toYaml .Values.cleanuparr.persistence.annotations | nindent 4 }}
{{- end }}
spec:
accessModes:
- {{ .Values.cleanuparr.persistence.accessMode | quote }}
{{- if .Values.cleanuparr.persistence.storageClass }}
storageClassName: {{ .Values.cleanuparr.persistence.storageClass | quote }}
{{- end }}
resources:
requests:
storage: {{ .Values.cleanuparr.persistence.size | quote }}
{{- end }}
24 changes: 24 additions & 0 deletions charts/servarr/templates/cleanuparr/service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{{- if .Values.cleanuparr.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-cleanuparr
labels:
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
spec:
type: {{ .Values.cleanuparr.service.type | default "ClusterIP" }}
ports:
- port: {{ .Values.cleanuparr.service.port | default 11011 }}
targetPort: http
protocol: TCP
name: http
{{ if (and (eq .Values.cleanuparr.service.type "NodePort") (not (empty .Values.cleanuparr.service.nodePort))) }}
nodePort: {{.Values.cleanuparr.service.nodePort}}
{{ end }}
selector:
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{{- if and .Values.cleanuperr.enabled .Values.cleanuperr.serviceAccount.create }}
{{- if and .Values.cleanuparr.enabled .Values.cleanuparr.serviceAccount.create }}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ .Release.Name }}-cleanuperr
name: {{ .Release.Name }}-cleanuparr
labels:
app.kubernetes.io/name: cleanuperr
app.kubernetes.io/name: cleanuparr
app.kubernetes.io/instance: {{ .Release.Name | quote }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service | quote }}
{{- with .Values.cleanuperr.serviceAccount.annotations }}
{{- with .Values.cleanuparr.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
Expand Down
18 changes: 0 additions & 18 deletions charts/servarr/templates/cleanuperr/configmap.yaml

This file was deleted.

Loading
Loading