Commit new App releases for TrueCharts
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
This commit is contained in:
parent
abfbe161f8
commit
523d9a6271
|
@ -6,4 +6,4 @@ dependencies:
|
|||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 10.4.6
|
||||
digest: sha256:989d94ad13c5cc6302b8ab148429e2bd137ab4cda7ea946c4a9d2b2b88d2f2c0
|
||||
generated: "2021-05-23T23:53:58.059726012Z"
|
||||
generated: "2021-05-24T11:50:43.460042713Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:54:01.557173218Z"
|
||||
generated: "2021-05-24T11:50:46.612975355Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:38.422650698Z"
|
||||
generated: "2021-05-24T11:50:26.459931172Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:38.875299532Z"
|
||||
generated: "2021-05-24T11:50:26.874479586Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:39.527459573Z"
|
||||
generated: "2021-05-24T11:50:27.319168918Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:40.000523275Z"
|
||||
generated: "2021-05-24T11:50:27.711733664Z"
|
||||
|
|
|
@ -6,4 +6,4 @@ dependencies:
|
|||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 10.4.6
|
||||
digest: sha256:e306c14a570d4ebd8b3dcbebf54029b8a50f2756243ff98d81a7f03fc2ed9d83
|
||||
generated: "2021-05-23T23:53:43.301694803Z"
|
||||
generated: "2021-05-24T11:50:30.668633529Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:46.74706035Z"
|
||||
generated: "2021-05-24T11:50:33.957289917Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:47.182160518Z"
|
||||
generated: "2021-05-24T11:50:34.375042336Z"
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
# Configuration Options
|
||||
|
||||
##### Connecting to other apps
|
||||
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
|
||||
https://truecharts.org/manual/linking/
|
||||
|
||||
##### Available config options
|
||||
In the future this page is going to contain an automated list of options available in the installation/edit UI.
|
|
@ -0,0 +1,6 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-24T11:50:34.81582543Z"
|
|
@ -0,0 +1,26 @@
|
|||
apiVersion: v2
|
||||
appVersion: auto
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
deprecated: false
|
||||
description: ERP beyond your fridge - grocy is a web-based self-hosted groceries &
|
||||
household management solution for your home
|
||||
home: https://github.com/truecharts/apps/tree/master/incubator/grocy
|
||||
icon: https://github.com/grocy/grocy/raw/master/public/img/appicons/mstile-150x150.png
|
||||
keywords:
|
||||
- grocy
|
||||
kubeVersion: '>=1.16.0-0'
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: truecharts.org
|
||||
name: grocy
|
||||
sources:
|
||||
- https://github.com/truecharts/apps/tree/master/incubator/grocy
|
||||
- https://github.com/k8s-at-home/charts/tree/master/charts/grocy
|
||||
- https://github.com/grocy/grocy
|
||||
type: application
|
||||
upstream_version: 4.3.1
|
||||
version: 4.0.3
|
|
@ -0,0 +1,55 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 3.1.5](https://img.shields.io/badge/Version-3.1.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: auto](https://img.shields.io/badge/AppVersion-auto-informational?style=flat-square)
|
||||
|
||||
ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home
|
||||
|
||||
TrueCharts are designed to be installed as TrueNAS SCALE app only. We can not guarantee this charts works as a stand-alone helm installation.
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/truecharts/apps/tree/master/incubator/grocy>
|
||||
* <https://github.com/k8s-at-home/charts/tree/master/charts/grocy>
|
||||
* <https://github.com/grocy/grocy>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://truecharts.org/ | common | 3.5.5 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `grocy`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `grocy` deployment
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Go to "Installed Apps"
|
||||
- Expand the menu in the top-right corner of this App
|
||||
- Click "Remove" for this specific Apps
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart **including storage volumes** _(Except hostPath Storage)_ and deletes the release.
|
||||
|
||||
## Support
|
||||
|
||||
- See the [Wiki](https://truecharts.org)
|
||||
- Open a [issue](https://github.com/truecharts/apps/issues/new/choose)
|
||||
- Ask a [question](https://github.com/truecharts/apps/discussions)
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
All Rights Reserved - The TrueCharts Project
|
|
@ -0,0 +1,3 @@
|
|||
ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home
|
||||
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
|
||||
ERP beyond your fridge - grocy is a web-based self-hosted groceries &
|
Binary file not shown.
|
@ -0,0 +1,16 @@
|
|||
##
|
||||
# This file contains Values.yaml content that gets added to the output of questions.yaml
|
||||
# It's ONLY meant for content that the user is NOT expected to change.
|
||||
# Example: Everything under "image" is not included in questions.yaml but is included here.
|
||||
##
|
||||
|
||||
image:
|
||||
repository: linuxserver/grocy
|
||||
tag: version-v3.0.1
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
|
||||
##
|
||||
# Most other defaults are set in questions.yaml
|
||||
# For other options please refer to the wiki, default_values.yaml or the common library chart
|
||||
##
|
|
@ -0,0 +1,335 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Workload Configuration"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "Networking"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage"
|
||||
description: "Persist and share data that is separate from the lifecycle of the container"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Ingress Configuration"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security"
|
||||
description: "Configure security context"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
- name: "WARNING"
|
||||
description: "WARNING"
|
||||
portals:
|
||||
web_portal:
|
||||
protocols:
|
||||
- "$kubernetes-resource_configmap_portal_protocol"
|
||||
host:
|
||||
- "$kubernetes-resource_configmap_portal_host"
|
||||
ports:
|
||||
- "$kubernetes-resource_configmap_portal_port"
|
||||
questions:
|
||||
- variable: portal
|
||||
group: "Container Image"
|
||||
label: "Configure Portal Button"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable"
|
||||
description: "enable the portal button"
|
||||
schema:
|
||||
hidden: true
|
||||
editable: false
|
||||
type: boolean
|
||||
default: true
|
||||
# Update Policy
|
||||
- variable: strategyType
|
||||
group: "Container Image"
|
||||
label: "Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
enum:
|
||||
- value: "RollingUpdate"
|
||||
description: "Create new pods and then kill old ones"
|
||||
- value: "Recreate"
|
||||
description: "Kill existing pods before creating new ones"
|
||||
- variable: env
|
||||
group: "Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TZ
|
||||
label: "Timezone"
|
||||
schema:
|
||||
type: string
|
||||
default: "Etc/UTC"
|
||||
$ref:
|
||||
- "definitions/timezone"
|
||||
- variable: PUID
|
||||
label: "PUID"
|
||||
description: "Sets the PUID env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: PGID
|
||||
label: "PGID"
|
||||
description: "Sets the PGID env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: UMASK
|
||||
label: "UMASK"
|
||||
description: "Sets the UMASK env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: string
|
||||
default: "002"
|
||||
# Configure Enviroment Variables
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Configuration"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: "Value"
|
||||
schema:
|
||||
type: string
|
||||
# Enable Host Networking
|
||||
- variable: hostNetwork
|
||||
group: "Networking"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: service
|
||||
group: "Networking"
|
||||
label: "Configure Service(s)"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "NodePort"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: "Service's Port(s) Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
hidden: false
|
||||
enum:
|
||||
- value: HTTP
|
||||
description: "HTTP"
|
||||
- value: "HTTPS"
|
||||
description: "HTTPS"
|
||||
- value: TCP
|
||||
description: "TCP"
|
||||
- value: "UDP"
|
||||
description: "UDP"
|
||||
- variable: port
|
||||
label: "Container Port"
|
||||
schema:
|
||||
type: int
|
||||
default: 80
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 80
|
||||
editable: true
|
||||
hidden: false
|
||||
required: true
|
||||
- variable: nodePort
|
||||
label: "Node Port (Optional)"
|
||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||
schema:
|
||||
type: int
|
||||
min: 9000
|
||||
max: 65535
|
||||
default: 36031
|
||||
required: true
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
description: "Integrated Persistent Storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: config
|
||||
label: "App Config Storage"
|
||||
description: "Stores the Application Configuration."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: storageClass
|
||||
label: "Type of Storage"
|
||||
description: " Warning: Anything other than Internal will break rollback!"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Internal"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/config"
|
||||
hidden: true
|
||||
- variable: emptyDir
|
||||
label: "Mount a ramdisk instead of actual storage"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
type: string
|
||||
default: "ReadWriteOnce"
|
||||
enum:
|
||||
- value: "ReadWriteOnce"
|
||||
description: "ReadWriteOnce"
|
||||
- value: "ReadOnlyMany"
|
||||
description: "ReadOnlyMany"
|
||||
- value: "ReadWriteMany"
|
||||
description: "ReadWriteMany"
|
||||
- variable: size
|
||||
label: "Size quotum of storage"
|
||||
schema:
|
||||
type: string
|
||||
default: "100Gi"
|
||||
- variable: hostPathMounts
|
||||
label: "Custom app storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: volumeMount
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
required: true
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: false
|
||||
- variable: readOnly
|
||||
label: "Mount as ReadOnly"
|
||||
description: "prevent any write from being done to the mounted volume"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: false
|
||||
- variable: emptyDir
|
||||
label: "emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: mountPath
|
||||
label: "Mount Path"
|
||||
description: "Path to mount inside the pod"
|
||||
schema:
|
||||
type: path
|
||||
required: true
|
||||
default: ""
|
||||
editable: true
|
||||
- variable: hostPath
|
||||
label: "Host Path"
|
||||
schema:
|
||||
type: hostpath
|
||||
required: true
|
|
@ -0,0 +1 @@
|
|||
{{ include "common.all" . }}
|
|
@ -0,0 +1,30 @@
|
|||
# Default values for grocy.
|
||||
|
||||
image:
|
||||
repository: linuxserver/grocy
|
||||
tag: version-v3.0.1
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 80
|
||||
|
||||
env: {}
|
||||
# TZ:
|
||||
# PUID:
|
||||
# PGID:
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
mountPath: "/config"
|
||||
emptyDir:
|
||||
enabled: true
|
||||
accessMode: ReadWriteOnce
|
||||
size: 1Gi
|
||||
storageClass: ""
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:48.627387589Z"
|
||||
generated: "2021-05-24T11:50:35.225107595Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:49.088976254Z"
|
||||
generated: "2021-05-24T11:50:35.621521331Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:49.54712739Z"
|
||||
generated: "2021-05-24T11:50:36.03743116Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:50.539817235Z"
|
||||
generated: "2021-05-24T11:50:36.556865424Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:51.000017648Z"
|
||||
generated: "2021-05-24T11:50:36.972671854Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:51.472377519Z"
|
||||
generated: "2021-05-24T11:50:37.393286358Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:51.928839291Z"
|
||||
generated: "2021-05-24T11:50:37.897758504Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:52.3809643Z"
|
||||
generated: "2021-05-24T11:50:38.323291781Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:52.870556819Z"
|
||||
generated: "2021-05-24T11:50:38.740790501Z"
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
# Configuration Options
|
||||
|
||||
##### Connecting to other apps
|
||||
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
|
||||
https://truecharts.org/manual/linking/
|
||||
|
||||
##### Available config options
|
||||
In the future this page is going to contain an automated list of options available in the installation/edit UI.
|
|
@ -0,0 +1,6 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-24T11:50:39.155131539Z"
|
|
@ -0,0 +1,33 @@
|
|||
apiVersion: v2
|
||||
appVersion: auto
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
deprecated: false
|
||||
description: A fork of Radarr to work with Books & AudioBooks
|
||||
home: https://github.com/truecharts/apps/tree/master/incubator/readarr
|
||||
icon: https://github.com/Readarr/Readarr/blob/develop/Logo/1024.png?raw=true
|
||||
keywords:
|
||||
- readarr
|
||||
- torrent
|
||||
- usenet
|
||||
- AudioBooks
|
||||
- ebooks
|
||||
kubeVersion: '>=1.16.0-0'
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: truecharts.org
|
||||
- email: kjeld@schouten-lebbing.nl
|
||||
name: Ornias1993
|
||||
url: truecharts.org
|
||||
name: readarr
|
||||
sources:
|
||||
- https://github.com/truecharts/apps/tree/master/incubator/readarr
|
||||
- https://github.com/k8s-at-home/charts/tree/master/charts/readarr
|
||||
- https://github.com/Readarr/Readarr
|
||||
- https://readarr.com
|
||||
type: application
|
||||
upstream_version: 2.1.0
|
||||
version: 4.0.3
|
|
@ -0,0 +1,56 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 3.1.5](https://img.shields.io/badge/Version-3.1.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: auto](https://img.shields.io/badge/AppVersion-auto-informational?style=flat-square)
|
||||
|
||||
A fork of Radarr to work with Books & AudioBooks
|
||||
|
||||
TrueCharts are designed to be installed as TrueNAS SCALE app only. We can not guarantee this charts works as a stand-alone helm installation.
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/truecharts/apps/tree/master/incubator/readarr>
|
||||
* <https://github.com/k8s-at-home/charts/tree/master/charts/readarr>
|
||||
* <https://github.com/Readarr/Readarr>
|
||||
* <https://readarr.com>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://truecharts.org/ | common | 3.5.5 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `readarr`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `readarr` deployment
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Go to "Installed Apps"
|
||||
- Expand the menu in the top-right corner of this App
|
||||
- Click "Remove" for this specific Apps
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart **including storage volumes** _(Except hostPath Storage)_ and deletes the release.
|
||||
|
||||
## Support
|
||||
|
||||
- See the [Wiki](https://truecharts.org)
|
||||
- Open a [issue](https://github.com/truecharts/apps/issues/new/choose)
|
||||
- Ask a [question](https://github.com/truecharts/apps/discussions)
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
All Rights Reserved - The TrueCharts Project
|
|
@ -0,0 +1,3 @@
|
|||
A fork of Radarr to work with Books & AudioBooks
|
||||
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
|
||||
A fork of Radarr to work with Books & AudioBooks
|
Binary file not shown.
|
@ -0,0 +1,37 @@
|
|||
##
|
||||
# This file contains Values.yaml content that gets added to the output of questions.yaml
|
||||
# It's ONLY meant for content that the user is NOT expected to change.
|
||||
# Example: Everything under "image" is not included in questions.yaml but is included here.
|
||||
##
|
||||
|
||||
image:
|
||||
repository: ghcr.io/truecharts/readarr
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v0.1.0.708
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
## Set this to true if you wish to specify your own livenessProbe
|
||||
custom: true
|
||||
## The spec field contains the values for the default livenessProbe.
|
||||
## If you selected custom: true, this field holds the definition of the livenessProbe.
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /usr/bin/env
|
||||
- bash
|
||||
- -c
|
||||
- curl --fail localhost:8787/api/v1/system/status?apiKey=`IFS=\> && while
|
||||
read -d \< E C; do if [[ $E = "ApiKey" ]]; then echo $C; fi; done < /config/config.xml`
|
||||
failureThreshold: 5
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
|
||||
|
||||
##
|
||||
# Most other defaults are set in questions.yaml
|
||||
# For other options please refer to the wiki, default_values.yaml or the common library chart
|
||||
##
|
|
@ -0,0 +1,388 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Workload Configuration"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "Networking"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage"
|
||||
description: "Persist and share data that is separate from the lifecycle of the container"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Ingress Configuration"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security"
|
||||
description: "Configure security context"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
- name: "WARNING"
|
||||
description: "WARNING"
|
||||
portals:
|
||||
web_portal:
|
||||
protocols:
|
||||
- "$kubernetes-resource_configmap_portal_protocol"
|
||||
host:
|
||||
- "$kubernetes-resource_configmap_portal_host"
|
||||
ports:
|
||||
- "$kubernetes-resource_configmap_portal_port"
|
||||
questions:
|
||||
- variable: portal
|
||||
group: "Container Image"
|
||||
label: "Configure Portal Button"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable"
|
||||
description: "enable the portal button"
|
||||
schema:
|
||||
hidden: true
|
||||
editable: false
|
||||
type: boolean
|
||||
default: true
|
||||
# Update Policy
|
||||
- variable: strategyType
|
||||
group: "Container Image"
|
||||
label: "Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
enum:
|
||||
- value: "RollingUpdate"
|
||||
description: "Create new pods and then kill old ones"
|
||||
- value: "Recreate"
|
||||
description: "Kill existing pods before creating new ones"
|
||||
- variable: env
|
||||
group: "Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TZ
|
||||
label: "Timezone"
|
||||
schema:
|
||||
type: string
|
||||
default: "Etc/UTC"
|
||||
$ref:
|
||||
- "definitions/timezone"
|
||||
- variable: UMASK
|
||||
label: "UMASK"
|
||||
description: "Sets the UMASK env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: string
|
||||
default: "002"
|
||||
# Configure Enviroment Variables
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Configuration"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: "Value"
|
||||
schema:
|
||||
type: string
|
||||
# Enable Host Networking
|
||||
- variable: hostNetwork
|
||||
group: "Networking"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: service
|
||||
group: "Networking"
|
||||
label: "Configure Service(s)"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "NodePort"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: "Service's Port(s) Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
hidden: false
|
||||
enum:
|
||||
- value: HTTP
|
||||
description: "HTTP"
|
||||
- value: "HTTPS"
|
||||
description: "HTTPS"
|
||||
- value: TCP
|
||||
description: "TCP"
|
||||
- value: "UDP"
|
||||
description: "UDP"
|
||||
- variable: port
|
||||
label: "Container Port"
|
||||
schema:
|
||||
type: int
|
||||
default: 8787
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 8787
|
||||
editable: true
|
||||
hidden: false
|
||||
required: true
|
||||
- variable: nodePort
|
||||
label: "Node Port (Optional)"
|
||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||
schema:
|
||||
type: int
|
||||
min: 9000
|
||||
max: 65535
|
||||
default: 36038
|
||||
required: true
|
||||
## TrueCharts Specific
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
description: "Integrated Persistent Storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: config
|
||||
label: "App Config Storage"
|
||||
description: "Stores the Application Configuration."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: storageClass
|
||||
label: "Type of Storage"
|
||||
description: " Warning: Anything other than Internal will break rollback!"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Internal"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/config"
|
||||
hidden: true
|
||||
- variable: emptyDir
|
||||
label: "Mount a ramdisk instead of actual storage"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
type: string
|
||||
default: "ReadWriteOnce"
|
||||
enum:
|
||||
- value: "ReadWriteOnce"
|
||||
description: "ReadWriteOnce"
|
||||
- value: "ReadOnlyMany"
|
||||
description: "ReadOnlyMany"
|
||||
- value: "ReadWriteMany"
|
||||
description: "ReadWriteMany"
|
||||
- variable: size
|
||||
label: "Size quotum of storage"
|
||||
schema:
|
||||
type: string
|
||||
default: "100Gi"
|
||||
- variable: hostPathMounts
|
||||
label: "Custom app storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: volumeMount
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
required: true
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: false
|
||||
- variable: readOnly
|
||||
label: "Mount as ReadOnly"
|
||||
description: "prevent any write from being done to the mounted volume"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: false
|
||||
- variable: emptyDir
|
||||
label: "emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: mountPath
|
||||
label: "Mount Path"
|
||||
description: "Path to mount inside the pod"
|
||||
schema:
|
||||
type: path
|
||||
required: true
|
||||
default: ""
|
||||
editable: true
|
||||
- variable: hostPath
|
||||
label: "Host Path"
|
||||
schema:
|
||||
type: hostpath
|
||||
required: true
|
||||
# Enable privileged
|
||||
- variable: securityContext
|
||||
group: "Security"
|
||||
label: "Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: privileged
|
||||
label: "Enable privileged mode for Common-Chart based charts"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
# Set Pod Security Policy
|
||||
- variable: podSecurityContext
|
||||
group: "Security"
|
||||
label: "Pod Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: supplementalGroups
|
||||
label: "supplementalGroups"
|
||||
description: "Additional groups this App needs access to"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: Group
|
||||
label: "Group"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroupChangePolicy
|
||||
label: "When should we take ownership?"
|
||||
schema:
|
||||
type: string
|
||||
default: "OnRootMismatch"
|
||||
enum:
|
||||
- value: "OnRootMismatch"
|
||||
description: "OnRootMismatch"
|
||||
- value: "Always"
|
||||
description: "Always"
|
|
@ -0,0 +1 @@
|
|||
{{ include "common.all" . }}
|
|
@ -0,0 +1,51 @@
|
|||
# Default values for Radarr.
|
||||
|
||||
image:
|
||||
repository: ghcr.io/truecharts/readarr
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v0.1.0.708
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8787
|
||||
|
||||
env: {}
|
||||
# TZ: UTC
|
||||
# PUID: 1001
|
||||
# PGID: 1001
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
## Set this to true if you wish to specify your own livenessProbe
|
||||
custom: true
|
||||
## The spec field contains the values for the default livenessProbe.
|
||||
## If you selected custom: true, this field holds the definition of the livenessProbe.
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /usr/bin/env
|
||||
- bash
|
||||
- -c
|
||||
- curl --fail localhost:8787/api/v1/system/status?apiKey=`IFS=\> && while
|
||||
read -d \< E C; do if [[ $E = "ApiKey" ]]; then echo $C; fi; done < /config/config.xml`
|
||||
failureThreshold: 5
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
mountPath: "/config"
|
||||
emptyDir:
|
||||
enabled: true
|
||||
accessMode: ReadWriteOnce
|
||||
size: 1Gi
|
||||
storageClass: ""
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:53.773564791Z"
|
||||
generated: "2021-05-24T11:50:39.570041374Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:54.227964121Z"
|
||||
generated: "2021-05-24T11:50:39.993059664Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:54.714376778Z"
|
||||
generated: "2021-05-24T11:50:40.387365312Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:18.880120608Z"
|
||||
generated: "2021-05-24T11:50:09.784940484Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:19.401618043Z"
|
||||
generated: "2021-05-24T11:50:10.217607626Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:19.882096034Z"
|
||||
generated: "2021-05-24T11:50:10.662049795Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:20.429307637Z"
|
||||
generated: "2021-05-24T11:50:11.09900661Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:20.905432164Z"
|
||||
generated: "2021-05-24T11:50:11.535362529Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:21.38126498Z"
|
||||
generated: "2021-05-24T11:50:11.973321138Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:22.876429062Z"
|
||||
generated: "2021-05-24T11:50:12.409951056Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:23.348183317Z"
|
||||
generated: "2021-05-24T11:50:12.871667019Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:23.815224294Z"
|
||||
generated: "2021-05-24T11:50:13.287474064Z"
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
# Configuration Options
|
||||
|
||||
##### Connecting to other apps
|
||||
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
|
||||
https://truecharts.org/manual/linking/
|
||||
|
||||
##### Available config options
|
||||
In the future this page is going to contain an automated list of options available in the installation/edit UI.
|
|
@ -0,0 +1,6 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-24T11:50:13.715127836Z"
|
|
@ -0,0 +1,31 @@
|
|||
apiVersion: v2
|
||||
appVersion: auto
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
deprecated: false
|
||||
description: Looks and smells like Sonarr but made for music
|
||||
home: https://github.com/truecharts/apps/tree/master/stable/lidarr
|
||||
icon: https://avatars3.githubusercontent.com/u/28475832?s=400&v=4
|
||||
keywords:
|
||||
- lidarr
|
||||
- torrent
|
||||
- usenet
|
||||
kubeVersion: '>=1.16.0-0'
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: truecharts.org
|
||||
- email: kjeld@schouten-lebbing.nl
|
||||
name: Ornias1993
|
||||
url: truecharts.org
|
||||
name: lidarr
|
||||
sources:
|
||||
- https://github.com/truecharts/apps/tree/master/stable/lidarr
|
||||
- https://github.com/k8s-at-home/charts/tree/master/charts/lidarr
|
||||
- https://github.com/Lidarr/Lidarr
|
||||
- https://hub.docker.com/r/linuxserver/lidarr
|
||||
type: application
|
||||
upstream_version: 7.1.0
|
||||
version: 4.0.3
|
|
@ -0,0 +1,56 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 3.1.5](https://img.shields.io/badge/Version-3.1.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: auto](https://img.shields.io/badge/AppVersion-auto-informational?style=flat-square)
|
||||
|
||||
Looks and smells like Sonarr but made for music
|
||||
|
||||
TrueCharts are designed to be installed as TrueNAS SCALE app only. We can not guarantee this charts works as a stand-alone helm installation.
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/truecharts/apps/tree/master/stable/lidarr>
|
||||
* <https://github.com/k8s-at-home/charts/tree/master/charts/lidarr>
|
||||
* <https://github.com/Lidarr/Lidarr>
|
||||
* <https://hub.docker.com/r/linuxserver/lidarr>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://truecharts.org/ | common | 3.5.5 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `lidarr`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `lidarr` deployment
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Go to "Installed Apps"
|
||||
- Expand the menu in the top-right corner of this App
|
||||
- Click "Remove" for this specific Apps
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart **including storage volumes** _(Except hostPath Storage)_ and deletes the release.
|
||||
|
||||
## Support
|
||||
|
||||
- See the [Wiki](https://truecharts.org)
|
||||
- Open a [issue](https://github.com/truecharts/apps/issues/new/choose)
|
||||
- Ask a [question](https://github.com/truecharts/apps/discussions)
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
All Rights Reserved - The TrueCharts Project
|
|
@ -0,0 +1,3 @@
|
|||
Looks and smells like Sonarr but made for music
|
||||
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
|
||||
Looks and smells like Sonarr but made for music
|
Binary file not shown.
|
@ -0,0 +1,37 @@
|
|||
##
|
||||
# This file contains Values.yaml content that gets added to the output of questions.yaml
|
||||
# It's ONLY meant for content that the user is NOT expected to change.
|
||||
# Example: Everything under "image" is not included in questions.yaml but is included here.
|
||||
##
|
||||
|
||||
image:
|
||||
repository: ghcr.io/truecharts/lidarr
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v1.0.0.2226
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
## Set this to true if you wish to specify your own livenessProbe
|
||||
custom: true
|
||||
## The spec field contains the values for the default livenessProbe.
|
||||
## If you selected custom: true, this field holds the definition of the livenessProbe.
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /usr/bin/env
|
||||
- bash
|
||||
- -c
|
||||
- curl --fail localhost:8686/api/v1/system/status?apiKey=`IFS=\> && while
|
||||
read -d \< E C; do if [[ $E = "ApiKey" ]]; then echo $C; fi; done < /config/config.xml`
|
||||
failureThreshold: 5
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
|
||||
|
||||
##
|
||||
# Most other defaults are set in questions.yaml
|
||||
# For other options please refer to the wiki, default_values.yaml or the common library chart
|
||||
##
|
|
@ -0,0 +1,387 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Workload Configuration"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "Networking"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage"
|
||||
description: "Persist and share data that is separate from the lifecycle of the container"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Ingress Configuration"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security"
|
||||
description: "Configure security context"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
- name: "WARNING"
|
||||
description: "WARNING"
|
||||
portals:
|
||||
web_portal:
|
||||
protocols:
|
||||
- "$kubernetes-resource_configmap_portal_protocol"
|
||||
host:
|
||||
- "$kubernetes-resource_configmap_portal_host"
|
||||
ports:
|
||||
- "$kubernetes-resource_configmap_portal_port"
|
||||
questions:
|
||||
- variable: portal
|
||||
group: "Container Image"
|
||||
label: "Configure Portal Button"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable"
|
||||
description: "enable the portal button"
|
||||
schema:
|
||||
hidden: true
|
||||
editable: false
|
||||
type: boolean
|
||||
default: true
|
||||
# Update Policy
|
||||
- variable: strategyType
|
||||
group: "Container Image"
|
||||
label: "Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
enum:
|
||||
- value: "RollingUpdate"
|
||||
description: "Create new pods and then kill old ones"
|
||||
- value: "Recreate"
|
||||
description: "Kill existing pods before creating new ones"
|
||||
- variable: env
|
||||
group: "Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TZ
|
||||
label: "Timezone"
|
||||
schema:
|
||||
type: string
|
||||
default: "Etc/UTC"
|
||||
$ref:
|
||||
- "definitions/timezone"
|
||||
- variable: UMASK
|
||||
label: "UMASK"
|
||||
description: "Sets the UMASK env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: string
|
||||
default: "002"
|
||||
# Configure Enviroment Variables
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Configuration"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: "Value"
|
||||
schema:
|
||||
type: string
|
||||
# Enable Host Networking
|
||||
- variable: hostNetwork
|
||||
group: "Networking"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: service
|
||||
group: "Networking"
|
||||
label: "Configure Service(s)"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "NodePort"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: "Service's Port(s) Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
hidden: false
|
||||
enum:
|
||||
- value: HTTP
|
||||
description: "HTTP"
|
||||
- value: "HTTPS"
|
||||
description: "HTTPS"
|
||||
- value: TCP
|
||||
description: "TCP"
|
||||
- value: "UDP"
|
||||
description: "UDP"
|
||||
- variable: port
|
||||
label: "Container Port"
|
||||
schema:
|
||||
type: int
|
||||
default: 8686
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 8686
|
||||
editable: true
|
||||
hidden: false
|
||||
required: true
|
||||
- variable: nodePort
|
||||
label: "Node Port (Optional)"
|
||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||
schema:
|
||||
type: int
|
||||
min: 9000
|
||||
max: 65535
|
||||
default: 36012
|
||||
required: true
|
||||
## TrueCharts Specific
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: config
|
||||
label: "App Config Storage"
|
||||
description: "Stores the Application Configuration."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: storageClass
|
||||
label: "Type of Storage"
|
||||
description: " Warning: Anything other than Internal will break rollback!"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Internal"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/config"
|
||||
hidden: true
|
||||
- variable: emptyDir
|
||||
label: "Mount a ramdisk instead of actual storage"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
type: string
|
||||
default: "ReadWriteOnce"
|
||||
enum:
|
||||
- value: "ReadWriteOnce"
|
||||
description: "ReadWriteOnce"
|
||||
- value: "ReadOnlyMany"
|
||||
description: "ReadOnlyMany"
|
||||
- value: "ReadWriteMany"
|
||||
description: "ReadWriteMany"
|
||||
- variable: size
|
||||
label: "Size quotum of storage"
|
||||
schema:
|
||||
type: string
|
||||
default: "100Gi"
|
||||
- variable: hostPathMounts
|
||||
label: "Custom app storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: volumeMount
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
required: true
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: false
|
||||
- variable: readOnly
|
||||
label: "Mount as ReadOnly"
|
||||
description: "prevent any write from being done to the mounted volume"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: false
|
||||
- variable: emptyDir
|
||||
label: "emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: mountPath
|
||||
label: "Mount Path"
|
||||
description: "Path to mount inside the pod"
|
||||
schema:
|
||||
type: path
|
||||
required: true
|
||||
default: ""
|
||||
editable: true
|
||||
- variable: hostPath
|
||||
label: "Host Path"
|
||||
schema:
|
||||
type: hostpath
|
||||
required: true
|
||||
# Enable privileged
|
||||
- variable: securityContext
|
||||
group: "Security"
|
||||
label: "Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: privileged
|
||||
label: "Enable privileged mode for Common-Chart based charts"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
# Set Pod Security Policy
|
||||
- variable: podSecurityContext
|
||||
group: "Security"
|
||||
label: "Pod Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: supplementalGroups
|
||||
label: "supplementalGroups"
|
||||
description: "Additional groups this App needs access to"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: Group
|
||||
label: "Group"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroupChangePolicy
|
||||
label: "When should we take ownership?"
|
||||
schema:
|
||||
type: string
|
||||
default: "OnRootMismatch"
|
||||
enum:
|
||||
- value: "OnRootMismatch"
|
||||
description: "OnRootMismatch"
|
||||
- value: "Always"
|
||||
description: "Always"
|
|
@ -0,0 +1 @@
|
|||
{{ include "common.all" . }}
|
|
@ -0,0 +1,51 @@
|
|||
# Default values for Lidarr.
|
||||
|
||||
image:
|
||||
repository: ghcr.io/truecharts/lidarr
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v1.0.0.2226
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8686
|
||||
|
||||
env: {}
|
||||
# TZ: UTC
|
||||
# PUID: 1001
|
||||
# PGID: 1001
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
## Set this to true if you wish to specify your own livenessProbe
|
||||
custom: true
|
||||
## The spec field contains the values for the default livenessProbe.
|
||||
## If you selected custom: true, this field holds the definition of the livenessProbe.
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /usr/bin/env
|
||||
- bash
|
||||
- -c
|
||||
- curl --fail localhost:8686/api/v1/system/status?apiKey=`IFS=\> && while
|
||||
read -d \< E C; do if [[ $E = "ApiKey" ]]; then echo $C; fi; done < /config/config.xml`
|
||||
failureThreshold: 5
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
mountPath: "/config"
|
||||
emptyDir:
|
||||
enabled: true
|
||||
accessMode: ReadWriteOnce
|
||||
size: 1Gi
|
||||
storageClass: ""
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:24.771051666Z"
|
||||
generated: "2021-05-24T11:50:14.168503351Z"
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
# Configuration Options
|
||||
|
||||
##### Connecting to other apps
|
||||
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
|
||||
https://truecharts.org/manual/linking/
|
||||
|
||||
##### Available config options
|
||||
In the future this page is going to contain an automated list of options available in the installation/edit UI.
|
|
@ -0,0 +1,6 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-24T11:50:14.573056165Z"
|
|
@ -0,0 +1,29 @@
|
|||
apiVersion: v2
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
name: plex
|
||||
version: 3.0.3
|
||||
upstream_version: 4.2.1
|
||||
appVersion: "auto"
|
||||
description: Plex Media Server
|
||||
type: application
|
||||
deprecated: false
|
||||
home: https://github.com/truecharts/apps/tree/master/stable/plex
|
||||
icon: https://www.plex.tv/wp-content/uploads/2018/01/pmp-icon-1.png
|
||||
keywords:
|
||||
- plex
|
||||
- plex-media-server
|
||||
sources:
|
||||
- https://github.com/truecharts/apps/tree/master/stable/plex
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
# condition:
|
||||
maintainers:
|
||||
- name: TrueCharts
|
||||
email: info@truecharts.org
|
||||
url: truecharts.org
|
||||
- name: Ornias1993
|
||||
email: kjeld@schouten-lebbing.nl
|
||||
url: truecharts.org
|
||||
# annotations:
|
|
@ -0,0 +1,53 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 2.1.5](https://img.shields.io/badge/Version-2.1.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: auto](https://img.shields.io/badge/AppVersion-auto-informational?style=flat-square)
|
||||
|
||||
Plex Media Server
|
||||
|
||||
TrueCharts are designed to be installed as TrueNAS SCALE app only. We can not guarantee this charts works as a stand-alone helm installation.
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/truecharts/apps/tree/master/stable/plex>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://truecharts.org/ | common | 3.5.5 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `plex`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `plex` deployment
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Go to "Installed Apps"
|
||||
- Expand the menu in the top-right corner of this App
|
||||
- Click "Remove" for this specific Apps
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart **including storage volumes** _(Except hostPath Storage)_ and deletes the release.
|
||||
|
||||
## Support
|
||||
|
||||
- See the [Wiki](https://truecharts.org)
|
||||
- Open a [issue](https://github.com/truecharts/apps/issues/new/choose)
|
||||
- Ask a [question](https://github.com/truecharts/apps/discussions)
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
All Rights Reserved - The TrueCharts Project
|
|
@ -0,0 +1,3 @@
|
|||
Plex Media Server
|
||||
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
|
||||
Plex Media Server
|
Binary file not shown.
|
@ -0,0 +1,22 @@
|
|||
##
|
||||
# This file contains Values.yaml content that gets added to the output of questions.yaml
|
||||
# It's ONLY meant for content that the user is NOT expected to change.
|
||||
# Example: Everything under "image" is not included in questions.yaml but is included here.
|
||||
##
|
||||
|
||||
image:
|
||||
repository: ghcr.io/truecharts/plex
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v1.22.3.4523-d0ce30438
|
||||
|
||||
# 44=video 107=render
|
||||
podSecurityContext:
|
||||
runAsNonRoot: true
|
||||
runAsUser: 568
|
||||
runAsGroup: 568
|
||||
fsGroup: 568
|
||||
supplementalGroups: [44, 107]
|
||||
##
|
||||
# Most other defaults are set in questions.yaml
|
||||
# For other options please refer to the wiki, default_values.yaml or the common library chart
|
||||
##
|
|
@ -0,0 +1,402 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Workload Configuration"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "Networking"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage"
|
||||
description: "Persist and share data that is separate from the lifecycle of the container"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Ingress Configuration"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security"
|
||||
description: "Configure security context"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
- name: "WARNING"
|
||||
description: "WARNING"
|
||||
portals:
|
||||
web_portal:
|
||||
protocols:
|
||||
- "$kubernetes-resource_configmap_portal_protocol"
|
||||
host:
|
||||
- "$kubernetes-resource_configmap_portal_host"
|
||||
ports:
|
||||
- "$kubernetes-resource_configmap_portal_port"
|
||||
questions:
|
||||
- variable: portal
|
||||
group: "Container Image"
|
||||
label: "Configure Portal Button"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable"
|
||||
description: "enable the portal button"
|
||||
schema:
|
||||
hidden: true
|
||||
editable: false
|
||||
type: boolean
|
||||
default: true
|
||||
# Update Policy
|
||||
- variable: strategyType
|
||||
group: "Container Image"
|
||||
label: "Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
enum:
|
||||
- value: "RollingUpdate"
|
||||
description: "Create new pods and then kill old ones"
|
||||
- value: "Recreate"
|
||||
description: "Kill existing pods before creating new ones"
|
||||
- variable: env
|
||||
group: "Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TZ
|
||||
label: "Timezone"
|
||||
schema:
|
||||
type: string
|
||||
default: "Etc/UTC"
|
||||
$ref:
|
||||
- "definitions/timezone"
|
||||
- variable: ADVERTISE_IP
|
||||
label: "Advertise IP"
|
||||
description: "IP to advertise to Plex"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: ALLOWED_NETWORKS
|
||||
label: "Allowed Networks"
|
||||
description: "Networks allowed to connect to plex"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: PLEX_CLAIM
|
||||
label: "Plex Claim Token"
|
||||
description: "Claim token to use to register the plex server (Max. 4 minutes old!)"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: UMASK
|
||||
label: "UMASK"
|
||||
description: "Sets the UMASK env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: string
|
||||
default: "002"
|
||||
# Configure Enviroment Variables
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Configuration"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: "Value"
|
||||
schema:
|
||||
type: string
|
||||
# Enable Host Networking
|
||||
- variable: hostNetwork
|
||||
group: "Networking"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: service
|
||||
group: "Networking"
|
||||
label: "Configure Service(s)"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "NodePort"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: "Service's Port(s) Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTPS"
|
||||
hidden: false
|
||||
enum:
|
||||
- value: HTTP
|
||||
description: "HTTP"
|
||||
- value: "HTTPS"
|
||||
description: "HTTPS"
|
||||
- value: TCP
|
||||
description: "TCP"
|
||||
- value: "UDP"
|
||||
description: "UDP"
|
||||
- variable: port
|
||||
label: "Container Port"
|
||||
schema:
|
||||
type: int
|
||||
default: 32400
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 32400
|
||||
editable: true
|
||||
hidden: false
|
||||
required: true
|
||||
- variable: nodePort
|
||||
label: "Node Port (Optional)"
|
||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||
schema:
|
||||
type: int
|
||||
min: 9000
|
||||
max: 65535
|
||||
default: 32400
|
||||
required: true
|
||||
## TrueCharts Specific
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: config
|
||||
label: "App Config Storage"
|
||||
description: "Stores the Application Configuration."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: storageClass
|
||||
label: "Type of Storage"
|
||||
description: " Warning: Anything other than Internal will break rollback!"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Internal"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/config"
|
||||
hidden: true
|
||||
- variable: emptyDir
|
||||
label: "Mount a ramdisk instead of actual storage"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
type: string
|
||||
default: "ReadWriteOnce"
|
||||
enum:
|
||||
- value: "ReadWriteOnce"
|
||||
description: "ReadWriteOnce"
|
||||
- value: "ReadOnlyMany"
|
||||
description: "ReadOnlyMany"
|
||||
- value: "ReadWriteMany"
|
||||
description: "ReadWriteMany"
|
||||
- variable: size
|
||||
label: "Size quotum of storage"
|
||||
schema:
|
||||
type: string
|
||||
default: "100Gi"
|
||||
- variable: hostPathMounts
|
||||
label: "Custom app storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: volumeMount
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
required: true
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: false
|
||||
- variable: readOnly
|
||||
label: "Mount as ReadOnly"
|
||||
description: "prevent any write from being done to the mounted volume"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: false
|
||||
- variable: emptyDir
|
||||
label: "emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: mountPath
|
||||
label: "Mount Path"
|
||||
description: "Path to mount inside the pod"
|
||||
schema:
|
||||
type: path
|
||||
required: true
|
||||
default: ""
|
||||
editable: true
|
||||
- variable: hostPath
|
||||
label: "Host Path"
|
||||
schema:
|
||||
type: hostpath
|
||||
required: true
|
||||
# Specify GPU configuration
|
||||
- variable: scaleGPU
|
||||
label: "GPU Configuration"
|
||||
group: "Resources and Devices"
|
||||
schema:
|
||||
type: dict
|
||||
$ref:
|
||||
- "definitions/gpuConfiguration"
|
||||
attrs: []
|
||||
# Enable privileged
|
||||
- variable: securityContext
|
||||
group: "Security"
|
||||
label: "Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: privileged
|
||||
label: "Enable privileged mode for Common-Chart based charts"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
# Set Pod Security Policy
|
||||
- variable: podSecurityContext
|
||||
group: "Security"
|
||||
label: "Pod Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroupChangePolicy
|
||||
label: "When should we take ownership?"
|
||||
schema:
|
||||
type: string
|
||||
default: "OnRootMismatch"
|
||||
enum:
|
||||
- value: "OnRootMismatch"
|
||||
description: "OnRootMismatch"
|
||||
- value: "Always"
|
||||
description: "Always"
|
|
@ -0,0 +1 @@
|
|||
{{ include "common.all" . }}
|
|
@ -0,0 +1,33 @@
|
|||
# Default values for Plex.
|
||||
|
||||
image:
|
||||
repository: ghcr.io/truecharts/plex
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v1.22.3.4523-d0ce30438
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
# 44=video 107=render
|
||||
podSecurityContext:
|
||||
runAsNonRoot: true
|
||||
runAsUser: 568
|
||||
runAsGroup: 568
|
||||
fsGroup: 568
|
||||
supplementalGroups: [44, 107]
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 32400
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
mountPath: "/config"
|
||||
emptyDir:
|
||||
enabled: true
|
||||
accessMode: ReadWriteOnce
|
||||
size: 1Gi
|
||||
storageClass: ""
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:25.781096179Z"
|
||||
generated: "2021-05-24T11:50:14.987617518Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:26.409131215Z"
|
||||
generated: "2021-05-24T11:50:15.418109273Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:26.863580419Z"
|
||||
generated: "2021-05-24T11:50:15.831056636Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:27.333151291Z"
|
||||
generated: "2021-05-24T11:50:16.242356109Z"
|
||||
|
|
|
@ -6,4 +6,4 @@ dependencies:
|
|||
repository: https://helm.traefik.io/traefik
|
||||
version: 9.19.1
|
||||
digest: sha256:6837d576d0a80cb63dcd82a8dd3a2e7e5ea10f710b1ef1d5c29ce3af4eb3fbfe
|
||||
generated: "2021-05-23T23:53:28.515365184Z"
|
||||
generated: "2021-05-24T11:50:17.403927088Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:30.503210394Z"
|
||||
generated: "2021-05-24T11:50:19.471374788Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-23T23:53:30.966249518Z"
|
||||
generated: "2021-05-24T11:50:19.887256793Z"
|
||||
|
|
|
@ -6,4 +6,4 @@ dependencies:
|
|||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 10.4.6
|
||||
digest: sha256:e306c14a570d4ebd8b3dcbebf54029b8a50f2756243ff98d81a7f03fc2ed9d83
|
||||
generated: "2021-05-23T23:53:34.429639643Z"
|
||||
generated: "2021-05-24T11:50:22.851830013Z"
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
# Configuration Options
|
||||
|
||||
##### Connecting to other apps
|
||||
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
|
||||
https://truecharts.org/manual/linking/
|
||||
|
||||
##### Available config options
|
||||
In the future this page is going to contain an automated list of options available in the installation/edit UI.
|
|
@ -0,0 +1,6 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
digest: sha256:980cb7feb6524f9a152987f81b989badc8161b864ca1381e86b5734f681152d9
|
||||
generated: "2021-05-24T11:50:26.055019401Z"
|
|
@ -0,0 +1,33 @@
|
|||
apiVersion: v2
|
||||
appVersion: auto
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 4.1.6
|
||||
deprecated: false
|
||||
description: Fully configurable Zwave to MQTT gateway and Control Panel using NodeJS
|
||||
and Vue
|
||||
home: https://github.com/truecharts/apps/tree/master/stable/zwavejs2mqtt
|
||||
icon: https://raw.githubusercontent.com/zwave-js/zwavejs2mqtt/master/static/logo.png
|
||||
keywords:
|
||||
- zwavejs2mqtt
|
||||
- zwave-js
|
||||
- z-wave
|
||||
- zwave
|
||||
kubeVersion: '>=1.16.0-0'
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: truecharts.org
|
||||
- email: 35702532+tprelog@users.noreply.github.com
|
||||
name: tprelog
|
||||
url: truecharts.org
|
||||
name: zwavejs2mqtt
|
||||
sources:
|
||||
- https://github.com/truecharts/apps/tree/master/stable/zwavejs2mqtt
|
||||
- https://github.com/k8s-at-home/charts/tree/master/charts/zwavejs2mqtt
|
||||
- https://github.com/zwave-js/zwavejs2mqtt
|
||||
- https://hub.docker.com/r/zwavejs/zwavejs2mqtt
|
||||
type: application
|
||||
upstream_version: 1.1.0
|
||||
version: 4.0.3
|
|
@ -0,0 +1,56 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 3.1.5](https://img.shields.io/badge/Version-3.1.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: auto](https://img.shields.io/badge/AppVersion-auto-informational?style=flat-square)
|
||||
|
||||
Fully configurable Zwave to MQTT gateway and Control Panel using NodeJS and Vue
|
||||
|
||||
TrueCharts are designed to be installed as TrueNAS SCALE app only. We can not guarantee this charts works as a stand-alone helm installation.
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/truecharts/apps/tree/master/stable/zwavejs2mqtt>
|
||||
* <https://github.com/k8s-at-home/charts/tree/master/charts/zwavejs2mqtt>
|
||||
* <https://github.com/zwave-js/zwavejs2mqtt>
|
||||
* <https://hub.docker.com/r/zwavejs/zwavejs2mqtt>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://truecharts.org/ | common | 3.5.5 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `zwavejs2mqtt`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `zwavejs2mqtt` deployment
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Go to "Installed Apps"
|
||||
- Expand the menu in the top-right corner of this App
|
||||
- Click "Remove" for this specific Apps
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart **including storage volumes** _(Except hostPath Storage)_ and deletes the release.
|
||||
|
||||
## Support
|
||||
|
||||
- See the [Wiki](https://truecharts.org)
|
||||
- Open a [issue](https://github.com/truecharts/apps/issues/new/choose)
|
||||
- Ask a [question](https://github.com/truecharts/apps/discussions)
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
All Rights Reserved - The TrueCharts Project
|
|
@ -0,0 +1,3 @@
|
|||
Fully configurable Zwave to MQTT gateway and Control Panel using NodeJS and Vue
|
||||
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
|
||||
Fully configurable Zwave to MQTT gateway and Control Panel using NodeJS
|
Binary file not shown.
|
@ -0,0 +1,66 @@
|
|||
##
|
||||
# This file contains Values.yaml content that gets added to the output of questions.yaml
|
||||
# It's ONLY meant for content that the user is NOT expected to change.
|
||||
# Example: Everything under "image" is not included in questions.yaml but is included here.
|
||||
##
|
||||
|
||||
image:
|
||||
repository: zwavejs/zwavejs2mqtt
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 4.3.1
|
||||
|
||||
# 5=tty 20=dialout 24=cdrom
|
||||
podSecurityContext:
|
||||
runAsNonRoot: true
|
||||
runAsUser: 568
|
||||
runAsGroup: 568
|
||||
fsGroup: 568
|
||||
supplementalGroups: [5, 20, 24]
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# failureThreshold: 5
|
||||
# httpGet:
|
||||
# path: /health
|
||||
# port: http
|
||||
# httpHeaders:
|
||||
# - name: Accept
|
||||
# value: text/plain
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# timeoutSeconds: 10
|
||||
readiness:
|
||||
enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# failureThreshold: 5
|
||||
# httpGet:
|
||||
# path: /health
|
||||
# port: http
|
||||
# httpHeaders:
|
||||
# - name: Accept
|
||||
# value: text/plain
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# timeoutSeconds: 10
|
||||
startup:
|
||||
enabled: false
|
||||
# custom: true
|
||||
# spec:
|
||||
# failureThreshold: 5
|
||||
# httpGet:
|
||||
# path: /health
|
||||
# port: http
|
||||
# httpHeaders:
|
||||
# - name: Accept
|
||||
# value: text/plain
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# timeoutSeconds: 10
|
||||
##
|
||||
# Most other defaults are set in questions.yaml
|
||||
# For other options please refer to the wiki, default_values.yaml or the common library chart
|
||||
##
|
|
@ -0,0 +1,497 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Workload Configuration"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "Networking"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage"
|
||||
description: "Persist and share data that is separate from the lifecycle of the container"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Ingress Configuration"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security"
|
||||
description: "Configure security context"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
- name: "WARNING"
|
||||
description: "WARNING"
|
||||
portals:
|
||||
web_portal:
|
||||
protocols:
|
||||
- "$kubernetes-resource_configmap_portal_protocol"
|
||||
host:
|
||||
- "$kubernetes-resource_configmap_portal_host"
|
||||
ports:
|
||||
- "$kubernetes-resource_configmap_portal_port"
|
||||
questions:
|
||||
- variable: portal
|
||||
group: "Container Image"
|
||||
label: "Configure Portal Button"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable"
|
||||
description: "enable the portal button"
|
||||
schema:
|
||||
hidden: true
|
||||
editable: false
|
||||
type: boolean
|
||||
default: true
|
||||
# Update Policy
|
||||
- variable: strategyType
|
||||
group: "Container Image"
|
||||
label: "Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
enum:
|
||||
- value: "RollingUpdate"
|
||||
description: "Create new pods and then kill old ones"
|
||||
- value: "Recreate"
|
||||
description: "Kill existing pods before creating new ones"
|
||||
- variable: env
|
||||
group: "Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TZ
|
||||
label: "Timezone"
|
||||
schema:
|
||||
type: string
|
||||
default: "Etc/UTC"
|
||||
$ref:
|
||||
- "definitions/timezone"
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Configuration"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: "Value"
|
||||
schema:
|
||||
type: string
|
||||
# Enable Host Networking
|
||||
- variable: hostNetwork
|
||||
group: "Networking"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: service
|
||||
group: "Networking"
|
||||
label: "Configure Service(s)"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "NodePort"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: "Service's Port(s) Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
hidden: false
|
||||
enum:
|
||||
- value: HTTP
|
||||
description: "HTTP"
|
||||
- value: "HTTPS"
|
||||
description: "HTTPS"
|
||||
- value: TCP
|
||||
description: "TCP"
|
||||
- value: "UDP"
|
||||
description: "UDP"
|
||||
- variable: port
|
||||
label: "Container Port"
|
||||
schema:
|
||||
type: int
|
||||
default: 8091
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 8091
|
||||
editable: true
|
||||
hidden: false
|
||||
required: true
|
||||
- variable: nodePort
|
||||
label: "Node Port (Optional)"
|
||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||
schema:
|
||||
type: int
|
||||
min: 9000
|
||||
max: 65535
|
||||
default: 36022
|
||||
required: true
|
||||
- variable: ws
|
||||
label: "WebSocket Service"
|
||||
description: "WebSocket Service"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "ClusterIP"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: "Service's Port(s) Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: ws
|
||||
label: "WebSocket Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "TCP"
|
||||
hidden: false
|
||||
enum:
|
||||
- value: HTTP
|
||||
description: "HTTP"
|
||||
- value: "HTTPS"
|
||||
description: "HTTPS"
|
||||
- value: TCP
|
||||
description: "TCP"
|
||||
- value: "UDP"
|
||||
description: "UDP"
|
||||
- variable: port
|
||||
label: "Container Port"
|
||||
schema:
|
||||
type: int
|
||||
default: 3000
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 3000
|
||||
editable: true
|
||||
hidden: false
|
||||
required: true
|
||||
- variable: nodePort
|
||||
label: "Node Port (Optional)"
|
||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||
schema:
|
||||
type: int
|
||||
min: 9000
|
||||
max: 65535
|
||||
default: 36023
|
||||
required: true
|
||||
# Configure app volumes
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: config
|
||||
label: "App Config Storage"
|
||||
description: "Stores the Application Configuration."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: storageClass
|
||||
label: "Type of Storage"
|
||||
description: " Warning: Anything other than Internal will break rollback!"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Internal"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/usr/src/app/store"
|
||||
hidden: true
|
||||
- variable: emptyDir
|
||||
label: "Mount a ramdisk instead of actual storage"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
type: string
|
||||
default: "ReadWriteOnce"
|
||||
enum:
|
||||
- value: "ReadWriteOnce"
|
||||
description: "ReadWriteOnce"
|
||||
- value: "ReadOnlyMany"
|
||||
description: "ReadOnlyMany"
|
||||
- value: "ReadWriteMany"
|
||||
description: "ReadWriteMany"
|
||||
- variable: size
|
||||
label: "Size quotum of storage"
|
||||
schema:
|
||||
type: string
|
||||
default: "100Gi"
|
||||
- variable: hostPathMounts
|
||||
label: "Custom app storage"
|
||||
group: "Storage"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: volumeMount
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
required: true
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: false
|
||||
- variable: readOnly
|
||||
label: "Mount as ReadOnly"
|
||||
description: "prevent any write from being done to the mounted volume"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: false
|
||||
- variable: emptyDir
|
||||
label: "emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: mountPath
|
||||
label: "Mount Path"
|
||||
description: "Path to mount inside the pod"
|
||||
schema:
|
||||
type: path
|
||||
required: true
|
||||
default: ""
|
||||
editable: true
|
||||
- variable: hostPath
|
||||
label: "Host Path"
|
||||
schema:
|
||||
type: hostpath
|
||||
required: true
|
||||
- variable: deviceMounts
|
||||
label: "Mount Devices"
|
||||
group: "Resources and Devices"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: deviceMount
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
required: true
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: emptyDir
|
||||
label: "emptyDir"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
hidden: true
|
||||
editable: false
|
||||
- variable: devicePath
|
||||
label: "Device Path"
|
||||
description: "Path to the device to mount inside the container"
|
||||
schema:
|
||||
type: path
|
||||
required: true
|
||||
default: "/dev/ttyACM0"
|
||||
editable: true
|
||||
# Enable privileged
|
||||
- variable: securityContext
|
||||
group: "Security"
|
||||
label: "Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: privileged
|
||||
label: "Enable privileged mode for Common-Chart based charts"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
# Set Pod Security Policy
|
||||
- variable: podSecurityContext
|
||||
group: "Security"
|
||||
label: "Pod Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroupChangePolicy
|
||||
label: "When should we take ownership?"
|
||||
schema:
|
||||
type: string
|
||||
default: "OnRootMismatch"
|
||||
enum:
|
||||
- value: "OnRootMismatch"
|
||||
description: "OnRootMismatch"
|
||||
- value: "Always"
|
||||
description: "Always"
|
|
@ -0,0 +1 @@
|
|||
{{ include "common.all" . }}
|
|
@ -0,0 +1,117 @@
|
|||
# Default values for zwavejs2mqtt.
|
||||
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||
# https://github.com/k8s-at-home/charts/tree/master/charts/common
|
||||
|
||||
image:
|
||||
repository: zwavejs/zwavejs2mqtt
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 4.3.1
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
# 5=tty 20=dialout 24=cdrom
|
||||
podSecurityContext:
|
||||
runAsNonRoot: true
|
||||
runAsUser: 568
|
||||
runAsGroup: 568
|
||||
fsGroup: 568
|
||||
supplementalGroups: [5, 20, 24]
|
||||
|
||||
# # See more environment variables in the zwavejs2mqtt documentation
|
||||
# https://zwave-js.github.io/zwavejs2mqtt/#/guide/env-vars
|
||||
env: {}
|
||||
# OZW_NETWORK_KEY:
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# failureThreshold: 5
|
||||
# httpGet:
|
||||
# path: /health
|
||||
# port: http
|
||||
# httpHeaders:
|
||||
# - name: Accept
|
||||
# value: text/plain
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# timeoutSeconds: 10
|
||||
readiness:
|
||||
enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# failureThreshold: 5
|
||||
# httpGet:
|
||||
# path: /health
|
||||
# port: http
|
||||
# httpHeaders:
|
||||
# - name: Accept
|
||||
# value: text/plain
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# timeoutSeconds: 10
|
||||
startup:
|
||||
enabled: false
|
||||
# custom: true
|
||||
# spec:
|
||||
# failureThreshold: 5
|
||||
# httpGet:
|
||||
# path: /health
|
||||
# port: http
|
||||
# httpHeaders:
|
||||
# - name: Accept
|
||||
# value: text/plain
|
||||
# initialDelaySeconds: 30
|
||||
# periodSeconds: 10
|
||||
# timeoutSeconds: 10
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8091
|
||||
ws:
|
||||
enabled: true
|
||||
type: ClusterIP
|
||||
ports:
|
||||
ws:
|
||||
enabled: true
|
||||
port: 3000
|
||||
protocol: TCP
|
||||
|
||||
# Privileged may be required if USB controller is accessed directly through the host machine
|
||||
# securityContext:
|
||||
# privileged: true
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
mountPath: "/config"
|
||||
emptyDir:
|
||||
enabled: true
|
||||
accessMode: ReadWriteOnce
|
||||
size: 1Gi
|
||||
storageClass: ""
|
||||
|
||||
# Path to your zwave device in the container
|
||||
additionalVolumeMounts: []
|
||||
# - name: usb
|
||||
# mountPath: /dev/serial/by-id/usb-0658_0200-if00
|
||||
|
||||
# Path to your zwave device on the host
|
||||
additionalVolumes: []
|
||||
# - name: usb
|
||||
# hostPath:
|
||||
# path: /dev/serial/by-id/usb-0658_0200-if00
|
||||
|
||||
# affinity:
|
||||
# nodeAffinity:
|
||||
# requiredDuringSchedulingIgnoredDuringExecution:
|
||||
# nodeSelectorTerms:
|
||||
# - matchExpressions:
|
||||
# - key: app
|
||||
# operator: In
|
||||
# values:
|
||||
# - zwave-controller
|
Loading…
Reference in New Issue