Commit new App releases for TrueCharts

Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
This commit is contained in:
TrueCharts-Bot 2021-06-20 09:11:08 +00:00
parent aee7d35c58
commit 6ec3e287f4
78 changed files with 2862 additions and 50 deletions

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:39.833377501Z"
generated: "2021-06-20T09:10:58.380443157Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:38.710838157Z"
generated: "2021-06-20T09:10:57.504216788Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:59.217372098Z"
generated: "2021-06-20T09:10:25.626810449Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:00.296780877Z"
generated: "2021-06-20T09:10:26.535817653Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:01.378110767Z"
generated: "2021-06-20T09:10:27.441659053Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:02.526380477Z"
generated: "2021-06-20T09:10:28.328812173Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:03.695643768Z"
generated: "2021-06-20T09:10:29.213196117Z"

View File

@ -0,0 +1,8 @@
# Configuration Options
##### Connecting to other apps
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
https://truecharts.org/manual/linking/
##### Available config options
In the future this page is going to contain an automated list of options available in the installation/edit UI.

View File

@ -0,0 +1,9 @@
dependencies:
- name: common
repository: https://truecharts.org/
version: 6.3.5
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 10.5.0
digest: sha256:7756aabdc391a022335a004a181e638811c196e34c363270ebe02cc95ed0eb4f
generated: "2021-06-20T09:10:32.754705598Z"

View File

@ -0,0 +1,30 @@
apiVersion: v2
appVersion: auto
dependencies:
- name: common
repository: https://truecharts.org/
version: 6.3.5
- condition: postgresql.enabled
name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 10.5.0
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: 4.2.1

View File

