Commit new App releases for TrueCharts
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
This commit is contained in:
parent
f2b467e27e
commit
739a1c1322
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:58.866485162Z"
|
||||
generated: "2021-08-14T09:52:07.437408842Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:55.261004516Z"
|
||||
generated: "2021-08-14T09:52:02.561954133Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:09.909852912Z"
|
||||
generated: "2021-08-14T09:49:44.625143767Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:11.719523777Z"
|
||||
generated: "2021-08-14T09:49:47.055810368Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:13.61438396Z"
|
||||
generated: "2021-08-14T09:49:49.367374167Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:15.419509165Z"
|
||||
generated: "2021-08-14T09:49:51.732592568Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:19.074082605Z"
|
||||
generated: "2021-08-14T09:49:56.556665086Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:17.264442693Z"
|
||||
generated: "2021-08-14T09:49:54.088369529Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:20.873467046Z"
|
||||
generated: "2021-08-14T09:49:58.936231295Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:22.714380747Z"
|
||||
generated: "2021-08-14T09:50:01.289460272Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:24.527862278Z"
|
||||
generated: "2021-08-14T09:50:03.772466035Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:26.365821202Z"
|
||||
generated: "2021-08-14T09:50:06.216733274Z"
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
# 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,9 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
- name: postgresql
|
||||
repository: https://truecharts.org/
|
||||
version: 1.0.3
|
||||
digest: sha256:82a68c50e693545f55924cb433427293011120ad6421497fc54aee579bf229ea
|
||||
generated: "2021-08-14T09:50:09.31269869Z"
|
|
@ -0,0 +1,30 @@
|
|||
apiVersion: v2
|
||||
appVersion: auto
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
- condition: postgresql.enabled
|
||||
name: postgresql
|
||||
repository: https://truecharts.org/
|
||||
version: 1.0.3
|
||||
deprecated: false
|
||||
description: A free and open source personal finance manager
|
||||
home: https://github.com/firefly-iii/firefly-iii/
|
||||
icon: https://www.firefly-iii.org/assets/logo/color.png
|
||||
keywords:
|
||||
- fireflyiii
|
||||
- finacial
|
||||
kubeVersion: '>=1.16.0-0'
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: truecharts.org
|
||||
- email: 20650065+warllo54@users.noreply.github.com
|
||||
name: warllo54
|
||||
url: truecharts.org
|
||||
name: fireflyiii
|
||||
sources:
|
||||
- https://github.com/firefly-iii/firefly-iii/
|
||||
type: application
|
||||
version: 5.0.2
|
|
@ -0,0 +1,55 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 4.4.2](https://img.shields.io/badge/Version-4.4.2-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 free and open source personal finance manager
|
||||
|
||||
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/firefly-iii/firefly-iii/>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://charts.bitnami.com/bitnami | postgresql | 10.5.1 |
|
||||
| https://truecharts.org/ | common | 6.5.2 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `fireflyiii`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `fireflyiii` 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 free and open source personal finance manager
|
||||
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
|
||||
A free and open source personal finance manager
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,54 @@
|
|||
##
|
||||
# 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: fireflyiii/core
|
||||
pullPolicy: IfNotPresent
|
||||
tag: version-5.5.12
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
path: "/login"
|
||||
|
||||
readiness:
|
||||
path: "/login"
|
||||
|
||||
startup:
|
||||
path: "/login"
|
||||
|
||||
env:
|
||||
DB_USERNAME: fireflyiii
|
||||
DB_DATABASE: fireflyiii
|
||||
DB_CONNECTION: pgsql
|
||||
DB_PORT: 5432
|
||||
|
||||
envValueFrom:
|
||||
DB_HOST:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql_host
|
||||
DB_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql-password
|
||||
|
||||
# Enabled postgres
|
||||
postgresql:
|
||||
enabled: true
|
||||
postgresqlUsername: fireflyiii
|
||||
postgresqlDatabase: fireflyiii
|
||||
existingSecret: dbcreds
|
||||
persistence:
|
||||
db:
|
||||
storageClass: "SCALE-ZFS"
|
||||
dbbackups:
|
||||
storageClass: "SCALE-ZFS"
|
||||
|
||||
|
||||
##
|
||||
# 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,679 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Controller"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Container Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "App Configuration"
|
||||
description: "App specific config options"
|
||||
- name: "Networking and Services"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage and Persistence"
|
||||
description: "Persist and share data that is separate from the container"
|
||||
- name: "Ingress"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security and Permissions"
|
||||
description: "Configure security context and permissions"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
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
|
||||
- variable: controller
|
||||
group: "Controller"
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: type
|
||||
description: "Please specify type of workload to deploy"
|
||||
label: "(Advanced) Controller Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "deployment"
|
||||
required: true
|
||||
enum:
|
||||
- value: "deployment"
|
||||
description: "Deployment"
|
||||
- value: "statefulset"
|
||||
description: "Statefulset"
|
||||
- value: "daemonset"
|
||||
description: "Daemonset"
|
||||
- variable: replicas
|
||||
description: "Number of desired pod replicas"
|
||||
label: "Desired Replicas"
|
||||
schema:
|
||||
type: int
|
||||
default: 1
|
||||
required: true
|
||||
- variable: strategy
|
||||
description: "Please specify type of workload to deploy"
|
||||
label: "(Advanced) Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
required: true
|
||||
enum:
|
||||
- value: "Recreate"
|
||||
description: "Recreate: Kill existing pods before creating new ones"
|
||||
- value: "RollingUpdate"
|
||||
description: "RollingUpdate: Create new pods and then kill old ones"
|
||||
- value: "OnDelete"
|
||||
description: "(Legacy) OnDelete: ignore .spec.template changes"
|
||||
# Docker specific env
|
||||
- variable: env
|
||||
group: "Container Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TZ
|
||||
label: "Timezone"
|
||||
schema:
|
||||
type: string
|
||||
default: "Etc/UTC"
|
||||
$ref:
|
||||
- "definitions/timezone"
|
||||
- variable: APP_KEY
|
||||
label: "App Key"
|
||||
description: "Your unique 32 application character key"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
min_length: 32
|
||||
max_length: 32
|
||||
valid_chars: '[a-zA-Z0-9!@#$%^&*?]{32}'
|
||||
required: true
|
||||
- variable: UMASK
|
||||
label: "UMASK"
|
||||
description: "Sets the UMASK env var for LinuxServer.io (compatible) containers"
|
||||
schema:
|
||||
type: string
|
||||
default: "002"
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Container 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
|
||||
|
||||
- variable: hostNetwork
|
||||
group: "Networking and Services"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
- variable: service
|
||||
group: "Networking and Services"
|
||||
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: enabled
|
||||
label: "Enable the port"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
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: 8080
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 51080
|
||||
editable: true
|
||||
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: 36048
|
||||
required: true
|
||||
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
description: "Integrated Persistent Storage"
|
||||
group: "Storage and Persistence"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: data
|
||||
label: "App Config Storage"
|
||||
description: "Stores the Application Configuration."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: type
|
||||
label: "(Advanced) Type of Storage"
|
||||
description: "Sets the persistence type"
|
||||
schema:
|
||||
type: string
|
||||
default: "pvc"
|
||||
enum:
|
||||
- value: "pvc"
|
||||
description: "pvc"
|
||||
- value: "emptyDir"
|
||||
description: "emptyDir"
|
||||
- value: "hostPath"
|
||||
description: "hostPath"
|
||||
- variable: storageClass
|
||||
label: "(Advanced) storageClass"
|
||||
description: " Warning: Anything other than SCALE-ZFS will break rollback!"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "SCALE-ZFS"
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: readOnly
|
||||
label: "readOnly"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: hostPath
|
||||
label: "hostPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: hostpath
|
||||
- variable: hostPathType
|
||||
label: "hostPath Type"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "DirectoryOrCreate"
|
||||
description: "DirectoryOrCreate"
|
||||
- value: "Directory"
|
||||
description: "Directory"
|
||||
- value: "FileOrCreate"
|
||||
description: "FileOrCreate"
|
||||
- value: "File"
|
||||
description: "File"
|
||||
- value: "Socket"
|
||||
description: "Socket"
|
||||
- value: "CharDevice"
|
||||
description: "CharDevice"
|
||||
- value: "BlockDevice"
|
||||
description: "BlockDevice"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/data"
|
||||
hidden: true
|
||||
- variable: medium
|
||||
label: "EmptyDir Medium"
|
||||
schema:
|
||||
show_if: [["type", "=", "emptyDir"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "Memory"
|
||||
description: "Memory"
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PV"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
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:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "100Gi"
|
||||
|
||||
- variable: persistenceList
|
||||
label: "Additional app storage"
|
||||
group: "Storage and Persistence"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: persistenceListEntry
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: type
|
||||
label: "(Advanced) Type of Storage"
|
||||
description: "Sets the persistence type"
|
||||
schema:
|
||||
type: string
|
||||
default: "hostPath"
|
||||
enum:
|
||||
- value: "pvc"
|
||||
description: "pvc"
|
||||
- value: "emptyDir"
|
||||
description: "emptyDir"
|
||||
- value: "hostPath"
|
||||
description: "hostPath"
|
||||
- variable: storageClass
|
||||
label: "(Advanced) storageClass"
|
||||
description: " Warning: Anything other than SCALE-ZFS will break rollback!"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "SCALE-ZFS"
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: readOnly
|
||||
label: "readOnly"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: hostPath
|
||||
label: "hostPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: hostpath
|
||||
- variable: hostPathType
|
||||
label: "hostPath Type"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "DirectoryOrCreate"
|
||||
description: "DirectoryOrCreate"
|
||||
- value: "Directory"
|
||||
description: "Directory"
|
||||
- value: "FileOrCreate"
|
||||
description: "FileOrCreate"
|
||||
- value: "File"
|
||||
description: "File"
|
||||
- value: "Socket"
|
||||
description: "Socket"
|
||||
- value: "CharDevice"
|
||||
description: "CharDevice"
|
||||
- value: "BlockDevice"
|
||||
description: "BlockDevice"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: ""
|
||||
- variable: medium
|
||||
label: "EmptyDir Medium"
|
||||
schema:
|
||||
show_if: [["type", "=", "emptyDir"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "Memory"
|
||||
description: "Memory"
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
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:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "100Gi"
|
||||
|
||||
- variable: ingress
|
||||
label: ""
|
||||
group: "Ingress"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Ingress"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable Ingress"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestions_if: true
|
||||
subquestions:
|
||||
- variable: hosts
|
||||
label: "Hosts"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: hostEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: host
|
||||
label: "HostName"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: paths
|
||||
label: "Paths"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: pathEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: path
|
||||
label: "path"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "/"
|
||||
- variable: pathType
|
||||
label: "pathType"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "Prefix"
|
||||
- variable: tls
|
||||
label: "TLS-Settings"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: tlsEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: hosts
|
||||
label: "Certificate Hosts"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: host
|
||||
label: "Host"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: scaleCert
|
||||
label: "Select TrueNAS SCALE Certificate"
|
||||
schema:
|
||||
type: int
|
||||
$ref:
|
||||
- "definitions/certificate"
|
||||
- variable: entrypoint
|
||||
label: "Traefik Entrypoint"
|
||||
description: "Entrypoint used by Traefik when using Traefik as Ingress Provider"
|
||||
schema:
|
||||
type: string
|
||||
default: "websecure"
|
||||
required: true
|
||||
- variable: middlewares
|
||||
label: "Traefik Middlewares"
|
||||
description: "Add previously created Traefik Middlewares to this Ingress"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
|
||||
- variable: securityContext
|
||||
group: "Security and Permissions"
|
||||
label: "Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: privileged
|
||||
label: "Enable privileged mode for Common-Chart based charts"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
- variable: podSecurityContext
|
||||
group: "Security and Permissions"
|
||||
label: "Pod Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 0
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 0
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 0
|
||||
- variable: fsGroupChangePolicy
|
||||
label: "When should we take ownership?"
|
||||
schema:
|
||||
type: string
|
||||
default: "OnRootMismatch"
|
||||
enum:
|
||||
- value: "OnRootMismatch"
|
||||
description: "OnRootMismatch"
|
||||
- value: "Always"
|
||||
description: "Always"
|
||||
- variable: resources
|
||||
group: "Resources and Devices"
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: limits
|
||||
label: "Advanced Limit Resource Consumption"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: cpu
|
||||
label: "CPU"
|
||||
schema:
|
||||
type: string
|
||||
default: "2000m"
|
||||
- variable: memory
|
||||
label: "Memory RAM"
|
||||
schema:
|
||||
type: string
|
||||
default: "2Gi"
|
||||
- variable: requests
|
||||
label: "Advanced Request minimum resources required"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: cpu
|
||||
label: "CPU"
|
||||
schema:
|
||||
type: string
|
||||
default: "10m"
|
||||
- variable: memory
|
||||
label: "Memory RAM"
|
||||
schema:
|
||||
type: string
|
||||
default: "50Mi"
|
|
@ -0,0 +1,5 @@
|
|||
{{/* Make sure all variables are set properly */}}
|
||||
{{- include "common.values.setup" . }}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "common.all" . }}
|
|
@ -0,0 +1,19 @@
|
|||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: dbcreds
|
||||
{{- $previous := lookup "v1" "Secret" .Release.Namespace "dbcreds" }}
|
||||
{{- $dbPass := "" }}
|
||||
data:
|
||||
{{- if $previous }}
|
||||
{{- $dbPass = ( index $previous.data "postgresql-password" ) | b64dec }}
|
||||
postgresql-password: {{ ( index $previous.data "postgresql-password" ) }}
|
||||
postgresql-postgres-password: {{ ( index $previous.data "postgresql-postgres-password" ) }}
|
||||
{{- else }}
|
||||
{{- $dbPass = randAlphaNum 50 }}
|
||||
postgresql-password: {{ $dbPass | b64enc | quote }}
|
||||
postgresql-postgres-password: {{ randAlphaNum 50 | b64enc | quote }}
|
||||
{{- end }}
|
||||
url: {{ ( printf "%v%v:%v@%v-%v:%v/%v" "postgresql://" .Values.postgresql.postgresqlUsername $dbPass .Release.Name "postgresql" "5432" .Values.postgresql.postgresqlDatabase ) | b64enc | quote }}
|
||||
postgresql_host: {{ ( printf "%v-%v" .Release.Name "postgresql" ) | b64enc | quote }}
|
||||
type: Opaque
|
|
@ -0,0 +1,70 @@
|
|||
# Default values for fireflyIII.
|
||||
|
||||
image:
|
||||
repository: fireflyiii/core
|
||||
pullPolicy: IfNotPresent
|
||||
tag: version-5.5.12
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
podSecurityContext:
|
||||
runAsNonRoot: false
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
fsGroup: 0
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8080
|
||||
tcp:
|
||||
enabled: true
|
||||
type: ClusterIP
|
||||
ports:
|
||||
tcp:
|
||||
enabled: true
|
||||
port: 51080
|
||||
protocol: TCP
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
path: "/login"
|
||||
|
||||
readiness:
|
||||
path: "/login"
|
||||
|
||||
startup:
|
||||
path: "/login"
|
||||
|
||||
env:
|
||||
DB_USERNAME: firefly
|
||||
DB_DATABASE: firefly
|
||||
DB_CONNECTION: pgsql
|
||||
DB_PORT: 5432
|
||||
APP_KEY: AGcfkCUS233ZWmBXztYbdyCs2u7kkz55
|
||||
|
||||
envValueFrom:
|
||||
DB_HOST:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql_host
|
||||
DB_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql-password
|
||||
|
||||
persistence:
|
||||
data:
|
||||
enabled: true
|
||||
mountPath: "/var/www/html/storage/upload"
|
||||
type: emptyDir
|
||||
|
||||
|
||||
# Enabled postgres
|
||||
postgresql:
|
||||
enabled: true
|
||||
postgresqlUsername: firefly
|
||||
postgresqlDatabase: firefly
|
||||
existingSecret: dbcreds
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:31.440809966Z"
|
||||
generated: "2021-08-14T09:50:12.823839462Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:33.262064218Z"
|
||||
generated: "2021-08-14T09:50:15.28893794Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:35.144983829Z"
|
||||
generated: "2021-08-14T09:50:17.699675564Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:36.979460521Z"
|
||||
generated: "2021-08-14T09:50:20.037829954Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:38.791795121Z"
|
||||
generated: "2021-08-14T09:50:22.453768764Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:40.598004741Z"
|
||||
generated: "2021-08-14T09:50:24.736492517Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:42.480903916Z"
|
||||
generated: "2021-08-14T09:50:27.161826868Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:44.308577978Z"
|
||||
generated: "2021-08-14T09:50:29.543317334Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:46.122750234Z"
|
||||
generated: "2021-08-14T09:50:32.007569167Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:47.922113364Z"
|
||||
generated: "2021-08-14T09:50:34.553527178Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:49.749597848Z"
|
||||
generated: "2021-08-14T09:50:37.169396183Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:51.596216744Z"
|
||||
generated: "2021-08-14T09:50:39.55515997Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:53.409154195Z"
|
||||
generated: "2021-08-14T09:50:42.009235421Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:23:55.242608816Z"
|
||||
generated: "2021-08-14T09:50:44.45624375Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:57.049971041Z"
|
||||
generated: "2021-08-14T09:50:46.826342432Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:23:58.860253953Z"
|
||||
generated: "2021-08-14T09:50:49.242217109Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:00.657559243Z"
|
||||
generated: "2021-08-14T09:50:51.540205458Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:02.471573106Z"
|
||||
generated: "2021-08-14T09:50:53.802013184Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:04.298847325Z"
|
||||
generated: "2021-08-14T09:50:56.100726174Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:06.133843423Z"
|
||||
generated: "2021-08-14T09:50:58.496438943Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:07.938612112Z"
|
||||
generated: "2021-08-14T09:51:00.828918102Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:09.745366748Z"
|
||||
generated: "2021-08-14T09:51:03.210079292Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:11.528339912Z"
|
||||
generated: "2021-08-14T09:51:05.578123866Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:13.325020605Z"
|
||||
generated: "2021-08-14T09:51:08.115958742Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:15.133066994Z"
|
||||
generated: "2021-08-14T09:51:10.446363701Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:16.989548796Z"
|
||||
generated: "2021-08-14T09:51:12.792209162Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:18.864853865Z"
|
||||
generated: "2021-08-14T09:51:15.202370413Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:20.666267287Z"
|
||||
generated: "2021-08-14T09:51:17.514190125Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:22.508990676Z"
|
||||
generated: "2021-08-14T09:51:19.86048461Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:24.337883744Z"
|
||||
generated: "2021-08-14T09:51:22.559124326Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:26.188580768Z"
|
||||
generated: "2021-08-14T09:51:24.888857872Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:28.022340464Z"
|
||||
generated: "2021-08-14T09:51:27.232455809Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:29.810275418Z"
|
||||
generated: "2021-08-14T09:51:29.528604352Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:31.63130862Z"
|
||||
generated: "2021-08-14T09:51:31.83208489Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:33.422545046Z"
|
||||
generated: "2021-08-14T09:51:34.171077535Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:35.222621083Z"
|
||||
generated: "2021-08-14T09:51:36.508373091Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:37.035806648Z"
|
||||
generated: "2021-08-14T09:51:38.897583115Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:38.833899506Z"
|
||||
generated: "2021-08-14T09:51:41.232654228Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:40.654724236Z"
|
||||
generated: "2021-08-14T09:51:43.559102205Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:42.463064191Z"
|
||||
generated: "2021-08-14T09:51:45.90147468Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:44.295269793Z"
|
||||
generated: "2021-08-14T09:51:48.241024961Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:46.123668325Z"
|
||||
generated: "2021-08-14T09:51:50.566425713Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:47.96453653Z"
|
||||
generated: "2021-08-14T09:51:52.863610146Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:49.789695754Z"
|
||||
generated: "2021-08-14T09:51:55.180747951Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:24:51.596766505Z"
|
||||
generated: "2021-08-14T09:51:57.539170865Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:53.439949414Z"
|
||||
generated: "2021-08-14T09:52:00.192999888Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org
|
||||
version: 6.8.0
|
||||
digest: sha256:e82a232e2c800c2965423a10acbef205586159b211a462e133a2d2297c0c484f
|
||||
generated: "2021-08-14T09:24:57.074426055Z"
|
||||
generated: "2021-08-14T09:52:05.006879792Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:12.072934624Z"
|
||||
generated: "2021-08-14T09:48:31.827526226Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:14.007860851Z"
|
||||
generated: "2021-08-14T09:48:34.191694907Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:15.857872676Z"
|
||||
generated: "2021-08-14T09:48:36.492745584Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:17.684203973Z"
|
||||
generated: "2021-08-14T09:48:38.88283753Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:19.54234741Z"
|
||||
generated: "2021-08-14T09:48:41.234630301Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:21.355730228Z"
|
||||
generated: "2021-08-14T09:48:43.568436263Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:23.189757476Z"
|
||||
generated: "2021-08-14T09:48:45.906039311Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:25.117792269Z"
|
||||
generated: "2021-08-14T09:48:48.184845127Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:26.946858133Z"
|
||||
generated: "2021-08-14T09:48:50.461756956Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:28.82972682Z"
|
||||
generated: "2021-08-14T09:48:52.8232832Z"
|
||||
|
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:30.669311971Z"
|
||||
generated: "2021-08-14T09:48:55.047616985Z"
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
# 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,12 @@
|
|||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
- name: postgresql
|
||||
repository: https://truecharts.org/
|
||||
version: 1.0.3
|
||||
- name: redis
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 14.8.8
|
||||
digest: sha256:963e4422d28dc6731b953f173b9ddbbb9b4c28365e32e69749b3decfe27db50c
|
||||
generated: "2021-08-14T09:49:01.09920738Z"
|
|
@ -0,0 +1,39 @@
|
|||
apiVersion: v2
|
||||
appVersion: auto
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
- condition: postgresql.enabled
|
||||
name: postgresql
|
||||
repository: https://truecharts.org/
|
||||
version: 1.0.3
|
||||
- condition: redis.enabled
|
||||
name: redis
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 14.8.8
|
||||
deprecated: false
|
||||
description: A private cloud server that puts the control and security of your own
|
||||
data back into your hands.
|
||||
home: https://nextcloud.com/
|
||||
icon: https://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Nextcloud_Logo.svg/1280px-Nextcloud_Logo.svg.png
|
||||
keywords:
|
||||
- nextcloud
|
||||
- storage
|
||||
- http
|
||||
- web
|
||||
- php
|
||||
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: nextcloud
|
||||
sources:
|
||||
- https://github.com/nextcloud/docker
|
||||
- https://github.com/nextcloud/helm
|
||||
type: application
|
||||
version: 2.0.2
|
|
@ -0,0 +1,57 @@
|
|||
# Introduction
|
||||
|
||||
![Version: 1.1.8](https://img.shields.io/badge/Version-1.1.8-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 private cloud server that puts the control and security of your own data back into your hands.
|
||||
|
||||
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/nextcloud/docker>
|
||||
* <https://github.com/nextcloud/helm>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://charts.bitnami.com/bitnami | postgresql | 10.5.1 |
|
||||
| https://charts.bitnami.com/bitnami | redis | 14.6.3 |
|
||||
| https://truecharts.org/ | common | 6.5.2 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `nextcloud`
|
||||
|
||||
- Open TrueNAS SCALE
|
||||
- Go to Apps
|
||||
- Click "Install" for this specific Apps
|
||||
- Fill out the configuration form
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `nextcloud` 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 @@
|
|||
A private cloud server that puts the control and security of your own
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,187 @@
|
|||
##
|
||||
# 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: nextcloud
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 22.1.0
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
env: {}
|
||||
|
||||
|
||||
envTpl:
|
||||
POSTGRES_DB: "{{ .Values.postgresql.postgresqlDatabase }}"
|
||||
POSTGRES_USER: "{{ .Values.postgresql.postgresqlUsername }}"
|
||||
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: nextcloudconfig
|
||||
|
||||
envValueFrom:
|
||||
POSTGRES_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql-password
|
||||
POSTGRES_HOST:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: host
|
||||
REDIS_HOST:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: masterhost
|
||||
REDIS_HOST_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: redis-password
|
||||
|
||||
initContainers:
|
||||
- name: init-postgresdb
|
||||
image: postgres:13.1
|
||||
command:
|
||||
- "sh"
|
||||
- "-c"
|
||||
- "until pg_isready -U nextcloud -h ${pghost} ; do sleep 2 ; done"
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: pghost
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: plainhost
|
||||
|
||||
additionalContainers:
|
||||
- name: hpb
|
||||
image: nextcloud:21.0.2
|
||||
imagePullPolicy: IfNotPresent
|
||||
command:
|
||||
- "/bin/bash"
|
||||
- "-c"
|
||||
- "--"
|
||||
args:
|
||||
- 'while [ ! -f "/var/www/html/custom_apps/notify_push/bin/x86_64/notify_push" ]; do sleep 30; echo "notify_push not found, waiting"; done && /var/www/html/custom_apps/notify_push/bin/x86_64/notify_push /var/www/html/config/config.php'
|
||||
env:
|
||||
- name: PORT
|
||||
value: "7867"
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: hpbconfig
|
||||
ports:
|
||||
- name: hpb
|
||||
containerPort: 7867
|
||||
volumeMounts:
|
||||
- mountPath: /var/www/html
|
||||
name: data
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
|
||||
# -- Probe configuration
|
||||
# -- [[ref]](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)
|
||||
# @default -- See below
|
||||
probes:
|
||||
# -- Liveness probe configuration
|
||||
# @default -- See below
|
||||
liveness:
|
||||
custom: true
|
||||
# -- If a HTTP probe is used (default for HTTP/HTTPS services) this path is used
|
||||
# @default -- "/"
|
||||
spec:
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 80
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 2
|
||||
failureThreshold: 5
|
||||
|
||||
# -- Redainess probe configuration
|
||||
# @default -- See below
|
||||
readiness:
|
||||
custom: true
|
||||
# -- If a HTTP probe is used (default for HTTP/HTTPS services) this path is used
|
||||
# @default -- "/"
|
||||
spec:
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 80
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 2
|
||||
failureThreshold: 5
|
||||
|
||||
# -- Startup probe configuration
|
||||
# @default -- See below
|
||||
startup:
|
||||
custom: true
|
||||
# -- If a HTTP probe is used (default for HTTP/HTTPS services) this path is used
|
||||
# @default -- "/"
|
||||
spec:
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 80
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 2
|
||||
failureThreshold: 5
|
||||
|
||||
## Cronjob to execute Nextcloud background tasks
|
||||
## ref: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/background_jobs_configuration.html#webcron
|
||||
##
|
||||
cronjob:
|
||||
# Every 5 minutes
|
||||
# Note: Setting this to any any other value than 5 minutes might
|
||||
# cause issues with how nextcloud background jobs are executed
|
||||
schedule: "*/5 * * * *"
|
||||
annotations: {}
|
||||
failedJobsHistoryLimit: 5
|
||||
successfulJobsHistoryLimit: 2
|
||||
|
||||
# Enabled postgres
|
||||
postgresql:
|
||||
enabled: true
|
||||
postgresqlUsername: nextcloud
|
||||
postgresqlDatabase: nextcloud
|
||||
existingSecret: dbcreds
|
||||
persistence:
|
||||
db:
|
||||
storageClass: "SCALE-ZFS"
|
||||
dbbackups:
|
||||
storageClass: "SCALE-ZFS"
|
||||
|
||||
# Enabled redis
|
||||
# ... for more options see https://github.com/bitnami/charts/tree/master/bitnami/redis
|
||||
redis:
|
||||
architecture: standalone
|
||||
enabled: true
|
||||
auth:
|
||||
existingSecret: rediscreds
|
||||
existingSecretPasswordKey: redis-password
|
||||
master:
|
||||
persistence:
|
||||
enabled: true
|
||||
existingClaim: redismaster
|
||||
replica:
|
||||
replicaCount: 0
|
||||
persistence:
|
||||
enabled: false
|
||||
|
||||
##
|
||||
# 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,971 @@
|
|||
groups:
|
||||
- name: "Container Image"
|
||||
description: "Image to be used for container"
|
||||
- name: "Controller"
|
||||
description: "Configure workload deployment"
|
||||
- name: "Container Configuration"
|
||||
description: "additional container configuration"
|
||||
- name: "App Configuration"
|
||||
description: "App specific config options"
|
||||
- name: "Networking and Services"
|
||||
description: "Configure Network and Services for container"
|
||||
- name: "Storage and Persistence"
|
||||
description: "Persist and share data that is separate from the container"
|
||||
- name: "Ingress"
|
||||
description: "Ingress Configuration"
|
||||
- name: "Security and Permissions"
|
||||
description: "Configure security context and permissions"
|
||||
- name: "Resources and Devices"
|
||||
description: "Specify resources/devices to be allocated to workload"
|
||||
- name: "Advanced"
|
||||
description: "Advanced Configuration"
|
||||
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
|
||||
- variable: controller
|
||||
group: "Controller"
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: type
|
||||
description: "Please specify type of workload to deploy"
|
||||
label: "(Advanced) Controller Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "deployment"
|
||||
required: true
|
||||
enum:
|
||||
- value: "deployment"
|
||||
description: "Deployment"
|
||||
- value: "statefulset"
|
||||
description: "Statefulset"
|
||||
- value: "daemonset"
|
||||
description: "Daemonset"
|
||||
- variable: replicas
|
||||
description: "Number of desired pod replicas"
|
||||
label: "Desired Replicas"
|
||||
schema:
|
||||
type: int
|
||||
default: 1
|
||||
required: true
|
||||
- variable: strategy
|
||||
description: "Please specify type of workload to deploy"
|
||||
label: "(Advanced) Update Strategy"
|
||||
schema:
|
||||
type: string
|
||||
default: "Recreate"
|
||||
required: true
|
||||
enum:
|
||||
- value: "Recreate"
|
||||
description: "Recreate: Kill existing pods before creating new ones"
|
||||
- value: "RollingUpdate"
|
||||
description: "RollingUpdate: Create new pods and then kill old ones"
|
||||
- value: "OnDelete"
|
||||
description: "(Legacy) OnDelete: ignore .spec.template changes"
|
||||
|
||||
- variable: env
|
||||
group: "Container 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"
|
||||
- variable: NEXTCLOUD_ADMIN_USER
|
||||
label: "NEXTCLOUD_ADMIN_USER"
|
||||
description: "Sets nextcloud admin username"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: ""
|
||||
- variable: NEXTCLOUD_ADMIN_PASSWORD
|
||||
label: "NEXTCLOUD_ADMIN_PASSWORD"
|
||||
description: "Sets nextcloud admin password"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: ""
|
||||
- variable: TRUSTED_PROXIES
|
||||
label: "TRUSTED_PROXIES"
|
||||
description: "Sets nextcloud Trusted Proxies"
|
||||
schema:
|
||||
type: string
|
||||
default: "172.16.0.0/16"
|
||||
- variable: NODE_IP
|
||||
label: "NODE_IP"
|
||||
description: "Sets nextcloud nodeip for nodeport connections"
|
||||
schema:
|
||||
type: string
|
||||
$ref:
|
||||
- "definitions/nodeIP"
|
||||
|
||||
|
||||
# Configure Enviroment Variables
|
||||
- variable: envList
|
||||
label: "Image environment"
|
||||
group: "Container 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
|
||||
|
||||
- variable: hostNetwork
|
||||
group: "Networking and Services"
|
||||
label: "Enable Host Networking"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
- variable: service
|
||||
group: "Networking and Services"
|
||||
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: enabled
|
||||
label: "Enable the port"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
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
|
||||
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: 36091
|
||||
required: true
|
||||
- variable: hpb
|
||||
label: "High Performance Backend Service"
|
||||
description: "The service which runs the High Performance Backend"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the service"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- 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: hpb
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the port"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: protocol
|
||||
label: "Port Type"
|
||||
schema:
|
||||
type: string
|
||||
default: "HTTP"
|
||||
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: 7867
|
||||
editable: false
|
||||
hidden: true
|
||||
- variable: targetport
|
||||
label: "Target Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 7867
|
||||
editable: true
|
||||
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: 36092
|
||||
required: true
|
||||
|
||||
- variable: persistence
|
||||
label: "Integrated Persistent Storage"
|
||||
description: "Integrated Persistent Storage"
|
||||
group: "Storage and Persistence"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: data
|
||||
label: "App Data Storage"
|
||||
description: "Stores the Application Data."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: type
|
||||
label: "(Advanced) Type of Storage"
|
||||
description: "Sets the persistence type"
|
||||
schema:
|
||||
type: string
|
||||
default: "pvc"
|
||||
enum:
|
||||
- value: "pvc"
|
||||
description: "pvc"
|
||||
- value: "emptyDir"
|
||||
description: "emptyDir"
|
||||
- value: "hostPath"
|
||||
description: "hostPath"
|
||||
- variable: storageClass
|
||||
label: "(Advanced) storageClass"
|
||||
description: " Warning: Anything other than SCALE-ZFS will break rollback!"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "SCALE-ZFS"
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: readOnly
|
||||
label: "readOnly"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: hostPath
|
||||
label: "hostPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: hostpath
|
||||
- variable: hostPathType
|
||||
label: "hostPath Type"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "DirectoryOrCreate"
|
||||
description: "DirectoryOrCreate"
|
||||
- value: "Directory"
|
||||
description: "Directory"
|
||||
- value: "FileOrCreate"
|
||||
description: "FileOrCreate"
|
||||
- value: "File"
|
||||
description: "File"
|
||||
- value: "Socket"
|
||||
description: "Socket"
|
||||
- value: "CharDevice"
|
||||
description: "CharDevice"
|
||||
- value: "BlockDevice"
|
||||
description: "BlockDevice"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: "/var/www/html"
|
||||
hidden: true
|
||||
- variable: medium
|
||||
label: "EmptyDir Medium"
|
||||
schema:
|
||||
show_if: [["type", "=", "emptyDir"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "Memory"
|
||||
description: "Memory"
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PV"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
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:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "100Gi"
|
||||
- variable: redismaster
|
||||
label: "Redis Storage"
|
||||
description: "Stores the Application redis-master-database."
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: noMount
|
||||
label: "Do not mount this storage inside the main pod"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: forceName
|
||||
label: "Override PVC Name (advanced)"
|
||||
description: "Forces a certain name for the PVC"
|
||||
schema:
|
||||
type: string
|
||||
default: "redismaster"
|
||||
hidden: true
|
||||
- variable: type
|
||||
label: "(Advanced) Type of Storage"
|
||||
description: "Sets the persistence type"
|
||||
schema:
|
||||
type: string
|
||||
default: "pvc"
|
||||
hidden: true
|
||||
enum:
|
||||
- value: "pvc"
|
||||
description: "pvc"
|
||||
- value: "emptyDir"
|
||||
description: "emptyDir"
|
||||
- value: "hostPath"
|
||||
description: "hostPath"
|
||||
- variable: storageClass
|
||||
label: "(Advanced) storageClass"
|
||||
description: " Warning: Anything other than SCALE-ZFS will break rollback!"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "SCALE-ZFS"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
hidden: true
|
||||
- variable: medium
|
||||
label: "EmptyDir Medium"
|
||||
schema:
|
||||
show_if: [["type", "=", "emptyDir"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "Memory"
|
||||
description: "Memory"
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PV"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
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:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "100Gi"
|
||||
|
||||
- variable: persistenceList
|
||||
label: "Additional app storage"
|
||||
group: "Storage and Persistence"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: persistenceListEntry
|
||||
label: "Custom Storage"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable the storage"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: type
|
||||
label: "(Advanced) Type of Storage"
|
||||
description: "Sets the persistence type"
|
||||
schema:
|
||||
type: string
|
||||
default: "hostPath"
|
||||
enum:
|
||||
- value: "pvc"
|
||||
description: "pvc"
|
||||
- value: "emptyDir"
|
||||
description: "emptyDir"
|
||||
- value: "hostPath"
|
||||
description: "hostPath"
|
||||
- variable: storageClass
|
||||
label: "(Advanced) storageClass"
|
||||
description: " Warning: Anything other than SCALE-ZFS will break rollback!"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "SCALE-ZFS"
|
||||
- variable: setPermissions
|
||||
label: "Automatic Permissions"
|
||||
description: "Automatically set permissions on install"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: readOnly
|
||||
label: "readOnly"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: hostPath
|
||||
label: "hostPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: hostpath
|
||||
- variable: hostPathType
|
||||
label: "hostPath Type"
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "DirectoryOrCreate"
|
||||
description: "DirectoryOrCreate"
|
||||
- value: "Directory"
|
||||
description: "Directory"
|
||||
- value: "FileOrCreate"
|
||||
description: "FileOrCreate"
|
||||
- value: "File"
|
||||
description: "File"
|
||||
- value: "Socket"
|
||||
description: "Socket"
|
||||
- value: "CharDevice"
|
||||
description: "CharDevice"
|
||||
- value: "BlockDevice"
|
||||
description: "BlockDevice"
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
description: "Path inside the container the storage is mounted"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: ""
|
||||
- variable: medium
|
||||
label: "EmptyDir Medium"
|
||||
schema:
|
||||
show_if: [["type", "=", "emptyDir"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: "Default"
|
||||
- value: "Memory"
|
||||
description: "Memory"
|
||||
- variable: accessMode
|
||||
label: "Access Mode (Advanced)"
|
||||
description: "Allow or disallow multiple PVC's writhing to the same PVC"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
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:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: "100Gi"
|
||||
|
||||
- variable: ingress
|
||||
label: ""
|
||||
group: "Ingress"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: main
|
||||
label: "Main Ingress"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable Ingress"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestions_if: true
|
||||
subquestions:
|
||||
- variable: hosts
|
||||
label: "Hosts"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: hostEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: host
|
||||
label: "HostName"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: paths
|
||||
label: "Paths"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: pathEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: path
|
||||
label: "path"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "/"
|
||||
- variable: pathType
|
||||
label: "pathType"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "Prefix"
|
||||
- variable: tls
|
||||
label: "TLS-Settings"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: tlsEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: hosts
|
||||
label: "Certificate Hosts"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: host
|
||||
label: "Host"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: scaleCert
|
||||
label: "Select TrueNAS SCALE Certificate"
|
||||
schema:
|
||||
type: int
|
||||
$ref:
|
||||
- "definitions/certificate"
|
||||
- variable: entrypoint
|
||||
label: "Traefik Entrypoint"
|
||||
description: "Entrypoint used by Traefik when using Traefik as Ingress Provider"
|
||||
schema:
|
||||
type: string
|
||||
default: "websecure"
|
||||
required: true
|
||||
- variable: middlewares
|
||||
label: "Traefik Middlewares"
|
||||
description: "Add previously created Traefik Middlewares to this Ingress"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
|
||||
- variable: hpb
|
||||
label: "High Performance Backend Ingress"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "Enable Ingress"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestions_if: true
|
||||
subquestions:
|
||||
- variable: hosts
|
||||
label: "Hosts"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: hostEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: host
|
||||
label: "HostName"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: paths
|
||||
label: "Paths"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: pathEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: path
|
||||
label: "path"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "/push"
|
||||
- variable: pathType
|
||||
label: "pathType"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "Prefix"
|
||||
- variable: service
|
||||
label: "Service"
|
||||
schema:
|
||||
type: dict
|
||||
hidden: true
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "service name"
|
||||
schema:
|
||||
type: string
|
||||
hidden: true
|
||||
default: "{{ .Release.Name }}-nextcloud-hpb"
|
||||
- variable: port
|
||||
label: "serviceport"
|
||||
schema:
|
||||
type: int
|
||||
hidden: true
|
||||
default: 7867
|
||||
- variable: tls
|
||||
label: "TLS-Settings"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: tlsEntry
|
||||
label: "Host"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: hosts
|
||||
label: "Certificate Hosts"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: host
|
||||
label: "Host"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: scaleCert
|
||||
label: "Select TrueNAS SCALE Certificate"
|
||||
schema:
|
||||
type: int
|
||||
$ref:
|
||||
- "definitions/certificate"
|
||||
- variable: entrypoint
|
||||
label: "Traefik Entrypoint"
|
||||
description: "Entrypoint used by Traefik when using Traefik as Ingress Provider"
|
||||
schema:
|
||||
type: string
|
||||
default: "websecure"
|
||||
required: true
|
||||
- variable: middlewares
|
||||
label: "Traefik Middlewares"
|
||||
description: "Add previously created Traefik Middlewares to this Ingress"
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
|
||||
- variable: podSecurityContext
|
||||
group: "Security and Permissions"
|
||||
label: "Pod Security Context"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 33
|
||||
- variable: fsGroupChangePolicy
|
||||
label: "When should we take ownership?"
|
||||
schema:
|
||||
type: string
|
||||
default: "OnRootMismatch"
|
||||
enum:
|
||||
- value: "OnRootMismatch"
|
||||
description: "OnRootMismatch"
|
||||
- value: "Always"
|
||||
description: "Always"
|
||||
- variable: resources
|
||||
group: "Resources and Devices"
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: limits
|
||||
label: "Advanced Limit Resource Consumption"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: cpu
|
||||
label: "CPU"
|
||||
schema:
|
||||
type: string
|
||||
default: "2000m"
|
||||
- variable: memory
|
||||
label: "Memory RAM"
|
||||
schema:
|
||||
type: string
|
||||
default: "2Gi"
|
||||
- variable: requests
|
||||
label: "Advanced Request minimum resources required"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: cpu
|
||||
label: "CPU"
|
||||
schema:
|
||||
type: string
|
||||
default: "10m"
|
||||
- variable: memory
|
||||
label: "Memory RAM"
|
||||
schema:
|
||||
type: string
|
||||
default: "50Mi"
|
|
@ -0,0 +1,33 @@
|
|||
{{/* Define the configmap */}}
|
||||
{{- define "nextcloud.configmap" -}}
|
||||
|
||||
{{- $hosts := "" }}
|
||||
{{- if .Values.ingress.main.enabled }}
|
||||
{{ range $index, $host := .Values.ingress.main.hosts }}
|
||||
{{- if $index }}
|
||||
{{ $hosts = ( printf "%v %v" $hosts $host.host ) }}
|
||||
{{- else }}
|
||||
{{ $hosts = ( printf "%s" $host.host ) }}
|
||||
{{- end }}
|
||||
{{ end }}
|
||||
{{- end }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: nextcloudconfig
|
||||
data:
|
||||
NEXTCLOUD_TRUSTED_DOMAINS: {{ ( printf "%v %v %v %v %v" "test.fakedomain.dns" ( .Values.env.NODE_IP | default "localhost" ) ( printf "%v-%v" .Release.Name "nextcloud" ) ( printf "%v-%v" .Release.Name "nextcloud-hpb" ) $hosts ) | quote }}
|
||||
{{- if .Values.ingress.main.enabled }}
|
||||
APACHE_DISABLE_REWRITE_IP: "1"
|
||||
{{- end }}
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: hpbconfig
|
||||
data:
|
||||
NEXTCLOUD_URL: {{ ( printf "%v-%v" .Release.Name "nextcloud" ) | quote }}
|
||||
|
||||
{{- end -}}
|
|
@ -0,0 +1,51 @@
|
|||
{{/* Define the cronjob */}}
|
||||
{{- define "nextcloud.cronjob" -}}
|
||||
{{- $jobName := include "common.names.fullname" . -}}
|
||||
|
||||
---
|
||||
apiVersion: batch/v1beta1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: {{ printf "%s-cronjob" $jobName }}
|
||||
labels:
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
spec:
|
||||
schedule: "{{ .Values.cronjob.schedule }}"
|
||||
concurrencyPolicy: Forbid
|
||||
{{- with .Values.cronjob.failedJobsHistoryLimit }}
|
||||
failedJobsHistoryLimit: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.cronjob.successfulJobsHistoryLimit }}
|
||||
successfulJobsHistoryLimit: {{ . }}
|
||||
{{- end }}
|
||||
jobTemplate:
|
||||
metadata:
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
{{- with (include "common.controller.volumes" . | trim) }}
|
||||
volumes:
|
||||
{{- nindent 12 . }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ default .Values.image.tag }}"
|
||||
imagePullPolicy: {{ default .Values.image.pullPolicy }}
|
||||
command: [ "php" ]
|
||||
args:
|
||||
- "-f"
|
||||
- "/var/www/html/cron.php"
|
||||
# Will mount configuration files as www-data (id: 33) by default for nextcloud
|
||||
{{- with (include "common.controller.volumeMounts" . | trim) }}
|
||||
volumeMounts:
|
||||
{{ nindent 16 . }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 16 }}
|
||||
|
||||
{{- end -}}
|
|
@ -0,0 +1,50 @@
|
|||
{{/* Define the secrets */}}
|
||||
{{- define "nextcloud.secrets" -}}
|
||||
|
||||
---
|
||||
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
name: dbcreds
|
||||
{{- $previous := lookup "v1" "Secret" .Release.Namespace "dbcreds" }}
|
||||
{{- $dbPass := "" }}
|
||||
data:
|
||||
{{- if $previous }}
|
||||
{{- $dbPass = ( index $previous.data "postgresql-password" ) | b64dec }}
|
||||
postgresql-password: {{ ( index $previous.data "postgresql-password" ) }}
|
||||
postgresql-postgres-password: {{ ( index $previous.data "postgresql-postgres-password" ) }}
|
||||
{{- else }}
|
||||
{{- $dbPass = randAlphaNum 50 }}
|
||||
postgresql-password: {{ $dbPass | b64enc | quote }}
|
||||
postgresql-postgres-password: {{ randAlphaNum 50 | b64enc | quote }}
|
||||
{{- end }}
|
||||
url: {{ ( printf "%v%v:%v@%v-%v:%v/%v" "postgresql://" .Values.postgresql.postgresqlUsername $dbPass .Release.Name "postgresql" "5432" .Values.postgresql.postgresqlDatabase ) | b64enc | quote }}
|
||||
host: {{ ( printf "%v-%v:5432" .Release.Name "postgresql" ) | b64enc | quote }}
|
||||
plainhost: {{ ( printf "%v-%v" .Release.Name "postgresql" ) | b64enc | quote }}
|
||||
type: Opaque
|
||||
|
||||
---
|
||||
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
name: rediscreds
|
||||
{{- $redisprevious := lookup "v1" "Secret" .Release.Namespace "rediscreds" }}
|
||||
{{- $redisPass := "" }}
|
||||
data:
|
||||
{{- if $redisprevious }}
|
||||
{{- $redisPass = ( index $redisprevious.data "redis-password" ) | b64dec }}
|
||||
redis-password: {{ ( index $redisprevious.data "redis-password" ) }}
|
||||
{{- else }}
|
||||
{{- $redisPass = randAlphaNum 50 }}
|
||||
redis-password: {{ $redisPass | b64enc | quote }}
|
||||
{{- end }}
|
||||
masterhost: {{ ( printf "%v-%v" .Release.Name "redis-master" ) | b64enc | quote }}
|
||||
slavehost: {{ ( printf "%v-%v" .Release.Name "redis-master" ) | b64enc | quote }}
|
||||
type: Opaque
|
||||
{{- end -}}
|
|
@ -0,0 +1,14 @@
|
|||
{{/* Make sure all variables are set properly */}}
|
||||
{{- include "common.values.setup" . }}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "common.all" . }}
|
||||
|
||||
{{/* Render configmap for nextcloud */}}
|
||||
{{- include "nextcloud.configmap" . }}
|
||||
|
||||
{{/* Render secrets for nextcloud */}}
|
||||
{{- include "nextcloud.secrets" . }}
|
||||
|
||||
{{/* Render cronjob for nextcloud */}}
|
||||
{{- include "nextcloud.cronjob" . }}
|
|
@ -0,0 +1,210 @@
|
|||
# Default values for Bitwarden.
|
||||
|
||||
image:
|
||||
repository: nextcloud
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 22.1.0
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 80
|
||||
hpb:
|
||||
enabled: true
|
||||
ports:
|
||||
hpb:
|
||||
enabled: true
|
||||
port: 7867
|
||||
|
||||
env:
|
||||
NEXTCLOUD_ADMIN_USER: "admin"
|
||||
NEXTCLOUD_ADMIN_PASSWORD: "adminpass"
|
||||
TRUSTED_PROXIES: "172.16.0.0/16"
|
||||
|
||||
envTpl:
|
||||
POSTGRES_DB: "{{ .Values.postgresql.postgresqlDatabase }}"
|
||||
POSTGRES_USER: "{{ .Values.postgresql.postgresqlUsername }}"
|
||||
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: nextcloudconfig
|
||||
|
||||
envValueFrom:
|
||||
POSTGRES_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql-password
|
||||
POSTGRES_HOST:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: host
|
||||
REDIS_HOST:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: masterhost
|
||||
REDIS_HOST_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: redis-password
|
||||
|
||||
persistence:
|
||||
data:
|
||||
enabled: true
|
||||
mountPath: "/var/www/html"
|
||||
type: pvc
|
||||
accessMode: ReadWriteOnce
|
||||
size: "100Gi"
|
||||
|
||||
redismaster:
|
||||
noMount: true
|
||||
forceName: "redismaster"
|
||||
enabled: true
|
||||
type: pvc
|
||||
accessMode: ReadWriteOnce
|
||||
size: "100Gi"
|
||||
|
||||
initContainers:
|
||||
- name: init-postgresdb
|
||||
image: postgres:13.1
|
||||
command:
|
||||
- "sh"
|
||||
- "-c"
|
||||
- "until pg_isready -U nextcloud -h ${pghost} ; do sleep 2 ; done"
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: pghost
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: plainhost
|
||||
|
||||
additionalContainers:
|
||||
- name: hpb
|
||||
image: nextcloud:21.0.2
|
||||
imagePullPolicy: IfNotPresent
|
||||
command:
|
||||
- "/bin/bash"
|
||||
- "-c"
|
||||
- "--"
|
||||
args:
|
||||
- 'while [ ! -f "/var/www/html/custom_apps/notify_push/bin/x86_64/notify_push" ]; do sleep 30; echo "notify_push not found, waiting"; done && /var/www/html/custom_apps/notify_push/bin/x86_64/notify_push /var/www/html/config/config.php'
|
||||
env:
|
||||
- name: PORT
|
||||
value: "7867"
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: hpbconfig
|
||||
ports:
|
||||
- name: hpb
|
||||
containerPort: 7867
|
||||
volumeMounts:
|
||||
- mountPath: /var/www/html
|
||||
name: data
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
|
||||
|
||||
podSecurityContext:
|
||||
fsGroup: 33
|
||||
|
||||
# -- Probe configuration
|
||||
# -- [[ref]](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)
|
||||
# @default -- See below
|
||||
probes:
|
||||
# -- Liveness probe configuration
|
||||
# @default -- See below
|
||||
liveness:
|
||||
custom: true
|
||||
# -- If a HTTP probe is used (default for HTTP/HTTPS services) this path is used
|
||||
# @default -- "/"
|
||||
spec:
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 80
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 2
|
||||
failureThreshold: 5
|
||||
|
||||
# -- Redainess probe configuration
|
||||
# @default -- See below
|
||||
readiness:
|
||||
custom: true
|
||||
# -- If a HTTP probe is used (default for HTTP/HTTPS services) this path is used
|
||||
# @default -- "/"
|
||||
spec:
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 80
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 2
|
||||
failureThreshold: 5
|
||||
|
||||
# -- Startup probe configuration
|
||||
# @default -- See below
|
||||
startup:
|
||||
custom: true
|
||||
# -- If a HTTP probe is used (default for HTTP/HTTPS services) this path is used
|
||||
# @default -- "/"
|
||||
spec:
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 80
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 2
|
||||
failureThreshold: 5
|
||||
|
||||
|
||||
## Cronjob to execute Nextcloud background tasks
|
||||
## ref: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/background_jobs_configuration.html#webcron
|
||||
##
|
||||
cronjob:
|
||||
# Every 5 minutes
|
||||
# Note: Setting this to any any other value than 5 minutes might
|
||||
# cause issues with how nextcloud background jobs are executed
|
||||
schedule: "*/5 * * * *"
|
||||
annotations: {}
|
||||
failedJobsHistoryLimit: 5
|
||||
successfulJobsHistoryLimit: 2
|
||||
|
||||
# Enabled postgres
|
||||
postgresql:
|
||||
enabled: true
|
||||
postgresqlUsername: nextcloud
|
||||
postgresqlDatabase: nextcloud
|
||||
existingSecret: dbcreds
|
||||
|
||||
# Enabled redis
|
||||
# ... for more options see https://github.com/bitnami/charts/tree/master/bitnami/redis
|
||||
redis:
|
||||
volumePermissions:
|
||||
enabled: true
|
||||
architecture: standalone
|
||||
enabled: true
|
||||
auth:
|
||||
existingSecret: rediscreds
|
||||
existingSecretPasswordKey: redis-password
|
||||
master:
|
||||
persistence:
|
||||
enabled: false
|
||||
existingClaim: redismaster
|
||||
replica:
|
||||
replicaCount: 0
|
||||
persistence:
|
||||
enabled: false
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://truecharts.org/
|
||||
version: 6.8.0
|
||||
digest: sha256:bab18001ad56c9c6a778dbcec66f1a3a4537062508db8bbdd54aa69eedfd19eb
|
||||
generated: "2021-08-14T09:22:41.006853073Z"
|
||||
generated: "2021-08-14T09:49:08.105387819Z"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue