Compare commits

...

4 Commits

Author SHA1 Message Date
35c7223d40 change tls secret name 2024-03-15 22:37:38 -06:00
32bda525a1 change proxy auth to code server 2024-03-15 22:36:45 -06:00
42231a40f4 add tubearchivist-to-jellyfin 2024-03-15 19:12:12 -06:00
76c6016a9e change redis image 2024-03-15 02:23:23 -06:00
20 changed files with 132 additions and 49 deletions

View File

@@ -1,6 +1,6 @@
apiVersion: v2 apiVersion: v2
name: cops name: cops
version: 0.0.1 version: 0.0.2
description: Chart for Calibre OPDS (and HTML) PHP Server description: Chart for Calibre OPDS (and HTML) PHP Server
keywords: keywords:
- calibre - calibre

View File

@@ -17,7 +17,7 @@ spec:
tls: tls:
- hosts: - hosts:
- {{ .Values.ingress.host }} - {{ .Values.ingress.host }}
secretName: {{ .Release.Name }}-tls-secret secretName: {{ .Release.Name }}-secret-tls
rules: rules:
- host: {{ .Values.ingress.host }} - host: {{ .Values.ingress.host }}
http: http:

View File

@@ -1,6 +1,6 @@
apiVersion: v2 apiVersion: v2
name: home-assistant name: home-assistant
version: 0.0.16 version: 0.1.0
description: Chart for Home Assistant description: Chart for Home Assistant
keywords: keywords:
- home-automation - home-automation

View File

@@ -4,7 +4,7 @@ metadata:
name: home-assistant name: home-assistant
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
@@ -16,15 +16,15 @@ spec:
type: {{ .Values.deployment.strategy }} type: {{ .Values.deployment.strategy }}
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
template: template:
metadata: metadata:
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
spec: spec:
serviceAccountName: home-assistant serviceAccountName: {{ .Release.Name }}
automountServiceAccountToken: true automountServiceAccountToken: true
containers: containers:
- name: {{ .Release.Name }} - name: {{ .Release.Name }}
@@ -95,4 +95,4 @@ spec:
volumes: volumes:
- name: home-assistant-config - name: home-assistant-config
persistentVolumeClaim: persistentVolumeClaim:
claimName: home-assistant-config claimName: "{{ .Release.Name }}-config"

View File

@@ -2,35 +2,26 @@
apiVersion: traefik.io/v1alpha1 apiVersion: traefik.io/v1alpha1
kind: IngressRoute kind: IngressRoute
metadata: metadata:
name: home-assistant name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
app.kubernetes.io/part-of: home-assistant app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
entryPoints: entryPoints:
- websecure - websecure
routes: routes:
- kind: Rule - kind: Rule
match: "Host(`{{ .Values.ingressRoute.host }}`)" match: "Host(`{{ .Values.ingressRoute.host }}`)"
middlewares:
- name: "authentik-{{ .Release.Name }}"
namespace: {{ .Release.Namespace }}
priority: 10 priority: 10
services: services:
- kind: Service - kind: Service
name: home-assistant name: {{ .Release.Name }}
port: {{ .Values.service.http.port }} port: {{ .Values.service.http.port }}
- kind: Rule
match: "Host(`{{ .Values.ingressRoute.host }}`) && PathPrefix(`/outpost.goauthentik.io/`)"
priority: 15
services:
- kind: Service
name: {{ .Values.ingressRoute.authentik.outpost }}
port: {{ .Values.ingressRoute.authentik.port }}
{{- end }} {{- end }}
--- ---
@@ -38,23 +29,33 @@ spec:
apiVersion: traefik.io/v1alpha1 apiVersion: traefik.io/v1alpha1
kind: IngressRoute kind: IngressRoute
metadata: metadata:
name: home-assistant-codeserver name: "{{ .Release.Name }}-codeserver"
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
app.kubernetes.io/part-of: home-assistant app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
entryPoints: entryPoints:
- websecure - websecure
routes: routes:
- kind: Rule - kind: Rule
match: "Host(`{{ .Values.codeserver.ingressRoute.host }}`)" match: "Host(`{{ .Values.codeserver.ingressRoute.host }}`)"
middlewares:
- name: "authentik-{{ .Release.Name }}"
namespace: {{ .Release.Namespace }}
priority: 10 priority: 10
services: services:
- kind: Service - kind: Service
name: home-assistant-codeserver name: "{{ .Release.Name }}-codeserver"
port: {{ .Values.codeserver.service.http.port }} port: {{ .Values.codeserver.service.http.port }}
- kind: Rule
match: "Host(`{{ .Values.ingressRoute.host }}`) && PathPrefix(`/outpost.goauthentik.io/`)"
priority: 15
services:
- kind: Service
name: {{ .Values.ingressRoute.authentik.outpost }}
port: {{ .Values.ingressRoute.authentik.port }}
{{- end }} {{- end }}

View File

@@ -1,10 +1,10 @@
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
apiVersion: v1 apiVersion: v1
metadata: metadata:
name: home-assistant-config name: "{{ .Release.Name }}-config"
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web

View File