@ -0,0 +1,54 @@
# Introduction
![Version: 4.1.2](https://img.shields.io/badge/Version-4.1.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.4.9 |
| https://truecharts.org/ | common | 6.3.4 |
## 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

View File

@ -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.

View File

@ -0,0 +1,51 @@
##
# 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
# ... for more options see https://github.com/bitnami/charts/tree/master/bitnami/postgresql
postgresql:
enabled: true
postgresqlUsername: fireflyiii
postgresqlDatabase: fireflyiii
existingSecret: dbcreds
persistence:
enabled: true
existingClaim: db
##
# Most other defaults are set in questions.yaml
# For other options please refer to the wiki, default_values.yaml or the common library chart
##

View File

@ -0,0 +1,842 @@
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: ""
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: db
label: "Database Storage"
description: "Stores the Application database."
schema:
type: dict
attrs:
- variable: enabled
label: "Enable the storage"
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: "db"
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: dbbackup
label: "Database Backup Storage"
description: "Stores the Application database backups."
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: ""
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
default: "/config"
- 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: 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"

View File

@ -0,0 +1,5 @@
{{/* Make sure all variables are set properly */}}
{{- include "common.values.setup" . }}
{{/* Render the templates */}}
{{ include "common.all" . }}

View File

@ -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

View File

@ -0,0 +1,82 @@
# 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
db:
forceName: "db"
enabled: true
type: emptyDir
dbbackup:
enabled: true
type: emptyDir
# Enabled postgres
# ... for more options see https://github.com/bitnami/charts/tree/master/bitnami/postgresql
postgresql:
enabled: true
postgresqlUsername: firefly
postgresqlDatabase: firefly
existingSecret: dbcreds
persistence:
enabled: false
existingClaim: db

View File

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:12.361015547Z"
generated: "2021-06-20T09:10:36.366803Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:13.466824328Z"
generated: "2021-06-20T09:10:37.262128817Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:14.614524651Z"
generated: "2021-06-20T09:10:38.186760918Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:15.741639554Z"
generated: "2021-06-20T09:10:39.060529047Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:16.832914551Z"
generated: "2021-06-20T09:10:40.030039924Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:17.974266637Z"
generated: "2021-06-20T09:10:40.925857941Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:19.107659662Z"
generated: "2021-06-20T09:10:41.83616095Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:20.278330552Z"
generated: "2021-06-20T09:10:42.798312931Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:21.376962613Z"
generated: "2021-06-20T09:10:43.712447938Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:22.554535145Z"
generated: "2021-06-20T09:10:44.583143249Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:23.676616146Z"
generated: "2021-06-20T09:10:45.480016645Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:24.838088981Z"
generated: "2021-06-20T09:10:46.524010558Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:25.913421803Z"
generated: "2021-06-20T09:10:47.504308908Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:27.04860132Z"
generated: "2021-06-20T09:10:48.408448099Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:28.304040377Z"
generated: "2021-06-20T09:10:49.304224096Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:29.442197856Z"
generated: "2021-06-20T09:10:50.206780989Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:30.632576837Z"
generated: "2021-06-20T09:10:51.158436854Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:31.803069203Z"
generated: "2021-06-20T09:10:52.084389556Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:32.962124403Z"
generated: "2021-06-20T09:10:52.985402212Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:34.135460986Z"
generated: "2021-06-20T09:10:53.898221763Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:35.253165176Z"
generated: "2021-06-20T09:10:54.796155921Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:36.406227506Z"
generated: "2021-06-20T09:10:55.69283578Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T09:00:37.574092026Z"
generated: "2021-06-20T09:10:56.580787743Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:29.901881539Z"
generated: "2021-06-20T09:10:00.146553679Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:31.183932011Z"
generated: "2021-06-20T09:10:01.158932736Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:32.298015244Z"
generated: "2021-06-20T09:10:02.089051044Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:33.380742787Z"
generated: "2021-06-20T09:10:03.049430334Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:34.452716765Z"
generated: "2021-06-20T09:10:03.972620531Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:35.514969684Z"
generated: "2021-06-20T09:10:04.957160741Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:36.62287118Z"
generated: "2021-06-20T09:10:05.945030453Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:37.712029262Z"
generated: "2021-06-20T09:10:06.891384747Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:38.816929813Z"
generated: "2021-06-20T09:10:07.869429654Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:39.89351386Z"
generated: "2021-06-20T09:10:08.775200232Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:41.032323415Z"
generated: "2021-06-20T09:10:09.701477918Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:42.149889166Z"
generated: "2021-06-20T09:10:10.688078229Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:43.284805202Z"
generated: "2021-06-20T09:10:11.669010137Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:44.416160921Z"
generated: "2021-06-20T09:10:12.656496309Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:45.558390994Z"
generated: "2021-06-20T09:10:13.681153202Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:46.681457508Z"
generated: "2021-06-20T09:10:14.67958155Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:47.815852749Z"
generated: "2021-06-20T09:10:15.663186872Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:48.903071334Z"
generated: "2021-06-20T09:10:16.584243384Z"

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:50.000388474Z"
generated: "2021-06-20T09:10:17.474761843Z"

View File

@ -0,0 +1,8 @@
# Configuration Options
##### Connecting to other apps
If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our "Linking Apps Together" guide:
https://truecharts.org/manual/linking/
##### Available config options
In the future this page is going to contain an automated list of options available in the installation/edit UI.

View File

@ -0,0 +1,9 @@
dependencies:
- name: common
repository: https://truecharts.org/
version: 6.3.5
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 10.5.0
digest: sha256:7756aabdc391a022335a004a181e638811c196e34c363270ebe02cc95ed0eb4f
generated: "2021-06-20T09:10:21.027218362Z"

View File

@ -0,0 +1,34 @@
apiVersion: v2
appVersion: auto
dependencies:
- name: common
repository: https://truecharts.org/
version: 6.3.5
- condition: postgresql.enabled
name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 10.5.0
deprecated: false
description: Unofficial Bitwarden compatible server written in Rust
home: https://github.com/truecharts/apps/tree/master/charts/stable/vaultwarden
icon: https://raw.githubusercontent.com/bitwarden/brand/master/icons/256x256.png
keywords:
- bitwarden
- bitwardenrs
- bitwarden_rs
- vaultwarden
- password
- rust
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: vaultwarden
sources:
- https://github.com/dani-garcia/vaultwarden
type: application
version: 3.2.1

View File

@ -0,0 +1,54 @@
# Introduction
![Version: 3.1.2](https://img.shields.io/badge/Version-3.1.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)
Unofficial Bitwarden compatible server written in Rust
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/dani-garcia/vaultwarden>
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | postgresql | 10.4.9 |
| https://truecharts.org/ | common | 6.3.4 |
## Installing the Chart
To install the chart with the release name `vaultwarden`
- Open TrueNAS SCALE
- Go to Apps
- Click "Install" for this specific Apps
- Fill out the configuration form
## Uninstalling the Chart
To uninstall the `vaultwarden` 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

View File

@ -0,0 +1,3 @@
Unofficial Bitwarden compatible server written in Rust
This App is supplied by TrueCharts, for more information please visit https://truecharts.org
Unofficial Bitwarden compatible server written in Rust

Binary file not shown.

Binary file not shown.

View File

@ -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: vaultwarden/server
pullPolicy: IfNotPresent
tag: 1.21.0
envTpl:
DOMAIN: "https://{{ if .Values.ingress }}{{ if .Values.ingress.main.enabled }}{{ ( index .Values.ingress.main.hosts 0 ).host }}{{ else }}placeholder.com{{ end }}{{ else }}placeholder.com{{ end }}"
envFrom:
- configMapRef:
name: vaultwardenconfig
- secretRef:
name: vaultwardensecret
envValueFrom:
DATABASE_URL:
secretKeyRef:
name: dbcreds
key: url
database:
# Database type, must be one of: 'sqlite', 'mysql' or 'postgresql'.
type: postgresql
# Enable DB Write-Ahead-Log for SQLite, disabled for other databases. https://github.com/dani-garcia/bitwarden_rs/wiki/Running-without-WAL-enabled
wal: false
## URL for external databases (mysql://user:pass@host:port or postgresql://user:pass@host:port).
# url: ""
## Set the size of the database connection pool.
# maxConnections: 10
## Connection retries during startup, 0 for infinite. 1 second between retries.
retries: 30
# Enabled postgres
# ... for more options see https://github.com/bitnami/charts/tree/master/bitnami/postgresql
postgresql:
enabled: true
postgresqlUsername: vaultwarden
postgresqlDatabase: vaultwarden
existingSecret: dbcreds
persistence:
enabled: true
existingClaim: db
##
# Most other defaults are set in questions.yaml
# For other options please refer to the wiki, default_values.yaml or the common library chart
##

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,116 @@
{{/* Define the configmap */}}
{{- define "vaultwarden.configmap" -}}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: vaultwardenconfig
data:
ROCKET_PORT: "8080"
SIGNUPS_ALLOWED: {{ .Values.vaultwarden.allowSignups | quote }}
{{- if .Values.vaultwarden.signupDomains }}
SIGNUPS_DOMAINS_WHITELIST: {{ join "," .Values.vaultwarden.signupDomains | quote }}
{{- end }}
{{- if and (eq .Values.vaultwarden.verifySignup true) (eq .Values.vaultwarden.smtp.enabled false) }}{{ required "Signup verification requires SMTP to be enabled" nil}}{{end}}
SIGNUPS_VERIFY: {{ .Values.vaultwarden.verifySignup | quote }}
{{- if and (eq .Values.vaultwarden.requireEmail true) (eq .Values.vaultwarden.smtp.enabled false) }}{{ required "Requiring emails for login depends on SMTP" nil}}{{end}}
REQUIRE_DEVICE_EMAIL: {{ .Values.vaultwarden.requireEmail | quote }}
{{- if .Values.vaultwarden.emailAttempts }}
EMAIL_ATTEMPTS_LIMIT: {{ .Values.vaultwarden.emailAttempts | quote }}
{{- end }}
{{- if .Values.vaultwarden.emailTokenExpiration }}
EMAIL_EXPIRATION_TIME: {{ .Values.vaultwarden.emailTokenExpiration | quote }}
{{- end }}
INVITATIONS_ALLOWED: {{ .Values.vaultwarden.allowInvitation | quote }}
{{- if .Values.vaultwarden.defaultInviteName }}
INVITATION_ORG_NAME: {{ .Values.vaultwarden.defaultInviteName | quote }}
{{- end }}
SHOW_PASSWORD_HINT: {{ .Values.vaultwarden.showPasswordHint | quote }}
WEBSOCKET_ENABLED: {{ .Values.vaultwarden.enableWebsockets | quote }}
WEB_VAULT_ENABLED: {{ .Values.vaultwarden.enableWebVault | quote }}
ORG_CREATION_USERS: {{ .Values.vaultwarden.orgCreationUsers | quote }}
{{- if .Values.vaultwarden.attachmentLimitOrg }}
ORG_ATTACHMENT_LIMIT: {{ .Values.vaultwarden.attachmentLimitOrg | quote }}
{{- end }}
{{- if .Values.vaultwarden.attachmentLimitUser }}
USER_ATTACHMENT_LIMIT: {{ .Values.vaultwarden.attachmentLimitUser | quote }}
{{- end }}
{{- if .Values.vaultwarden.hibpApiKey }}
HIBP_API_KEY: {{ .Values.vaultwarden.hibpApiKey | quote }}
{{- end }}
{{- include "vaultwarden.dbTypeValid" . }}
{{- if .Values.database.retries }}
DB_CONNECTION_RETRIES: {{ .Values.database.retries | quote }}
{{- end }}
{{- if .Values.database.maxConnections }}
DATABASE_MAX_CONNS: {{ .Values.database.maxConnections | quote }}
{{- end }}
{{- if eq .Values.vaultwarden.smtp.enabled true }}
SMTP_HOST: {{ required "SMTP host is required to enable SMTP" .Values.vaultwarden.smtp.host | quote }}
SMTP_FROM: {{ required "SMTP sender address ('from') is required to enable SMTP" .Values.vaultwarden.smtp.from | quote }}
{{- if .Values.vaultwarden.smtp.fromName }}
SMTP_FROM_NAME: {{ .Values.vaultwarden.smtp.fromName | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.ssl }}
SMTP_SSL: {{ .Values.vaultwarden.smtp.ssl | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.port }}
SMTP_PORT: {{ .Values.vaultwarden.smtp.port | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.authMechanism }}
SMTP_AUTH_MECHANISM: {{ .Values.vaultwarden.smtp.authMechanism | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.heloName }}
HELO_NAME: {{ .Values.vaultwarden.smtp.heloName | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.timeout }}
SMTP_TIMEOUT: {{ .Values.vaultwarden.smtp.timeout | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.invalidHostname }}
SMTP_ACCEPT_INVALID_HOSTNAMES: {{ .Values.vaultwarden.smtp.invalidHostname | quote }}
{{- end }}
{{- if .Values.vaultwarden.smtp.invalidCertificate }}
SMTP_ACCEPT_INVALID_CERTS: {{ .Values.vaultwarden.smtp.invalidCertificate | quote }}
{{- end }}
{{- end }}
{{- if .Values.vaultwarden.log.file }}
LOG_FILE: {{ .Values.vaultwarden.log.file | quote }}
{{- end }}
{{- if or .Values.vaultwarden.log.level .Values.vaultwarden.log.timeFormat }}
EXTENDED_LOGGING: "true"
{{- end }}
{{- if .Values.vaultwarden.log.level }}
{{- include "vaultwarden.logLevelValid" . }}
LOG_LEVEL: {{ .Values.vaultwarden.log.level | quote }}
{{- end }}
{{- if .Values.vaultwarden.log.timeFormat }}
LOG_TIMESTAMP_FORMAT: {{ .Values.vaultwarden.log.timeFormat | quote }}
{{- end }}
{{- if .Values.vaultwarden.icons.disableDownload }}
DISABLE_ICON_DOWNLOAD: {{ .Values.vaultwarden.icons.disableDownload | quote }}
{{- if and (not .Values.vaultwarden.icons.cache) (eq .Values.vaultwarden.icons.disableDownload "true") }}
ICON_CACHE_TTL: "0"
{{- end }}
{{- end }}
{{- if .Values.vaultwarden.icons.cache }}
ICON_CACHE_TTL: {{ .Values.vaultwarden.icons.cache | quote }}
{{- end }}
{{- if .Values.vaultwarden.icons.cacheFailed }}
ICON_CACHE_NEGTTL: {{ .Values.vaultwarden.icons.cacheFailed | quote }}
{{- end }}
{{- if eq .Values.vaultwarden.admin.enabled true }}
{{- if eq .Values.vaultwarden.admin.disableAdminToken true }}
DISABLE_ADMIN_TOKEN: "true"
{{- end }}
{{- end }}
{{- if eq .Values.vaultwarden.yubico.enabled true }}
{{- if .Values.vaultwarden.yubico.server }}
YUBICO_SERVER: {{ .Values.vaultwarden.yubico.server | quote }}
{{- end }}
{{- end }}
{{- if eq .Values.database.type "sqlite" }}
ENABLE_DB_WAL: {{ .Values.database.wal | quote }}
{{- else }}
ENABLE_DB_WAL: "false"
{{- end }}
{{- end -}}

View File

@ -0,0 +1,59 @@
{{/* Define the secrets */}}
{{- define "vaultwarden.secrets" -}}
{{- $adminToken := "" }}
{{- if eq .Values.vaultwarden.admin.enabled true }}
{{- $adminToken = .Values.vaultwarden.admin.token | default (randAlphaNum 48) | b64enc | quote }}
{{- end -}}
{{- $smtpUser := "" }}
{{- if and (eq .Values.vaultwarden.smtp.enabled true ) (.Values.vaultwarden.smtp.user) }}
{{- $smtpUser = .Values.vaultwarden.smtp.user | b64enc | quote }}
{{- end -}}
{{- $yubicoClientId := "" }}
{{- if eq .Values.vaultwarden.yubico.enabled true }}
{{- $yubicoClientId = required "Yubico Client ID required" .Values.vaultwarden.yubico.clientId | toString | b64enc | quote }}
{{- end -}}
---
apiVersion: v1
kind: Secret
metadata:
name: vaultwardensecret
data:
{{- if ne $adminToken "" }}
ADMIN_TOKEN: {{ $adminToken }}
{{- end }}
{{- if ne $smtpUser "" }}
SMTP_USERNAME: {{ $smtpUser }}
SMTP_PASSWORD: {{ required "Must specify SMTP password" .Values.vaultwarden.smtp.password | b64enc | quote }}
{{- end }}
{{- if ne $yubicoClientId "" }}
YUBICO_CLIENT_ID: {{ $yubicoClientId }}
YUBICO_SECRET_KEY: {{ required "Yubico Secret Key required" .Values.vaultwarden.yubico.secretKey | b64enc | quote }}
{{- end }}
---
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 }}
type: Opaque
{{- end -}}

