From 51cfa8dae807104d5b873cc3ce830d3f631b5f56 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Sun, 30 May 2021 15:07:33 +0000 Subject: [PATCH] Commit new App releases for TrueCharts Signed-off-by: TrueCharts-Bot --- deprecated/nzbhydra/5.2.0/Chart.lock | 2 +- develop/prototype-gui/0.0.6/Chart.lock | 2 +- incubator/appdaemon/2.2.0/Chart.lock | 2 +- incubator/bazarr/5.2.0/Chart.lock | 2 +- incubator/calibre-web/5.2.0/Chart.lock | 2 +- incubator/deluge/5.2.0/Chart.lock | 2 +- incubator/fireflyiii/3.2.0/Chart.lock | 2 +- incubator/freshrss/5.2.0/Chart.lock | 2 +- incubator/gaps/5.2.0/Chart.lock | 2 +- incubator/grocy/5.2.0/Chart.lock | 2 +- incubator/heimdall/5.2.0/Chart.lock | 2 +- incubator/lazylibrarian/5.2.0/Chart.lock | 2 +- incubator/lychee/5.2.0/Chart.lock | 2 +- incubator/navidrome/5.2.0/Chart.lock | 2 +- incubator/node-red/5.2.0/Chart.lock | 2 +- incubator/nzbget/5.2.0/Chart.lock | 2 +- incubator/organizr/5.2.0/Chart.lock | 2 +- incubator/podgrab/3.2.0/Chart.lock | 2 +- incubator/qbittorrent/5.2.0/Chart.lock | 2 +- incubator/readarr/5.2.0/Chart.lock | 2 +- incubator/sabnzbd/5.2.0/Chart.lock | 2 +- incubator/tvheadend/6.2.0/Chart.lock | 2 +- incubator/unifi/5.2.0/Chart.lock | 2 +- stable/collabora-online/5.2.0/Chart.lock | 2 +- stable/deepstack-cpu/3.2.0/Chart.lock | 2 +- stable/emby/5.2.0/Chart.lock | 2 +- stable/esphome/5.2.0/Chart.lock | 2 +- stable/handbrake/5.2.0/Chart.lock | 2 +- stable/home-assistant/5.2.0/Chart.lock | 2 +- stable/jackett/5.2.0/Chart.lock | 2 +- stable/jellyfin/5.2.0/Chart.lock | 2 +- stable/kms/5.2.0/Chart.lock | 2 +- stable/lidarr/5.2.0/Chart.lock | 2 +- stable/ombi/5.2.0/Chart.lock | 2 +- stable/plex/4.2.0/Chart.lock | 2 +- stable/radarr/5.2.0/Chart.lock | 2 +- stable/sonarr/5.2.0/Chart.lock | 2 +- stable/syncthing/5.3.0/Chart.lock | 2 +- stable/tautulli/5.2.0/Chart.lock | 2 +- stable/traefik/4.0.3/Chart.lock | 2 +- stable/transmission/5.2.0/Chart.lock | 2 +- stable/truecommand/5.2.0/Chart.lock | 2 +- stable/vaultwarden/2.2.1/CONFIG.md | 8 + stable/vaultwarden/2.2.1/Chart.lock | 9 + stable/vaultwarden/2.2.1/Chart.yaml | 36 + stable/vaultwarden/2.2.1/README.md | 56 + stable/vaultwarden/2.2.1/app-readme.md | 3 + .../vaultwarden/2.2.1/charts/common-5.1.2.tgz | Bin 0 -> 23069 bytes .../2.2.1/charts/postgresql-10.4.7.tgz | Bin 0 -> 48732 bytes stable/vaultwarden/2.2.1/ix_values.yaml | 54 + stable/vaultwarden/2.2.1/questions.yaml | 1065 +++++++++++++++++ .../2.2.1/templates/_configmap.tpl | 116 ++ .../vaultwarden/2.2.1/templates/_secrets.tpl | 59 + .../vaultwarden/2.2.1/templates/_validate.tpl | 17 + .../vaultwarden/2.2.1/templates/common.yaml | 11 + stable/vaultwarden/2.2.1/test_values.yaml | 183 +++ stable/vaultwarden/2.2.1/values.yaml | 0 stable/zwavejs2mqtt/5.2.0/Chart.lock | 2 +- 58 files changed, 1660 insertions(+), 43 deletions(-) create mode 100644 stable/vaultwarden/2.2.1/CONFIG.md create mode 100644 stable/vaultwarden/2.2.1/Chart.lock create mode 100644 stable/vaultwarden/2.2.1/Chart.yaml create mode 100644 stable/vaultwarden/2.2.1/README.md create mode 100644 stable/vaultwarden/2.2.1/app-readme.md create mode 100644 stable/vaultwarden/2.2.1/charts/common-5.1.2.tgz create mode 100644 stable/vaultwarden/2.2.1/charts/postgresql-10.4.7.tgz create mode 100644 stable/vaultwarden/2.2.1/ix_values.yaml create mode 100644 stable/vaultwarden/2.2.1/questions.yaml create mode 100644 stable/vaultwarden/2.2.1/templates/_configmap.tpl create mode 100644 stable/vaultwarden/2.2.1/templates/_secrets.tpl create mode 100644 stable/vaultwarden/2.2.1/templates/_validate.tpl create mode 100644 stable/vaultwarden/2.2.1/templates/common.yaml create mode 100644 stable/vaultwarden/2.2.1/test_values.yaml create mode 100644 stable/vaultwarden/2.2.1/values.yaml diff --git a/deprecated/nzbhydra/5.2.0/Chart.lock b/deprecated/nzbhydra/5.2.0/Chart.lock index 4fb576c41ab..cebe26039d1 100644 --- a/deprecated/nzbhydra/5.2.0/Chart.lock +++ b/deprecated/nzbhydra/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:24.320469352Z" +generated: "2021-05-30T15:06:28.886694124Z" diff --git a/develop/prototype-gui/0.0.6/Chart.lock b/develop/prototype-gui/0.0.6/Chart.lock index 2c22f2db77b..58f9d68fdf0 100644 --- a/develop/prototype-gui/0.0.6/Chart.lock +++ b/develop/prototype-gui/0.0.6/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:23.675537416Z" +generated: "2021-05-30T15:06:28.184808652Z" diff --git a/incubator/appdaemon/2.2.0/Chart.lock b/incubator/appdaemon/2.2.0/Chart.lock index 2aaf897ead6..d2182f4bc77 100644 --- a/incubator/appdaemon/2.2.0/Chart.lock +++ b/incubator/appdaemon/2.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:04.505362212Z" +generated: "2021-05-30T15:06:07.693289389Z" diff --git a/incubator/bazarr/5.2.0/Chart.lock b/incubator/bazarr/5.2.0/Chart.lock index 25d8f609b11..dddfbbd2df2 100644 --- a/incubator/bazarr/5.2.0/Chart.lock +++ b/incubator/bazarr/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:05.209509126Z" +generated: "2021-05-30T15:06:08.384202289Z" diff --git a/incubator/calibre-web/5.2.0/Chart.lock b/incubator/calibre-web/5.2.0/Chart.lock index b169ddeaab6..b7b022b1358 100644 --- a/incubator/calibre-web/5.2.0/Chart.lock +++ b/incubator/calibre-web/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:05.896883973Z" +generated: "2021-05-30T15:06:09.065023268Z" diff --git a/incubator/deluge/5.2.0/Chart.lock b/incubator/deluge/5.2.0/Chart.lock index 3d90513bf9d..53b05d804a0 100644 --- a/incubator/deluge/5.2.0/Chart.lock +++ b/incubator/deluge/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:06.555697188Z" +generated: "2021-05-30T15:06:09.783993525Z" diff --git a/incubator/fireflyiii/3.2.0/Chart.lock b/incubator/fireflyiii/3.2.0/Chart.lock index f3dee521904..93952bacf11 100644 --- a/incubator/fireflyiii/3.2.0/Chart.lock +++ b/incubator/fireflyiii/3.2.0/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.bitnami.com/bitnami version: 10.4.7 digest: sha256:ac3064895a3b0a42120bd0764f9676e96bf0987418e8d63ea3a65794dd379a76 -generated: "2021-05-30T14:16:09.735027943Z" +generated: "2021-05-30T15:06:13.11210594Z" diff --git a/incubator/freshrss/5.2.0/Chart.lock b/incubator/freshrss/5.2.0/Chart.lock index 47b2ddc4904..66f001244a9 100644 --- a/incubator/freshrss/5.2.0/Chart.lock +++ b/incubator/freshrss/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:13.030094762Z" +generated: "2021-05-30T15:06:16.710348979Z" diff --git a/incubator/gaps/5.2.0/Chart.lock b/incubator/gaps/5.2.0/Chart.lock index 8ed67d08862..f2246a36af5 100644 --- a/incubator/gaps/5.2.0/Chart.lock +++ b/incubator/gaps/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:13.734886451Z" +generated: "2021-05-30T15:06:17.490012214Z" diff --git a/incubator/grocy/5.2.0/Chart.lock b/incubator/grocy/5.2.0/Chart.lock index ded02aa8e16..99d9ebdf382 100644 --- a/incubator/grocy/5.2.0/Chart.lock +++ b/incubator/grocy/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:14.431017931Z" +generated: "2021-05-30T15:06:18.218903875Z" diff --git a/incubator/heimdall/5.2.0/Chart.lock b/incubator/heimdall/5.2.0/Chart.lock index 4102b44bca6..4fedabce4b0 100644 --- a/incubator/heimdall/5.2.0/Chart.lock +++ b/incubator/heimdall/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:15.132721155Z" +generated: "2021-05-30T15:06:18.883717143Z" diff --git a/incubator/lazylibrarian/5.2.0/Chart.lock b/incubator/lazylibrarian/5.2.0/Chart.lock index 0d0b1b69223..0ab1415724f 100644 --- a/incubator/lazylibrarian/5.2.0/Chart.lock +++ b/incubator/lazylibrarian/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:15.76739133Z" +generated: "2021-05-30T15:06:19.609172508Z" diff --git a/incubator/lychee/5.2.0/Chart.lock b/incubator/lychee/5.2.0/Chart.lock index 9ad0497dabf..1ae86d7f0fe 100644 --- a/incubator/lychee/5.2.0/Chart.lock +++ b/incubator/lychee/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:16.456918873Z" +generated: "2021-05-30T15:06:20.378725623Z" diff --git a/incubator/navidrome/5.2.0/Chart.lock b/incubator/navidrome/5.2.0/Chart.lock index acce6b2ec33..99ddd334736 100644 --- a/incubator/navidrome/5.2.0/Chart.lock +++ b/incubator/navidrome/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:17.123571111Z" +generated: "2021-05-30T15:06:21.090456592Z" diff --git a/incubator/node-red/5.2.0/Chart.lock b/incubator/node-red/5.2.0/Chart.lock index 94c32b9a5e2..254b6436b1d 100644 --- a/incubator/node-red/5.2.0/Chart.lock +++ b/incubator/node-red/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:17.783159771Z" +generated: "2021-05-30T15:06:21.81390747Z" diff --git a/incubator/nzbget/5.2.0/Chart.lock b/incubator/nzbget/5.2.0/Chart.lock index 19c0f082a3d..bac60ed8681 100644 --- a/incubator/nzbget/5.2.0/Chart.lock +++ b/incubator/nzbget/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:18.425661456Z" +generated: "2021-05-30T15:06:22.517872532Z" diff --git a/incubator/organizr/5.2.0/Chart.lock b/incubator/organizr/5.2.0/Chart.lock index 0b3877d98ff..e7db2fcb995 100644 --- a/incubator/organizr/5.2.0/Chart.lock +++ b/incubator/organizr/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:19.076829083Z" +generated: "2021-05-30T15:06:23.219950393Z" diff --git a/incubator/podgrab/3.2.0/Chart.lock b/incubator/podgrab/3.2.0/Chart.lock index de48c863efb..7336db2bc79 100644 --- a/incubator/podgrab/3.2.0/Chart.lock +++ b/incubator/podgrab/3.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:19.730399204Z" +generated: "2021-05-30T15:06:23.910002645Z" diff --git a/incubator/qbittorrent/5.2.0/Chart.lock b/incubator/qbittorrent/5.2.0/Chart.lock index 32099c46f27..6723d441137 100644 --- a/incubator/qbittorrent/5.2.0/Chart.lock +++ b/incubator/qbittorrent/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:20.400161266Z" +generated: "2021-05-30T15:06:24.650574436Z" diff --git a/incubator/readarr/5.2.0/Chart.lock b/incubator/readarr/5.2.0/Chart.lock index 4b36e5c9530..3ee10e3339b 100644 --- a/incubator/readarr/5.2.0/Chart.lock +++ b/incubator/readarr/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:21.065379548Z" +generated: "2021-05-30T15:06:25.338549086Z" diff --git a/incubator/sabnzbd/5.2.0/Chart.lock b/incubator/sabnzbd/5.2.0/Chart.lock index 67dfc19a814..60baa868d95 100644 --- a/incubator/sabnzbd/5.2.0/Chart.lock +++ b/incubator/sabnzbd/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:21.682597134Z" +generated: "2021-05-30T15:06:26.045988851Z" diff --git a/incubator/tvheadend/6.2.0/Chart.lock b/incubator/tvheadend/6.2.0/Chart.lock index dee64c78285..3a73e540f8e 100644 --- a/incubator/tvheadend/6.2.0/Chart.lock +++ b/incubator/tvheadend/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:22.339713923Z" +generated: "2021-05-30T15:06:26.784936942Z" diff --git a/incubator/unifi/5.2.0/Chart.lock b/incubator/unifi/5.2.0/Chart.lock index 0abcb8dcd11..02859a2b192 100644 --- a/incubator/unifi/5.2.0/Chart.lock +++ b/incubator/unifi/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:23.005085669Z" +generated: "2021-05-30T15:06:27.5120747Z" diff --git a/stable/collabora-online/5.2.0/Chart.lock b/stable/collabora-online/5.2.0/Chart.lock index 00ab1353432..f9d047a75c9 100644 --- a/stable/collabora-online/5.2.0/Chart.lock +++ b/stable/collabora-online/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:42.306452569Z" +generated: "2021-05-30T15:05:44.411953545Z" diff --git a/stable/deepstack-cpu/3.2.0/Chart.lock b/stable/deepstack-cpu/3.2.0/Chart.lock index 4df02925cfb..849fbc7b237 100644 --- a/stable/deepstack-cpu/3.2.0/Chart.lock +++ b/stable/deepstack-cpu/3.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:43.385668553Z" +generated: "2021-05-30T15:05:45.544336269Z" diff --git a/stable/emby/5.2.0/Chart.lock b/stable/emby/5.2.0/Chart.lock index 6d2c9bd0b4e..0d0820e059e 100644 --- a/stable/emby/5.2.0/Chart.lock +++ b/stable/emby/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:44.07661909Z" +generated: "2021-05-30T15:05:46.38001457Z" diff --git a/stable/esphome/5.2.0/Chart.lock b/stable/esphome/5.2.0/Chart.lock index f5163b8e1ee..0935c651e72 100644 --- a/stable/esphome/5.2.0/Chart.lock +++ b/stable/esphome/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:44.739233713Z" +generated: "2021-05-30T15:05:47.094556236Z" diff --git a/stable/handbrake/5.2.0/Chart.lock b/stable/handbrake/5.2.0/Chart.lock index 433fe92b01d..f9dfe0749f9 100644 --- a/stable/handbrake/5.2.0/Chart.lock +++ b/stable/handbrake/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:45.436654003Z" +generated: "2021-05-30T15:05:47.777383797Z" diff --git a/stable/home-assistant/5.2.0/Chart.lock b/stable/home-assistant/5.2.0/Chart.lock index d06328060ae..7b82b4d2095 100644 --- a/stable/home-assistant/5.2.0/Chart.lock +++ b/stable/home-assistant/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:46.089097227Z" +generated: "2021-05-30T15:05:48.516464178Z" diff --git a/stable/jackett/5.2.0/Chart.lock b/stable/jackett/5.2.0/Chart.lock index 5d42c6e67eb..afc441abc44 100644 --- a/stable/jackett/5.2.0/Chart.lock +++ b/stable/jackett/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:46.750038284Z" +generated: "2021-05-30T15:05:49.291609523Z" diff --git a/stable/jellyfin/5.2.0/Chart.lock b/stable/jellyfin/5.2.0/Chart.lock index da3fbe2531c..c438fdb7106 100644 --- a/stable/jellyfin/5.2.0/Chart.lock +++ b/stable/jellyfin/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:47.409016064Z" +generated: "2021-05-30T15:05:49.991804737Z" diff --git a/stable/kms/5.2.0/Chart.lock b/stable/kms/5.2.0/Chart.lock index 4d5d3c3b397..6cab448eca4 100644 --- a/stable/kms/5.2.0/Chart.lock +++ b/stable/kms/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:48.105443616Z" +generated: "2021-05-30T15:05:50.710078383Z" diff --git a/stable/lidarr/5.2.0/Chart.lock b/stable/lidarr/5.2.0/Chart.lock index 1fdb06e1327..3ea1e123d6e 100644 --- a/stable/lidarr/5.2.0/Chart.lock +++ b/stable/lidarr/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:48.828755623Z" +generated: "2021-05-30T15:05:51.435006741Z" diff --git a/stable/ombi/5.2.0/Chart.lock b/stable/ombi/5.2.0/Chart.lock index 040bee02934..513894f7d6e 100644 --- a/stable/ombi/5.2.0/Chart.lock +++ b/stable/ombi/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:49.550103652Z" +generated: "2021-05-30T15:05:52.135506456Z" diff --git a/stable/plex/4.2.0/Chart.lock b/stable/plex/4.2.0/Chart.lock index 0017d65159b..9573f5c2d41 100644 --- a/stable/plex/4.2.0/Chart.lock +++ b/stable/plex/4.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:50.229259988Z" +generated: "2021-05-30T15:05:52.837170073Z" diff --git a/stable/radarr/5.2.0/Chart.lock b/stable/radarr/5.2.0/Chart.lock index f48df80d9fa..002443a776e 100644 --- a/stable/radarr/5.2.0/Chart.lock +++ b/stable/radarr/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:50.911256123Z" +generated: "2021-05-30T15:05:53.595224787Z" diff --git a/stable/sonarr/5.2.0/Chart.lock b/stable/sonarr/5.2.0/Chart.lock index 0d586d13c09..ad6f0bc0d87 100644 --- a/stable/sonarr/5.2.0/Chart.lock +++ b/stable/sonarr/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:51.621774038Z" +generated: "2021-05-30T15:05:54.306366021Z" diff --git a/stable/syncthing/5.3.0/Chart.lock b/stable/syncthing/5.3.0/Chart.lock index 2b87ccc9154..1b3d163c75b 100644 --- a/stable/syncthing/5.3.0/Chart.lock +++ b/stable/syncthing/5.3.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:52.319125454Z" +generated: "2021-05-30T15:05:54.997142819Z" diff --git a/stable/tautulli/5.2.0/Chart.lock b/stable/tautulli/5.2.0/Chart.lock index 1eb33161c5b..2818bca98f1 100644 --- a/stable/tautulli/5.2.0/Chart.lock +++ b/stable/tautulli/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:52.987139458Z" +generated: "2021-05-30T15:05:55.735764619Z" diff --git a/stable/traefik/4.0.3/Chart.lock b/stable/traefik/4.0.3/Chart.lock index 74f347b9cf8..afa169041c1 100644 --- a/stable/traefik/4.0.3/Chart.lock +++ b/stable/traefik/4.0.3/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://helm.traefik.io/traefik version: 9.19.1 digest: sha256:6837d576d0a80cb63dcd82a8dd3a2e7e5ea10f710b1ef1d5c29ce3af4eb3fbfe -generated: "2021-05-30T14:15:54.272477848Z" +generated: "2021-05-30T15:05:57.097129658Z" diff --git a/stable/transmission/5.2.0/Chart.lock b/stable/transmission/5.2.0/Chart.lock index 150b301eb78..86fd3ca354b 100644 --- a/stable/transmission/5.2.0/Chart.lock +++ b/stable/transmission/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:56.592581535Z" +generated: "2021-05-30T15:05:59.482608045Z" diff --git a/stable/truecommand/5.2.0/Chart.lock b/stable/truecommand/5.2.0/Chart.lock index 17d1117ccf2..e0d42b9025a 100644 --- a/stable/truecommand/5.2.0/Chart.lock +++ b/stable/truecommand/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:15:57.266970881Z" +generated: "2021-05-30T15:06:00.19902725Z" diff --git a/stable/vaultwarden/2.2.1/CONFIG.md b/stable/vaultwarden/2.2.1/CONFIG.md new file mode 100644 index 00000000000..6d760c18421 --- /dev/null +++ b/stable/vaultwarden/2.2.1/CONFIG.md @@ -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. diff --git a/stable/vaultwarden/2.2.1/Chart.lock b/stable/vaultwarden/2.2.1/Chart.lock new file mode 100644 index 00000000000..5218ecf7294 --- /dev/null +++ b/stable/vaultwarden/2.2.1/Chart.lock @@ -0,0 +1,9 @@ +dependencies: +- name: common + repository: https://truecharts.org/ + version: 5.1.2 +- name: postgresql + repository: https://charts.bitnami.com/bitnami + version: 10.4.7 +digest: sha256:ac3064895a3b0a42120bd0764f9676e96bf0987418e8d63ea3a65794dd379a76 +generated: "2021-05-30T15:06:03.506873806Z" diff --git a/stable/vaultwarden/2.2.1/Chart.yaml b/stable/vaultwarden/2.2.1/Chart.yaml new file mode 100644 index 00000000000..f93e37830d3 --- /dev/null +++ b/stable/vaultwarden/2.2.1/Chart.yaml @@ -0,0 +1,36 @@ +apiVersion: v2 +appVersion: auto +dependencies: +- name: common + repository: https://truecharts.org/ + version: 5.1.2 +- condition: postgresql.enabled + name: postgresql + repository: https://charts.bitnami.com/bitnami + version: 10.4.7 +deprecated: false +description: Unofficial Bitwarden compatible server written in Rust +home: https://github.com/truecharts/apps/tree/master/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/truecharts/apps/tree/master/incubator/bitwarden +- https://github.com/k8s-at-home/charts/tree/master/charts/stable/bitwardenrs +- https://github.com/dani-garcia/vaultwarden +type: application +version: 2.2.1 diff --git a/stable/vaultwarden/2.2.1/README.md b/stable/vaultwarden/2.2.1/README.md new file mode 100644 index 00000000000..f3497af5baf --- /dev/null +++ b/stable/vaultwarden/2.2.1/README.md @@ -0,0 +1,56 @@ +# Introduction + +![Version: 1.2.5](https://img.shields.io/badge/Version-1.2.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: auto](https://img.shields.io/badge/AppVersion-auto-informational?style=flat-square) + +Unofficial Vaultwarden 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 + +* +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://charts.bitnami.com/bitnami | postgresql | 10.4.2 | +| https://truecharts.org/ | common | 3.5.5 | + +## 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 diff --git a/stable/vaultwarden/2.2.1/app-readme.md b/stable/vaultwarden/2.2.1/app-readme.md new file mode 100644 index 00000000000..11f37b5efea --- /dev/null +++ b/stable/vaultwarden/2.2.1/app-readme.md @@ -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 diff --git a/stable/vaultwarden/2.2.1/charts/common-5.1.2.tgz b/stable/vaultwarden/2.2.1/charts/common-5.1.2.tgz new file mode 100644 index 0000000000000000000000000000000000000000..5b8ad2b0299b854d73a981c1ce9c45adba45d56f GIT binary patch literal 23069 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 literal 0 HcmV?d00001 diff --git a/stable/vaultwarden/2.2.1/charts/postgresql-10.4.7.tgz b/stable/vaultwarden/2.2.1/charts/postgresql-10.4.7.tgz new file mode 100644 index 0000000000000000000000000000000000000000..0b4f01d9da3ebb45062df41ba3db847ac6a86a81 GIT binary patch literal 48732 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 Y+uGK)_K(`H00030|3e1=qyV-B09e9RcK`qY literal 0 HcmV?d00001 diff --git a/stable/vaultwarden/2.2.1/ix_values.yaml b/stable/vaultwarden/2.2.1/ix_values.yaml new file mode 100644 index 00000000000..5054d940525 --- /dev/null +++ b/stable/vaultwarden/2.2.1/ix_values.yaml @@ -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: bitwardenrs/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: bitwardenconfig + - secretRef: + name: bitwardensecret + + +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: homeassistant + postgresqlDatabase: homeassistant + 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 +## diff --git a/stable/vaultwarden/2.2.1/questions.yaml b/stable/vaultwarden/2.2.1/questions.yaml new file mode 100644 index 00000000000..8e9251506d1 --- /dev/null +++ b/stable/vaultwarden/2.2.1/questions.yaml @@ -0,0 +1,1065 @@ +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: vaultwarden + label: "" + group: "App Configuration" + schema: + type: dict + attrs: + - variable: yubico + label: "Yubico OTP authentication" + schema: + type: dict + attrs: + - variable: enabled + label: "Enable Yubico OTP authentication" + description: "Please refer to the manual at: https://github.com/dani-garcia/vaultwarden/wiki/Enabling-Yubikey-OTP-authentication" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: server + label: "Yubico server" + description: "Defaults to YubiCloud" + schema: + type: string + default: "" + - variable: clientId + label: "Yubico ID" + schema: + type: string + default: "" + - variable: secretKey + label: "Yubico Secret Key" + schema: + type: string + default: "" + - variable: admin + label: "Admin Portal" + schema: + type: dict + attrs: + - variable: enabled + label: "Enable Admin Portal" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: disableAdminToken + label: "Make Accessible Without Password/Token" + schema: + type: boolean + default: false + - variable: token + label: "Admin Portal Password/Token" + description: "Will be automatically generated if not defined" + schema: + type: string + default: "" + - variable: icons + label: "Icon Download Settings" + schema: + type: dict + attrs: + - variable: disableDownload + label: "Disable Icon Download" + description: "Disables download of external icons. Setting to true will still serve icons from cache (/data/icon_cache)" + schema: + type: boolean + default: false + - variable: cache + label: "Cache time-to-live" + description: "Cache time-to-live for icons fetched. 0 means no purging" + schema: + type: int + default: 2592000 + - variable: token + label: "Failed Downloads Cache time-to-live" + description: "Cache time-to-live for icons that were not available. 0 means no purging." + schema: + type: int + default: 2592000 + - variable: log + label: "Logging" + schema: + type: dict + attrs: + - variable: level + label: "Log level" + schema: + type: string + default: "info" + required: true + enum: + - value: "trace" + description: "trace" + - value: "debug" + description: "debug" + - value: "info" + description: "info" + - value: "warn" + description: "warn" + - value: "error" + description: "error" + - value: "off" + description: "off" + - variable: file + label: "Log-File Location" + schema: + type: string + default: "" + - variable: smtp + label: "SMTP Settings (Email)" + schema: + type: dict + attrs: + - variable: enabled + label: "Enable SMTP Support" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: host + label: "SMTP hostname" + schema: + type: string + required: true + default: "" + - variable: from + label: "SMTP sender e-mail address" + schema: + type: string + required: true + default: "" + - variable: fromName + label: "SMTP sender name" + schema: + type: string + required: true + default: "" + - variable: user + label: "SMTP username" + schema: + type: string + required: true + default: "" + - variable: password + label: "SMTP password" + description: "Required is user is specified, ignored if no user provided" + schema: + type: string + default: "" + - variable: ssl + label: "Enable SSL connection" + schema: + type: boolean + default: true + - variable: port + label: "SMTP port" + description: "Usually: 25 without SSL, 587 with SSL" + schema: + type: int + default: 587 + - variable: authMechanism + label: "SMTP Authentication Mechanisms" + description: "Comma-separated options: Plain, Login and Xoauth2" + schema: + type: string + default: "Plain" + - variable: heloName + label: "SMTP HELO - Hostname" + description: "Hostname to be sent for SMTP HELO. Defaults to pod name" + schema: + type: string + default: "" + - variable: port + label: "SMTP timeout" + schema: + type: int + default: 15 + - variable: invalidHostname + label: "Accept Invalid Hostname" + description: "Accept SSL session if certificate is valid but hostname doesn't match. DANGEROUS, vulnerable to men-in-the-middle attacks!" + schema: + type: boolean + default: false + - variable: invalidCertificate + label: "Accept Invalid Certificate" + description: "Accept invalid certificates. DANGEROUS, vulnerable to men-in-the-middle attacks!" + schema: + type: boolean + default: false + - variable: allowSignups + label: "Allow Signup" + description: "Allow any user to sign-up: https://github.com/dani-garcia/vaultwarden/wiki/Disable-registration-of-new-users" + schema: + type: boolean + default: true + - variable: allowInvitation + label: "Always allow Invitation" + description: "Allow invited users to sign-up even feature is disabled: https://github.com/dani-garcia/vaultwarden/wiki/Disable-invitations" + schema: + type: boolean + default: true + - variable: defaultInviteName + label: "Default Invite Organisation Name" + description: "Default organization name in invitation e-mails that are not coming from a specific organization." + schema: + type: string + default: "" + - variable: showPasswordHint + label: "Show password hints" + description: "https://github.com/dani-garcia/vaultwarden/wiki/Password-hint-display" + schema: + type: boolean + default: true + - variable: signupwhitelistenable + label: "Enable Signup Whitelist" + description: "allowSignups is ignored if set" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: signupDomains + label: "Signup Whitelist Domains" + schema: + type: list + default: [] + items: + - variable: domain + label: "Domain" + schema: + type: string + default: "" + - variable: verifySignup + label: "Verifiy Signup" + description: "Verify e-mail before login is enabled. SMTP must be enabled" + schema: + type: boolean + default: false + - variable: requireEmail + label: "Block Login if email fails" + description: "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" + schema: + type: boolean + default: false + - variable: emailAttempts + label: "Email token reset attempts" + description: "Maximum attempts before an email token is reset and a new email will need to be sent" + schema: + type: int + default: 3 + - variable: emailTokenExpiration + label: "Email token validity in seconds" + schema: + type: int + default: 600 + - variable: enableWebsockets + label: "Enable Websocket Connections" + description: "Enable Websockets for notification. https://github.com/dani-garcia/vaultwarden/wiki/Enabling-WebSocket-notifications" + schema: + type: boolean + default: true + hidden: true + - variable: enableWebVault + label: "Enable Webvault" + description: "Enable Web Vault (static content). https://github.com/dani-garcia/vaultwarden/wiki/Disabling-or-overriding-the-Vault-interface-hosting" + schema: + type: boolean + default: true + - variable: orgCreationUsers + label: "Limit Organisation Creation to (users)" + description: "Restrict creation of orgs. Options are: 'all', 'none' or a comma-separated list of users." + schema: + type: string + default: "all" + - variable: attachmentLimitOrg + label: "Limit Attachment Disk Usage per Organisation" + schema: + type: string + default: "" + - variable: attachmentLimitUser + label: "Limit Attachment Disk Usage per User" + schema: + type: string + default: "" + - variable: hibpApiKey + label: "HaveIBeenPwned API Key" + description: "Can be purchased at https://haveibeenpwned.com/API/Key" + schema: + type: string + default: "" + - 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" + # 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: externalInterfaces + description: "External Interfaces" + label: "(Advanced) External Interfaces" + group: "Networking and Services" + schema: + type: list + items: + - variable: interfaceConfiguration + description: "Interface Configuration" + label: "Interface Configuration" + schema: + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: "Please specify host interface" + label: "Host Interface" + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: "Define how IP Address will be managed" + label: "IP Address Management" + schema: + type: dict + required: true + attrs: + - variable: type + description: "Specify type for IPAM" + label: "IPAM Type" + schema: + type: string + required: true + enum: + - value: "dhcp" + description: "Use DHCP" + - value: "static" + description: "Use static IP" + show_subquestions_if: "static" + subquestions: + - variable: staticIPConfigurations + label: "Static IP Addresses" + schema: + type: list + items: + - variable: staticIP + label: "Static IP" + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: "Static Routes" + schema: + type: list + items: + - variable: staticRouteConfiguration + label: "Static Route Configuration" + schema: + type: dict + attrs: + - variable: destination + label: "Destination" + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: "Gateway" + schema: + type: ipaddr + cidr: false + required: true + + - 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: 8080 + 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: 36000 + required: true + - variable: ws + label: "WebSocket Service" + description: "WebSocket Service" + schema: + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "ClusterIP" + enum: + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ports + label: "Service's Port(s) Configuration" + schema: + type: dict + attrs: + - variable: ws + label: "WebSocket Service Port Configuration" + schema: + type: dict + attrs: + - variable: 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: 3012 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3012 + 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: 36001 + required: true + ## TrueCharts Specific + - 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: storageClass + label: "Type of Storage" + description: " Warning: Anything other than SCALE-ZFS will break rollback!" + schema: + type: string + default: "SCALE-ZFS" + - variable: mountPath + label: "mountPath" + description: "Path inside the container the storage is mounted" + schema: + type: string + default: "/data" + hidden: true + - variable: emptyDir + label: "EmptyDir Volume" + schema: + type: dict + attrs: + - variable: enabled + label: "Use emptyDir volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: medium + label: "EmptyDir Medium" + schema: + 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: + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: size + label: "Size quotum of storage" + schema: + type: string + default: "100Gi" + - variable: 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: nameOverride + label: "Override PVC Name (advanced)" + description: "Forces a certain name for the PVC" + schema: + type: string + default: "db" + hidden: true + - variable: storageClass + label: "Type of Storage" + description: " Warning: Anything other than SCALE-ZFS will break rollback!" + schema: + 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: emptyDir + label: "EmptyDir Volume" + schema: + type: dict + attrs: + - variable: enabled + label: "Use emptyDir volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: medium + label: "EmptyDir Medium" + schema: + 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: + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: size + label: "Size quotum of storage" + schema: + type: string + default: "100Gi" + - variable: 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: storageClass + label: "Type of Storage" + description: " Warning: Anything other than Internal will break rollback!" + schema: + 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: emptyDir + label: "EmptyDir Volume" + schema: + type: dict + attrs: + - variable: enabled + label: "Use emptyDir volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: medium + label: "EmptyDir Medium" + schema: + 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: + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: size + label: "Size quotum of storage" + schema: + type: string + default: "100Gi" + - variable: hostPathMounts + label: "Custom app storage" + group: "Storage and Persistence" + schema: + type: list + default: [] + items: + - variable: volumeMount + label: "Custom Storage" + schema: + type: dict + attrs: + - variable: enabled + label: "Enabled" + schema: + type: boolean + default: true + hidden: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + type: boolean + default: true + - variable: readOnly + label: "Mount as ReadOnly" + description: "prevent any write from being done to the mounted volume" + schema: + type: boolean + default: false + - variable: emptyDir + label: "EmptyDir Volume" + schema: + type: dict + attrs: + - variable: enabled + label: "Use emptyDir volume" + schema: + type: boolean + default: false + - variable: medium + label: "EmptyDir Medium" + schema: + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: mountPath + label: "Mount Path" + description: "Path to mount inside the pod" + schema: + type: path + required: true + default: "" + editable: true + - variable: hostPath + label: "Host Path" + description: "Path on the host to mount inside the container, ignored when emptyDir is enabled" + schema: + type: hostpath + required: true + # Enable privileged + - 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 + # Set Pod Security Policy + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + type: dict + attrs: + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: true + - variable: runAsUser + label: "runAsUser" + description: "The UserID of the user running the application" + schema: + type: int + default: 568 + - variable: runAsGroup + label: "runAsGroup" + description: The groupID this App of the user running the application" + schema: + type: int + default: 568 + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: "OnRootMismatch" + enum: + - value: "OnRootMismatch" + description: "OnRootMismatch" + - value: "Always" + description: "Always" + - 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" diff --git a/stable/vaultwarden/2.2.1/templates/_configmap.tpl b/stable/vaultwarden/2.2.1/templates/_configmap.tpl new file mode 100644 index 00000000000..8809925abdf --- /dev/null +++ b/stable/vaultwarden/2.2.1/templates/_configmap.tpl @@ -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 -}} diff --git a/stable/vaultwarden/2.2.1/templates/_secrets.tpl b/stable/vaultwarden/2.2.1/templates/_secrets.tpl new file mode 100644 index 00000000000..ac57e81471d --- /dev/null +++ b/stable/vaultwarden/2.2.1/templates/_secrets.tpl @@ -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" "postgresql://" .Values.postgresql.postgresqlUsername $dbPass "postgresql" "5432" .Values.postgresql.postgresqlDatabase ) | b64enc | quote }} +type: Opaque +{{- end -}} diff --git a/stable/vaultwarden/2.2.1/templates/_validate.tpl b/stable/vaultwarden/2.2.1/templates/_validate.tpl new file mode 100644 index 00000000000..e4832c2f6e5 --- /dev/null +++ b/stable/vaultwarden/2.2.1/templates/_validate.tpl @@ -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 }} diff --git a/stable/vaultwarden/2.2.1/templates/common.yaml b/stable/vaultwarden/2.2.1/templates/common.yaml new file mode 100644 index 00000000000..74f04d2d8c2 --- /dev/null +++ b/stable/vaultwarden/2.2.1/templates/common.yaml @@ -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" . }} diff --git a/stable/vaultwarden/2.2.1/test_values.yaml b/stable/vaultwarden/2.2.1/test_values.yaml new file mode 100644 index 00000000000..b20f2d50840 --- /dev/null +++ b/stable/vaultwarden/2.2.1/test_values.yaml @@ -0,0 +1,183 @@ +# 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" + emptyDir: + enabled: true + accessMode: ReadWriteOnce + size: 1Gi + storageClass: "" + db: + nameOverride: "db" + enabled: true + emptyDir: + enabled: true + accessMode: ReadWriteOnce + size: 1Gi + storageClass: "" + dbbackup: + enabled: true + emptyDir: + enabled: true + accessMode: ReadWriteOnce + size: 1Gi + storageClass: "" + + +# 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 diff --git a/stable/vaultwarden/2.2.1/values.yaml b/stable/vaultwarden/2.2.1/values.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/stable/zwavejs2mqtt/5.2.0/Chart.lock b/stable/zwavejs2mqtt/5.2.0/Chart.lock index c50e82bd53e..8f1c0fef4df 100644 --- a/stable/zwavejs2mqtt/5.2.0/Chart.lock +++ b/stable/zwavejs2mqtt/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 5.1.2 digest: sha256:6bd9651098b689bdb2c296d21c80f41421c3cc70410a593ac0dd4c6206cfbe3d -generated: "2021-05-30T14:16:03.854167705Z" +generated: "2021-05-30T15:06:06.980627245Z"