@@ -2,14 +2,14 @@
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
name: home-assistant name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
app.kubernetes.io/part-of: home-assistant app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
groups: groups:
- name: {{ .Release.Name }} - name: {{ .Release.Name }}

View File

@@ -1,11 +1,11 @@
apiVersion: v1 apiVersion: v1
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
name: home-assistant name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
app.kubernetes.io/part-of: home-assistant app.kubernetes.io/part-of: {{ .Release.Name }}

View File

@@ -2,18 +2,18 @@
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
name: home-assistant name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
app.kubernetes.io/part-of: home-assistant app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
endpoints: endpoints:
- port: http - port: http

View File

@@ -1,10 +1,10 @@
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: home-assistant name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
@@ -17,7 +17,7 @@ spec:
protocol: TCP protocol: TCP
name: http name: http
selector: selector:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
--- ---
@@ -25,10 +25,10 @@ spec:
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: home-assistant-codeserver name: "{{ .Release.Name }}-codeserver"
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
@@ -41,6 +41,6 @@ spec:
protocol: TCP protocol: TCP
name: codeserver-http name: codeserver-http
selector: selector:
app.kubernetes.io/name: home-assistant app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }} {{- end }}

View File

@@ -22,7 +22,7 @@ ingressRoute:
enabled: true enabled: true
host: host:
authentik: authentik:
outpost: authentik-proxy-outpost outpost:
port: 9000 port: 9000
metrics: metrics:
enabled: false enabled: false

View File

@@ -1,6 +1,6 @@
apiVersion: v2 apiVersion: v2
name: outline name: outline
version: 0.0.6 version: 0.0.7
description: Chart for Outline wiki description: Chart for Outline wiki
keywords: keywords:
- wiki - wiki

View File

@@ -17,7 +17,7 @@ spec:
tls: tls:
- hosts: - hosts:
- {{ .Values.ingress.host }} - {{ .Values.ingress.host }}
secretName: {{ .Release.Name }}-tls-secret secretName: {{ .Release.Name }}-secret-tls
rules: rules:
- host: {{ .Values.ingress.host }} - host: {{ .Values.ingress.host }}
http: http:

View File

@@ -0,0 +1,14 @@
apiVersion: v2
name: tubearchivist-to-jellyfin
version: 0.0.1
description: Import library from tubearchivist to jellyfin
keywords:
- tubearchivist
- jellyfin
- job
sources:
- https://github.com/tubearchivist/tubearchivist-jf
maintainers:
- name: alexlebens
icon: https://avatars.githubusercontent.com/u/102734415?s=48&v=4
appVersion: "v0.1.2"

View File

@@ -0,0 +1,18 @@
## Introduction
[Tube Archivist Jellyfin Integration](https://github.com/tubearchivist/tubearchivist-jf)
Import your Tube Archivist media folder into Jellyfin
This chart bootstraps a [Tube Archivist Jellyfin Integration](https://github.com/tubearchivist/tubearchivist-jf) CronJob on a [Kubernetes](https://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.
## Prerequisites
- Kubernetes
- Helm
- CronJob
## Parameters
See the [values files](values.yaml).

View File

@@ -0,0 +1,37 @@
apiVersion: batch/v1
kind: CronJob
metadata:
name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: job
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
schedule: {{ .Values.job.schedule }}
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
jobTemplate:
spec:
template:
spec:
restartPolicy: Never
containers:
- name: {{ .Release.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
command: ["python"]
args: ["main.py"]
{{- with .Values.envFrom }}
envFrom:
{{- toYaml . | nindent 16 }}
{{- end }}
volumeMounts:
- name: tubearchivist-youtube
mountPath: /data
volumes:
- name: tubearchivist-youtube
persistentVolumeClaim:
claimName: {{ .Values.persistence.youtube.claimName }}

View File

@@ -0,0 +1,10 @@
job:
schedule: "0 * * * *"
image:
repository: bbilly1/tubearchivist-jf
tag: v0.1.2
pullPolicy: IfNotPresent
envFrom:
persistence:
youtube:
claimName:

View File

@@ -1,6 +1,6 @@
apiVersion: v2 apiVersion: v2
name: tubearchivist name: tubearchivist
version: 0.0.3 version: 0.0.5
sources: sources:
- https://github.com/tubearchivist/tubearchivist - https://github.com/tubearchivist/tubearchivist
- https://github.com/bitnami/charts/tree/main/bitnami/redis - https://github.com/bitnami/charts/tree/main/bitnami/redis

View File

@@ -17,7 +17,7 @@ spec:
tls: tls:
- hosts: - hosts:
- {{ .Values.ingress.host }} - {{ .Values.ingress.host }}
secretName: {{ .Release.Name }}-tls-secret secretName: {{ .Release.Name }}-secret-tls
rules: rules:
- host: {{ .Values.ingress.host }} - host: {{ .Values.ingress.host }}
http: http:

View File

@@ -33,6 +33,9 @@ persistence:
youtube: youtube:
claimName: claimName:
redis: redis:
image:
repository: redis/redis-stack-server
tag: 7.2.0-v9
architecture: standalone architecture: standalone
auth: auth:
enabled: false enabled: false