View File

@ -0,0 +1,17 @@
{{/*
Ensure valid DB type is select, defaults to SQLite
*/}}
{{- define "vaultwarden.dbTypeValid" -}}
{{- if not (or (eq .Values.database.type "postgresql") (eq .Values.database.type "mysql") (eq .Values.database.type "sqlite")) }}
{{- required "Invalid database type" nil }}
{{- end -}}
{{- end -}}
{{/*
Ensure log type is valid
*/}}
{{- define "vaultwarden.logLevelValid" -}}
{{- if not (or (eq .Values.vaultwarden.log.level "trace") (eq .Values.vaultwarden.log.level "debug") (eq .Values.vaultwarden.log.level "info") (eq .Values.vaultwarden.log.level "warn") (eq .Values.vaultwarden.log.level "error") (eq .Values.vaultwarden.log.level "off")) }}
{{- required "Invalid log level" nil }}
{{- end }}
{{- end }}

View File

@ -0,0 +1,11 @@
{{/* Make sure all variables are set properly */}}
{{- include "common.values.setup" . }}
{{/* Render the templates */}}
{{ include "common.all" . }}
{{/* Render configmap for vaultwarden */}}
{{- include "vaultwarden.configmap" . }}
{{/* Render secrets for vaultwarden */}}
{{- include "vaultwarden.secrets" . }}

