From f906558832a6c6620fb8557d256176f54b71df09 Mon Sep 17 00:00:00 2001 From: Vegard Hagen Date: Mon, 10 Apr 2023 09:44:31 +0200 Subject: [PATCH] feat(lidarr): Deploying Lidarr using Helm Chart --- apps/arr/ingress.yaml | 14 +++--- apps/arr/kustomization.yaml | 3 +- apps/arr/lidarr.yaml | 47 +++++++++++++++++++ apps/arr/lidarr/kustomization.yaml | 2 + apps/arr/prowlarr/kustomization.yaml | 2 + apps/arr/radarr/kustomization.yaml | 2 + apps/arr/sonarr/kustomization.yaml | 2 + apps/arr/torrent/kustomization.yaml | 2 + .../traefik-forward-auth/kustomization.yaml | 2 + .../templates/application/deployment.yaml | 15 +++++- helm/application/values.yaml | 9 +++- infra/argocd/applications.yaml | 2 + 12 files changed, 91 insertions(+), 11 deletions(-) create mode 100644 apps/arr/lidarr.yaml diff --git a/apps/arr/ingress.yaml b/apps/arr/ingress.yaml index fab8c1f..a207cd9 100644 --- a/apps/arr/ingress.yaml +++ b/apps/arr/ingress.yaml @@ -41,12 +41,12 @@ spec: port: 7878 middlewares: - name: traefik-forward-auth - - match: Host(`lidarr.stonegarden.dev`) - kind: Rule - services: - - name: lidarr - port: 8686 - middlewares: - - name: traefik-forward-auth +# - match: Host(`lidarr.stonegarden.dev`) +# kind: Rule +# services: +# - name: lidarr +# port: 8686 +# middlewares: +# - name: traefik-forward-auth tls: certResolver: letsencrypt \ No newline at end of file diff --git a/apps/arr/kustomization.yaml b/apps/arr/kustomization.yaml index bfb87cd..fd47d24 100644 --- a/apps/arr/kustomization.yaml +++ b/apps/arr/kustomization.yaml @@ -1,6 +1,5 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: arr resources: - ingress.yaml @@ -9,4 +8,4 @@ resources: - prowlarr - sonarr - radarr - - lidarr + - lidarr.yaml \ No newline at end of file diff --git a/apps/arr/lidarr.yaml b/apps/arr/lidarr.yaml new file mode 100644 index 0000000..43b4dbe --- /dev/null +++ b/apps/arr/lidarr.yaml @@ -0,0 +1,47 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: lidarr + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: applications + source: + path: helm/application + repoURL: https://github.com/vehagn/homelab + targetRevision: HEAD + helm: + values: | + name: lidarr + namespace: arr + image: + name: lscr.io/linuxserver/lidarr + hostVolumes: + - name: lidarr-config + hostPath: /disk/etc/lidarr + mountPath: /config + - name: media-data + hostPath: /disk/data + mountPath: /app/data + env: + - name: PUID + value: "1000" + - name: PGID + value: "1000" + - name: TZ + value: Europe/Oslo + service: + containerPort: 8686 + auth: + enabled: true + create: false + destination: + namespace: arr + name: in-cluster + syncPolicy: + automated: + selfHeal: true + prune: true + syncOptions: + - CreateNamespace=true diff --git a/apps/arr/lidarr/kustomization.yaml b/apps/arr/lidarr/kustomization.yaml index 91d6e3f..d3c2a75 100644 --- a/apps/arr/lidarr/kustomization.yaml +++ b/apps/arr/lidarr/kustomization.yaml @@ -1,5 +1,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: arr + commonLabels: app: lidarr diff --git a/apps/arr/prowlarr/kustomization.yaml b/apps/arr/prowlarr/kustomization.yaml index af9be5e..17b1d31 100644 --- a/apps/arr/prowlarr/kustomization.yaml +++ b/apps/arr/prowlarr/kustomization.yaml @@ -1,5 +1,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: arr + commonLabels: app: prowlarr diff --git a/apps/arr/radarr/kustomization.yaml b/apps/arr/radarr/kustomization.yaml index 893b06c..0d96de0 100644 --- a/apps/arr/radarr/kustomization.yaml +++ b/apps/arr/radarr/kustomization.yaml @@ -1,5 +1,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: arr + commonLabels: app: radarr diff --git a/apps/arr/sonarr/kustomization.yaml b/apps/arr/sonarr/kustomization.yaml index f001c48..233ea90 100644 --- a/apps/arr/sonarr/kustomization.yaml +++ b/apps/arr/sonarr/kustomization.yaml @@ -1,5 +1,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: arr + commonLabels: app: sonarr diff --git a/apps/arr/torrent/kustomization.yaml b/apps/arr/torrent/kustomization.yaml index ee928c2..aa10d4a 100644 --- a/apps/arr/torrent/kustomization.yaml +++ b/apps/arr/torrent/kustomization.yaml @@ -1,5 +1,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: arr + commonLabels: app: qbittorrent diff --git a/apps/arr/traefik-forward-auth/kustomization.yaml b/apps/arr/traefik-forward-auth/kustomization.yaml index 01e7632..0d0a8c7 100644 --- a/apps/arr/traefik-forward-auth/kustomization.yaml +++ b/apps/arr/traefik-forward-auth/kustomization.yaml @@ -1,5 +1,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: arr + commonLabels: app: traefik-forward-auth diff --git a/helm/application/templates/application/deployment.yaml b/helm/application/templates/application/deployment.yaml index bcb4b13..b73f1d1 100644 --- a/helm/application/templates/application/deployment.yaml +++ b/helm/application/templates/application/deployment.yaml @@ -14,13 +14,26 @@ spec: labels: app: {{ .Values.name }} spec: + volumes: + {{- range .Values.hostVolumes }} + - name: {{ .name }} + hostPath: + path: {{ .hostPath }} + {{- end }} containers: - name: {{ .Values.name }} image: {{ .Values.image.name }} imagePullPolicy: {{ .Values.image.pullPolicy }} + volumeMounts: + {{- range .Values.hostVolumes }} + - name: {{ .name }} + mountPath: {{ .mountPath }} + {{- end }} + env: + {{- toYaml .Values.env | nindent 12 }} ports: - name: http - containerPort: {{ .Values.service.port }} + containerPort: {{ .Values.service.containerPort }} protocol: TCP resources: {{- toYaml .Values.resources | nindent 12 }} diff --git a/helm/application/values.yaml b/helm/application/values.yaml index dd8d816..a85a918 100644 --- a/helm/application/values.yaml +++ b/helm/application/values.yaml @@ -20,7 +20,14 @@ service: ingressRoute: create: true -resources: { } +env: [] + +hostVolumes: [] + # - name: volume-name + # hostPath: /host/path + # mountPath: /container/path + +resources: {} # limits: # cpu: 100m # memory: 128Mi diff --git a/infra/argocd/applications.yaml b/infra/argocd/applications.yaml index 74b6df9..6b6f8a0 100644 --- a/infra/argocd/applications.yaml +++ b/infra/argocd/applications.yaml @@ -9,6 +9,8 @@ spec: sourceRepos: - 'https://github.com/vehagn/*' destinations: + - namespace: 'argocd' + server: '*' - namespace: 'arr' server: '*' - namespace: 'home-assistant'