Compare commits
34 Commits
lazy-libra
...
postgres-c
Author | SHA1 | Date | |
---|---|---|---|
dd724b5b32 | |||
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",
|
||||
":rebaseStalePrs"
|
||||
],
|
||||
"timezone": "US/Mountain",
|
||||
"timezone": "US/Central",
|
||||
"schedule": [
|
||||
"every weekday"
|
||||
],
|
||||
@@ -40,7 +40,7 @@
|
||||
},
|
||||
{
|
||||
"description": "Label service images",
|
||||
"matchPackageNames": [
|
||||
"matchDepNames": [
|
||||
"ghcr.io/alex1989hu/kubelet-serving-cert-approver",
|
||||
"ghcr.io/cloudnative-pg/postgresql",
|
||||
"redis/redis-stack-server"
|
||||
@@ -57,7 +57,7 @@
|
||||
},
|
||||
{
|
||||
"description": "Label service charts",
|
||||
"matchPackageNames": [
|
||||
"matchDepNames": [
|
||||
"elasticsearch",
|
||||
"redis"
|
||||
],
|
||||
@@ -73,7 +73,7 @@
|
||||
},
|
||||
{
|
||||
"description": "Label application images",
|
||||
"matchPackageNames": [
|
||||
"matchDepNames": [
|
||||
"bbilly1/tubearchivist-jf",
|
||||
"bbilly1/tubearchivist",
|
||||
"freshrss/freshrss",
|
||||
@@ -97,7 +97,7 @@
|
||||
},
|
||||
{
|
||||
"description": "Label application charts",
|
||||
"matchPackageNames": [],
|
||||
"matchDepNames": [],
|
||||
"matchDatasources": [
|
||||
"helm"
|
||||
],
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: calibre-server
|
||||
version: 0.0.6
|
||||
version: 0.0.8
|
||||
description: Chart for Calibre content database
|
||||
keywords:
|
||||
- media
|
||||
|
@@ -31,4 +31,5 @@ spec:
|
||||
- kind: Service
|
||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||
port: {{ .Values.ingressRoute.authentik.port }}
|
||||
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||
{{- end }}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
{{- if .Values.ingressRoute.enabled }}
|
||||
apiVersion: traefik.containo.us/v1alpha1
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: Middleware
|
||||
metadata:
|
||||
name: "authentik-{{ .Release.Name }}"
|
||||
|
@@ -31,8 +31,9 @@ ingressRoute:
|
||||
http:
|
||||
host:
|
||||
authentik:
|
||||
outpost:
|
||||
outpost: ""
|
||||
port: 9000
|
||||
namespace: ""
|
||||
persistence:
|
||||
config:
|
||||
storageClassName: default
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: home-assistant
|
||||
version: 0.1.10
|
||||
version: 0.1.15
|
||||
description: Chart for Home Assistant
|
||||
keywords:
|
||||
- home-automation
|
||||
@@ -9,4 +9,4 @@ sources:
|
||||
maintainers:
|
||||
- name: alexlebens
|
||||
icon: https://avatars.githubusercontent.com/u/13844975?s=200&v=4
|
||||
appVersion: v2024.4.3
|
||||
appVersion: v2024.5.3
|
||||
|
@@ -31,6 +31,7 @@ spec:
|
||||
- kind: Service
|
||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||
port: {{ .Values.ingressRoute.authentik.port }}
|
||||
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||
{{- end }}
|
||||
|
||||
---
|
||||
@@ -67,4 +68,5 @@ spec:
|
||||
- kind: Service
|
||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||
port: {{ .Values.ingressRoute.authentik.port }}
|
||||
namespace: {{ .Values.ingressRoute.authentik.namespace }}
|
||||
{{- end }}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
{{- if .Values.ingressRoute.enabled }}
|
||||
apiVersion: traefik.containo.us/v1alpha1
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: Middleware
|
||||
metadata:
|
||||
name: "authentik-{{ .Release.Name }}"
|
||||
|
@@ -3,7 +3,7 @@ deployment:
|
||||
strategy: Recreate
|
||||
image:
|
||||
repository: homeassistant/home-assistant
|
||||
tag: 2024.4.3
|
||||
tag: 2024.5.3
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
TZ: UTC
|
||||
@@ -22,8 +22,9 @@ ingressRoute:
|
||||
enabled: true
|
||||
host:
|
||||
authentik:
|
||||
outpost:
|
||||
outpost: ""
|
||||
port: 9000
|
||||
namespace: ""
|
||||
metrics:
|
||||
enabled: false
|
||||
serviceMonitor:
|
||||
@@ -56,7 +57,7 @@ codeserver:
|
||||
enabled: false
|
||||
image:
|
||||
repository: linuxserver/code-server
|
||||
tag: 4.23.1
|
||||
tag: 4.89.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
TZ: UTC
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: homepage
|
||||
version: 0.0.11
|
||||
version: 0.0.15
|
||||
description: Chart for benphelps homepage
|
||||
keywords:
|
||||
- dashboard
|
||||
@@ -9,4 +9,4 @@ sources:
|
||||
maintainers:
|
||||
- name: alexlebens
|
||||
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/component: web
|
||||
app.kubernetes.io/part-of: homepage
|
||||
annotations:
|
||||
{{- with .Values.deployment.annotations }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
revisionHistoryLimit: 3
|
||||
replicas: {{ .Values.deployment.replicas }}
|
||||
|
@@ -30,3 +30,4 @@ spec:
|
||||
- kind: Service
|
||||
name: {{ .Values.ingressRoute.authentik.outpost }}
|
||||
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
|
||||
metadata:
|
||||
name: "authentik-{{ .Release.Name }}"
|
||||
|
@@ -1,9 +1,10 @@
|
||||
deployment:
|
||||
annotations: {}
|
||||
replicas: 1
|
||||
strategy: Recreate
|
||||
image:
|
||||
repository: ghcr.io/gethomepage/homepage
|
||||
tag: v0.8.12
|
||||
tag: v0.8.13
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
envFrom:
|
||||
@@ -18,10 +19,11 @@ service:
|
||||
http:
|
||||
port: 3000
|
||||
ingressRoute:
|
||||
host:
|
||||
host: ""
|
||||
authentik:
|
||||
outpost:
|
||||
outpost: ""
|
||||
port: 9000
|
||||
namespace: ""
|
||||
config:
|
||||
bookmarks:
|
||||
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
|
||||
name: libation
|
||||
version: 0.0.6
|
||||
version: 0.0.7
|
||||
description: Import library from audible
|
||||
keywords:
|
||||
- audiobooks
|
||||
@@ -10,4 +10,4 @@ sources:
|
||||
maintainers:
|
||||
- name: alexlebens
|
||||
icon: https://getlibation.com/images/libation-logo.png
|
||||
appVersion: "11.1.0"
|
||||
appVersion: "11.3.13"
|
||||
|
@@ -2,7 +2,7 @@ job:
|
||||
schedule: "0 * * * *"
|
||||
image:
|
||||
repository: rmcrackan/libation
|
||||
tag: "11.1.0"
|
||||
tag: "11.3.13"
|
||||
pullPolicy: IfNotPresent
|
||||
persistence:
|
||||
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
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ template "kyoo.serviceAccountName" . }}
|
||||
name: {{ include "mysql.serviceAccountName" . }}
|
||||
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:
|
||||
{{- with .Values.global.annotations }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
@@ -10,11 +19,3 @@ metadata:
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- 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
|
||||
name: outline
|
||||
version: 0.5.2
|
||||
version: 0.6.1
|
||||
description: Chart for Outline wiki
|
||||
keywords:
|
||||
- wiki
|
||||
@@ -14,5 +14,5 @@ icon: https://avatars.githubusercontent.com/u/1765001?s=48&v=4
|
||||
dependencies:
|
||||
- name: redis
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 19.1.2
|
||||
appVersion: v0.75.2
|
||||
version: 19.3.2
|
||||
appVersion: v0.76.1
|
||||
|
@@ -3,7 +3,7 @@ deployment:
|
||||
strategy: Recreate
|
||||
image:
|
||||
repository: outlinewiki/outline
|
||||
tag: "0.75.2"
|
||||
tag: "0.76.1"
|
||||
imagePullPolicy: IfNotPresent
|
||||
resources:
|
||||
requests:
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: postgres-cluster
|
||||
version: 2.4.2
|
||||
version: 3.1.0
|
||||
description: Chart for cloudnative-pg cluster
|
||||
keywords:
|
||||
- database
|
||||
|
@@ -3,7 +3,7 @@
|
||||
backup:
|
||||
retentionPolicy: {{ .Values.backup.retentionPolicy }}
|
||||
barmanObjectStore:
|
||||
destinationPath: "s3://{{ .Values.backup.endpointBucket }}/{{ .Values.kubernetesClusterName }}/postgresql/{{ include "cluster.backupName" . }}"
|
||||
destinationPath: {{ .Values.backup.destinationPath }}
|
||||
endpointURL: {{ .Values.backup.endpointURL }}
|
||||
{{- if .Values.backup.endpointCA }}
|
||||
endpointCA:
|
||||
|
@@ -63,7 +63,7 @@ externalClusters:
|
||||
- name: {{ include "cluster.recoveryServerName" . }}
|
||||
barmanObjectStore:
|
||||
serverName: {{ include "cluster.recoveryServerName" . }}
|
||||
destinationPath: "s3://{{ .Values.recovery.endpointBucket }}/{{ .Values.kubernetesClusterName }}/postgresql/{{ include "cluster.recoveryInstanceName" . }}"
|
||||
destinationPath: {{ .Values.recovery.destinationPath }}
|
||||
endpointURL: {{ .Values.recovery.endpointURL }}
|
||||
{{- with .Values.recovery.endpointCA }}
|
||||
endpointCA:
|
||||
|
@@ -15,15 +15,12 @@ type: postgresql
|
||||
# * `replica` - Create database as a replica from another CNPG cluster
|
||||
mode: standalone
|
||||
|
||||
# Generates bucket name and path for recovery and backup, creates: <endpointBucket>/<clusterName>/postgresql/{{ .Release.Name }}
|
||||
kubernetesClusterName: ""
|
||||
|
||||
cluster:
|
||||
instances: 3
|
||||
|
||||
image:
|
||||
repository: ghcr.io/cloudnative-pg/postgresql
|
||||
tag: "16.2"
|
||||
tag: "16.3"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
# The UID and GID of the postgres user inside the image
|
||||
@@ -84,7 +81,8 @@ cluster:
|
||||
# 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/cloudnative-pg.v1/#postgresql-cnpg-io-v1-bootstrapinitdb
|
||||
initdb: {}
|
||||
initdb:
|
||||
{}
|
||||
# database: 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
|
||||
@@ -96,10 +94,9 @@ recovery:
|
||||
pitrTarget:
|
||||
time: ""
|
||||
|
||||
# Overrides the provider specific default endpoint. Defaults to:
|
||||
# S3: https://s3.<region>.amazonaws.com"
|
||||
# S3 https endpoint and the s3:// path
|
||||
endpointURL: ""
|
||||
endpointBucket: ""
|
||||
destinationPath: ""
|
||||
|
||||
# Specifies secret that contains a CA bundle to validate a privately signed certificate, should contain the key ca-bundle.crt
|
||||
endpointCA: ""
|
||||
@@ -160,9 +157,11 @@ replica:
|
||||
backup:
|
||||
enabled: false
|
||||
|
||||
# Overrides the provider specific default endpoint
|
||||
# S3 endpoint starting with "https://"
|
||||
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
|
||||
endpointCA: ""
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: taiga
|
||||
version: 0.2.0
|
||||
version: 0.2.2
|
||||
description: Chart for Taiga
|
||||
keywords:
|
||||
- kanban
|
||||
@@ -14,11 +14,11 @@ maintainers:
|
||||
icon: https://avatars.githubusercontent.com/u/6905422?s=200&v=4
|
||||
dependencies:
|
||||
- name: rabbitmq
|
||||
version: 14.0.1
|
||||
version: 14.1.4
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
alias: async-rabbitmq
|
||||
- name: rabbitmq
|
||||
version: 14.0.1
|
||||
version: 14.1.4
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
alias: events-rabbitmq
|
||||
appVersion: 6.7.7
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: tdarr
|
||||
version: 0.0.5
|
||||
version: 0.0.6
|
||||
description: Chart for Tdarr V2
|
||||
keywords:
|
||||
- video
|
||||
@@ -15,4 +15,4 @@ dependencies:
|
||||
- name: tdarr-exporter
|
||||
version: 1.1.1
|
||||
repository: https://homeylab.github.io/helm-charts/
|
||||
appVersion: "2.17.01"
|
||||
appVersion: "2.18.02"
|
||||
|
@@ -21,7 +21,7 @@ server:
|
||||
strategy: Recreate
|
||||
image:
|
||||
repository: ghcr.io/haveagitgat/tdarr
|
||||
tag: "2.17.01"
|
||||
tag: "2.18.02"
|
||||
pullPolicy: IfNotPresent
|
||||
env: []
|
||||
envFrom: []
|
||||
@@ -58,7 +58,7 @@ node:
|
||||
strategy: Recreate
|
||||
image:
|
||||
repository: ghcr.io/haveagitgat/tdarr_node
|
||||
tag: "2.17.01"
|
||||
tag: "2.18.02"
|
||||
pullPolicy: IfNotPresent
|
||||
env: []
|
||||
envFrom: []
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: tubearchivist-to-jellyfin
|
||||
version: 0.0.4
|
||||
version: 0.1.0
|
||||
description: Import library from tubearchivist to jellyfin
|
||||
keywords:
|
||||
- tubearchivist
|
||||
@@ -11,4 +11,4 @@ sources:
|
||||
maintainers:
|
||||
- name: alexlebens
|
||||
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 * * * *"
|
||||
image:
|
||||
repository: bbilly1/tubearchivist-jf
|
||||
tag: v0.1.2
|
||||
tag: v0.2.0
|
||||
pullPolicy: IfNotPresent
|
||||
persistence:
|
||||
youtube:
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: tubearchivist
|
||||
version: 0.2.3
|
||||
version: 0.2.7
|
||||
description: Chart for Tube Archivist
|
||||
keywords:
|
||||
- download
|
||||
@@ -14,9 +14,9 @@ maintainers:
|
||||
icon: https://avatars.githubusercontent.com/u/102734415?s=48&v=4
|
||||
dependencies:
|
||||
- name: redis
|
||||
version: 19.1.2
|
||||
version: 19.3.2
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
- name: elasticsearch
|
||||
version: 20.0.4
|
||||
version: 21.0.5
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
appVersion: v0.4.7
|
||||
|
Reference in New Issue
Block a user