View File

@ -0,0 +1,172 @@
# Default values for Bitwarden.
image:
repository: vaultwarden/server
pullPolicy: IfNotPresent
tag: 1.21.0
strategy:
type: Recreate
service:
main:
ports:
main:
port: 8080
ws:
ports:
ws:
enabled: true
port: 3012
env: {}
envTpl:
DOMAIN: "https://{{ if .Values.ingress }}{{ if .Values.ingress.main.enabled }}{{ ( index .Values.ingress.main.hosts 0 ).host }}{{ else }}placeholder.com{{ end }}{{ else }}placeholder.com{{ end }}"
envFrom:
- configMapRef:
name: vaultwardenconfig
- secretRef:
name: vaultwardensecret
envValueFrom:
DATABASE_URL:
secretKeyRef:
name: dbcreds
key: url
database:
# Database type, must be one of: 'sqlite', 'mysql' or 'postgresql'.
type: postgresql
# Enable DB Write-Ahead-Log for SQLite, disabled for other databases. https://github.com/dani-garcia/bitwarden_rs/wiki/Running-without-WAL-enabled
wal: true
## URL for external databases (mysql://user:pass@host:port or postgresql://user:pass@host:port).
# url: ""
## Set the size of the database connection pool.
# maxConnections: 10
## Connection retries during startup, 0 for infinite. 1 second between retries.
# retries: 15
# Set Bitwarden_rs application variables
vaultwarden:
# Allow any user to sign-up: https://github.com/dani-garcia/bitwarden_rs/wiki/Disable-registration-of-new-users
allowSignups: true
## Whitelist domains allowed to sign-up. 'allowSignups' is ignored if set.
# signupDomains:
# - domain.tld
# Verify e-mail before login is enabled. SMTP must be enabled.
verifySignup: false
# When a user logs in an email is required to be sent. If sending the email fails the login attempt will fail. SMTP must be enabled.
requireEmail: false
## Maximum attempts before an email token is reset and a new email will need to be sent.
# emailAttempts: 3
## Email token validity in seconds.
# emailTokenExpiration: 600
# Allow invited users to sign-up even feature is disabled: https://github.com/dani-garcia/bitwarden_rs/wiki/Disable-invitations
allowInvitation: true
# Show password hints: https://github.com/dani-garcia/bitwarden_rs/wiki/Password-hint-display
## Default organization name in invitation e-mails that are not coming from a specific organization.
# defaultInviteName: ""
showPasswordHint: true
# Enable Websockets for notification. https://github.com/dani-garcia/bitwarden_rs/wiki/Enabling-WebSocket-notifications
# Redirect HTTP path "/notifications/hub" to port 3012. Ingress/IngressRoute controllers are automatically configured.
enableWebsockets: true
# Enable Web Vault (static content). https://github.com/dani-garcia/bitwarden_rs/wiki/Disabling-or-overriding-the-Vault-interface-hosting
enableWebVault: true
# Restrict creation of orgs. Options are: 'all', 'none' or a comma-separated list of users.
orgCreationUsers: all
## Limit attachment disk usage per organization.
# attachmentLimitOrg:
## Limit attachment disk usage per user.
# attachmentLimitUser:
## HaveIBeenPwned API Key. Can be purchased at https://haveibeenpwned.com/API/Key.
# hibpApiKey:
admin:
# Enable admin portal.
enabled: false
# Disabling the admin token will make the admin portal accessible to anyone, use carefully: https://github.com/dani-garcia/bitwarden_rs/wiki/Disable-admin-token
disableAdminToken: false
## Token for admin login, will be generated if not defined. https://github.com/dani-garcia/bitwarden_rs/wiki/Enabling-admin-page
# token:
# Enable SMTP. https://github.com/dani-garcia/bitwarden_rs/wiki/SMTP-configuration
smtp:
enabled: false
# SMTP hostname, required if SMTP is enabled.
host: ""
# SMTP sender e-mail address, required if SMTP is enabled.
from: ""
## SMTP sender name, defaults to 'Bitwarden_RS'.
# fromName: ""
## Enable SSL connection.
# ssl: true
## SMTP port. Defaults to 25 without SSL, 587 with SSL.
# port: 587
## SMTP Authentication Mechanisms. Comma-separated options: 'Plain', 'Login' and 'Xoauth2'. Defaults to 'Plain'.
# authMechanism: Plain
## Hostname to be sent for SMTP HELO. Defaults to pod name.
# heloName: ""
## SMTP timeout.
# timeout: 15
## Accept SSL session if certificate is valid but hostname doesn't match. DANGEROUS, vulnerable to men-in-the-middle attacks!
# invalidHostname: false
## Accept invalid certificates. DANGEROUS, vulnerable to men-in-the-middle attacks!
# invalidCertificate: false
## SMTP username.
# user: ""
## SMTP password. Required is user is specified, ignored if no user provided.
# password: ""
## Enable Yubico OTP authentication. https://github.com/dani-garcia/bitwarden_rs/wiki/Enabling-Yubikey-OTP-authentication
yubico:
enabled: false
## Yubico server. Defaults to YubiCloud.
# server:
## Yubico ID and Secret Key.
# clientId:
# secretKey:
## Logging options. https://github.com/dani-garcia/bitwarden_rs/wiki/Logging
log:
# Log to file.
file: ""
# Log level. Options are "trace", "debug", "info", "warn", "error" or "off".
level: "trace"
## Log timestamp format. See https://docs.rs/chrono/0.4.15/chrono/format/strftime/index.html. Defaults to time in milliseconds.
# timeFormat: ""
icons:
# Disables download of external icons. Setting to true will still serve icons from cache (/data/icon_cache). TTL will default to zero.
disableDownload: false
## Cache time-to-live for icons fetched. 0 means no purging.
# cache: 2592000
## Cache time-to-live for icons that were not available. 0 means no purging.
# cacheFailed: 259200
persistence:
data:
enabled: true
mountPath: "/data"
type: emptyDir
db:
forceName: "db"
enabled: true
type: emptyDir
dbbackup:
enabled: true
type: emptyDir
# Enabled postgres
# ... for more options see https://github.com/bitnami/charts/tree/master/bitnami/postgresql
postgresql:
enabled: true
postgresqlUsername: vaultwarden
postgresqlDatabase: vaultwarden
existingSecret: dbcreds
persistence:
enabled: false
existingClaim: db

View File

View File

@ -3,4 +3,4 @@ dependencies:
repository: https://truecharts.org/
version: 6.3.5
digest: sha256:eb3a129f62a024ad0e23386e86242ee5db9bcfa15ac69688723f295b778b9398
generated: "2021-06-20T08:59:58.121268032Z"
generated: "2021-06-20T09:10:24.733994364Z"