## 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: ## 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