Compare commits
33 Commits
lazy-libra
...
postgres-c
Author | SHA1 | Date | |
---|---|---|---|
cd91a16c75 | |||
69900d3931 | |||
f80cec8c82 | |||
f3d629fe00 | |||
4d3574ffa8 | |||
f98268fd25 | |||
7514ea022e | |||
a65a0dbcec | |||
6bc5aea01f | |||
80940910a9 | |||
6895b078b5 | |||
27e70a1786 | |||
de21d07a5d | |||
58cc48724b | |||
8a357574e9 | |||
220e9e011b | |||
9483523eb8 | |||
ca205a8802 | |||
36267ada6f | |||
153b7a1ad2 | |||
9b30408661 | |||
947120d73c | |||
a62e24142c | |||
03c825e816 | |||
38c2be01f9 | |||
|
5ac88f9aa8 | ||
|
3c3f1bdb76 | ||
|
718acdc607 | ||
|
71a5d81c09 | ||
|
e2d4c395e5 | ||
fd611813b7 | |||
ab5da15b10 | |||
e584566dde |
10
.github/renovate.json
vendored
10
.github/renovate.json
vendored
@@ -5,7 +5,7 @@
|
|||||||
"mergeConfidence:all-badges",
|
"mergeConfidence:all-badges",
|
||||||
":rebaseStalePrs"
|
":rebaseStalePrs"
|
||||||
],
|
],
|
||||||
"timezone": "US/Mountain",
|
"timezone": "US/Central",
|
||||||
"schedule": [
|
"schedule": [
|
||||||
"every weekday"
|
"every weekday"
|
||||||
],
|
],
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "Label service images",
|
"description": "Label service images",
|
||||||
"matchPackageNames": [
|
"matchDepNames": [
|
||||||
"ghcr.io/alex1989hu/kubelet-serving-cert-approver",
|
"ghcr.io/alex1989hu/kubelet-serving-cert-approver",
|
||||||
"ghcr.io/cloudnative-pg/postgresql",
|
"ghcr.io/cloudnative-pg/postgresql",
|
||||||
"redis/redis-stack-server"
|
"redis/redis-stack-server"
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "Label service charts",
|
"description": "Label service charts",
|
||||||
"matchPackageNames": [
|
"matchDepNames": [
|
||||||
"elasticsearch",
|
"elasticsearch",
|
||||||
"redis"
|
"redis"
|
||||||
],
|
],
|
||||||
@@ -73,7 +73,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "Label application images",
|
"description": "Label application images",
|
||||||
"matchPackageNames": [
|
"matchDepNames": [
|
||||||
"bbilly1/tubearchivist-jf",
|
"bbilly1/tubearchivist-jf",
|
||||||
"bbilly1/tubearchivist",
|
"bbilly1/tubearchivist",
|
||||||
"freshrss/freshrss",
|
"freshrss/freshrss",
|
||||||
@@ -97,7 +97,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "Label application charts",
|
"description": "Label application charts",
|
||||||
"matchPackageNames": [],
|
"matchDepNames": [],
|
||||||
"matchDatasources": [
|
"matchDatasources": [
|
||||||
"helm"
|
"helm"
|
||||||
],
|
],
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: calibre-server
|
name: calibre-server
|
||||||
version: 0.0.6
|
version: 0.0.8
|
||||||
description: Chart for Calibre content database
|
description: Chart for Calibre content database
|
||||||
keywords:
|
keywords:
|
||||||
- media
|
- media
|
||||||
|
@@ -31,4 +31,5 @@ spec:
|
|||||||
- kind: Service
|
- kind: Service
|
||||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||||
port: {{ .Values.ingressRoute.authentik.port }}
|
port: {{ .Values.ingressRoute.authentik.port }}
|
||||||
|
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
{{- if .Values.ingressRoute.enabled }}
|
{{- if .Values.ingressRoute.enabled }}
|
||||||
apiVersion: traefik.containo.us/v1alpha1
|
apiVersion: traefik.io/v1alpha1
|
||||||
kind: Middleware
|
kind: Middleware
|
||||||
metadata:
|
metadata:
|
||||||
name: "authentik-{{ .Release.Name }}"
|
name: "authentik-{{ .Release.Name }}"
|
||||||
|
@@ -31,8 +31,9 @@ ingressRoute:
|
|||||||
http:
|
http:
|
||||||
host:
|
host:
|
||||||
authentik:
|
authentik:
|
||||||
outpost:
|
outpost: ""
|
||||||
port: 9000
|
port: 9000
|
||||||
|
namespace: ""
|
||||||
persistence:
|
persistence:
|
||||||
config:
|
config:
|
||||||
storageClassName: default
|
storageClassName: default
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: home-assistant
|
name: home-assistant
|
||||||
version: 0.1.10
|
version: 0.1.15
|
||||||
description: Chart for Home Assistant
|
description: Chart for Home Assistant
|
||||||
keywords:
|
keywords:
|
||||||
- home-automation
|
- home-automation
|
||||||
@@ -9,4 +9,4 @@ sources:
|
|||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
icon: https://avatars.githubusercontent.com/u/13844975?s=200&v=4
|
icon: https://avatars.githubusercontent.com/u/13844975?s=200&v=4
|
||||||
appVersion: v2024.4.3
|
appVersion: v2024.5.3
|
||||||
|
@@ -18,7 +18,7 @@ spec:
|
|||||||
match: "Host(`{{ .Values.ingressRoute.host }}`)"
|
match: "Host(`{{ .Values.ingressRoute.host }}`)"
|
||||||
middlewares:
|
middlewares:
|
||||||
- name: "authentik-{{ .Release.Name }}"
|
- name: "authentik-{{ .Release.Name }}"
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
priority: 10
|
priority: 10
|
||||||
services:
|
services:
|
||||||
- kind: Service
|
- kind: Service
|
||||||
@@ -30,7 +30,8 @@ spec:
|
|||||||
services:
|
services:
|
||||||
- kind: Service
|
- kind: Service
|
||||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||||
port: {{ .Values.ingressRoute.authentik.port }}
|
port: {{ .Values.ingressRoute.authentik.port }}
|
||||||
|
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -54,7 +55,7 @@ spec:
|
|||||||
match: "Host(`{{ .Values.codeserver.ingressRoute.host }}`)"
|
match: "Host(`{{ .Values.codeserver.ingressRoute.host }}`)"
|
||||||
middlewares:
|
middlewares:
|
||||||
- name: "authentik-{{ .Release.Name }}"
|
- name: "authentik-{{ .Release.Name }}"
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
priority: 10
|
priority: 10
|
||||||
services:
|
services:
|
||||||
- kind: Service
|
- kind: Service
|
||||||
@@ -66,5 +67,6 @@ spec:
|
|||||||
services:
|
services:
|
||||||
- kind: Service
|
- kind: Service
|
||||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||||
port: {{ .Values.ingressRoute.authentik.port }}
|
port: {{ .Values.ingressRoute.authentik.port }}
|
||||||
|
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
{{- if .Values.ingressRoute.enabled }}
|
{{- if .Values.ingressRoute.enabled }}
|
||||||
apiVersion: traefik.containo.us/v1alpha1
|
apiVersion: traefik.io/v1alpha1
|
||||||
kind: Middleware
|
kind: Middleware
|
||||||
metadata:
|
metadata:
|
||||||
name: "authentik-{{ .Release.Name }}"
|
name: "authentik-{{ .Release.Name }}"
|
||||||
|
@@ -3,7 +3,7 @@ deployment:
|
|||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
image:
|
image:
|
||||||
repository: homeassistant/home-assistant
|
repository: homeassistant/home-assistant
|
||||||
tag: 2024.4.3
|
tag: 2024.5.3
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
env:
|
env:
|
||||||
TZ: UTC
|
TZ: UTC
|
||||||
@@ -22,8 +22,9 @@ ingressRoute:
|
|||||||
enabled: true
|
enabled: true
|
||||||
host:
|
host:
|
||||||
authentik:
|
authentik:
|
||||||
outpost:
|
outpost: ""
|
||||||
port: 9000
|
port: 9000
|
||||||
|
namespace: ""
|
||||||
metrics:
|
metrics:
|
||||||
enabled: false
|
enabled: false
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
@@ -56,7 +57,7 @@ codeserver:
|
|||||||
enabled: false
|
enabled: false
|
||||||
image:
|
image:
|
||||||
repository: linuxserver/code-server
|
repository: linuxserver/code-server
|
||||||
tag: 4.23.1
|
tag: 4.89.1
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
env:
|
env:
|
||||||
TZ: UTC
|
TZ: UTC
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: homepage
|
name: homepage
|
||||||
version: 0.0.11
|
version: 0.0.15
|
||||||
description: Chart for benphelps homepage
|
description: Chart for benphelps homepage
|
||||||
keywords:
|
keywords:
|
||||||
- dashboard
|
- dashboard
|
||||||
@@ -9,4 +9,4 @@ sources:
|
|||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
icon: https://github.com/benphelps/homepage/blob/de584eae8f12a0d257e554e9511ef19bd2a1232c/public/mstile-150x150.png
|
icon: https://github.com/benphelps/homepage/blob/de584eae8f12a0d257e554e9511ef19bd2a1232c/public/mstile-150x150.png
|
||||||
appVersion: v0.8.12
|
appVersion: v0.8.13
|
||||||
|
@@ -9,6 +9,10 @@ metadata:
|
|||||||
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: homepage
|
app.kubernetes.io/part-of: homepage
|
||||||
|
annotations:
|
||||||
|
{{- with .Values.deployment.annotations }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
revisionHistoryLimit: 3
|
revisionHistoryLimit: 3
|
||||||
replicas: {{ .Values.deployment.replicas }}
|
replicas: {{ .Values.deployment.replicas }}
|
||||||
|
@@ -30,3 +30,4 @@ spec:
|
|||||||
- kind: Service
|
- kind: Service
|
||||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||||
port: {{ .Values.ingressRoute.authentik.port }}
|
port: {{ .Values.ingressRoute.authentik.port }}
|
||||||
|
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
apiVersion: traefik.containo.us/v1alpha1
|
apiVersion: traefik.io/v1alpha1
|
||||||
kind: Middleware
|
kind: Middleware
|
||||||
metadata:
|
metadata:
|
||||||
name: "authentik-{{ .Release.Name }}"
|
name: "authentik-{{ .Release.Name }}"
|
||||||
|
@@ -1,9 +1,10 @@
|
|||||||
deployment:
|
deployment:
|
||||||
|
annotations: {}
|
||||||
replicas: 1
|
replicas: 1
|
||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/gethomepage/homepage
|
repository: ghcr.io/gethomepage/homepage
|
||||||
tag: v0.8.12
|
tag: v0.8.13
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
env:
|
env:
|
||||||
envFrom:
|
envFrom:
|
||||||
@@ -18,10 +19,11 @@ service:
|
|||||||
http:
|
http:
|
||||||
port: 3000
|
port: 3000
|
||||||
ingressRoute:
|
ingressRoute:
|
||||||
host:
|
host: ""
|
||||||
authentik:
|
authentik:
|
||||||
outpost:
|
outpost: ""
|
||||||
port: 9000
|
port: 9000
|
||||||
|
namespace: ""
|
||||||
config:
|
config:
|
||||||
bookmarks:
|
bookmarks:
|
||||||
services:
|
services:
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
apiVersion: v2
|
|
||||||
name: kyoo
|
|
||||||
version: 0.1.9
|
|
||||||
description: Chart for Kyoo
|
|
||||||
keywords:
|
|
||||||
- media
|
|
||||||
sources:
|
|
||||||
- https://github.com/zoriya/Kyoo
|
|
||||||
- https://github.com/rabbitmq/rabbitmq-server
|
|
||||||
- https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq
|
|
||||||
- https://github.com/meilisearch/meilisearch
|
|
||||||
- https://github.com/meilisearch/meilisearch-kubernetes/tree/main/charts/meilisearch
|
|
||||||
maintainers:
|
|
||||||
- name: alexlebens
|
|
||||||
icon: https://raw.githubusercontent.com/zoriya/Kyoo/master/icons/icon-256x256.png
|
|
||||||
dependencies:
|
|
||||||
- name: rabbitmq
|
|
||||||
version: 14.0.1
|
|
||||||
repository: https://charts.bitnami.com/bitnami
|
|
||||||
- name: meilisearch
|
|
||||||
version: 0.6.1
|
|
||||||
repository: https://meilisearch.github.io/meilisearch-kubernetes
|
|
||||||
appVersion: v4.4.0
|
|
@@ -1,17 +0,0 @@
|
|||||||
## Introduction
|
|
||||||
|
|
||||||
[Kyoo](https://github.com/zoriya/Kyoo)
|
|
||||||
|
|
||||||
A portable and vast media library solution.
|
|
||||||
|
|
||||||
This chart bootstraps a [Kyoo](https://github.com/zoriya/Kyoo) deployment on a [Kubernetes](https://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.
|
|
||||||
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
|
|
||||||
- Kubernetes
|
|
||||||
- Helm
|
|
||||||
|
|
||||||
## Parameters
|
|
||||||
|
|
||||||
See the [values files](values.yaml).
|
|
@@ -1,155 +0,0 @@
|
|||||||
{{/*
|
|
||||||
Expand the name of the chart.
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.name" -}}
|
|
||||||
{{- default .Chart.Name .Values.global.nameOverride | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create a default fully qualified app name.
|
|
||||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.fullname" -}}
|
|
||||||
{{- if .Values.global.fullnameOverride -}}
|
|
||||||
{{- .Values.global.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- else -}}
|
|
||||||
{{- $name := default .Chart.Name .Values.global.nameOverride -}}
|
|
||||||
{{- if contains $name .Release.Name -}}
|
|
||||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- else -}}
|
|
||||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create chart name and version as used by the chart label
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.chart" -}}
|
|
||||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Common labels
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Common labels for specific components
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.autosync.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-autosync
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.back.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-back
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.front.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-front
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.matcher.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-matcher
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.migrations.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-migrations
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.scanner.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-scanner
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.transcoder.labels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-transcoder
|
|
||||||
helm.sh/chart: {{ template "kyoo.chart" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Labels to use on deploy.spec.selector.matchLabels and svc.spec.selector
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.autosync.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-autosync
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.back.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-back
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.front.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-front
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.matcher.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-matcher
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.migrations.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-migrations
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.scanner.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-scanner
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- define "kyoo.transcoder.matchLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ template "kyoo.name" . }}-transcoder
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create the name of the service account to use
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.serviceAccountName" -}}
|
|
||||||
{{- if .Values.serviceAccount.create -}}
|
|
||||||
{{ default (include "kyoo.fullname" .) .Values.serviceAccount.name }}
|
|
||||||
{{- else -}}
|
|
||||||
{{ default "default" .Values.serviceAccount.name }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create the name of the back persistent volume
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.backVolumeName" -}}
|
|
||||||
{{- if .Values.persistence.back.existingClaim -}}
|
|
||||||
{{ .Values.persistence.back.existingClaim }}
|
|
||||||
{{- else -}}
|
|
||||||
{{ printf "%s-back" (include "kyoo.fullname" .) | trunc 63 | trimSuffix "-" }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create the name of the metadata persistent volume
|
|
||||||
*/}}
|
|
||||||
{{- define "kyoo.metadataVolumeName" -}}
|
|
||||||
{{- if .Values.persistence.metadata.existingClaim -}}
|
|
||||||
{{ .Values.persistence.metadata.existingClaim }}
|
|
||||||
{{- else -}}
|
|
||||||
{{ printf "%s-metadata" (include "kyoo.fullname" .) | trunc 63 | trimSuffix "-" }}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
@@ -1,75 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-autosync
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.autosync.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.autosync.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.autosync.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.autosync.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-autosync
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.autosync.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.autosync.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.autosync.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.autosync.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.autosync.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-autosync
|
|
||||||
image: "{{ .Values.autosync.image.repository }}:{{ .Values.autosync.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.autosync.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.autosync.resources | nindent 12 }}
|
|
||||||
env:
|
|
||||||
- name: RABBITMQ_HOST
|
|
||||||
value: {{ template "kyoo.fullname" . }}-rabbitmq
|
|
||||||
- name: RABBITMQ_DEFAULT_USER
|
|
||||||
value: "{{ .Values.rabbitmq.auth.username }}"
|
|
||||||
- name: RABBITMQ_DEFAULT_PASS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.rabbitmq.auth.existingPasswordSecret }}"
|
|
||||||
key: "{{ .Values.rabbitmq.auth.existingSecretPasswordKey }}"
|
|
||||||
{{ if .Values.config.secretAPIKey.existingSimklSecretKey }}
|
|
||||||
- name: OIDC_SIMKL_CLIENTID
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingSimklSecretKey }}"
|
|
||||||
{{ end }}
|
|
||||||
{{- with .Values.autosync.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
@@ -1,173 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-back
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.back.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.back.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.back.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.back.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-back
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.back.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.back.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.back.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.back.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.back.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-back
|
|
||||||
image: "{{ .Values.back.image.repository }}:{{ .Values.back.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.back.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.back.resources | nindent 12 }}
|
|
||||||
ports:
|
|
||||||
- name: kyoo-back
|
|
||||||
containerPort: {{ .Values.back.service.port }}
|
|
||||||
protocol: TCP
|
|
||||||
volumeMounts:
|
|
||||||
- name: kyoo-back
|
|
||||||
mountPath: /kyoo
|
|
||||||
env:
|
|
||||||
{{- with .Values.back.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: REQUIRE_ACCOUNT_VERIFICATION
|
|
||||||
value: "{{ .Values.config.requireAccountVerification }}"
|
|
||||||
- name: UNLOGGED_PERMISSIONS
|
|
||||||
value: "{{ .Values.config.unloggedPermissions }}"
|
|
||||||
- name: DEFAULT_PERMISSIONS
|
|
||||||
value: "{{ .Values.config.defaultPermissions }}"
|
|
||||||
- name: AUTHENTICATION_SECRET
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAuthenticationKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAuthenticationKey.existingSecretKey }}"
|
|
||||||
- name: KYOO_APIKEYS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingKyooSecretKey }}"
|
|
||||||
- name: PUBLIC_URL
|
|
||||||
value: "{{ .Values.config.publicUrl }}"
|
|
||||||
- name: POSTGRES_USER
|
|
||||||
value: "{{ .Values.config.postgresql.username }}"
|
|
||||||
- name: POSTGRES_PASSWORD
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.postgresql.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.postgresql.passwordKey }}"
|
|
||||||
- name: POSTGRES_DB
|
|
||||||
value: "{{ .Values.config.postgresql.database }}"
|
|
||||||
- name: POSTGRES_SERVER
|
|
||||||
value: "{{ .Values.config.postgresql.host }}"
|
|
||||||
- name: POSTGRES_PORT
|
|
||||||
value: "{{ .Values.config.postgresql.port }}"
|
|
||||||
|
|
||||||
{{ if .Values.config.oidc.enabled }}
|
|
||||||
- name: OIDC_SERVICE_NAME
|
|
||||||
value: "{{ .Values.config.oidc.name }}"
|
|
||||||
- name: OIDC_SERVICE_LOGO
|
|
||||||
value: "{{ .Values.config.oidc.logo }}"
|
|
||||||
- name: OIDC_SERVICE_AUTHORIZATION
|
|
||||||
value: "{{ .Values.config.oidc.authorization }}"
|
|
||||||
- name: OIDC_SERVICE_TOKEN
|
|
||||||
value: "{{ .Values.config.oidc.token }}"
|
|
||||||
- name: OIDC_SERVICE_PROFILE
|
|
||||||
value: "{{ .Values.config.oidc.profile }}"
|
|
||||||
- name: OIDC_SERVICE_SCOPE
|
|
||||||
value: "{{ .Values.config.oidc.scope }}"
|
|
||||||
- name: OIDC_CLIENT_ID
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.oidc.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.oidc.clientIDKey }}"
|
|
||||||
- name: OIDC_CLIENT_SECRET
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.oidc.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.oidc.secretIDKey }}"
|
|
||||||
{{ end }}
|
|
||||||
|
|
||||||
- name: MEILI_HOST
|
|
||||||
value: http://{{ template "kyoo.fullname" . }}-meilisearch.{{ .Release.Namespace }}:{{ .Values.meilisearch.service.port }}
|
|
||||||
- name: MEILI_MASTER_KEY
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.meilisearch.auth.existingMasterKeySecret }}"
|
|
||||||
key: MEILI_MASTER_KEY
|
|
||||||
- name: RABBITMQ_HOST
|
|
||||||
value: {{ template "kyoo.fullname" . }}-rabbitmq
|
|
||||||
- name: RABBITMQ_DEFAULT_USER
|
|
||||||
value: "{{ .Values.rabbitmq.auth.username }}"
|
|
||||||
- name: RABBITMQ_DEFAULT_PASS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.rabbitmq.auth.existingPasswordSecret }}"
|
|
||||||
key: "{{ .Values.rabbitmq.auth.existingSecretPasswordKey }}"
|
|
||||||
|
|
||||||
{{- if .Values.back.livenessProbe.enabled }}
|
|
||||||
livenessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: {{ .Values.back.livenessProbe.path }}
|
|
||||||
port: {{ .Values.back.service.port }}
|
|
||||||
initialDelaySeconds: {{ .Values.back.livenessProbe.initialDelaySeconds }}
|
|
||||||
periodSeconds: {{ .Values.back.livenessProbe.periodSeconds }}
|
|
||||||
timeoutSeconds: {{ .Values.back.livenessProbe.timeoutSeconds }}
|
|
||||||
successThreshold: {{ .Values.back.livenessProbe.successThreshold }}
|
|
||||||
failureThreshold: {{ .Values.back.livenessProbe.failureThreshold }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- if .Values.back.readinessProbe.enabled }}
|
|
||||||
readinessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: {{ .Values.back.livenessProbe.path }}
|
|
||||||
port: {{ .Values.back.service.port }}
|
|
||||||
initialDelaySeconds: {{ .Values.back.readinessProbe.initialDelaySeconds }}
|
|
||||||
periodSeconds: {{ .Values.back.readinessProbe.periodSeconds }}
|
|
||||||
timeoutSeconds: {{ .Values.back.readinessProbe.timeoutSeconds }}
|
|
||||||
successThreshold: {{ .Values.back.readinessProbe.successThreshold }}
|
|
||||||
failureThreshold: {{ .Values.back.readinessProbe.failureThreshold }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: kyoo-back
|
|
||||||
{{- if .Values.persistence.back.enabled }}
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: {{ include "kyoo.backVolumeName" . }}
|
|
||||||
{{- else }}
|
|
||||||
emptyDir: {}
|
|
||||||
{{- end }}
|
|
@@ -1,90 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-front
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.front.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.front.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.front.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.front.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-front
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.front.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.front.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.front.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.front.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.front.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-front
|
|
||||||
image: "{{ .Values.front.image.repository }}:{{ .Values.front.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.front.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.front.resources | nindent 12 }}
|
|
||||||
ports:
|
|
||||||
- name: kyoo-front
|
|
||||||
containerPort: {{ .Values.front.service.port }}
|
|
||||||
protocol: TCP
|
|
||||||
env:
|
|
||||||
{{- with .Values.back.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: KYOO_URL
|
|
||||||
value: http://{{ template "kyoo.fullname" . }}-back.{{ .Release.Namespace }}:{{ .Values.back.service.port }}
|
|
||||||
|
|
||||||
{{- if .Values.front.livenessProbe.enabled }}
|
|
||||||
livenessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: {{ .Values.front.livenessProbe.path }}
|
|
||||||
port: {{ .Values.front.service.port }}
|
|
||||||
initialDelaySeconds: {{ .Values.front.livenessProbe.initialDelaySeconds }}
|
|
||||||
periodSeconds: {{ .Values.front.livenessProbe.periodSeconds }}
|
|
||||||
timeoutSeconds: {{ .Values.front.livenessProbe.timeoutSeconds }}
|
|
||||||
successThreshold: {{ .Values.front.livenessProbe.successThreshold }}
|
|
||||||
failureThreshold: {{ .Values.front.livenessProbe.failureThreshold }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- if .Values.front.readinessProbe.enabled }}
|
|
||||||
readinessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: {{ .Values.front.livenessProbe.path }}
|
|
||||||
port: {{ .Values.front.service.port }}
|
|
||||||
initialDelaySeconds: {{ .Values.front.readinessProbe.initialDelaySeconds }}
|
|
||||||
periodSeconds: {{ .Values.front.readinessProbe.periodSeconds }}
|
|
||||||
timeoutSeconds: {{ .Values.front.readinessProbe.timeoutSeconds }}
|
|
||||||
successThreshold: {{ .Values.front.readinessProbe.successThreshold }}
|
|
||||||
failureThreshold: {{ .Values.front.readinessProbe.failureThreshold }}
|
|
||||||
{{- end }}
|
|
@@ -1,92 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-matcher
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.matcher.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.matcher.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.matcher.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.matcher.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-matcher
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.matcher.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.matcher.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.matcher.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.matcher.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.matcher.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-matcher
|
|
||||||
image: "{{ .Values.matcher.image.repository }}:{{ .Values.matcher.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.matcher.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.matcher.resources | nindent 12 }}
|
|
||||||
command:
|
|
||||||
- matcher
|
|
||||||
env:
|
|
||||||
{{- with .Values.back.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: KYOO_URL
|
|
||||||
value: http://{{ template "kyoo.fullname" . }}-back.{{ .Release.Namespace }}:{{ .Values.back.service.port }}
|
|
||||||
|
|
||||||
{{- if .Values.config.secretAPIKey.existingKyooSecretKey }}
|
|
||||||
- name: KYOO_APIKEYS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingKyooSecretKey }}"
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- if .Values.config.secretAPIKey.existingTMDBSecretKey }}
|
|
||||||
- name: THEMOVIEDB_APIKEY
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingTMDBSecretKey }}"
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: LIBRARY_LANGUAGES
|
|
||||||
value: "{{ .Values.config.libraryLanguages }}"
|
|
||||||
- name: RABBITMQ_HOST
|
|
||||||
value: {{ template "kyoo.fullname" . }}-rabbitmq
|
|
||||||
- name: RABBITMQ_DEFAULT_USER
|
|
||||||
value: "{{ .Values.rabbitmq.auth.username }}"
|
|
||||||
- name: RABBITMQ_DEFAULT_PASS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.rabbitmq.auth.existingPasswordSecret }}"
|
|
||||||
key: "{{ .Values.rabbitmq.auth.existingSecretPasswordKey }}"
|
|
@@ -1,133 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-migrations
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.migrations.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.migrations.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.migrations.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.migrations.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-migrations
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.migrations.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.migrations.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.migrations.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.migrations.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.migrations.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-migrations
|
|
||||||
image: "{{ .Values.migrations.image.repository }}:{{ .Values.migrations.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.migrations.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.migrations.resources | nindent 12 }}
|
|
||||||
env:
|
|
||||||
{{- with .Values.back.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: REQUIRE_ACCOUNT_VERIFICATION
|
|
||||||
value: "{{ .Values.config.requireAccountVerification }}"
|
|
||||||
- name: UNLOGGED_PERMISSIONS
|
|
||||||
value: "{{ .Values.config.unloggedPermissions }}"
|
|
||||||
- name: DEFAULT_PERMISSIONS
|
|
||||||
value: "{{ .Values.config.defaultPermissions }}"
|
|
||||||
- name: AUTHENTICATION_SECRET
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAuthenticationKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAuthenticationKey.existingSecretKey }}"
|
|
||||||
- name: KYOO_APIKEYS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingKyooSecretKey }}"
|
|
||||||
- name: PUBLIC_URL
|
|
||||||
value: "{{ .Values.config.publicUrl }}"
|
|
||||||
- name: POSTGRES_USER
|
|
||||||
value: "{{ .Values.config.postgresql.username }}"
|
|
||||||
- name: POSTGRES_PASSWORD
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.postgresql.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.postgresql.passwordKey }}"
|
|
||||||
- name: POSTGRES_DB
|
|
||||||
value: "{{ .Values.config.postgresql.database }}"
|
|
||||||
- name: POSTGRES_SERVER
|
|
||||||
value: "{{ .Values.config.postgresql.host }}"
|
|
||||||
- name: POSTGRES_PORT
|
|
||||||
value: "{{ .Values.config.postgresql.port }}"
|
|
||||||
|
|
||||||
{{ if .Values.config.oidc.enabled }}
|
|
||||||
- name: OIDC_SERVICE_NAME
|
|
||||||
value: "{{ .Values.config.oidc.name }}"
|
|
||||||
- name: OIDC_SERVICE_LOGO
|
|
||||||
value: "{{ .Values.config.oidc.logo }}"
|
|
||||||
- name: OIDC_SERVICE_AUTHORIZATION
|
|
||||||
value: "{{ .Values.config.oidc.authorization }}"
|
|
||||||
- name: OIDC_SERVICE_TOKEN
|
|
||||||
value: "{{ .Values.config.oidc.token }}"
|
|
||||||
- name: OIDC_SERVICE_PROFILE
|
|
||||||
value: "{{ .Values.config.oidc.profile }}"
|
|
||||||
- name: OIDC_SERVICE_SCOPE
|
|
||||||
value: "{{ .Values.config.oidc.scope }}"
|
|
||||||
- name: OIDC_CLIENT_ID
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.oidc.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.oidc.clientIDKey }}"
|
|
||||||
- name: OIDC_CLIENT_SECRET
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.oidc.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.oidc.secretIDKey }}"
|
|
||||||
{{ end }}
|
|
||||||
|
|
||||||
- name: MEILI_HOST
|
|
||||||
value: http://{{ template "kyoo.fullname" . }}-meilisearch.{{ .Release.Namespace }}:{{ .Values.meilisearch.service.port }}
|
|
||||||
- name: MEILI_MASTER_KEY
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.meilisearch.auth.existingMasterKeySecret }}"
|
|
||||||
key: MEILI_MASTER_KEY
|
|
||||||
- name: RABBITMQ_HOST
|
|
||||||
value: {{ template "kyoo.fullname" . }}-rabbitmq
|
|
||||||
- name: RABBITMQ_DEFAULT_USER
|
|
||||||
value: "{{ .Values.rabbitmq.auth.username }}"
|
|
||||||
- name: RABBITMQ_DEFAULT_PASS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.rabbitmq.auth.existingPasswordSecret }}"
|
|
||||||
key: "{{ .Values.rabbitmq.auth.existingSecretPasswordKey }}"
|
|
@@ -1,108 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-scanner
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.scanner.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.scanner.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.scanner.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.scanner.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-scanner
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.scanner.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.scanner.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.scanner.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.scanner.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.scanner.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-scanner
|
|
||||||
image: "{{ .Values.scanner.image.repository }}:{{ .Values.scanner.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.scanner.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.scanner.resources | nindent 12 }}
|
|
||||||
volumeMounts:
|
|
||||||
- name: kyoo-library
|
|
||||||
mountPath: "{{ .Values.persistence.library.mountPath }}"
|
|
||||||
command:
|
|
||||||
- scanner
|
|
||||||
env:
|
|
||||||
{{- with .Values.back.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: KYOO_URL
|
|
||||||
value: http://{{ template "kyoo.fullname" . }}-back.{{ .Release.Namespace }}:{{ .Values.back.service.port }}
|
|
||||||
|
|
||||||
{{- if .Values.config.secretAPIKey.existingKyooSecretKey }}
|
|
||||||
- name: KYOO_APIKEYS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingKyooSecretKey }}"
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- if .Values.config.secretAPIKey.existingTMDBSecretKey }}
|
|
||||||
- name: THEMOVIEDB_APIKEY
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
|
|
||||||
key: "{{ .Values.config.secretAPIKey.existingTMDBSecretKey }}"
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: LIBRARY_LANGUAGES
|
|
||||||
value: "{{ .Values.config.libraryLanguages }}"
|
|
||||||
- name: LIBRARY_IGNORE_PATTERN
|
|
||||||
value: "{{ .Values.config.libraryIgnorePattern }}"
|
|
||||||
- name: SCANNER_LIBRARY_ROOT
|
|
||||||
value: "{{ .Values.persistence.library.mountPath }}"
|
|
||||||
- name: RABBITMQ_HOST
|
|
||||||
value: {{ template "kyoo.fullname" . }}-rabbitmq
|
|
||||||
- name: RABBITMQ_DEFAULT_USER
|
|
||||||
value: "{{ .Values.rabbitmq.auth.username }}"
|
|
||||||
- name: RABBITMQ_DEFAULT_PASS
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: "{{ .Values.rabbitmq.auth.existingPasswordSecret }}"
|
|
||||||
key: "{{ .Values.rabbitmq.auth.existingSecretPasswordKey }}"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: kyoo-library
|
|
||||||
{{- if .Values.persistence.library.enabled }}
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: {{ .Values.persistence.library.existingClaim }}
|
|
||||||
{{- else }}
|
|
||||||
emptyDir: {}
|
|
||||||
{{- end }}
|
|
@@ -1,114 +0,0 @@
|
|||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-transcoder
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.transcoder.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
replicas: {{ .Values.transcoder.replicas }}
|
|
||||||
strategy:
|
|
||||||
type: Recreate
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "kyoo.transcoder.matchLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.transcoder.labels" . | nindent 8 }}
|
|
||||||
app.kubernetes.io/component: {{ template "kyoo.name" . }}-transcoder
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.transcoder.podAnnotations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
{{- with .Values.transcoder.affinity }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- with .Values.transcoder.nodeSelector }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
{{- with .Values.transcoder.tolerations }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: {{ template "kyoo.serviceAccountName" . }}
|
|
||||||
securityContext:
|
|
||||||
{{- with .Values.transcoder.securityContext }}
|
|
||||||
{{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ template "kyoo.fullname" . }}-transcoder
|
|
||||||
image: "{{ .Values.transcoder.image.repository }}:{{ .Values.transcoder.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.transcoder.image.pullPolicy }}
|
|
||||||
resources:
|
|
||||||
{{ toYaml .Values.transcoder.resources | nindent 12 }}
|
|
||||||
ports:
|
|
||||||
- name: kyoo-transcoder
|
|
||||||
containerPort: {{ .Values.transcoder.service.port }}
|
|
||||||
protocol: TCP
|
|
||||||
volumeMounts:
|
|
||||||
- name: kyoo-metadata
|
|
||||||
mountPath: "{{ .Values.persistence.metadata.mountPath }}"
|
|
||||||
- name: kyoo-cache
|
|
||||||
mountPath: "{{ .Values.persistence.cache.mountPath }}"
|
|
||||||
- name: kyoo-library
|
|
||||||
mountPath: "{{ .Values.persistence.library.mountPath }}"
|
|
||||||
env:
|
|
||||||
{{- with .Values.back.extraVars }}
|
|
||||||
{{- toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- if eq .Values.config.transcoderProfile "vaapi" }}
|
|
||||||
- name: GOCODER_HWACCEL
|
|
||||||
value: "vaapi"
|
|
||||||
- name: GOCODER_VAAPI_RENDERER
|
|
||||||
value: "{{ .Values.config.transcoderRenderPath }}"
|
|
||||||
{{- else if eq .Values.config.transcoderProfile "qsv" }}
|
|
||||||
- name: GOCODER_HWACCEL
|
|
||||||
value: "qsv"
|
|
||||||
- name: GOCODER_QSV_RENDERER
|
|
||||||
value: "{{ .Values.config.transcoderRenderPath }}"
|
|
||||||
{{- else if eq .Values.config.transcoderProfile "nvidia" }}
|
|
||||||
- name: GOCODER_HWACCEL
|
|
||||||
value: "nvidia"
|
|
||||||
{{- else }}
|
|
||||||
- name: GOCODER_HWACCEL
|
|
||||||
value: "disabled"
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
- name: GOCODER_PRESET
|
|
||||||
value: "{{ .Values.config.transcoderPreset }}"
|
|
||||||
- name: GOCODER_METADATA_ROOT
|
|
||||||
value: "{{ .Values.persistence.metadata.mountPath }}"
|
|
||||||
- name: GOCODER_CACHE_ROOT
|
|
||||||
value: "{{ .Values.persistence.cache.mountPath }}"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: kyoo-metadata
|
|
||||||
{{- if .Values.persistence.metadata.enabled }}
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: {{ include "kyoo.metadataVolumeName" . }}
|
|
||||||
{{- else }}
|
|
||||||
emptyDir: {}
|
|
||||||
{{- end }}
|
|
||||||
- name: kyoo-cache
|
|
||||||
emptyDir:
|
|
||||||
sizeLimit: {{ .Values.persistence.cache.size }}
|
|
||||||
- name: kyoo-library
|
|
||||||
{{- if .Values.persistence.library.enabled }}
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: {{ .Values.persistence.library.existingClaim }}
|
|
||||||
{{- else }}
|
|
||||||
emptyDir: {}
|
|
||||||
{{- end }}
|
|
@@ -1,44 +0,0 @@
|
|||||||
{{- if .Values.ingress.enabled }}
|
|
||||||
apiVersion: networking.k8s.io/v1
|
|
||||||
kind: Ingress
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- toYaml .Values.ingress.annotations | nindent 4 }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.ingress.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
ingressClassName: {{ .Values.ingress.className }}
|
|
||||||
tls:
|
|
||||||
- hosts:
|
|
||||||
- {{ .Values.ingress.host }}
|
|
||||||
secretName: {{ template "kyoo.fullname" . }}-secret-tls
|
|
||||||
rules:
|
|
||||||
- host: {{ .Values.ingress.host }}
|
|
||||||
http:
|
|
||||||
paths:
|
|
||||||
- path: /
|
|
||||||
backend:
|
|
||||||
service:
|
|
||||||
name: "{{ template "kyoo.fullname" . }}-front"
|
|
||||||
port:
|
|
||||||
name: kyoo-front
|
|
||||||
pathType: ImplementationSpecific
|
|
||||||
- path: /api
|
|
||||||
backend:
|
|
||||||
service:
|
|
||||||
name: "{{ template "kyoo.fullname" . }}-back"
|
|
||||||
port:
|
|
||||||
name: kyoo-back
|
|
||||||
pathType: ImplementationSpecific
|
|
||||||
{{- end }}
|
|
@@ -1,54 +0,0 @@
|
|||||||
{{- if and .Values.persistence.back.enabled (not .Values.persistence.back.existingClaim) }}
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
apiVersion: v1
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.backVolumeName" . }}
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- if .Values.persistence.back.retain }}
|
|
||||||
helm.sh/resource-policy: keep
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
storageClassName: {{ .Values.persistence.back.storageClass }}
|
|
||||||
accessModes:
|
|
||||||
- {{ .Values.persistence.back.accessMode }}
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: {{ .Values.persistence.back.size }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
---
|
|
||||||
{{- if and .Values.persistence.metadata.enabled (not .Values.persistence.metadata.existingClaim) }}
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
apiVersion: v1
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.metadataVolumeName" . }}
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- if .Values.persistence.metadata.retain }}
|
|
||||||
"helm.sh/resource-policy": keep
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
storageClassName: {{ .Values.persistence.metadata.storageClass }}
|
|
||||||
accessModes:
|
|
||||||
- {{ .Values.persistence.metadata.accessMode }}
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: {{ .Values.persistence.metadata.size }}
|
|
||||||
{{- end }}
|
|
@@ -1,100 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-back
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.back.service.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.back.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.back.service.labels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
type: {{ .Values.back.service.type }}
|
|
||||||
ports:
|
|
||||||
- port: {{ .Values.back.service.port }}
|
|
||||||
targetPort: kyoo-back
|
|
||||||
protocol: TCP
|
|
||||||
name: kyoo-back
|
|
||||||
selector:
|
|
||||||
{{- include "kyoo.back.matchLabels" . | nindent 4 }}
|
|
||||||
{{- with .Values.back.service.extraSelectorLabels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: {{ template "kyoo.fullname" . }}-front
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.front.service.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.front.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.front.service.labels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
type: {{ .Values.front.service.type }}
|
|
||||||
ports:
|
|
||||||
- port: {{ .Values.front.service.port }}
|
|
||||||
targetPort: kyoo-front
|
|
||||||
protocol: TCP
|
|
||||||
name: kyoo-front
|
|
||||||
selector:
|
|
||||||
{{- include "kyoo.front.matchLabels" . | nindent 4 }}
|
|
||||||
{{- with .Values.front.service.extraSelectorLabels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: transcoder
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
annotations:
|
|
||||||
{{- with .Values.global.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.transcoder.service.annotations }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
labels:
|
|
||||||
{{- include "kyoo.transcoder.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.transcoder.service.labels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
type: {{ .Values.transcoder.service.type }}
|
|
||||||
ports:
|
|
||||||
- port: {{ .Values.transcoder.service.port }}
|
|
||||||
targetPort: kyoo-transcoder
|
|
||||||
protocol: TCP
|
|
||||||
name: kyoo-transcoder
|
|
||||||
selector:
|
|
||||||
{{- include "kyoo.transcoder.matchLabels" . | nindent 4 }}
|
|
||||||
{{- with .Values.transcoder.service.extraSelectorLabels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
@@ -1,892 +0,0 @@
|
|||||||
## Global
|
|
||||||
##
|
|
||||||
global:
|
|
||||||
# -- Set an override for the prefix of the fullname
|
|
||||||
nameOverride:
|
|
||||||
|
|
||||||
# -- Set the entire name definition
|
|
||||||
fullnameOverride:
|
|
||||||
|
|
||||||
# -- Set additional global labels. Helm templates can be used.
|
|
||||||
labels: {}
|
|
||||||
|
|
||||||
# -- Set additional global annotations. Helm templates can be used.
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
## Service Account
|
|
||||||
##
|
|
||||||
serviceAccount:
|
|
||||||
# -- Specifies whether a service account should be created
|
|
||||||
create: false
|
|
||||||
|
|
||||||
# -- Annotations to add to the service account
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
# -- Labels to add to the service account
|
|
||||||
labels: {}
|
|
||||||
|
|
||||||
# -- The name of the service account to use.
|
|
||||||
# If not set and create is true, a name is generated using the fullname template
|
|
||||||
name: ""
|
|
||||||
|
|
||||||
## Config options
|
|
||||||
##
|
|
||||||
config:
|
|
||||||
## Secret key
|
|
||||||
## Specificy the secret name and the key containg a strong secret key
|
|
||||||
##
|
|
||||||
secretAuthenticationKey:
|
|
||||||
existingSecretName: ""
|
|
||||||
existingSecretKey: ""
|
|
||||||
|
|
||||||
## API keys
|
|
||||||
## Specificy the secret name and the key containg an API key for that service
|
|
||||||
##
|
|
||||||
secretAPIKey:
|
|
||||||
existingSecretName: ""
|
|
||||||
|
|
||||||
# -- Kyoo
|
|
||||||
existingKyooSecretKey: ""
|
|
||||||
|
|
||||||
# -- The Movie Database
|
|
||||||
existingTMDBSecretKey: ""
|
|
||||||
|
|
||||||
# -- Simkl: https://simkl.docs.apiary.io/#
|
|
||||||
existingSimklSecretKey: ""
|
|
||||||
|
|
||||||
# Langauges
|
|
||||||
libraryLanguages: en
|
|
||||||
|
|
||||||
# A pattern (regex) to ignore video files, ie ".*/[dD]ownloads?/.*"
|
|
||||||
libraryIgnorePattern: ""
|
|
||||||
|
|
||||||
# If this is true, new accounts wont have any permissions before you approve them in your admin dashboard.
|
|
||||||
requireAccountVerification: true
|
|
||||||
|
|
||||||
# Specify permissions of guest accounts, default is no permissions,
|
|
||||||
# but you can allow anyone to use your instance without account by doing:
|
|
||||||
# UNLOGGED_PERMISSIONS=overall.read,overall.play
|
|
||||||
# You can specify this to allow guests users to see your collection without behing able to play videos for example:
|
|
||||||
# UNLOGGED_PERMISSIONS=overall.read
|
|
||||||
unloggedPermissions: overall.read
|
|
||||||
|
|
||||||
# Specify permissions of new accounts.
|
|
||||||
defaultPermissions: overall.read,overall.play
|
|
||||||
|
|
||||||
# Hardware transcoding (equivalent of --profile docker compose option).
|
|
||||||
# cpu (no hardware acceleration) or vaapi or qsv or nvidia
|
|
||||||
transcoderProfile: cpu
|
|
||||||
|
|
||||||
# Path to the hardware device for the specificied transcoder profile
|
|
||||||
transcoderRenderPath: /dev/dri/renderD128
|
|
||||||
|
|
||||||
# the preset used during transcode. faster means worst quality, you can probably use a slower preset with hwaccels
|
|
||||||
# warning: using vaapi hwaccel disable presets (they are not supported).
|
|
||||||
transcoderPreset: fast
|
|
||||||
|
|
||||||
# The url you can use to reach your kyoo instance. This is also used during oidc to redirect users to your instance.
|
|
||||||
publicUrl: ""
|
|
||||||
|
|
||||||
## OIDC authentication
|
|
||||||
##
|
|
||||||
oidc:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
# Name of the OIDC provider, ie Authentik, Keycloak, Authelia, etc
|
|
||||||
name: ""
|
|
||||||
|
|
||||||
# URL to the an image of the provider logo
|
|
||||||
logo: ""
|
|
||||||
|
|
||||||
# Urls to access the provider
|
|
||||||
authorization: ""
|
|
||||||
token: ""
|
|
||||||
profile: ""
|
|
||||||
|
|
||||||
# Scopes space separeted
|
|
||||||
scope: "openid profile email"
|
|
||||||
|
|
||||||
# Generated from the provider, these are expected to be stored in a secret
|
|
||||||
existingSecretName: ""
|
|
||||||
clientIDKey: ""
|
|
||||||
secretIDKey: ""
|
|
||||||
|
|
||||||
## Postgresql
|
|
||||||
##
|
|
||||||
postgresql:
|
|
||||||
username: ""
|
|
||||||
database: ""
|
|
||||||
host: ""
|
|
||||||
port: ""
|
|
||||||
|
|
||||||
# -- Use a secret to store the pasword
|
|
||||||
existingSecretName: ""
|
|
||||||
passwordKey: ""
|
|
||||||
|
|
||||||
## Configure the ingress resource that allows you to access the
|
|
||||||
## kyoo installation. Set up the URL
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/ingress/
|
|
||||||
##
|
|
||||||
ingress:
|
|
||||||
# -- Enables or disables the ingress
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
# -- Provide additional annotations which may be required.
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
# -- Provide additional labels which may be required.
|
|
||||||
labels: {}
|
|
||||||
|
|
||||||
# -- Set the ingressClass that is used for this ingress.
|
|
||||||
className: ""
|
|
||||||
|
|
||||||
## Configure the hosts for the ingress
|
|
||||||
host: chart-example.local
|
|
||||||
|
|
||||||
## Enable persistence using Persistent Volume Claims
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
|
|
||||||
##
|
|
||||||
persistence:
|
|
||||||
back:
|
|
||||||
# -- Enables or disables the persistence item. Defaults to true
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
# -- Storage Class for the config volume.
|
|
||||||
# If set to `-`, dynamic provisioning is disabled.
|
|
||||||
# If set to something else, the given storageClass is used.
|
|
||||||
# If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
||||||
storageClass: ""
|
|
||||||
|
|
||||||
# -- If you want to reuse an existing claim, the name of the existing PVC can be passed here.
|
|
||||||
existingClaim: ""
|
|
||||||
|
|
||||||
# -- AccessMode for the persistent volume.
|
|
||||||
# Make sure to select an access mode that is supported by your storage provider!
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes)
|
|
||||||
accessMode: ReadWriteOnce
|
|
||||||
|
|
||||||
# -- The amount of storage that is requested for the persistent volume.
|
|
||||||
size: 5Gi
|
|
||||||
|
|
||||||
# -- Set to true to retain the PVC upon `helm uninstall`
|
|
||||||
retain: false
|
|
||||||
|
|
||||||
metadata:
|
|
||||||
# -- Enables or disables the persistence item. Defaults to true
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
# -- Storage Class for the config volume.
|
|
||||||
# If set to `-`, dynamic provisioning is disabled.
|
|
||||||
# If set to something else, the given storageClass is used.
|
|
||||||
# If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
||||||
storageClass: ""
|
|
||||||
|
|
||||||
# -- If you want to reuse an existing claim, the name of the existing PVC can be passed here.
|
|
||||||
existingClaim: ""
|
|
||||||
|
|
||||||
# -- AccessMode for the persistent volume.
|
|
||||||
# Make sure to select an access mode that is supported by your storage provider!
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes)
|
|
||||||
accessMode: ReadWriteOnce
|
|
||||||
|
|
||||||
# -- The amount of storage that is requested for the persistent volume.
|
|
||||||
size: 5Gi
|
|
||||||
|
|
||||||
# -- Set to true to retain the PVC upon `helm uninstall`
|
|
||||||
retain: false
|
|
||||||
|
|
||||||
# -- Mount path inside container
|
|
||||||
mountPath: /metadata
|
|
||||||
|
|
||||||
cache:
|
|
||||||
# -- Transcoder cache will be mounted as an emptyDir, specificy a limit to the cache size
|
|
||||||
size: 10Gi
|
|
||||||
|
|
||||||
# -- Mount path inside container
|
|
||||||
mountPath: /cache
|
|
||||||
|
|
||||||
library:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
# -- Provide an existing claim to you media library
|
|
||||||
existingClaim: ""
|
|
||||||
|
|
||||||
# -- Mount path inside container, used as the root path for the library
|
|
||||||
mountPath: /video
|
|
||||||
|
|
||||||
## Auto Sync
|
|
||||||
##
|
|
||||||
autosync:
|
|
||||||
## Kyoo Auto Sync image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/kyoo_autosync/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_autosync
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Back
|
|
||||||
##
|
|
||||||
back:
|
|
||||||
## Kyoo Back image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/kyoo_back/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_back
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Configure extra options for liveness and readiness probes
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes)
|
|
||||||
##
|
|
||||||
livenessProbe:
|
|
||||||
enabled: false
|
|
||||||
path: /health
|
|
||||||
initialDelaySeconds: 20
|
|
||||||
periodSeconds: 10
|
|
||||||
timeoutSeconds: 5
|
|
||||||
successThreshold: 1
|
|
||||||
failureThreshold: 3
|
|
||||||
|
|
||||||
readinessProbe:
|
|
||||||
enabled: false
|
|
||||||
path: /health
|
|
||||||
initialDelaySeconds: 5
|
|
||||||
periodSeconds: 10
|
|
||||||
timeoutSeconds: 1
|
|
||||||
successThreshold: 1
|
|
||||||
failureThreshold: 3
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Service
|
|
||||||
##
|
|
||||||
service:
|
|
||||||
# -- Set the service type
|
|
||||||
type: ClusterIP
|
|
||||||
|
|
||||||
# -- Provide additional annotations which may be required.
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
# -- Provide additional labels which may be required.
|
|
||||||
labels: {}
|
|
||||||
|
|
||||||
# -- Allow adding additional match labels
|
|
||||||
extraSelectorLabels: {}
|
|
||||||
|
|
||||||
# -- HTTP port number
|
|
||||||
port: 5000
|
|
||||||
|
|
||||||
## Front
|
|
||||||
##
|
|
||||||
front:
|
|
||||||
## Kyoo Front image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/kyoo_front/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_front
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Configure extra options for liveness and readiness probes
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes)
|
|
||||||
##
|
|
||||||
livenessProbe:
|
|
||||||
enabled: false
|
|
||||||
path: /
|
|
||||||
initialDelaySeconds: 20
|
|
||||||
periodSeconds: 10
|
|
||||||
timeoutSeconds: 5
|
|
||||||
successThreshold: 1
|
|
||||||
failureThreshold: 3
|
|
||||||
|
|
||||||
readinessProbe:
|
|
||||||
enabled: false
|
|
||||||
path: /
|
|
||||||
initialDelaySeconds: 5
|
|
||||||
periodSeconds: 10
|
|
||||||
timeoutSeconds: 1
|
|
||||||
successThreshold: 1
|
|
||||||
failureThreshold: 3
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Service
|
|
||||||
##
|
|
||||||
service:
|
|
||||||
# -- Set the service type
|
|
||||||
type: ClusterIP
|
|
||||||
|
|
||||||
# -- Provide additional annotations which may be required.
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
# -- Provide additional labels which may be required.
|
|
||||||
labels: {}
|
|
||||||
|
|
||||||
# -- Allow adding additional match labels
|
|
||||||
extraSelectorLabels: {}
|
|
||||||
|
|
||||||
# -- HTTP port number
|
|
||||||
port: 8901
|
|
||||||
|
|
||||||
## Matcher
|
|
||||||
##
|
|
||||||
matcher:
|
|
||||||
## Kyoo Matcher image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/kyoo_matcher/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_scanner
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Migrations
|
|
||||||
##
|
|
||||||
migrations:
|
|
||||||
## Kyoo Migrations image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/kyoo_migrations/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_migrations
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Scanner
|
|
||||||
##
|
|
||||||
scanner:
|
|
||||||
## Kyoo Scanner image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/zoriya/kyoo_scanner/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_scanner
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Transcoder
|
|
||||||
##
|
|
||||||
transcoder:
|
|
||||||
## Kyoo Transcoder image version
|
|
||||||
## ref: https://hub.docker.com/r/zoriya/kyoo_transcoder/tags
|
|
||||||
##
|
|
||||||
image:
|
|
||||||
repository: zoriya/kyoo_transcoder
|
|
||||||
tag: "4.4.0"
|
|
||||||
## Specify a imagePullPolicy
|
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
|
||||||
##
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
## Define the number of pods the deployment will create
|
|
||||||
## Do not change unless your persistent volume allows more than one writer, ie NFS
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
|
|
||||||
##
|
|
||||||
replicas: 1
|
|
||||||
|
|
||||||
## Pod annotations
|
|
||||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
|
||||||
##
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
## Affinity for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
||||||
##
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
## Node labels for pod assignment. Evaluated as a template.
|
|
||||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
||||||
##
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
## Tolerations for pod assignment
|
|
||||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
|
||||||
##
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
## Pod Security Context
|
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
||||||
##
|
|
||||||
securityContext: {}
|
|
||||||
|
|
||||||
## kyoo containers' resource requests and limits
|
|
||||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
||||||
##
|
|
||||||
resources:
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits: {}
|
|
||||||
# cpu: 2
|
|
||||||
# memory: 1Gi
|
|
||||||
requests: {}
|
|
||||||
# cpu: 1
|
|
||||||
# memory: 1Gi
|
|
||||||
|
|
||||||
## Extra environment variables
|
|
||||||
##
|
|
||||||
extraVars:
|
|
||||||
# - name: EXAMPLE
|
|
||||||
# value: "example"
|
|
||||||
|
|
||||||
## Service
|
|
||||||
##
|
|
||||||
service:
|
|
||||||
# -- Set the service type
|
|
||||||
type: ClusterIP
|
|
||||||
|
|
||||||
# -- Provide additional annotations which may be required.
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
# -- Provide additional labels which may be required.
|
|
||||||
labels: {}
|
|
||||||
|
|
||||||
# -- Allow adding additional match labels
|
|
||||||
extraSelectorLabels: {}
|
|
||||||
|
|
||||||
# -- HTTP port number
|
|
||||||
port: 7666
|
|
||||||
|
|
||||||
## Rabbitmq
|
|
||||||
## https://artifacthub.io/packages/helm/bitnami/rabbitmq?modal=values-schema
|
|
||||||
##
|
|
||||||
rabbitmq:
|
|
||||||
auth:
|
|
||||||
## @param auth.username RabbitMQ application username
|
|
||||||
## ref: https://github.com/bitnami/containers/tree/main/bitnami/rabbitmq#environment-variables
|
|
||||||
##
|
|
||||||
username: kyoo
|
|
||||||
|
|
||||||
## @param auth.existingPasswordSecret Existing secret with RabbitMQ credentials (existing secret must contain a value for `rabbitmq-password` key or override with setting auth.existingSecretPasswordKey)
|
|
||||||
## e.g:
|
|
||||||
## existingPasswordSecret: name-of-existing-secret
|
|
||||||
##
|
|
||||||
existingPasswordSecret: ""
|
|
||||||
existingSecretPasswordKey: ""
|
|
||||||
|
|
||||||
## @param auth.existingErlangSecret Existing secret with RabbitMQ Erlang cookie (must contain a value for `rabbitmq-erlang-cookie` key or override with auth.existingSecretErlangKey)
|
|
||||||
## e.g:
|
|
||||||
## existingErlangSecret: name-of-existing-secret
|
|
||||||
##
|
|
||||||
existingErlangSecret: ""
|
|
||||||
## @param auth.existingSecretErlangKey [default: rabbitmq-erlang-cookie] Erlang cookie key to be retrieved from existing secret
|
|
||||||
## NOTE: ignored unless `auth.existingErlangSecret` parameter is set
|
|
||||||
##
|
|
||||||
existingSecretErlangKey: ""
|
|
||||||
|
|
||||||
## @param configurationExistingSecret Existing secret with the configuration to use as rabbitmq.conf.
|
|
||||||
## Must contain the key "rabbitmq.conf"
|
|
||||||
## Takes precedence over `configuration`, so do not use both simultaneously
|
|
||||||
## With providing an existingSecret, extraConfiguration and extraConfigurationExistingSecret do not take any effect
|
|
||||||
##
|
|
||||||
configurationExistingSecret: ""
|
|
||||||
|
|
||||||
## @param extraConfiguration [string] Configuration file content: extra configuration to be appended to RabbitMQ configuration
|
|
||||||
## Use this instead of `configuration` to add more configuration
|
|
||||||
## Do not use simultaneously with `extraConfigurationExistingSecret`
|
|
||||||
##
|
|
||||||
extraConfiguration: |-
|
|
||||||
default_vhost = '/'
|
|
||||||
default_permissions.configure = .*
|
|
||||||
default_permissions.read = .*
|
|
||||||
default_permissions.write = .*
|
|
||||||
|
|
||||||
## Meilisearch
|
|
||||||
## https://github.com/meilisearch/meilisearch-kubernetes/blob/main/charts/meilisearch/values.yaml
|
|
||||||
##
|
|
||||||
meilisearch:
|
|
||||||
environment:
|
|
||||||
|
|
||||||
# -- Deactivates analytics
|
|
||||||
MEILI_NO_ANALYTICS: true
|
|
||||||
|
|
||||||
# -- Sets the environment. Either **production** or **development**
|
|
||||||
MEILI_ENV: production
|
|
||||||
|
|
||||||
# For production deployment, the environment MEILI_MASTER_KEY is required.
|
|
||||||
# If MEILI_ENV is set to "production" without setting MEILI_MASTER_KEY, this
|
|
||||||
# chart will automatically create a secure MEILI_MASTER_KEY and push it as a
|
|
||||||
# secret. Otherwise the below value of MEILI_MASTER_KEY will be used instead.
|
|
||||||
# MEILI_MASTER_KEY: ""
|
|
||||||
|
|
||||||
auth:
|
|
||||||
# -- Use an existing Kubernetes secret for the MEILI_MASTER_KEY
|
|
||||||
existingMasterKeySecret: ""
|
|
||||||
|
|
||||||
service:
|
|
||||||
# -- Kubernetes Service type
|
|
||||||
type: ClusterIP
|
|
||||||
|
|
||||||
# -- Kubernetes Service port
|
|
||||||
port: 7700
|
|
||||||
|
|
||||||
# -- Additional annotations for service
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
persistence:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
# -- PVC Access Mode
|
|
||||||
accessMode: ReadWriteOnce
|
|
||||||
|
|
||||||
## Persistent Volume Storage Class
|
|
||||||
## If defined, storageClassName: <storageClass>
|
|
||||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
|
||||||
## If undefined (the default) or set to null, no storageClassName spec is
|
|
||||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
|
||||||
## GKE, AWS & OpenStack)
|
|
||||||
##
|
|
||||||
# -- PVC Storage Class
|
|
||||||
storageClass: "-"
|
|
||||||
|
|
||||||
## Data Persistent Volume existing claim name
|
|
||||||
## Requires persistence.enabled: true
|
|
||||||
## If defined, PVC must be created manually before volume will be bound
|
|
||||||
# -- Existing PVC
|
|
||||||
existingClaim: ""
|
|
||||||
|
|
||||||
# -- PVC Storage Request
|
|
||||||
size: 10Gi
|
|
||||||
|
|
||||||
resources: {}
|
|
||||||
# limits:
|
|
||||||
# cpu: 100m
|
|
||||||
# memory: 128Mi
|
|
||||||
# requests:
|
|
||||||
# cpu: 100m
|
|
||||||
# memory: 128Mi
|
|
||||||
|
|
||||||
serviceMonitor:
|
|
||||||
enabled: false
|
|
@@ -1,18 +0,0 @@
|
|||||||
apiVersion: v2
|
|
||||||
name: lazy-librarian
|
|
||||||
version: 0.1.0
|
|
||||||
description: A Helm chart for deploying LazyLibrarian
|
|
||||||
keywords:
|
|
||||||
- lazylibrarian
|
|
||||||
- ebooks
|
|
||||||
sources:
|
|
||||||
- https://gitlab.com/LazyLibrarian/LazyLibrarian.git
|
|
||||||
- https://lazylibrarian.gitlab.io
|
|
||||||
maintainers:
|
|
||||||
- name: alexlebens
|
|
||||||
dependencies:
|
|
||||||
- name: common
|
|
||||||
repository: https://bjw-s.github.io/helm-charts/
|
|
||||||
version: 3.1.0
|
|
||||||
icon: https://lazylibrarian.gitlab.io/logo.svg
|
|
||||||
appVersion: version-1152df82
|
|
@@ -1,85 +0,0 @@
|
|||||||
# lazylibrarian
|
|
||||||
|
|
||||||
 
|
|
||||||
|
|
||||||
A Helm chart for deploying LazyLibrarian
|
|
||||||
|
|
||||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/alexlebens/helm-charts/issues/new/choose)**
|
|
||||||
|
|
||||||
## Source Code
|
|
||||||
|
|
||||||
* <https://gitlab.com/LazyLibrarian/LazyLibrarian.git>
|
|
||||||
* <https://lazylibrarian.gitlab.io>
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
Kubernetes: `>=1.16.0-0`
|
|
||||||
|
|
||||||
## Dependencies
|
|
||||||
|
|
||||||
| Repository | Name | Version |
|
|
||||||
|------------|------|---------|
|
|
||||||
| https://github.com/bjw-s/helm-charts | common | 3.1.0 |
|
|
||||||
|
|
||||||
## TL;DR
|
|
||||||
|
|
||||||
```console
|
|
||||||
helm repo add alexlebens-helm-charts http://alexlebens.github.io/helm-charts
|
|
||||||
helm repo update
|
|
||||||
helm install lazy-librarian alexlebens-helm-charts/lazy-librarian
|
|
||||||
```
|
|
||||||
|
|
||||||
## Installing the Chart
|
|
||||||
|
|
||||||
To install the chart with the release name `lazy-librarian`
|
|
||||||
|
|
||||||
```console
|
|
||||||
helm install lazy-librarian alexlebens-helm-charts/lazy-librarian
|
|
||||||
```
|
|
||||||
|
|
||||||
## Uninstalling the Chart
|
|
||||||
|
|
||||||
To uninstall the `lazy-librarian` deployment
|
|
||||||
|
|
||||||
```console
|
|
||||||
helm uninstall lazy-librarian
|
|
||||||
```
|
|
||||||
|
|
||||||
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
|
||||||
|
|
||||||
## Configuration
|
|
||||||
|
|
||||||
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
|
|
||||||
Other values may be used from the [values.yaml](https://github.com/alexlebens/helm-charts/blob/main/charts/lazy-librarian/values.yaml) from the [common library](https://github.com/bjw-s/helm-charts/blob/main/charts/library/common/values.yaml).
|
|
||||||
|
|
||||||
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
|
||||||
|
|
||||||
```console
|
|
||||||
helm install lazy-librarian \
|
|
||||||
--set env.TZ="US/Mountain" \
|
|
||||||
alexlebens-helm-charts/lazy-librarian
|
|
||||||
```
|
|
||||||
|
|
||||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
|
||||||
|
|
||||||
```console
|
|
||||||
helm install lazy-librarian alexlebens-helm-charts/lazy-librarian -f values.yaml
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
**Important**: When deploying an application Helm chart you can add more values from the common library chart [here](https://github.com/bjw-s/helm-charts/blob/main/charts/library/common/values.yaml)
|
|
||||||
|
|
||||||
| Key | Type | Default | Description |
|
|
||||||
|-----|------|---------|-------------|
|
|
||||||
| env | object | See below | environment variables. |
|
|
||||||
| env.PGID | string | `"1001"` | Specify the group ID the application will run as |
|
|
||||||
| env.PUID | string | `"1001"` | Specify the user ID the application will run as |
|
|
||||||
| env.TZ | string | `"UTC"` | Set the container timezone |
|
|
||||||
| env.DOCKER_MODS | string | `"linuxserver/mods:universal-calibre|linuxserver/mods:lazylibrarian-ffmpeg"` | Add linuxserver docker mods |
|
|
||||||
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
|
||||||
| image.repository | string | `"linuxserver/lazylibrarian"` | image repository |
|
|
||||||
| image.tag | string | `"version-b3a081ec"` | image tag |
|
|
||||||
| ingress.main | object | See values.yaml | Enable and configure ingress settings for the chart under this key. |
|
|
||||||
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
|
|
||||||
| service | object | See values.yaml | Configures service settings for the chart. |
|
|
@@ -1,323 +0,0 @@
|
|||||||
common:
|
|
||||||
global:
|
|
||||||
# -- Set an override for the prefix of the fullname
|
|
||||||
nameOverride:
|
|
||||||
# -- Set the entire name definition
|
|
||||||
fullnameOverride:
|
|
||||||
# -- Set additional global labels. Helm templates can be used.
|
|
||||||
labels: {}
|
|
||||||
# -- Set additional global annotations. Helm templates can be used.
|
|
||||||
annotations: {}
|
|
||||||
|
|
||||||
defaultPodOptions:
|
|
||||||
# -- Defines affinity constraint rules.
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity)
|
|
||||||
affinity: {}
|
|
||||||
# -- Set annotations on the Pod. Pod-specific values will be merged with this.
|
|
||||||
annotations: {}
|
|
||||||
# -- Specifies whether a service account token should be automatically mounted.
|
|
||||||
automountServiceAccountToken: true
|
|
||||||
# -- Configuring the ndots option may resolve nslookup issues on some Kubernetes setups.
|
|
||||||
dnsConfig: {}
|
|
||||||
# -- Defaults to "ClusterFirst" if hostNetwork is false and "ClusterFirstWithHostNet" if hostNetwork is true.
|
|
||||||
dnsPolicy: ""
|
|
||||||
# -- Enable/disable the generation of environment variables for services.
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/services-networking/connect-applications-service/#accessing-the-service)
|
|
||||||
enableServiceLinks: false
|
|
||||||
# -- Allows specifying explicit hostname setting
|
|
||||||
hostname: ""
|
|
||||||
# -- Use hostAliases to add custom entries to /etc/hosts - mapping IP addresses to hostnames.
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/)
|
|
||||||
hostAliases: []
|
|
||||||
# -- Use the host's ipc namespace
|
|
||||||
hostIPC: false
|
|
||||||
# -- When using hostNetwork make sure you set dnsPolicy to `ClusterFirstWithHostNet`
|
|
||||||
hostNetwork: false
|
|
||||||
# -- Use the host's pid namespace
|
|
||||||
hostPID: false
|
|
||||||
# -- Set image pull secrets
|
|
||||||
imagePullSecrets: []
|
|
||||||
# -- Set labels on the Pod. Pod-specific values will be merged with this.
|
|
||||||
labels: {}
|
|
||||||
# -- Node selection constraint
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector)
|
|
||||||
nodeSelector: {}
|
|
||||||
# -- Custom priority class for different treatment by the scheduler
|
|
||||||
priorityClassName: ""
|
|
||||||
# -- Set Container restart policy.
|
|
||||||
# @default -- `Always`. When `controller.type` is `cronjob` it defaults to `Never`.
|
|
||||||
restartPolicy: ""
|
|
||||||
# -- Allow specifying a runtimeClassName other than the default one (ie: nvidia)
|
|
||||||
runtimeClassName: ""
|
|
||||||
# -- Allows specifying a custom scheduler name
|
|
||||||
schedulerName: ""
|
|
||||||
# -- Configure the Security Context for the Pod
|
|
||||||
securityContext:
|
|
||||||
runAsUser: 1000
|
|
||||||
runAsGroup: 1000
|
|
||||||
fsGroup: 1000
|
|
||||||
fsGroupChangePolicy: "OnRootMismatch"
|
|
||||||
# -- Duration in seconds the pod needs to terminate gracefully
|
|
||||||
# -- [[ref](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#lifecycle)]
|
|
||||||
terminationGracePeriodSeconds:
|
|
||||||
# -- Specify taint tolerations
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/)
|
|
||||||
tolerations: []
|
|
||||||
# -- Defines topologySpreadConstraint rules.
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/)
|
|
||||||
topologySpreadConstraints: []
|
|
||||||
|
|
||||||
controllers:
|
|
||||||
main:
|
|
||||||
# -- enable the controller.
|
|
||||||
enabled: true
|
|
||||||
# -- Set the controller type.
|
|
||||||
# Valid options are deployment, daemonset, statefulset, cronjob or job
|
|
||||||
type: deployment
|
|
||||||
# -- Set annotations on the deployment/statefulset/daemonset/cronjob/job
|
|
||||||
annotations: {}
|
|
||||||
# -- Set labels on the deployment/statefulset/daemonset/cronjob/job
|
|
||||||
labels: {}
|
|
||||||
# -- Number of desired pods. When using a HorizontalPodAutoscaler, set this to `null`.
|
|
||||||
replicas: 1
|
|
||||||
# -- Set the controller upgrade strategy
|
|
||||||
# For Deployments, valid values are Recreate (default) and RollingUpdate.
|
|
||||||
# For StatefulSets, valid values are OnDelete and RollingUpdate (default).
|
|
||||||
# DaemonSets/CronJobs/Jobs ignore this.
|
|
||||||
strategy: Recreate
|
|
||||||
# -- ReplicaSet revision history limit
|
|
||||||
revisionHistoryLimit: 3
|
|
||||||
|
|
||||||
# -- Container
|
|
||||||
containers:
|
|
||||||
main:
|
|
||||||
# -- Override the container name
|
|
||||||
nameOverride:
|
|
||||||
# -- Specify if this container depends on any other containers
|
|
||||||
# This is used to determine the order in which the containers are rendered.
|
|
||||||
dependsOn: []
|
|
||||||
# -- Image
|
|
||||||
image:
|
|
||||||
# -- image repository
|
|
||||||
repository: lscr.io/linuxserver/lazylibrarian
|
|
||||||
# -- image tag
|
|
||||||
tag: version-b3a081ec
|
|
||||||
# -- image pull policy
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
# -- Override the command(s) for the default container
|
|
||||||
command: []
|
|
||||||
# -- Override the args for the default container
|
|
||||||
args: []
|
|
||||||
# -- Override the working directory for the default container
|
|
||||||
workingDir:
|
|
||||||
# -- Environment variables. Template enabled.
|
|
||||||
env:
|
|
||||||
PUID: 1000
|
|
||||||
PGID: 1000
|
|
||||||
TZ: US/Mountain
|
|
||||||
DOCKER_MODS: linuxserver/mods:universal-calibre|linuxserver/mods:lazylibrarian-ffmpeg
|
|
||||||
# -- Secrets and/or ConfigMaps that will be loaded as environment variables.
|
|
||||||
envFrom: []
|
|
||||||
# -- Set the resource requests / limits for the container.
|
|
||||||
resources:
|
|
||||||
## We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
## choice for the user. This also increases chances charts run on environments with little
|
|
||||||
## resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
limits:
|
|
||||||
cpu: 500m
|
|
||||||
memory: 512Mi
|
|
||||||
requests:
|
|
||||||
cpu: 10m
|
|
||||||
memory: 256Mi
|
|
||||||
|
|
||||||
serviceAccount:
|
|
||||||
# -- Specifies whether a service account should be created
|
|
||||||
create: true
|
|
||||||
# -- Annotations to add to the service account
|
|
||||||
annotations: {}
|
|
||||||
# -- Labels to add to the service account
|
|
||||||
labels: {}
|
|
||||||
# -- The name of the service account to use.
|
|
||||||
# If not set and create is true, a name is generated using the fullname template
|
|
||||||
name: ""
|
|
||||||
|
|
||||||
service:
|
|
||||||
main:
|
|
||||||
# -- Enables or disables the service
|
|
||||||
enabled: true
|
|
||||||
# -- Override the name suffix that is used for this service
|
|
||||||
nameOverride: ""
|
|
||||||
# -- Configure which controller this service should target
|
|
||||||
controller: main
|
|
||||||
# -- Make this the primary service for this controller (used in probes, notes, etc...).
|
|
||||||
# If there is more than 1 service targeting the controller, make sure that only 1 service is
|
|
||||||
# marked as primary.
|
|
||||||
primary: true
|
|
||||||
# -- Set the service type
|
|
||||||
type: ClusterIP
|
|
||||||
# -- Specify the externalTrafficPolicy for the service. Options: Cluster, Local
|
|
||||||
# -- [[ref](https://kubernetes.io/docs/tutorials/services/source-ip/)]
|
|
||||||
externalTrafficPolicy:
|
|
||||||
# -- Specify the ip policy. Options: SingleStack, PreferDualStack, RequireDualStack
|
|
||||||
ipFamilyPolicy:
|
|
||||||
# -- The ip families that should be used. Options: IPv4, IPv6
|
|
||||||
ipFamilies: []
|
|
||||||
# -- Provide additional annotations which may be required.
|
|
||||||
annotations: {}
|
|
||||||
# -- Provide additional labels which may be required.
|
|
||||||
labels: {}
|
|
||||||
# -- Allow adding additional match labels
|
|
||||||
extraSelectorLabels: {}
|
|
||||||
# -- Configure the Service port information here.
|
|
||||||
# Additional ports can be added by adding a dictionary key similar to the 'http' service.
|
|
||||||
# @default -- See below
|
|
||||||
ports:
|
|
||||||
http:
|
|
||||||
# -- Enables or disables the port
|
|
||||||
enabled: true
|
|
||||||
# -- Make this the primary port (used in probes, notes, etc...)
|
|
||||||
# If there is more than 1 service, make sure that only 1 port is marked as primary.
|
|
||||||
primary: true
|
|
||||||
# -- The port number
|
|
||||||
port: 5299
|
|
||||||
# -- Port protocol.
|
|
||||||
# Support values are `HTTP`, `HTTPS`, `TCP` and `UDP`.
|
|
||||||
# HTTP and HTTPS spawn a TCP service and get used for internal URL and name generation
|
|
||||||
protocol: HTTP
|
|
||||||
# -- Specify a service targetPort if you wish to differ the service port from the application port.
|
|
||||||
# If `targetPort` is specified, this port number is used in the container definition instead of
|
|
||||||
# the `port` value. Therefore named ports are not supported for this field.
|
|
||||||
targetPort:
|
|
||||||
# -- Specify the nodePort value for the LoadBalancer and NodePort service types.
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport)
|
|
||||||
nodePort:
|
|
||||||
# -- Specify the appProtocol value for the Service.
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/services-networking/service/#application-protocol)
|
|
||||||
appProtocol:
|
|
||||||
|
|
||||||
ingress:
|
|
||||||
# -- An example is shown below
|
|
||||||
main:
|
|
||||||
# -- Enables or disables the ingress
|
|
||||||
enabled: true
|
|
||||||
# -- Override the name suffix that is used for this ingress.
|
|
||||||
nameOverride:
|
|
||||||
# -- Provide additional annotations which may be required.
|
|
||||||
annotations: {}
|
|
||||||
# -- Provide additional labels which may be required.
|
|
||||||
labels: {}
|
|
||||||
# -- Set the ingressClass that is used for this ingress.
|
|
||||||
className:
|
|
||||||
# -- Configure the defaultBackend for this ingress. This will disable any other rules for the ingress.
|
|
||||||
defaultBackend:
|
|
||||||
## Configure the hosts for the ingress
|
|
||||||
hosts:
|
|
||||||
- # -- Host address. Helm template can be passed.
|
|
||||||
host: chart-example.local
|
|
||||||
## Configure the paths for the host
|
|
||||||
paths:
|
|
||||||
- # -- Path. Helm template can be passed.
|
|
||||||
path: /
|
|
||||||
pathType: Prefix
|
|
||||||
service:
|
|
||||||
# -- The service name to reference.
|
|
||||||
name: main
|
|
||||||
# -- The service port number reference for this path
|
|
||||||
port: 5299
|
|
||||||
# -- Configure TLS for the ingress. Both secretName and hosts can process a Helm template.
|
|
||||||
tls: []
|
|
||||||
# - secretName: chart-example-tls
|
|
||||||
# hosts:
|
|
||||||
# - chart-example.local
|
|
||||||
|
|
||||||
persistence:
|
|
||||||
config:
|
|
||||||
# -- Enables or disables the persistence item. Defaults to true
|
|
||||||
enabled: false
|
|
||||||
# -- Sets the persistence type
|
|
||||||
# Valid options are persistentVolumeClaim, emptyDir, nfs, hostPath, secret, configMap or custom
|
|
||||||
type: persistentVolumeClaim
|
|
||||||
# -- Storage Class for the config volume.
|
|
||||||
# If set to `-`, dynamic provisioning is disabled.
|
|
||||||
# If set to something else, the given storageClass is used.
|
|
||||||
# If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
||||||
storageClass:
|
|
||||||
# -- If you want to reuse an existing claim, the name of the existing PVC can be passed here.
|
|
||||||
existingClaim:
|
|
||||||
# -- AccessMode for the persistent volume.
|
|
||||||
# Make sure to select an access mode that is supported by your storage provider!
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes)
|
|
||||||
accessMode: ReadWriteOnce
|
|
||||||
# -- The amount of storage that is requested for the persistent volume.
|
|
||||||
size: 1Gi
|
|
||||||
# -- Set to true to retain the PVC upon `helm uninstall`
|
|
||||||
retain: false
|
|
||||||
# -- Configure mounts to all controllers and containers. By default the persistence item
|
|
||||||
# will be mounted to `/<name_of_the_peristence_item>`.
|
|
||||||
# Example:
|
|
||||||
# globalMounts:
|
|
||||||
# - path: /config
|
|
||||||
# readOnly: false
|
|
||||||
globalMounts:
|
|
||||||
- path: /config
|
|
||||||
|
|
||||||
downloads:
|
|
||||||
# -- Enables or disables the persistence item. Defaults to true
|
|
||||||
enabled: false
|
|
||||||
# -- Sets the persistence type
|
|
||||||
# Valid options are persistentVolumeClaim, emptyDir, nfs, hostPath, secret, configMap or custom
|
|
||||||
type: persistentVolumeClaim
|
|
||||||
# -- Storage Class for the config volume.
|
|
||||||
# If set to `-`, dynamic provisioning is disabled.
|
|
||||||
# If set to something else, the given storageClass is used.
|
|
||||||
# If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
||||||
storageClass:
|
|
||||||
# -- If you want to reuse an existing claim, the name of the existing PVC can be passed here.
|
|
||||||
existingClaim:
|
|
||||||
# -- AccessMode for the persistent volume.
|
|
||||||
# Make sure to select an access mode that is supported by your storage provider!
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes)
|
|
||||||
accessMode: ReadWriteOnce
|
|
||||||
# -- The amount of storage that is requested for the persistent volume.
|
|
||||||
size: 1Gi
|
|
||||||
# -- Set to true to retain the PVC upon `helm uninstall`
|
|
||||||
retain: false
|
|
||||||
# -- Configure mounts to all controllers and containers. By default the persistence item
|
|
||||||
# will be mounted to `/<name_of_the_peristence_item>`.
|
|
||||||
# Example:
|
|
||||||
# globalMounts:
|
|
||||||
# - path: /config
|
|
||||||
# readOnly: false
|
|
||||||
globalMounts:
|
|
||||||
- path: /downloads
|
|
||||||
|
|
||||||
books:
|
|
||||||
# -- Enables or disables the persistence item. Defaults to true
|
|
||||||
enabled: false
|
|
||||||
# -- Sets the persistence type
|
|
||||||
# Valid options are persistentVolumeClaim, emptyDir, nfs, hostPath, secret, configMap or custom
|
|
||||||
type: persistentVolumeClaim
|
|
||||||
# -- Storage Class for the config volume.
|
|
||||||
# If set to `-`, dynamic provisioning is disabled.
|
|
||||||
# If set to something else, the given storageClass is used.
|
|
||||||
# If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
||||||
storageClass:
|
|
||||||
# -- If you want to reuse an existing claim, the name of the existing PVC can be passed here.
|
|
||||||
existingClaim:
|
|
||||||
# -- AccessMode for the persistent volume.
|
|
||||||
# Make sure to select an access mode that is supported by your storage provider!
|
|
||||||
# [[ref]](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes)
|
|
||||||
accessMode: ReadWriteOnce
|
|
||||||
# -- The amount of storage that is requested for the persistent volume.
|
|
||||||
size: 1Gi
|
|
||||||
# -- Set to true to retain the PVC upon `helm uninstall`
|
|
||||||
retain: false
|
|
||||||
# -- Configure mounts to all controllers and containers. By default the persistence item
|
|
||||||
# will be mounted to `/<name_of_the_peristence_item>`.
|
|
||||||
# Example:
|
|
||||||
# globalMounts:
|
|
||||||
# - path: /config
|
|
||||||
# readOnly: false
|
|
||||||
globalMounts:
|
|
||||||
- path: /books
|
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: libation
|
name: libation
|
||||||
version: 0.0.6
|
version: 0.0.7
|
||||||
description: Import library from audible
|
description: Import library from audible
|
||||||
keywords:
|
keywords:
|
||||||
- audiobooks
|
- audiobooks
|
||||||
@@ -10,4 +10,4 @@ sources:
|
|||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
icon: https://getlibation.com/images/libation-logo.png
|
icon: https://getlibation.com/images/libation-logo.png
|
||||||
appVersion: "11.1.0"
|
appVersion: "11.3.13"
|
||||||
|
@@ -2,7 +2,7 @@ job:
|
|||||||
schedule: "0 * * * *"
|
schedule: "0 * * * *"
|
||||||
image:
|
image:
|
||||||
repository: rmcrackan/libation
|
repository: rmcrackan/libation
|
||||||
tag: "11.1.0"
|
tag: "11.3.13"
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
persistence:
|
persistence:
|
||||||
config:
|
config:
|
||||||
|
15
charts/mysql-cluster/Chart.yaml
Normal file
15
charts/mysql-cluster/Chart.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: mysql-cluster
|
||||||
|
version: 0.1.2
|
||||||
|
description: Chart for a mysql cluster
|
||||||
|
keywords:
|
||||||
|
- database
|
||||||
|
- mysql
|
||||||
|
sources:
|
||||||
|
- https://dev.mysql.com/
|
||||||
|
- https://github.com/mysql/mysql-operator
|
||||||
|
- https://github.com/mysql/mysql-operator/tree/trunk/helm/mysql-innodbcluster
|
||||||
|
maintainers:
|
||||||
|
- name: alexlebens
|
||||||
|
icon: https://avatars.githubusercontent.com/u/2452804?s=48&v=4
|
||||||
|
appVersion: 8.3.0-2.1.2
|
17
charts/mysql-cluster/README.md
Normal file
17
charts/mysql-cluster/README.md
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
## Introduction
|
||||||
|
|
||||||
|
[MySQL Operator](https://dev.mysql.com/doc/mysql-operator/en/)
|
||||||
|
|
||||||
|
MySQL Operator for Kubernetes manages MySQL InnoDB Cluster setups inside a Kubernetes Cluster. MySQL Operator for Kubernetes manages the full lifecycle with setup and maintenance including automating upgrades and backups.
|
||||||
|
|
||||||
|
This chart bootstraps a [MySQL InnoDB](https://dev.mysql.com/doc/mysql-operator/en/mysql-operator-innodbcluster.html) cluster on a [Kubernetes](https://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- Kubernetes
|
||||||
|
- Helm
|
||||||
|
- MySQL Operator
|
||||||
|
|
||||||
|
## Parameters
|
||||||
|
|
||||||
|
See the [values files](values.yaml).
|
72
charts/mysql-cluster/templates/_backup.tpl
Normal file
72
charts/mysql-cluster/templates/_backup.tpl
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
{{- define "cluster.backup" -}}
|
||||||
|
|
||||||
|
{{- if and .Values.backup.enabled .Values.backup.profiles }}
|
||||||
|
backupProfiles:
|
||||||
|
{{- $isDumpInstance := false }}
|
||||||
|
{{- $isSnapshot := false }}
|
||||||
|
{{- range $_, $profile := .Values.backup.profiles }}
|
||||||
|
- name: {{ $profile.name | quote }}
|
||||||
|
{{- if hasKey $profile "podAnnotations" }}
|
||||||
|
podAnnotations:
|
||||||
|
{{ toYaml $profile.podAnnotations | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if hasKey $profile "podLabels" }}
|
||||||
|
podLabels:
|
||||||
|
{{ toYaml $profile.podLabels | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- $isDumpInstance = hasKey $profile "dumpInstance" }}
|
||||||
|
{{- $isSnapshot = hasKey $profile "snapshot" }}
|
||||||
|
{{- if or $isDumpInstance $isSnapshot }}
|
||||||
|
|
||||||
|
{{- $backupProfile := ternary $profile.dumpInstance $profile.snapshot $isDumpInstance }}
|
||||||
|
{{- if $isDumpInstance }}
|
||||||
|
dumpInstance:
|
||||||
|
{{- else if $isSnapshot }}
|
||||||
|
snapshot:
|
||||||
|
{{- else }}
|
||||||
|
{{- fail "Unsupported or unspecified backup type, must be either snapshot or dumpInstance" }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{- if not (hasKey $backupProfile "storage") }}
|
||||||
|
{{- fail "backup profile $profile.name has no storage section" }}
|
||||||
|
{{- else if hasKey $backupProfile.storage "s3" }}
|
||||||
|
storage:
|
||||||
|
s3:
|
||||||
|
{{- if $backupProfile.storage.s3.prefix }}
|
||||||
|
prefix: {{ $backupProfile.storage.s3.prefix }}
|
||||||
|
{{- end }}
|
||||||
|
bucketName: {{ required "bucketName is required" $backupProfile.storage.s3.bucketName }}
|
||||||
|
config: {{ required "config is required" $backupProfile.storage.s3.config }}
|
||||||
|
{{- if $backupProfile.storage.s3.profile }}
|
||||||
|
profile: {{ $backupProfile.storage.s3.profile }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if $backupProfile.storage.s3.endpoint }}
|
||||||
|
endpoint: {{ $backupProfile.storage.s3.endpoint }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else if hasKey $backupProfile.storage "persistentVolumeClaim" }}
|
||||||
|
storage:
|
||||||
|
persistentVolumeClaim: {{ toYaml $backupProfile.storage.persistentVolumeClaim | nindent 12}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- fail "Backup profile $profile.name has empty storage section - neither s3 nor persistentVolumeClaim defined" }}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- if .Values.backup.schedules }}
|
||||||
|
backupSchedules:
|
||||||
|
{{- range $_, $schedule := .Values.backup.schedules }}
|
||||||
|
- name: {{ $schedule.name | quote }}
|
||||||
|
enabled: {{ $schedule.enabled }}
|
||||||
|
schedule: {{ quote $schedule.schedule }}
|
||||||
|
{{- if ($schedule).timeZone }}
|
||||||
|
timeZone: {{ quote $schedule.timeZone }}
|
||||||
|
{{- end }}
|
||||||
|
deleteBackupData: {{ $schedule.deleteBackupData }}
|
||||||
|
backupProfileName: {{ $schedule.backupProfileName }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- end }}
|
64
charts/mysql-cluster/templates/_helpers.tpl
Normal file
64
charts/mysql-cluster/templates/_helpers.tpl
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "cluster.name" -}}
|
||||||
|
{{- if .Values.global.nameOverride }}
|
||||||
|
{{- .Values.global.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-mysql-%s" .Release.Name ((semver .Values.cluster.image.version).Major | toString) | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "cluster.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Check for invalid versions
|
||||||
|
*/}}
|
||||||
|
{{- $minimalVersion := "8.0.27" }}
|
||||||
|
{{- $forbiddenVersions := list "8.0.29" }}
|
||||||
|
{{- $serverVersion := .Values.serverVersion | default .Chart.AppVersion }}
|
||||||
|
{{- if lt $serverVersion $minimalVersion }}
|
||||||
|
{{- $err := printf "It is not possible to use MySQL version %s . Please, use %s or above" $serverVersion $minimalVersion }}
|
||||||
|
{{- fail $err }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if has $serverVersion $forbiddenVersions }}
|
||||||
|
{{- $err := printf "It is not possible to use MySQL version %s . Please, use %s or above except %v" $serverVersion $minimalVersion $forbiddenVersions }}
|
||||||
|
{{- fail $err }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "cluster.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "cluster.chart" . }}
|
||||||
|
{{ include "cluster.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "cluster.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "cluster.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: cloudnative-pg
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the service account to use.
|
||||||
|
*/}}
|
||||||
|
{{- define "mysql.serviceAccountName" -}}
|
||||||
|
{{- if .Values.serviceAccount.enabled -}}
|
||||||
|
{{ default (include "cluster.name" .) .Values.serviceAccount.name }}
|
||||||
|
{{- else -}}
|
||||||
|
{{ default "default" .Values.serviceAccount.name }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
47
charts/mysql-cluster/templates/_init.tpl
Normal file
47
charts/mysql-cluster/templates/_init.tpl
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
{{- define "cluster.init" -}}
|
||||||
|
|
||||||
|
{{- if eq .Values.mode "clone" }}
|
||||||
|
{{- with .Values.clone }}
|
||||||
|
initDB:
|
||||||
|
clone:
|
||||||
|
donorUrl: {{ required "clone donorUrl is required" .donorUrl }}
|
||||||
|
rootUser: {{ .rootUser | default "root" }}
|
||||||
|
secretKeyRef:
|
||||||
|
name: {{ required "clone credentials is required" .exisitingCredentialsSecret }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- if eq .Values.mode "recovery" }}
|
||||||
|
{{- with .Values.recovery }}
|
||||||
|
initDB:
|
||||||
|
dump:
|
||||||
|
{{- if .name }}
|
||||||
|
name: {{ .name | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .path }}
|
||||||
|
path: {{ .path | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .options }}
|
||||||
|
options: {{ toYaml .options | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
storage:
|
||||||
|
{{- if eq .type "s3" }}
|
||||||
|
s3:
|
||||||
|
prefix: {{ required "s3 prefix is required" .s3.prefix }}
|
||||||
|
bucketName: {{ required "s3 bucketName is required" .s3.bucketName }}
|
||||||
|
config: {{ required "s3 config is required" .s3.config }}
|
||||||
|
{{- if .s3.profile }}
|
||||||
|
profile: {{ .s3.profile }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .s3.endpoint }}
|
||||||
|
endpoint: {{ .s3.endpoint }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if eq .type "pvc" }}
|
||||||
|
persistentVolumeClaim:
|
||||||
|
{{ toYaml .persistentVolumeClaim | nindent 10}}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- end }}
|
75
charts/mysql-cluster/templates/deployment.yaml
Normal file
75
charts/mysql-cluster/templates/deployment.yaml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
apiVersion: mysql.oracle.com/v2
|
||||||
|
kind: InnoDBCluster
|
||||||
|
metadata:
|
||||||
|
name: {{ include "cluster.name" . }}-cluster
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
annotations:
|
||||||
|
{{- with .Values.global.annotations }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
labels:
|
||||||
|
{{- include "cluster.labels" . | nindent 4 }}
|
||||||
|
{{- include "cluster.selectorLabels" . | nindent 4 }}
|
||||||
|
{{- with .Values.global.labels }}
|
||||||
|
{{ toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
instances: {{ required "serverInstances is required" .Values.cluster.serverInstances }}
|
||||||
|
baseServerId: {{ required "baseServerId is required" .Values.cluster.baseServerId }}
|
||||||
|
serviceAccountName: {{ include "mysql.serviceAccountName" . }}
|
||||||
|
imagePullPolicy : {{ .Values.cluster.image.pullPolicy }}
|
||||||
|
version: {{ .Values.cluster.image.version }}
|
||||||
|
tlsUseSelfSigned: true
|
||||||
|
secretName: {{ .Values.cluster.exisitingCredentialsSecret }}
|
||||||
|
podSpec:
|
||||||
|
{{- with .Values.cluster.podSpec }}
|
||||||
|
{{ toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
podAnnotations:
|
||||||
|
{{- with .Values.cluster.podAnnotations }}
|
||||||
|
{{ toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
podLabels:
|
||||||
|
{{- with .Values.cluster.podLabels }}
|
||||||
|
{{ toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
router:
|
||||||
|
instances: {{ required "router.instances is required" .Values.cluster.router.instances }}
|
||||||
|
podSpec:
|
||||||
|
{{- with .Values.cluster.router.podSpec }}
|
||||||
|
{{- toYaml . | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
podAnnotations:
|
||||||
|
{{- with .Values.cluster.router.podAnnotations }}
|
||||||
|
{{- toYaml . | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
podLabels:
|
||||||
|
{{- with .Values.cluster.router.podLabels }}
|
||||||
|
{{- toYaml . | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
tlsSecretName: {{ include "cluster.name" . }}-router-tls
|
||||||
|
logs:
|
||||||
|
{{- with .Values.cluster.logs }}
|
||||||
|
{{ toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
mycnf: |
|
||||||
|
{{ .Values.cluster.serverConfig.mycnf | indent 4 }}
|
||||||
|
{{- if .Values.cluster.datadirVolumeClaimTemplate }}
|
||||||
|
{{- with .Values.cluster.datadirVolumeClaimTemplate }}
|
||||||
|
datadirVolumeClaimTemplate:
|
||||||
|
{{- if .storageClassName }}
|
||||||
|
storageClassName: {{ .storageClassName | quote }}
|
||||||
|
{{- end}}
|
||||||
|
{{- if .accessModes }}
|
||||||
|
accessModes: [ "{{ .accessModes }}" ]
|
||||||
|
{{- end }}
|
||||||
|
{{- if .size }}
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: "{{ .size }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{ include "cluster.init" . | nindent 2 }}
|
||||||
|
{{ include "cluster.backup" . | nindent 2 }}
|
@@ -1,8 +1,17 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kyoo.serviceAccountName" . }}
|
name: {{ include "mysql.serviceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
{{- include "cluster.labels" . | nindent 4 }}
|
||||||
|
{{- include "cluster.selectorLabels" . | nindent 4 }}
|
||||||
|
{{- with .Values.global.labels }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.serviceAccount.labels }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
annotations:
|
annotations:
|
||||||
{{- with .Values.global.annotations }}
|
{{- with .Values.global.annotations }}
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
@@ -10,11 +19,3 @@ metadata:
|
|||||||
{{- with .Values.serviceAccount.annotations }}
|
{{- with .Values.serviceAccount.annotations }}
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
labels:
|
|
||||||
{{- include "kyoo.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.global.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.serviceAccount.labels }}
|
|
||||||
{{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
147
charts/mysql-cluster/values.yaml
Normal file
147
charts/mysql-cluster/values.yaml
Normal file
@@ -0,0 +1,147 @@
|
|||||||
|
global:
|
||||||
|
nameOverride:
|
||||||
|
labels: {}
|
||||||
|
annotations: {}
|
||||||
|
|
||||||
|
serviceAccount:
|
||||||
|
enabled: true
|
||||||
|
labels: {}
|
||||||
|
annotations: {}
|
||||||
|
name: ""
|
||||||
|
|
||||||
|
###
|
||||||
|
# Cluster mode of operation. Available modes:
|
||||||
|
# * `standalone` - Default mode. Creates new or updates an existing cluster.
|
||||||
|
# * `recovery` - Same as standalone but creates a cluster from a backup
|
||||||
|
# * `clone` - Create database as a replica from another cluster
|
||||||
|
mode: standalone
|
||||||
|
|
||||||
|
##
|
||||||
|
# Cluster spec
|
||||||
|
#
|
||||||
|
# Reference: https://dev.mysql.com/doc/mysql-operator/en/mysql-operator-properties.html#mysql-operator-spec-innodbclusterspecinitdbdumpstorages3
|
||||||
|
#
|
||||||
|
cluster:
|
||||||
|
serverInstances: 1
|
||||||
|
baseServerId: 1000
|
||||||
|
|
||||||
|
# Existing secret that contains the keys "rootUser", "rootHost", and "rootPassword"
|
||||||
|
exisitingCredentialsSecret: ""
|
||||||
|
|
||||||
|
image:
|
||||||
|
version: 8.3.0-2.1.2
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
router:
|
||||||
|
instances: 1
|
||||||
|
podSpec: {}
|
||||||
|
podAnnotations: {}
|
||||||
|
podLabels: {}
|
||||||
|
|
||||||
|
logs:
|
||||||
|
error:
|
||||||
|
enabled: true
|
||||||
|
collect: false
|
||||||
|
general:
|
||||||
|
enabled: false
|
||||||
|
collect: false
|
||||||
|
slowQuery:
|
||||||
|
enabled: false
|
||||||
|
longQueryTime: 2.5
|
||||||
|
|
||||||
|
serverConfig:
|
||||||
|
mycnf: |
|
||||||
|
[mysqld]
|
||||||
|
core_file
|
||||||
|
local_infile=off
|
||||||
|
|
||||||
|
datadirVolumeClaimTemplate:
|
||||||
|
storageClassName: ""
|
||||||
|
accessModes: ""
|
||||||
|
size: ""
|
||||||
|
|
||||||
|
podSpec:
|
||||||
|
containers:
|
||||||
|
- name: mysql
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: 1024Mi
|
||||||
|
cpu: 1000m
|
||||||
|
requests:
|
||||||
|
memory: 512Mi
|
||||||
|
cpu: 100m
|
||||||
|
podAnnotations: {}
|
||||||
|
podLabels: {}
|
||||||
|
|
||||||
|
##
|
||||||
|
# Recovery database from storage
|
||||||
|
#
|
||||||
|
recovery:
|
||||||
|
|
||||||
|
# * `s3` - Restores from s3 object store
|
||||||
|
# * `pvc` - Restores from persistent volume claim
|
||||||
|
type:
|
||||||
|
|
||||||
|
# -- Name of the dump. Not used by the operator, but a descriptive hint for the cluster administrator
|
||||||
|
name: ""
|
||||||
|
# -- Path to the dump in the PVC. Use when specifying persistentVolumeClaim. Omit for ociObjectStorage, S3, or azure.
|
||||||
|
path: ""
|
||||||
|
# -- A dictionary of key-value pairs passed directly to MySQL Shell's loadDump()
|
||||||
|
options: {}
|
||||||
|
|
||||||
|
s3:
|
||||||
|
# -- Path in the bucket where the dump files are stored
|
||||||
|
prefix: ""
|
||||||
|
# -- Name of a Secret with S3 configuration and credentials as contained in ~/.aws/config
|
||||||
|
config: ""
|
||||||
|
# -- Name of the S3 bucket where the dump is stored
|
||||||
|
bucketName: ""
|
||||||
|
# -- Override endpoint URL
|
||||||
|
endpoint: ""
|
||||||
|
|
||||||
|
persistentVolumeClaim: {}
|
||||||
|
|
||||||
|
##
|
||||||
|
# Clone database from another instance
|
||||||
|
#
|
||||||
|
clone:
|
||||||
|
donorUrl: ""
|
||||||
|
rootUser: root
|
||||||
|
exisitingCredentialsSecret: ""
|
||||||
|
|
||||||
|
##
|
||||||
|
# Backup database to pvc or s3
|
||||||
|
#
|
||||||
|
backup:
|
||||||
|
enabled: false
|
||||||
|
profiles:
|
||||||
|
|
||||||
|
## -- Example profile that back ups to local pvc
|
||||||
|
|
||||||
|
# - name: pvc-backup
|
||||||
|
# dumpInstance:
|
||||||
|
# storage:
|
||||||
|
# persistentVolumeClaim:
|
||||||
|
# claimName: backup-volume-claim
|
||||||
|
|
||||||
|
## -- Example profile that back ups to s3 endpoint
|
||||||
|
|
||||||
|
# - name: s3-backup
|
||||||
|
# snapshot:
|
||||||
|
# storage:
|
||||||
|
# s3:
|
||||||
|
# prefix: ""
|
||||||
|
# config: ""
|
||||||
|
# bucketName: ""
|
||||||
|
# endpoint: ""
|
||||||
|
|
||||||
|
schedules:
|
||||||
|
|
||||||
|
## -- Example schedule that backups daily
|
||||||
|
|
||||||
|
# - name: schedule-daily
|
||||||
|
# enabled: true
|
||||||
|
# schedule: "0 0 0 * * *"
|
||||||
|
# timeZone: "US/Central"
|
||||||
|
# deleteBackupData: false
|
||||||
|
# backupProfileName:
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: outline
|
name: outline
|
||||||
version: 0.5.2
|
version: 0.6.1
|
||||||
description: Chart for Outline wiki
|
description: Chart for Outline wiki
|
||||||
keywords:
|
keywords:
|
||||||
- wiki
|
- wiki
|
||||||
@@ -14,5 +14,5 @@ icon: https://avatars.githubusercontent.com/u/1765001?s=48&v=4
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: redis
|
- name: redis
|
||||||
repository: https://charts.bitnami.com/bitnami
|
repository: https://charts.bitnami.com/bitnami
|
||||||
version: 19.1.2
|
version: 19.3.2
|
||||||
appVersion: v0.75.2
|
appVersion: v0.76.1
|
||||||
|
@@ -3,7 +3,7 @@ deployment:
|
|||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
image:
|
image:
|
||||||
repository: outlinewiki/outline
|
repository: outlinewiki/outline
|
||||||
tag: "0.75.2"
|
tag: "0.76.1"
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: postgres-cluster
|
name: postgres-cluster
|
||||||
version: 2.4.2
|
version: 3.0.0
|
||||||
description: Chart for cloudnative-pg cluster
|
description: Chart for cloudnative-pg cluster
|
||||||
keywords:
|
keywords:
|
||||||
- database
|
- database
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
backup:
|
backup:
|
||||||
retentionPolicy: {{ .Values.backup.retentionPolicy }}
|
retentionPolicy: {{ .Values.backup.retentionPolicy }}
|
||||||
barmanObjectStore:
|
barmanObjectStore:
|
||||||
destinationPath: "s3://{{ .Values.backup.endpointBucket }}/{{ .Values.kubernetesClusterName }}/postgresql/{{ include "cluster.backupName" . }}"
|
destinationPath: {{ .Values.backup.destinationPath }}
|
||||||
endpointURL: {{ .Values.backup.endpointURL }}
|
endpointURL: {{ .Values.backup.endpointURL }}
|
||||||
{{- if .Values.backup.endpointCA }}
|
{{- if .Values.backup.endpointCA }}
|
||||||
endpointCA:
|
endpointCA:
|
||||||
|
@@ -63,7 +63,7 @@ externalClusters:
|
|||||||
- name: {{ include "cluster.recoveryServerName" . }}
|
- name: {{ include "cluster.recoveryServerName" . }}
|
||||||
barmanObjectStore:
|
barmanObjectStore:
|
||||||
serverName: {{ include "cluster.recoveryServerName" . }}
|
serverName: {{ include "cluster.recoveryServerName" . }}
|
||||||
destinationPath: "s3://{{ .Values.recovery.endpointBucket }}/{{ .Values.kubernetesClusterName }}/postgresql/{{ include "cluster.recoveryInstanceName" . }}"
|
destinationPath: {{ .Values.recovery.destinationPath }}
|
||||||
endpointURL: {{ .Values.recovery.endpointURL }}
|
endpointURL: {{ .Values.recovery.endpointURL }}
|
||||||
{{- with .Values.recovery.endpointCA }}
|
{{- with .Values.recovery.endpointCA }}
|
||||||
endpointCA:
|
endpointCA:
|
||||||
|
@@ -15,9 +15,6 @@ type: postgresql
|
|||||||
# * `replica` - Create database as a replica from another CNPG cluster
|
# * `replica` - Create database as a replica from another CNPG cluster
|
||||||
mode: standalone
|
mode: standalone
|
||||||
|
|
||||||
# Generates bucket name and path for recovery and backup, creates: <endpointBucket>/<clusterName>/postgresql/{{ .Release.Name }}
|
|
||||||
kubernetesClusterName: ""
|
|
||||||
|
|
||||||
cluster:
|
cluster:
|
||||||
instances: 3
|
instances: 3
|
||||||
|
|
||||||
@@ -84,7 +81,8 @@ cluster:
|
|||||||
# BootstrapInitDB is the configuration of the bootstrap process when initdb is used.
|
# BootstrapInitDB is the configuration of the bootstrap process when initdb is used.
|
||||||
# See: https://cloudnative-pg.io/documentation/current/bootstrap/
|
# See: https://cloudnative-pg.io/documentation/current/bootstrap/
|
||||||
# See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-bootstrapinitdb
|
# See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-bootstrapinitdb
|
||||||
initdb: {}
|
initdb:
|
||||||
|
{}
|
||||||
# database: app
|
# database: app
|
||||||
# owner: app
|
# owner: app
|
||||||
# secret: "" # Name of the secret containing the initial credentials for the owner of the user database. If empty a new secret will be created from scratch
|
# secret: "" # Name of the secret containing the initial credentials for the owner of the user database. If empty a new secret will be created from scratch
|
||||||
@@ -96,10 +94,9 @@ recovery:
|
|||||||
pitrTarget:
|
pitrTarget:
|
||||||
time: ""
|
time: ""
|
||||||
|
|
||||||
# Overrides the provider specific default endpoint. Defaults to:
|
# S3 https endpoint and the s3:// path
|
||||||
# S3: https://s3.<region>.amazonaws.com"
|
|
||||||
endpointURL: ""
|
endpointURL: ""
|
||||||
endpointBucket: ""
|
destinationPath: ""
|
||||||
|
|
||||||
# Specifies secret that contains a CA bundle to validate a privately signed certificate, should contain the key ca-bundle.crt
|
# Specifies secret that contains a CA bundle to validate a privately signed certificate, should contain the key ca-bundle.crt
|
||||||
endpointCA: ""
|
endpointCA: ""
|
||||||
@@ -140,7 +137,7 @@ replica:
|
|||||||
# If type microservice only one database is allowed, default is app as standard in cnpg clusters
|
# If type microservice only one database is allowed, default is app as standard in cnpg clusters
|
||||||
importDatabases:
|
importDatabases:
|
||||||
- app
|
- app
|
||||||
|
|
||||||
# If type microservice no roles are imported and ignored
|
# If type microservice no roles are imported and ignored
|
||||||
importRoles: []
|
importRoles: []
|
||||||
|
|
||||||
@@ -160,9 +157,11 @@ replica:
|
|||||||
backup:
|
backup:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
# Overrides the provider specific default endpoint
|
# S3 endpoint starting with "https://"
|
||||||
endpointURL: ""
|
endpointURL: ""
|
||||||
endpointBucket: ""
|
|
||||||
|
# S3 path starting with "s3://"
|
||||||
|
destinationPath: ""
|
||||||
|
|
||||||
# Specifies secret that contains a CA bundle to validate a privately signed certificate, should contain the key ca-bundle.crt
|
# Specifies secret that contains a CA bundle to validate a privately signed certificate, should contain the key ca-bundle.crt
|
||||||
endpointCA: ""
|
endpointCA: ""
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: taiga
|
name: taiga
|
||||||
version: 0.2.0
|
version: 0.2.2
|
||||||
description: Chart for Taiga
|
description: Chart for Taiga
|
||||||
keywords:
|
keywords:
|
||||||
- kanban
|
- kanban
|
||||||
@@ -14,11 +14,11 @@ maintainers:
|
|||||||
icon: https://avatars.githubusercontent.com/u/6905422?s=200&v=4
|
icon: https://avatars.githubusercontent.com/u/6905422?s=200&v=4
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: rabbitmq
|
- name: rabbitmq
|
||||||
version: 14.0.1
|
version: 14.1.4
|
||||||
repository: https://charts.bitnami.com/bitnami
|
repository: https://charts.bitnami.com/bitnami
|
||||||
alias: async-rabbitmq
|
alias: async-rabbitmq
|
||||||
- name: rabbitmq
|
- name: rabbitmq
|
||||||
version: 14.0.1
|
version: 14.1.4
|
||||||
repository: https://charts.bitnami.com/bitnami
|
repository: https://charts.bitnami.com/bitnami
|
||||||
alias: events-rabbitmq
|
alias: events-rabbitmq
|
||||||
appVersion: 6.7.7
|
appVersion: 6.7.7
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: tdarr
|
name: tdarr
|
||||||
version: 0.0.5
|
version: 0.0.6
|
||||||
description: Chart for Tdarr V2
|
description: Chart for Tdarr V2
|
||||||
keywords:
|
keywords:
|
||||||
- video
|
- video
|
||||||
@@ -15,4 +15,4 @@ dependencies:
|
|||||||
- name: tdarr-exporter
|
- name: tdarr-exporter
|
||||||
version: 1.1.1
|
version: 1.1.1
|
||||||
repository: https://homeylab.github.io/helm-charts/
|
repository: https://homeylab.github.io/helm-charts/
|
||||||
appVersion: "2.17.01"
|
appVersion: "2.18.02"
|
||||||
|
@@ -21,7 +21,7 @@ server:
|
|||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/haveagitgat/tdarr
|
repository: ghcr.io/haveagitgat/tdarr
|
||||||
tag: "2.17.01"
|
tag: "2.18.02"
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
env: []
|
env: []
|
||||||
envFrom: []
|
envFrom: []
|
||||||
@@ -58,7 +58,7 @@ node:
|
|||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/haveagitgat/tdarr_node
|
repository: ghcr.io/haveagitgat/tdarr_node
|
||||||
tag: "2.17.01"
|
tag: "2.18.02"
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
env: []
|
env: []
|
||||||
envFrom: []
|
envFrom: []
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: tubearchivist-to-jellyfin
|
name: tubearchivist-to-jellyfin
|
||||||
version: 0.0.4
|
version: 0.1.0
|
||||||
description: Import library from tubearchivist to jellyfin
|
description: Import library from tubearchivist to jellyfin
|
||||||
keywords:
|
keywords:
|
||||||
- tubearchivist
|
- tubearchivist
|
||||||
@@ -11,4 +11,4 @@ sources:
|
|||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
icon: https://avatars.githubusercontent.com/u/102734415?s=48&v=4
|
icon: https://avatars.githubusercontent.com/u/102734415?s=48&v=4
|
||||||
appVersion: "v0.1.2"
|
appVersion: "v0.2.0"
|
||||||
|
@@ -2,7 +2,7 @@ job:
|
|||||||
schedule: "0 * * * *"
|
schedule: "0 * * * *"
|
||||||
image:
|
image:
|
||||||
repository: bbilly1/tubearchivist-jf
|
repository: bbilly1/tubearchivist-jf
|
||||||
tag: v0.1.2
|
tag: v0.2.0
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
persistence:
|
persistence:
|
||||||
youtube:
|
youtube:
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: tubearchivist
|
name: tubearchivist
|
||||||
version: 0.2.3
|
version: 0.2.7
|
||||||
description: Chart for Tube Archivist
|
description: Chart for Tube Archivist
|
||||||
keywords:
|
keywords:
|
||||||
- download
|
- download
|
||||||
@@ -14,9 +14,9 @@ maintainers:
|
|||||||
icon: https://avatars.githubusercontent.com/u/102734415?s=48&v=4
|
icon: https://avatars.githubusercontent.com/u/102734415?s=48&v=4
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: redis
|
- name: redis
|
||||||
version: 19.1.2
|
version: 19.3.2
|
||||||
repository: https://charts.bitnami.com/bitnami
|
repository: https://charts.bitnami.com/bitnami
|
||||||
- name: elasticsearch
|
- name: elasticsearch
|
||||||
version: 20.0.4
|
version: 21.0.5
|
||||||
repository: https://charts.bitnami.com/bitnami
|
repository: https://charts.bitnami.com/bitnami
|
||||||
appVersion: v0.4.7
|
appVersion: v0.4.7
|
||||||
|
Reference in New Issue
Block a user