From 0e55bfc43995ccf37ac5b8fddac0bf4bbaba8775 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Wed, 30 Jun 2021 13:01:47 +0000 Subject: [PATCH] Commit new App releases for TrueCharts Signed-off-by: TrueCharts-Bot --- deprecated/nzbhydra/6.2.0/Chart.lock | 2 +- develop/prototype-gui/1.3.0/Chart.lock | 2 +- incubator/airsonic/1.2.0/Chart.lock | 2 +- incubator/appdaemon/3.2.0/Chart.lock | 2 +- incubator/bazarr/6.2.0/Chart.lock | 2 +- incubator/calibre-web/6.2.0/Chart.lock | 2 +- incubator/deluge/6.2.0/Chart.lock | 2 +- incubator/fireflyiii/4.3.0/Chart.lock | 2 +- incubator/freshrss/6.2.0/Chart.lock | 2 +- incubator/gaps/6.2.0/Chart.lock | 2 +- incubator/grocy/6.2.0/Chart.lock | 2 +- incubator/haste-server/1.2.0/Chart.lock | 2 +- incubator/heimdall/6.2.0/Chart.lock | 2 +- incubator/lazylibrarian/6.2.0/Chart.lock | 2 +- incubator/lychee/6.2.0/Chart.lock | 2 +- incubator/mealie/1.2.0/Chart.lock | 2 +- incubator/mosquitto/1.2.0/Chart.lock | 2 +- incubator/navidrome/6.2.0/Chart.lock | 2 +- incubator/node-red/6.2.0/Chart.lock | 2 +- incubator/nzbget/6.2.0/Chart.lock | 2 +- incubator/organizr/6.2.0/Chart.lock | 2 +- incubator/podgrab/4.2.0/Chart.lock | 2 +- incubator/prowlarr/1.2.0/Chart.lock | 2 +- incubator/qbittorrent/6.2.0/Chart.lock | 2 +- incubator/readarr/6.2.0/Chart.lock | 2 +- incubator/reg/1.2.0/Chart.lock | 2 +- incubator/sabnzbd/6.2.0/Chart.lock | 2 +- incubator/thelounge/1.2.0/Chart.lock | 2 +- incubator/tvheadend/7.2.0/Chart.lock | 2 +- incubator/unifi/6.2.0/Chart.lock | 2 +- incubator/unpackerr/1.2.0/Chart.lock | 2 +- stable/collabora-online/6.2.0/Chart.lock | 2 +- stable/deepstack-cpu/4.2.0/Chart.lock | 2 +- stable/emby/6.2.0/Chart.lock | 2 +- stable/esphome/6.2.0/Chart.lock | 2 +- stable/handbrake/6.2.0/Chart.lock | 2 +- stable/home-assistant/6.2.0/Chart.lock | 2 +- stable/jackett/6.2.0/Chart.lock | 2 +- stable/jellyfin/6.2.0/Chart.lock | 2 +- stable/kms/6.2.0/Chart.lock | 2 +- stable/lidarr/6.2.0/Chart.lock | 2 +- stable/ombi/6.2.0/Chart.lock | 2 +- stable/plex/5.2.0/Chart.lock | 2 +- stable/radarr/6.2.0/Chart.lock | 2 +- stable/sonarr/6.2.0/Chart.lock | 2 +- stable/syncthing/6.2.0/Chart.lock | 2 +- stable/tautulli/6.2.0/Chart.lock | 2 +- stable/traefik/6.3.1/CONFIG.md | 8 + stable/traefik/6.3.1/Chart.lock | 6 + stable/traefik/6.3.1/Chart.yaml | 29 ++ stable/traefik/6.3.1/LICENSE | 202 +++++++++ stable/traefik/6.3.1/README.md | 55 +++ stable/traefik/6.3.1/app-readme.md | 3 + stable/traefik/6.3.1/charts/common-6.4.0.tgz | Bin 0 -> 23286 bytes stable/traefik/6.3.1/crds/ingressroute.yaml | 12 + .../traefik/6.3.1/crds/ingressroutetcp.yaml | 12 + .../traefik/6.3.1/crds/ingressrouteudp.yaml | 13 + stable/traefik/6.3.1/crds/middlewares.yaml | 12 + .../traefik/6.3.1/crds/serverstransports.yaml | 12 + stable/traefik/6.3.1/crds/tlsoptions.yaml | 12 + stable/traefik/6.3.1/crds/tlsstores.yaml | 13 + .../traefik/6.3.1/crds/traefikservices.yaml | 12 + stable/traefik/6.3.1/ix_values.yaml | 329 ++++++++++++++ stable/traefik/6.3.1/questions.yaml | 376 ++++++++++++++++ stable/traefik/6.3.1/templates/_helpers.tpl | 62 +++ .../traefik/6.3.1/templates/_podtemplate.tpl | 265 +++++++++++ .../6.3.1/templates/custom/common.yaml | 0 .../custom/middleware-namespace.yaml | 7 + .../custom/middlewares/basic-middleware.yaml | 57 +++ .../custom/middlewares/basicauth.yaml | 28 ++ .../custom/middlewares/forwardauth.yaml | 23 + .../6.3.1/templates/custom/portal.yaml | 45 ++ stable/traefik/6.3.1/templates/daemonset.yaml | 40 ++ .../dashboard-hook-ingressroute.yaml | 28 ++ .../traefik/6.3.1/templates/deployment.yaml | 47 ++ stable/traefik/6.3.1/templates/gateway.yaml | 33 ++ .../traefik/6.3.1/templates/gatewayclass.yaml | 9 + stable/traefik/6.3.1/templates/hpa.yaml | 20 + .../traefik/6.3.1/templates/ingressclass.yaml | 23 + .../6.3.1/templates/poddisruptionbudget.yaml | 22 + .../6.3.1/templates/rbac/clusterrole.yaml | 112 +++++ .../templates/rbac/clusterrolebinding.yaml | 19 + .../templates/rbac/podsecuritypolicy.yaml | 68 +++ stable/traefik/6.3.1/templates/rbac/role.yaml | 61 +++ .../6.3.1/templates/rbac/rolebinding.yaml | 19 + .../6.3.1/templates/rbac/serviceaccount.yaml | 15 + stable/traefik/6.3.1/templates/service.yaml | 114 +++++ stable/traefik/6.3.1/templates/tlsoption.yaml | 14 + stable/traefik/6.3.1/test_values.yaml | 426 ++++++++++++++++++ stable/traefik/6.3.1/values.yaml | 0 stable/transmission/6.2.0/Chart.lock | 2 +- stable/truecommand/6.2.0/Chart.lock | 2 +- stable/vaultwarden/3.3.0/Chart.lock | 2 +- stable/zwavejs2mqtt/6.2.0/Chart.lock | 2 +- 94 files changed, 2714 insertions(+), 51 deletions(-) create mode 100644 stable/traefik/6.3.1/CONFIG.md create mode 100644 stable/traefik/6.3.1/Chart.lock create mode 100644 stable/traefik/6.3.1/Chart.yaml create mode 100644 stable/traefik/6.3.1/LICENSE create mode 100644 stable/traefik/6.3.1/README.md create mode 100644 stable/traefik/6.3.1/app-readme.md create mode 100644 stable/traefik/6.3.1/charts/common-6.4.0.tgz create mode 100644 stable/traefik/6.3.1/crds/ingressroute.yaml create mode 100644 stable/traefik/6.3.1/crds/ingressroutetcp.yaml create mode 100644 stable/traefik/6.3.1/crds/ingressrouteudp.yaml create mode 100644 stable/traefik/6.3.1/crds/middlewares.yaml create mode 100644 stable/traefik/6.3.1/crds/serverstransports.yaml create mode 100644 stable/traefik/6.3.1/crds/tlsoptions.yaml create mode 100644 stable/traefik/6.3.1/crds/tlsstores.yaml create mode 100644 stable/traefik/6.3.1/crds/traefikservices.yaml create mode 100644 stable/traefik/6.3.1/ix_values.yaml create mode 100644 stable/traefik/6.3.1/questions.yaml create mode 100644 stable/traefik/6.3.1/templates/_helpers.tpl create mode 100644 stable/traefik/6.3.1/templates/_podtemplate.tpl create mode 100644 stable/traefik/6.3.1/templates/custom/common.yaml create mode 100644 stable/traefik/6.3.1/templates/custom/middleware-namespace.yaml create mode 100644 stable/traefik/6.3.1/templates/custom/middlewares/basic-middleware.yaml create mode 100644 stable/traefik/6.3.1/templates/custom/middlewares/basicauth.yaml create mode 100644 stable/traefik/6.3.1/templates/custom/middlewares/forwardauth.yaml create mode 100644 stable/traefik/6.3.1/templates/custom/portal.yaml create mode 100644 stable/traefik/6.3.1/templates/daemonset.yaml create mode 100644 stable/traefik/6.3.1/templates/dashboard-hook-ingressroute.yaml create mode 100644 stable/traefik/6.3.1/templates/deployment.yaml create mode 100644 stable/traefik/6.3.1/templates/gateway.yaml create mode 100644 stable/traefik/6.3.1/templates/gatewayclass.yaml create mode 100644 stable/traefik/6.3.1/templates/hpa.yaml create mode 100644 stable/traefik/6.3.1/templates/ingressclass.yaml create mode 100644 stable/traefik/6.3.1/templates/poddisruptionbudget.yaml create mode 100644 stable/traefik/6.3.1/templates/rbac/clusterrole.yaml create mode 100644 stable/traefik/6.3.1/templates/rbac/clusterrolebinding.yaml create mode 100644 stable/traefik/6.3.1/templates/rbac/podsecuritypolicy.yaml create mode 100644 stable/traefik/6.3.1/templates/rbac/role.yaml create mode 100644 stable/traefik/6.3.1/templates/rbac/rolebinding.yaml create mode 100644 stable/traefik/6.3.1/templates/rbac/serviceaccount.yaml create mode 100644 stable/traefik/6.3.1/templates/service.yaml create mode 100644 stable/traefik/6.3.1/templates/tlsoption.yaml create mode 100644 stable/traefik/6.3.1/test_values.yaml create mode 100644 stable/traefik/6.3.1/values.yaml diff --git a/deprecated/nzbhydra/6.2.0/Chart.lock b/deprecated/nzbhydra/6.2.0/Chart.lock index 20bfe49f6fa..70a41893e86 100644 --- a/deprecated/nzbhydra/6.2.0/Chart.lock +++ b/deprecated/nzbhydra/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:26.396402591Z" +generated: "2021-06-30T13:01:29.007420013Z" diff --git a/develop/prototype-gui/1.3.0/Chart.lock b/develop/prototype-gui/1.3.0/Chart.lock index 1c578668549..9d59f9758ec 100644 --- a/develop/prototype-gui/1.3.0/Chart.lock +++ b/develop/prototype-gui/1.3.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:25.395407539Z" +generated: "2021-06-30T13:01:27.787577926Z" diff --git a/incubator/airsonic/1.2.0/Chart.lock b/incubator/airsonic/1.2.0/Chart.lock index 44e147b8b6b..b307808851c 100644 --- a/incubator/airsonic/1.2.0/Chart.lock +++ b/incubator/airsonic/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:50.119332382Z" +generated: "2021-06-30T13:00:47.171462868Z" diff --git a/incubator/appdaemon/3.2.0/Chart.lock b/incubator/appdaemon/3.2.0/Chart.lock index 8de2665f09d..7b0ade51df2 100644 --- a/incubator/appdaemon/3.2.0/Chart.lock +++ b/incubator/appdaemon/3.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:51.09898768Z" +generated: "2021-06-30T13:00:48.345456137Z" diff --git a/incubator/bazarr/6.2.0/Chart.lock b/incubator/bazarr/6.2.0/Chart.lock index 7d07217c488..01c15e66bc7 100644 --- a/incubator/bazarr/6.2.0/Chart.lock +++ b/incubator/bazarr/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:52.218562575Z" +generated: "2021-06-30T13:00:49.49155306Z" diff --git a/incubator/calibre-web/6.2.0/Chart.lock b/incubator/calibre-web/6.2.0/Chart.lock index 319f17a76db..2ddcfa00a8d 100644 --- a/incubator/calibre-web/6.2.0/Chart.lock +++ b/incubator/calibre-web/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:53.299005323Z" +generated: "2021-06-30T13:00:50.622319047Z" diff --git a/incubator/deluge/6.2.0/Chart.lock b/incubator/deluge/6.2.0/Chart.lock index 2828746fdf1..75e07e1619f 100644 --- a/incubator/deluge/6.2.0/Chart.lock +++ b/incubator/deluge/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:54.361641823Z" +generated: "2021-06-30T13:00:51.757398083Z" diff --git a/incubator/fireflyiii/4.3.0/Chart.lock b/incubator/fireflyiii/4.3.0/Chart.lock index 3bbaa494993..225b02d109b 100644 --- a/incubator/fireflyiii/4.3.0/Chart.lock +++ b/incubator/fireflyiii/4.3.0/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.bitnami.com/bitnami version: 10.5.0 digest: sha256:bb1b657df8dcf83986b7a76595d50a3eca87a37cce1c64531a81c4f8126db168 -generated: "2021-06-30T12:46:57.920528225Z" +generated: "2021-06-30T13:00:55.564242052Z" diff --git a/incubator/freshrss/6.2.0/Chart.lock b/incubator/freshrss/6.2.0/Chart.lock index 7a7de9a0771..e3786935e7d 100644 --- a/incubator/freshrss/6.2.0/Chart.lock +++ b/incubator/freshrss/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:01.595164729Z" +generated: "2021-06-30T13:01:00.433994405Z" diff --git a/incubator/gaps/6.2.0/Chart.lock b/incubator/gaps/6.2.0/Chart.lock index e8d88a79449..26fc9c66907 100644 --- a/incubator/gaps/6.2.0/Chart.lock +++ b/incubator/gaps/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:02.663684467Z" +generated: "2021-06-30T13:01:01.618121462Z" diff --git a/incubator/grocy/6.2.0/Chart.lock b/incubator/grocy/6.2.0/Chart.lock index 027fded6041..71e45b7c6c0 100644 --- a/incubator/grocy/6.2.0/Chart.lock +++ b/incubator/grocy/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:03.684799251Z" +generated: "2021-06-30T13:01:02.801351612Z" diff --git a/incubator/haste-server/1.2.0/Chart.lock b/incubator/haste-server/1.2.0/Chart.lock index b616eff9f69..ca8d3c37db6 100644 --- a/incubator/haste-server/1.2.0/Chart.lock +++ b/incubator/haste-server/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:04.705943038Z" +generated: "2021-06-30T13:01:03.998307273Z" diff --git a/incubator/heimdall/6.2.0/Chart.lock b/incubator/heimdall/6.2.0/Chart.lock index 6bc24795470..1b91925ad93 100644 --- a/incubator/heimdall/6.2.0/Chart.lock +++ b/incubator/heimdall/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:05.726397259Z" +generated: "2021-06-30T13:01:05.148061853Z" diff --git a/incubator/lazylibrarian/6.2.0/Chart.lock b/incubator/lazylibrarian/6.2.0/Chart.lock index ae4ed7a7868..f6313268d91 100644 --- a/incubator/lazylibrarian/6.2.0/Chart.lock +++ b/incubator/lazylibrarian/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:06.740023632Z" +generated: "2021-06-30T13:01:06.363493963Z" diff --git a/incubator/lychee/6.2.0/Chart.lock b/incubator/lychee/6.2.0/Chart.lock index 57f0512aa78..5f28000c601 100644 --- a/incubator/lychee/6.2.0/Chart.lock +++ b/incubator/lychee/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:07.759953604Z" +generated: "2021-06-30T13:01:07.552126103Z" diff --git a/incubator/mealie/1.2.0/Chart.lock b/incubator/mealie/1.2.0/Chart.lock index 3639044df51..445223f7c58 100644 --- a/incubator/mealie/1.2.0/Chart.lock +++ b/incubator/mealie/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:08.78552791Z" +generated: "2021-06-30T13:01:08.749255292Z" diff --git a/incubator/mosquitto/1.2.0/Chart.lock b/incubator/mosquitto/1.2.0/Chart.lock index edab832ed42..6e5637b4dd9 100644 --- a/incubator/mosquitto/1.2.0/Chart.lock +++ b/incubator/mosquitto/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:09.808069829Z" +generated: "2021-06-30T13:01:09.94497227Z" diff --git a/incubator/navidrome/6.2.0/Chart.lock b/incubator/navidrome/6.2.0/Chart.lock index d1fe476bf8a..72880d8aa2c 100644 --- a/incubator/navidrome/6.2.0/Chart.lock +++ b/incubator/navidrome/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:10.851132905Z" +generated: "2021-06-30T13:01:11.095885578Z" diff --git a/incubator/node-red/6.2.0/Chart.lock b/incubator/node-red/6.2.0/Chart.lock index f00b83d1a51..fe02806e6e6 100644 --- a/incubator/node-red/6.2.0/Chart.lock +++ b/incubator/node-red/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:11.878250379Z" +generated: "2021-06-30T13:01:12.260289897Z" diff --git a/incubator/nzbget/6.2.0/Chart.lock b/incubator/nzbget/6.2.0/Chart.lock index 685c7279ce5..8a2e9f85b45 100644 --- a/incubator/nzbget/6.2.0/Chart.lock +++ b/incubator/nzbget/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:12.926893017Z" +generated: "2021-06-30T13:01:13.425745924Z" diff --git a/incubator/organizr/6.2.0/Chart.lock b/incubator/organizr/6.2.0/Chart.lock index 43a2410cddd..9b8d8be4661 100644 --- a/incubator/organizr/6.2.0/Chart.lock +++ b/incubator/organizr/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:13.967208457Z" +generated: "2021-06-30T13:01:14.600845632Z" diff --git a/incubator/podgrab/4.2.0/Chart.lock b/incubator/podgrab/4.2.0/Chart.lock index 82c05826435..dfd4c2f9efe 100644 --- a/incubator/podgrab/4.2.0/Chart.lock +++ b/incubator/podgrab/4.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:14.977267096Z" +generated: "2021-06-30T13:01:15.763909147Z" diff --git a/incubator/prowlarr/1.2.0/Chart.lock b/incubator/prowlarr/1.2.0/Chart.lock index 054b47c3871..22cd2834352 100644 --- a/incubator/prowlarr/1.2.0/Chart.lock +++ b/incubator/prowlarr/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:16.041040785Z" +generated: "2021-06-30T13:01:16.914207667Z" diff --git a/incubator/qbittorrent/6.2.0/Chart.lock b/incubator/qbittorrent/6.2.0/Chart.lock index 65b89e9b2b9..48271146efe 100644 --- a/incubator/qbittorrent/6.2.0/Chart.lock +++ b/incubator/qbittorrent/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:17.116219267Z" +generated: "2021-06-30T13:01:18.120605752Z" diff --git a/incubator/readarr/6.2.0/Chart.lock b/incubator/readarr/6.2.0/Chart.lock index 2cac990457f..99649b0bedb 100644 --- a/incubator/readarr/6.2.0/Chart.lock +++ b/incubator/readarr/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:18.190000513Z" +generated: "2021-06-30T13:01:19.341136454Z" diff --git a/incubator/reg/1.2.0/Chart.lock b/incubator/reg/1.2.0/Chart.lock index d92ef6df885..519d0a235fe 100644 --- a/incubator/reg/1.2.0/Chart.lock +++ b/incubator/reg/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:19.205575028Z" +generated: "2021-06-30T13:01:20.525474956Z" diff --git a/incubator/sabnzbd/6.2.0/Chart.lock b/incubator/sabnzbd/6.2.0/Chart.lock index 3913b2ab0f0..a86e4ee065a 100644 --- a/incubator/sabnzbd/6.2.0/Chart.lock +++ b/incubator/sabnzbd/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:20.221358163Z" +generated: "2021-06-30T13:01:21.763555503Z" diff --git a/incubator/thelounge/1.2.0/Chart.lock b/incubator/thelounge/1.2.0/Chart.lock index de0074b8538..584a21130d4 100644 --- a/incubator/thelounge/1.2.0/Chart.lock +++ b/incubator/thelounge/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:21.270194326Z" +generated: "2021-06-30T13:01:22.959986805Z" diff --git a/incubator/tvheadend/7.2.0/Chart.lock b/incubator/tvheadend/7.2.0/Chart.lock index 84b8fdf038b..aa723bd2779 100644 --- a/incubator/tvheadend/7.2.0/Chart.lock +++ b/incubator/tvheadend/7.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:22.291667699Z" +generated: "2021-06-30T13:01:24.187418857Z" diff --git a/incubator/unifi/6.2.0/Chart.lock b/incubator/unifi/6.2.0/Chart.lock index 9f74afc2746..a499b806560 100644 --- a/incubator/unifi/6.2.0/Chart.lock +++ b/incubator/unifi/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:23.320779795Z" +generated: "2021-06-30T13:01:25.385848767Z" diff --git a/incubator/unpackerr/1.2.0/Chart.lock b/incubator/unpackerr/1.2.0/Chart.lock index 453956ff6f1..b0896e8b3bb 100644 --- a/incubator/unpackerr/1.2.0/Chart.lock +++ b/incubator/unpackerr/1.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:47:24.367907496Z" +generated: "2021-06-30T13:01:26.5992046Z" diff --git a/stable/collabora-online/6.2.0/Chart.lock b/stable/collabora-online/6.2.0/Chart.lock index 9782e2aba04..1bf27e00151 100644 --- a/stable/collabora-online/6.2.0/Chart.lock +++ b/stable/collabora-online/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:22.964819149Z" +generated: "2021-06-30T13:00:16.120228505Z" diff --git a/stable/deepstack-cpu/4.2.0/Chart.lock b/stable/deepstack-cpu/4.2.0/Chart.lock index e993906b41c..9a2d6a906a1 100644 --- a/stable/deepstack-cpu/4.2.0/Chart.lock +++ b/stable/deepstack-cpu/4.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:24.132107543Z" +generated: "2021-06-30T13:00:17.523186591Z" diff --git a/stable/emby/6.2.0/Chart.lock b/stable/emby/6.2.0/Chart.lock index de151426f7c..4c114b61efb 100644 --- a/stable/emby/6.2.0/Chart.lock +++ b/stable/emby/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:25.26304418Z" +generated: "2021-06-30T13:00:18.724110452Z" diff --git a/stable/esphome/6.2.0/Chart.lock b/stable/esphome/6.2.0/Chart.lock index 3ef8c25fc2c..a3e1a9069af 100644 --- a/stable/esphome/6.2.0/Chart.lock +++ b/stable/esphome/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:26.321429518Z" +generated: "2021-06-30T13:00:19.924294244Z" diff --git a/stable/handbrake/6.2.0/Chart.lock b/stable/handbrake/6.2.0/Chart.lock index b2291bd0aba..53736f9ba9a 100644 --- a/stable/handbrake/6.2.0/Chart.lock +++ b/stable/handbrake/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:27.388280161Z" +generated: "2021-06-30T13:00:21.095268288Z" diff --git a/stable/home-assistant/6.2.0/Chart.lock b/stable/home-assistant/6.2.0/Chart.lock index 6057ebe4fd8..485f142e6fa 100644 --- a/stable/home-assistant/6.2.0/Chart.lock +++ b/stable/home-assistant/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:28.466090146Z" +generated: "2021-06-30T13:00:22.277537414Z" diff --git a/stable/jackett/6.2.0/Chart.lock b/stable/jackett/6.2.0/Chart.lock index 33f4d75585b..159a0e728a7 100644 --- a/stable/jackett/6.2.0/Chart.lock +++ b/stable/jackett/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:29.510173425Z" +generated: "2021-06-30T13:00:23.464723875Z" diff --git a/stable/jellyfin/6.2.0/Chart.lock b/stable/jellyfin/6.2.0/Chart.lock index 882f2a408d8..2908a47ab1f 100644 --- a/stable/jellyfin/6.2.0/Chart.lock +++ b/stable/jellyfin/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:30.552188809Z" +generated: "2021-06-30T13:00:24.613875962Z" diff --git a/stable/kms/6.2.0/Chart.lock b/stable/kms/6.2.0/Chart.lock index 13f80e9de65..ad1df823c40 100644 --- a/stable/kms/6.2.0/Chart.lock +++ b/stable/kms/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:31.558930154Z" +generated: "2021-06-30T13:00:25.762495945Z" diff --git a/stable/lidarr/6.2.0/Chart.lock b/stable/lidarr/6.2.0/Chart.lock index 03fbe5012ab..87bd3595d2e 100644 --- a/stable/lidarr/6.2.0/Chart.lock +++ b/stable/lidarr/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:32.557865647Z" +generated: "2021-06-30T13:00:26.969629149Z" diff --git a/stable/ombi/6.2.0/Chart.lock b/stable/ombi/6.2.0/Chart.lock index 9791ec365a5..7f05e8bc031 100644 --- a/stable/ombi/6.2.0/Chart.lock +++ b/stable/ombi/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:33.598098417Z" +generated: "2021-06-30T13:00:28.176400744Z" diff --git a/stable/plex/5.2.0/Chart.lock b/stable/plex/5.2.0/Chart.lock index 3f9071bb90d..d9e855ae8ea 100644 --- a/stable/plex/5.2.0/Chart.lock +++ b/stable/plex/5.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:34.640719416Z" +generated: "2021-06-30T13:00:29.337076984Z" diff --git a/stable/radarr/6.2.0/Chart.lock b/stable/radarr/6.2.0/Chart.lock index cc7c8ea1a74..694a9140905 100644 --- a/stable/radarr/6.2.0/Chart.lock +++ b/stable/radarr/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:35.752243851Z" +generated: "2021-06-30T13:00:30.496640414Z" diff --git a/stable/sonarr/6.2.0/Chart.lock b/stable/sonarr/6.2.0/Chart.lock index 4cb432fbb6c..a5a97cacc94 100644 --- a/stable/sonarr/6.2.0/Chart.lock +++ b/stable/sonarr/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:36.795713432Z" +generated: "2021-06-30T13:00:31.648800573Z" diff --git a/stable/syncthing/6.2.0/Chart.lock b/stable/syncthing/6.2.0/Chart.lock index b5facffac1f..020a9221b58 100644 --- a/stable/syncthing/6.2.0/Chart.lock +++ b/stable/syncthing/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:37.86095481Z" +generated: "2021-06-30T13:00:32.834350853Z" diff --git a/stable/tautulli/6.2.0/Chart.lock b/stable/tautulli/6.2.0/Chart.lock index a44ceb28947..c8af4aea904 100644 --- a/stable/tautulli/6.2.0/Chart.lock +++ b/stable/tautulli/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:38.893596321Z" +generated: "2021-06-30T13:00:33.972182674Z" diff --git a/stable/traefik/6.3.1/CONFIG.md b/stable/traefik/6.3.1/CONFIG.md new file mode 100644 index 00000000000..6d760c18421 --- /dev/null +++ b/stable/traefik/6.3.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/traefik/6.3.1/Chart.lock b/stable/traefik/6.3.1/Chart.lock new file mode 100644 index 00000000000..6d452023c96 --- /dev/null +++ b/stable/traefik/6.3.1/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://truecharts.org/ + version: 6.4.0 +digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 +generated: "2021-06-30T13:00:35.281544636Z" diff --git a/stable/traefik/6.3.1/Chart.yaml b/stable/traefik/6.3.1/Chart.yaml new file mode 100644 index 00000000000..6787dd5593c --- /dev/null +++ b/stable/traefik/6.3.1/Chart.yaml @@ -0,0 +1,29 @@ +apiVersion: v2 +appVersion: '2.4' +dependencies: +- name: common + repository: https://truecharts.org/ + version: 6.4.0 +deprecated: false +description: A Traefik based Reverse Proxy and Certificate Manager +home: https://github.com/truecharts/apps/tree/master/charts/stable/traefik +icon: https://raw.githubusercontent.com/traefik/traefik/v2.3/docs/content/assets/img/traefik.logo.png +keywords: +- traefik +- ingress +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: traefik +sources: +- https://github.com/traefik/traefik +- https://github.com/traefik/traefik-helm-chart +- https://traefik.io/ +type: application +version: 6.3.1 +upstream_version: "v9.19.2" diff --git a/stable/traefik/6.3.1/LICENSE b/stable/traefik/6.3.1/LICENSE new file mode 100644 index 00000000000..907ff83212c --- /dev/null +++ b/stable/traefik/6.3.1/LICENSE @@ -0,0 +1,202 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 Containous + Copyright 2020 Traefik Labs + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/stable/traefik/6.3.1/README.md b/stable/traefik/6.3.1/README.md new file mode 100644 index 00000000000..d00a60858d3 --- /dev/null +++ b/stable/traefik/6.3.1/README.md @@ -0,0 +1,55 @@ +# Introduction + +![Version: 6.1.2](https://img.shields.io/badge/Version-6.1.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.4](https://img.shields.io/badge/AppVersion-2.4-informational?style=flat-square) + +A Traefik based Reverse Proxy and Certificate 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 + +* +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://truecharts.org/ | common | 6.3.4 | + +## Installing the Chart + +To install the chart with the release name `traefik` + +- Open TrueNAS SCALE +- Go to Apps +- Click "Install" for this specific Apps +- Fill out the configuration form + +## Uninstalling the Chart + +To uninstall the `traefik` 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/traefik/6.3.1/app-readme.md b/stable/traefik/6.3.1/app-readme.md new file mode 100644 index 00000000000..753f84f7068 --- /dev/null +++ b/stable/traefik/6.3.1/app-readme.md @@ -0,0 +1,3 @@ +A Traefik based Reverse Proxy and Certificate Manager +This App is supplied by TrueCharts, for more information please visit https://truecharts.org +A Traefik based Reverse Proxy and Certificate Manager diff --git a/stable/traefik/6.3.1/charts/common-6.4.0.tgz b/stable/traefik/6.3.1/charts/common-6.4.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..974c0fd4a1eafa30bfb739df272524177a24c72a GIT binary patch literal 23286 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 F0syNG4YvRQ literal 0 HcmV?d00001 diff --git a/stable/traefik/6.3.1/crds/ingressroute.yaml b/stable/traefik/6.3.1/crds/ingressroute.yaml new file mode 100644 index 00000000000..9422be3c878 --- /dev/null +++ b/stable/traefik/6.3.1/crds/ingressroute.yaml @@ -0,0 +1,12 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: ingressroutes.traefik.containo.us +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: IngressRoute + plural: ingressroutes + singular: ingressroute + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/ingressroutetcp.yaml b/stable/traefik/6.3.1/crds/ingressroutetcp.yaml new file mode 100644 index 00000000000..b50eb9dcc46 --- /dev/null +++ b/stable/traefik/6.3.1/crds/ingressroutetcp.yaml @@ -0,0 +1,12 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: ingressroutetcps.traefik.containo.us +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: IngressRouteTCP + plural: ingressroutetcps + singular: ingressroutetcp + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/ingressrouteudp.yaml b/stable/traefik/6.3.1/crds/ingressrouteudp.yaml new file mode 100644 index 00000000000..d7c2624b576 --- /dev/null +++ b/stable/traefik/6.3.1/crds/ingressrouteudp.yaml @@ -0,0 +1,13 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: ingressrouteudps.traefik.containo.us + +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: IngressRouteUDP + plural: ingressrouteudps + singular: ingressrouteudp + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/middlewares.yaml b/stable/traefik/6.3.1/crds/middlewares.yaml new file mode 100644 index 00000000000..513b36f5d8a --- /dev/null +++ b/stable/traefik/6.3.1/crds/middlewares.yaml @@ -0,0 +1,12 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: middlewares.traefik.containo.us +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: Middleware + plural: middlewares + singular: middleware + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/serverstransports.yaml b/stable/traefik/6.3.1/crds/serverstransports.yaml new file mode 100644 index 00000000000..689a57f71bd --- /dev/null +++ b/stable/traefik/6.3.1/crds/serverstransports.yaml @@ -0,0 +1,12 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: serverstransports.traefik.containo.us +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: ServersTransport + plural: serverstransports + singular: serverstransport + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/tlsoptions.yaml b/stable/traefik/6.3.1/crds/tlsoptions.yaml new file mode 100644 index 00000000000..a0c2573fb93 --- /dev/null +++ b/stable/traefik/6.3.1/crds/tlsoptions.yaml @@ -0,0 +1,12 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: tlsoptions.traefik.containo.us +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: TLSOption + plural: tlsoptions + singular: tlsoption + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/tlsstores.yaml b/stable/traefik/6.3.1/crds/tlsstores.yaml new file mode 100644 index 00000000000..f9a40052ba6 --- /dev/null +++ b/stable/traefik/6.3.1/crds/tlsstores.yaml @@ -0,0 +1,13 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: tlsstores.traefik.containo.us + +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: TLSStore + plural: tlsstores + singular: tlsstore + scope: Namespaced diff --git a/stable/traefik/6.3.1/crds/traefikservices.yaml b/stable/traefik/6.3.1/crds/traefikservices.yaml new file mode 100644 index 00000000000..59fa4839477 --- /dev/null +++ b/stable/traefik/6.3.1/crds/traefikservices.yaml @@ -0,0 +1,12 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: traefikservices.traefik.containo.us +spec: + group: traefik.containo.us + version: v1alpha1 + names: + kind: TraefikService + plural: traefikservices + singular: traefikservice + scope: Namespaced diff --git a/stable/traefik/6.3.1/ix_values.yaml b/stable/traefik/6.3.1/ix_values.yaml new file mode 100644 index 00000000000..b8247bf1ca9 --- /dev/null +++ b/stable/traefik/6.3.1/ix_values.yaml @@ -0,0 +1,329 @@ +# Default values for Traefik +image: + name: traefik + # defaults to appVersion + tag: v2.4 + pullPolicy: IfNotPresent + +# +# Configure the deployment +# +deployment: + enabled: true + # Can be either Deployment or DaemonSet + kind: Deployment + # Number of pods of the deployment (only applies when kind == Deployment) + replicas: 1 + # Additional deployment annotations (e.g. for jaeger-operator sidecar injection) + annotations: {} + # Additional deployment labels (e.g. for filtering deployment by custom labels) + labels: {} + # Additional pod annotations (e.g. for mesh injection or prometheus scraping) + podAnnotations: {} + # Additional Pod labels (e.g. for filtering Pod by custom labels) + podLabels: {} + # Additional containers (e.g. for metric offloading sidecars) + additionalContainers: [] + # https://docs.datadoghq.com/developers/dogstatsd/unix_socket/?tab=host + # - name: socat-proxy + # image: alpine/socat:1.0.5 + # args: ["-s", "-u", "udp-recv:8125", "unix-sendto:/socket/socket"] + # volumeMounts: + # - name: dsdsocket + # mountPath: /socket + # Additional volumes available for use with initContainers and additionalContainers + additionalVolumes: [] + # - name: dsdsocket + # hostPath: + # path: /var/run/statsd-exporter + # Additional initContainers (e.g. for setting file permission as shown below) + initContainers: [] + # The "volume-permissions" init container is required if you run into permission issues. + # Related issue: https://github.com/traefik/traefik/issues/6972 + # - name: volume-permissions + # image: busybox:1.31.1 + # command: ["sh", "-c", "chmod -Rv 600 /data/*"] + # volumeMounts: + # - name: data + # mountPath: /data + # Custom pod DNS policy. Apply if `hostNetwork: true` + # dnsPolicy: ClusterFirstWithHostNet + # Additional imagePullSecrets + imagePullSecrets: [] + # - name: myRegistryKeySecretName + +# Pod disruption budget +podDisruptionBudget: + enabled: false + # maxUnavailable: 1 + # minAvailable: 0 + +# Use ingressClass. Ignored if Traefik version < 2.3 / kubernetes < 1.18.x +ingressClass: + # true is not unit-testable yet, pending https://github.com/rancher/helm-unittest/pull/12 + enabled: false + isDefaultClass: false + # Use to force a networking.k8s.io API Version for certain CI/CD applications. E.g. "v1beta1" + fallbackApiVersion: + +# Activate Pilot integration +pilot: + enabled: false + token: "" + # Toggle Pilot Dashboard + # dashboard: false + +# Enable experimental features +experimental: + plugins: + enabled: false + kubernetesGateway: + enabled: false + appLabelSelector: "traefik" + certificates: [] + # - group: "core" + # kind: "Secret" + # name: "mysecret" + +# Create an IngressRoute for the dashboard +ingressRoute: + dashboard: + enabled: true + # Additional ingressRoute annotations (e.g. for kubernetes.io/ingress.class) + annotations: {} + # Additional ingressRoute labels (e.g. for filtering IngressRoute by custom labels) + labels: {} + +rollingUpdate: + maxUnavailable: 1 + maxSurge: 1 + + +# +# Configure providers +# +providers: + kubernetesCRD: + enabled: true + namespaces: [] + # - "default" + kubernetesIngress: + enabled: true + # labelSelector: environment=production,method=traefik + namespaces: [] + # - "default" + # IP used for Kubernetes Ingress endpoints + publishedService: + enabled: false + # Published Kubernetes Service to copy status from. Format: namespace/servicename + # By default this Traefik service + # pathOverride: "" + +# +# Add volumes to the traefik pod. The volume name will be passed to tpl. +# This can be used to mount a cert pair or a configmap that holds a config.toml file. +# After the volume has been mounted, add the configs into traefik by using the `additionalArguments` list below, eg: +# additionalArguments: +# - "--providers.file.filename=/config/dynamic.toml" +# - "--ping" +# - "--ping.entrypoint=web" +volumes: [] +# - name: public-cert +# mountPath: "/certs" +# type: secret +# - name: '{{ printf "%s-configs" .Release.Name }}' +# mountPath: "/config" +# type: configMap + +# Additional volumeMounts to add to the Traefik container +additionalVolumeMounts: [] + # For instance when using a logshipper for access logs + # - name: traefik-logs + # mountPath: /var/log/traefik + +# Logs +# https://docs.traefik.io/observability/logs/ +logs: + # Traefik logs concern everything that happens to Traefik itself (startup, configuration, events, shutdown, and so on). + general: + # By default, the logs use a text format (common), but you can + # also ask for the json format in the format option + # format: json + # By default, the level is set to ERROR. Alternative logging levels are DEBUG, PANIC, FATAL, ERROR, WARN, and INFO. + level: INFO + access: + # To enable access logs + enabled: false + # By default, logs are written using the Common Log Format (CLF). + # To write logs in JSON, use json in the format option. + # If the given format is unsupported, the default (CLF) is used instead. + # format: json + # To write the logs in an asynchronous fashion, specify a bufferingSize option. + # This option represents the number of log lines Traefik will keep in memory before writing + # them to the selected output. In some cases, this option can greatly help performances. + # bufferingSize: 100 + # Filtering https://docs.traefik.io/observability/access-logs/#filtering + filters: {} + # statuscodes: "200,300-302" + # retryattempts: true + # minduration: 10ms + # Fields + # https://docs.traefik.io/observability/access-logs/#limiting-the-fieldsincluding-headers + fields: + general: + defaultmode: keep + names: {} + # Examples: + # ClientUsername: drop + headers: + defaultmode: drop + names: {} + # Examples: + # User-Agent: redact + # Authorization: drop + # Content-Type: keep + +globalArguments: + - "--global.checknewversion" + +# +# Configure Traefik static configuration +# Additional arguments to be passed at Traefik's binary +# All available options available on https://docs.traefik.io/reference/static-configuration/cli/ +## Use curly braces to pass values: `helm install --set="additionalArguments={--providers.kubernetesingress.ingressclass=traefik-internal,--log.level=DEBUG}"` +additionalArguments: + - "--metrics.prometheus" + - "--ping" + - "--serverstransport.insecureskipverify=true" + +# Environment variables to be passed to Traefik's binary +env: [] +# - name: SOME_VAR +# value: some-var-value +# - name: SOME_VAR_FROM_CONFIG_MAP +# valueFrom: +# configMapRef: +# name: configmap-name +# key: config-key +# - name: SOME_SECRET +# valueFrom: +# secretKeyRef: +# name: secret-name +# key: secret-key + +envFrom: [] + +# TLS Options are created as TLSOption CRDs +# https://doc.traefik.io/traefik/https/tls/#tls-options +# Example: +tlsOptions: + default: + sniStrict: false + minVersion: VersionTLS12 + curvePreferences: + - CurveP521 + - CurveP384 + cipherSuites: + - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 + - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305 + - TLS_AES_128_GCM_SHA256 + - TLS_AES_256_GCM_SHA384 + - TLS_CHACHA20_POLY1305_SHA256 + +# Options for the main traefik service, where the entrypoints traffic comes +# from. +service: + enabled: true + type: LoadBalancer + # Additional annotations (e.g. for cloud provider specific config) + annotations: {} + # Additional service labels (e.g. for filtering Service by custom labels) + labels: {} + # Additional entries here will be added to the service spec. Cannot contains + # type, selector or ports entries. + spec: {} + # externalTrafficPolicy: Cluster + # loadBalancerIP: "1.2.3.4" + # clusterIP: "2.3.4.5" + loadBalancerSourceRanges: [] + # - 192.168.0.1/32 + # - 172.16.0.0/16 + externalIPs: [] + # - 1.2.3.4 + +## Create HorizontalPodAutoscaler object. +## +autoscaling: + enabled: false +# minReplicas: 1 +# maxReplicas: 10 +# metrics: +# - type: Resource +# resource: +# name: cpu +# targetAverageUtilization: 60 +# - type: Resource +# resource: +# name: memory +# targetAverageUtilization: 60 + +# Enable persistence using Persistent Volume Claims +# ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ +# After the pvc has been mounted, add the configs into traefik by using the `additionalArguments` list below, eg: +# additionalArguments: +# - "--certificatesresolvers.le.acme.storage=/data/acme.json" +# It will persist TLS certificates. +persistence: + enabled: false + name: data + accessMode: ReadWriteOnce + size: 128Mi + path: /data + +# Whether Role Based Access Control objects like roles and rolebindings should be created +rbac: + enabled: true + + # If set to false, installs ClusterRole and ClusterRoleBinding so Traefik can be used across namespaces. + # If set to true, installs namespace-specific Role and RoleBinding and requires provider configuration be set to that same namespace + namespaced: false + +# Enable to create a PodSecurityPolicy and assign it to the Service Account via RoleBinding or ClusterRoleBinding +podSecurityPolicy: + enabled: false + +# The service account the pods will use to interact with the Kubernetes API +serviceAccount: + # If set, an existing service account is used + # If not set, a service account is created automatically using the fullname template + name: "" + +# Additional serviceAccount annotations (e.g. for oidc authentication) +serviceAccountAnnotations: {} + +affinity: {} +# # This example pod anti-affinity forces the scheduler to put traefik pods +# # on nodes where no other traefik pods are scheduled. +# # It should be used when hostNetwork: true to prevent port conflicts +# podAntiAffinity: +# requiredDuringSchedulingIgnoredDuringExecution: +# - labelSelector: +# matchExpressions: +# - key: app +# operator: In +# values: +# - {{ template "traefik.name" . }} +# topologyKey: failure-domain.beta.kubernetes.io/zone +nodeSelector: {} +tolerations: [] + +# Pods can have priority. +# Priority indicates the importance of a Pod relative to other Pods. +priorityClassName: "" + +# Set the container security context +# To run the container with ports below 1024 this will need to be adjust to run as root +securityContext: + capabilities: + drop: [ALL] diff --git a/stable/traefik/6.3.1/questions.yaml b/stable/traefik/6.3.1/questions.yaml new file mode 100644 index 00000000000..e6f4512bb78 --- /dev/null +++ b/stable/traefik/6.3.1/questions.yaml @@ -0,0 +1,376 @@ +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: "Middlewares" + description: "Traefik Middlewares" + - 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" + path: "/dashboard/" +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: middlewares + label: "" + group: "Middlewares" + schema: + type: dict + attrs: + - variable: basicAuth + label: "basicAuth" + schema: + type: list + default: [] + items: + - variable: basicAuthEntry + label: "" + schema: + type: dict + hidden: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + default: "" + - variable: users + label: "Users" + schema: + type: list + default: [] + items: + - variable: usersEntry + label: "" + schema: + type: dict + hidden: true + attrs: + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + default: "" + + + - variable: forwardAuth + label: "forwardAuth" + schema: + type: list + default: [] + items: + - variable: basicAuthEntry + label: "" + schema: + type: dict + hidden: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + default: "" + - variable: address + label: "Address" + schema: + type: string + required: true + default: "" + - variable: trustForwardHeader + label: "trustForwardHeader" + schema: + type: boolean + default: false + - variable: authResponseHeadersRegex + label: "authResponseHeadersRegex" + schema: + type: string + default: "" + - variable: authResponseHeaders + label: "authResponseHeaders" + schema: + type: list + default: [] + items: + - variable: authResponseHeadersEntry + label: "" + schema: + type: string + default: "" + - variable: authRequestHeaders + label: "authRequestHeaders" + schema: + type: list + default: [] + items: + - variable: authRequestHeadersEntry + label: "" + schema: + type: string + default: "" + + - variable: hostNetwork + group: "Networking and Services" + label: "Enable Host Networking" + schema: + type: boolean + default: false + + - variable: ports + label: "(Advanced) Traefik Entrypoints" + group: "Networking and Services" + schema: + type: dict + attrs: + - variable: traefik + label: "traefik internal" + schema: + type: dict + attrs: + - variable: port + label: "Internal Port" + description: "(advanced) Port inside the container network" + schema: + type: int + required: true + hidden: true + default: 9000 + - variable: expose + label: "Expose to Outside" + description: "Port to the outside of all(!) nodes" + schema: + type: boolean + default: true + - variable: exposedPort + label: "Outside Port" + description: "Port on the outside" + schema: + type: int + show_if: [["expose", "=", true]] + default: 9000 + - variable: protocol + label: "Protocol" + description: "TCP or UDP reverse proxying?" + schema: + type: string + default: "TCP" + - variable: web + label: "web" + schema: + type: dict + attrs: + - variable: port + label: "Internal Port" + description: "(advanced) Port inside the container network" + schema: + type: int + required: true + hidden: true + default: 9080 + - variable: expose + label: "Expose to Outside" + description: "Port to the outside of all(!) nodes" + schema: + type: boolean + default: true + - variable: exposedPort + label: "Outside Port" + description: "Port to the outside of all(!) nodes" + schema: + type: int + show_if: [["expose", "=", true]] + required: true + default: 9080 + - variable: protocol + label: "Protocol" + description: "TCP or UDP reverse proxying?" + schema: + type: string + required: true + default: "TCP" + hidden: true + - variable: redirectEnable + label: "Enable Redirect" + schema: + type: boolean + default: true + show_subquestions_if: true + subquestions: + - variable: redirectTo + label: "Target Entrypoint" + description: "Select the Target Entrypoint to redirect to" + schema: + type: string + required: true + default: "websecure" + - variable: websecure + label: "websecure" + schema: + type: dict + attrs: + - variable: port + label: "Internal Port" + description: "(advanced) Port inside the container network" + schema: + type: int + required: true + hidden: true + default: 9443 + - variable: expose + label: "Expose to Outside" + description: "Port to the outside of all(!) nodes" + schema: + type: boolean + default: true + - variable: exposedPort + label: "Outside Port" + description: "Port to the outside of all(!) nodes" + schema: + type: int + show_if: [["expose", "=", true]] + required: true + default: 9443 + - variable: protocol + label: "Protocol" + description: "TCP or UDP reverse proxying?" + schema: + type: string + required: true + default: "TCP" + hidden: true + + - variable: securityContext + group: "Security and Permissions" + label: "Security Context" + schema: + type: dict + attrs: + - variable: privileged + label: "Enable privileged mode for Common-Chart based charts" + schema: + type: boolean + default: false + - variable: 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: 65532 + - variable: runAsGroup + label: "runAsGroup" + description: The groupID this App of the user running the application" + schema: + type: int + default: 65532 + + + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + type: dict + attrs: + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 65532 + - 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/traefik/6.3.1/templates/_helpers.tpl b/stable/traefik/6.3.1/templates/_helpers.tpl new file mode 100644 index 00000000000..f7b055fa82e --- /dev/null +++ b/stable/traefik/6.3.1/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* vim: set filetype=mustache: */}} + +{{/* +Expand the name of the chart. +*/}} +{{- define "traefik.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "traefik.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "traefik.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +The name of the service account to use +*/}} +{{- define "traefik.serviceAccountName" -}} +{{- default (include "traefik.fullname" .) .Values.serviceAccount.name -}} +{{- end -}} + +{{/* +Construct the path for the providers.kubernetesingress.ingressendpoint.publishedservice. +By convention this will simply use the / to match the name of the +service generated. +Users can provide an override for an explicit service they want bound via `.Values.providers.kubernetesIngress.publishedService.pathOverride` +*/}} +{{- define "providers.kubernetesIngress.publishedServicePath" -}} +{{- $defServiceName := printf "%s/%s" .Release.Namespace (include "traefik.fullname" .) -}} +{{- $servicePath := default $defServiceName .Values.providers.kubernetesIngress.publishedService.pathOverride }} +{{- print $servicePath | trimSuffix "-" -}} +{{- end -}} + +{{/* +Construct a comma-separated list of whitelisted namespaces +*/}} +{{- define "providers.kubernetesIngress.namespaces" -}} +{{- default .Release.Namespace (join "," .Values.providers.kubernetesIngress.namespaces) }} +{{- end -}} +{{- define "providers.kubernetesCRD.namespaces" -}} +{{- default .Release.Namespace (join "," .Values.providers.kubernetesCRD.namespaces) }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/_podtemplate.tpl b/stable/traefik/6.3.1/templates/_podtemplate.tpl new file mode 100644 index 00000000000..9e8fe8aca34 --- /dev/null +++ b/stable/traefik/6.3.1/templates/_podtemplate.tpl @@ -0,0 +1,265 @@ +{{- define "traefik.podTemplate" }} + metadata: + annotations: + {{- with .Values.deployment.podAnnotations }} + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- with .Values.deployment.podLabels }} + {{- toYaml . | nindent 8 }} + {{- end }} + spec: + {{- with .Values.deployment.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "traefik.serviceAccountName" . }} + terminationGracePeriodSeconds: 60 + hostNetwork: {{ .Values.hostNetwork }} + {{- with .Values.deployment.dnsPolicy }} + dnsPolicy: {{ . }} + {{- end }} + {{- with .Values.deployment.initContainers }} + initContainers: + {{- toYaml . | nindent 6 }} + {{- end }} + containers: + - image: "{{ .Values.image.name }}:{{ default .Chart.AppVersion .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ template "traefik.fullname" . }} + resources: + {{- with .Values.resources }} + {{- toYaml . | nindent 10 }} + {{- end }} + readinessProbe: + httpGet: + path: /ping + port: {{ default .Values.ports.traefik.port .Values.ports.traefik.healthchecksPort }} + failureThreshold: 1 + initialDelaySeconds: 10 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 2 + livenessProbe: + httpGet: + path: /ping + port: {{ default .Values.ports.traefik.port .Values.ports.traefik.healthchecksPort }} + failureThreshold: 3 + initialDelaySeconds: 10 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 2 + ports: + {{- range $name, $config := .Values.ports }} + {{- if $config }} + - name: {{ $name | quote }} + containerPort: {{ $config.port }} + {{- if $config.hostPort }} + hostPort: {{ $config.hostPort }} + {{- end }} + {{- if $config.hostIP }} + hostIP: {{ $config.hostIP }} + {{- end }} + protocol: {{ default "TCP" $config.protocol | quote }} + {{- end }} + {{- end }} + {{- with .Values.securityContext }} + securityContext: + {{- toYaml . | nindent 10 }} + {{- end }} + volumeMounts: + - name: {{ .Values.persistence.name }} + mountPath: {{ .Values.persistence.path }} + {{- if .Values.persistence.subPath }} + subPath: {{ .Values.persistence.subPath }} + {{- end }} + - name: tmp + mountPath: /tmp + {{- $root := . }} + {{- range .Values.volumes }} + - name: {{ tpl (.name) $root }} + mountPath: {{ .mountPath }} + readOnly: true + {{- end }} + {{- if .Values.experimental.plugins.enabled }} + - name: plugins + mountPath: "/plugins-storage" + {{- end }} + {{- if .Values.additionalVolumeMounts }} + {{- toYaml .Values.additionalVolumeMounts | nindent 10 }} + {{- end }} + args: + {{- with .Values.globalArguments }} + {{- range . }} + - {{ . | quote }} + {{- end }} + {{- end }} + {{- range $name, $config := .Values.ports }} + {{- if $config }} + - "--entryPoints.{{$name}}.address=:{{ $config.port }}/{{ default "tcp" $config.protocol | lower }}" + {{- end }} + {{- end }} + - "--api.dashboard=true" + - "--ping=true" + {{- if .Values.providers.kubernetesCRD.enabled }} + - "--providers.kubernetescrd" + {{- end }} + {{- if .Values.providers.kubernetesIngress.enabled }} + - "--providers.kubernetesingress" + {{- if and .Values.service.enabled .Values.providers.kubernetesIngress.publishedService.enabled }} + - "--providers.kubernetesingress.ingressendpoint.publishedservice={{ template "providers.kubernetesIngress.publishedServicePath" . }}" + {{- end }} + {{- if .Values.providers.kubernetesIngress.labelSelector }} + - "--providers.kubernetesingress.labelSelector={{ .Values.providers.kubernetesIngress.labelSelector }}" + {{- end }} + {{- end }} + {{- if .Values.experimental.kubernetesGateway.enabled }} + - "--providers.kubernetesgateway" + - "--experimental.kubernetesgateway" + {{- end }} + {{- if and .Values.rbac.enabled .Values.rbac.namespaced }} + {{- if .Values.providers.kubernetesCRD.enabled }} + - "--providers.kubernetescrd.namespaces={{ template "providers.kubernetesCRD.namespaces" . }}" + {{- end }} + {{- if .Values.providers.kubernetesIngress.enabled }} + - "--providers.kubernetesingress.namespaces={{ template "providers.kubernetesIngress.namespaces" . }}" + {{- end }} + {{- end }} + {{- range $entrypoint, $config := $.Values.ports }} + {{- if $config.redirectTo }} + {{- $toPort := index $.Values.ports $config.redirectTo }} + - "--entrypoints.{{ $entrypoint }}.http.redirections.entryPoint.to=:{{ $toPort.exposedPort }}" + - "--entrypoints.{{ $entrypoint }}.http.redirections.entryPoint.scheme=https" + {{- end }} + {{- if $config.tls }} + {{- if $config.tls.enabled }} + - "--entrypoints.{{ $entrypoint }}.http.tls=true" + {{- if $config.tls.options }} + - "--entrypoints.{{ $entrypoint }}.http.tls.options={{ $config.tls.options }}" + {{- end }} + {{- if $config.tls.certResolver }} + - "--entrypoints.{{ $entrypoint }}.http.tls.certResolver={{ $config.tls.certResolver }}" + {{- end }} + {{- if $config.tls.domains }} + {{- range $index, $domain := $config.tls.domains }} + {{- if $domain.main }} + - "--entrypoints.{{ $entrypoint }}.http.tls.domains[{{ $index }}].main={{ $domain.main }}" + {{- end }} + {{- if $domain.sans }} + - "--entrypoints.{{ $entrypoint }}.http.tls.domains[{{ $index }}].sans={{ join "," $domain.sans }}" + {{- end }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} + {{- with .Values.logs }} + {{- if .general.format }} + - "--log.format={{ .general.format }}" + {{- end }} + {{- if ne .general.level "ERROR" }} + - "--log.level={{ .general.level | upper }}" + {{- end }} + {{- if .access.enabled }} + - "--accesslog=true" + {{- if .access.format }} + - "--accesslog.format={{ .access.format }}" + {{- end }} + {{- if .access.bufferingsize }} + - "--accesslog.bufferingsize={{ .access.bufferingsize }}" + {{- end }} + {{- if .access.filters }} + {{- if .access.filters.statuscodes }} + - "--accesslog.filters.statuscodes={{ .access.filters.statuscodes }}" + {{- end }} + {{- if .access.filters.retryattempts }} + - "--accesslog.filters.retryattempts" + {{- end }} + {{- if .access.filters.minduration }} + - "--accesslog.filters.minduration={{ .access.filters.minduration }}" + {{- end }} + {{- end }} + - "--accesslog.fields.defaultmode={{ .access.fields.general.defaultmode }}" + {{- range $fieldname, $fieldaction := .access.fields.general.names }} + - "--accesslog.fields.names.{{ $fieldname }}={{ $fieldaction }}" + {{- end }} + - "--accesslog.fields.headers.defaultmode={{ .access.fields.headers.defaultmode }}" + {{- range $fieldname, $fieldaction := .access.fields.headers.names }} + - "--accesslog.fields.headers.names.{{ $fieldname }}={{ $fieldaction }}" + {{- end }} + {{- end }} + {{- end }} + {{- if .Values.pilot.enabled }} + - "--pilot.token={{ .Values.pilot.token }}" + {{- end }} + {{- if hasKey .Values.pilot "dashboard" }} + - "--pilot.dashboard={{ .Values.pilot.dashboard }}" + {{- end }} + {{- with .Values.additionalArguments }} + {{- range . }} + - {{ . | quote }} + {{- end }} + {{- end }} + {{- with .Values.env }} + env: + {{- toYaml . | nindent 10 }} + {{- end }} + {{- with .Values.envFrom }} + envFrom: + {{- toYaml . | nindent 10 }} + {{- end }} + {{- if .Values.deployment.additionalContainers }} + {{- toYaml .Values.deployment.additionalContainers | nindent 6 }} + {{- end }} + volumes: + - name: {{ .Values.persistence.name }} + {{- if .Values.persistence.enabled }} + persistentVolumeClaim: + claimName: {{ default (include "traefik.fullname" .) .Values.persistence.existingClaim }} + {{- else }} + emptyDir: {} + {{- end }} + - name: tmp + emptyDir: {} + {{- $root := . }} + {{- range .Values.volumes }} + - name: {{ tpl (.name) $root }} + {{- if eq .type "secret" }} + secret: + secretName: {{ tpl (.name) $root }} + {{- else if eq .type "configMap" }} + configMap: + name: {{ tpl (.name) $root }} + {{- end }} + {{- end }} + {{- if .Values.deployment.additionalVolumes }} + {{- toYaml .Values.deployment.additionalVolumes | nindent 8 }} + {{- end }} + {{- if .Values.experimental.plugins.enabled }} + - name: plugins + emptyDir: {} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- if .Values.priorityClassName }} + priorityClassName: {{ .Values.priorityClassName }} + {{- end }} + {{- with .Values.podSecurityContext }} + securityContext: + {{- toYaml . | nindent 8 }} + {{- end }} +{{ end -}} diff --git a/stable/traefik/6.3.1/templates/custom/common.yaml b/stable/traefik/6.3.1/templates/custom/common.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/stable/traefik/6.3.1/templates/custom/middleware-namespace.yaml b/stable/traefik/6.3.1/templates/custom/middleware-namespace.yaml new file mode 100644 index 00000000000..16156ee5e12 --- /dev/null +++ b/stable/traefik/6.3.1/templates/custom/middleware-namespace.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: traefikmiddlewares + namespace: traefikmiddlewares + annotations: + "helm.sh/hook": pre-install diff --git a/stable/traefik/6.3.1/templates/custom/middlewares/basic-middleware.yaml b/stable/traefik/6.3.1/templates/custom/middlewares/basic-middleware.yaml new file mode 100644 index 00000000000..d81132ed5a1 --- /dev/null +++ b/stable/traefik/6.3.1/templates/custom/middlewares/basic-middleware.yaml @@ -0,0 +1,57 @@ +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: compress + namespace: traefikmiddlewares +spec: + compress: {} +--- +# Here, an average of 300 requests per second is allowed. +# In addition, a burst of 200 requests is allowed. +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: basic-ratelimit + namespace: traefikmiddlewares +spec: + rateLimit: + average: 300 + burst: 200 +--- +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: basic-secure-headers + namespace: traefikmiddlewares +spec: + headers: + accessControlAllowMethods: + - GET + - OPTIONS + - HEAD + - PUT + accessControlMaxAge: 100 + # sslRedirect: true + # stsSeconds: 63072000 + # stsIncludeSubdomains: false + # stsPreload: false + # forceSTSHeader: true + contentTypeNosniff: true + browserXssFilter: true + sslForceHost: true + referrerPolicy: same-origin + customResponseHeaders: + X-Robots-Tag: 'none' + server: '' +--- +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: chain-basic + namespace: traefikmiddlewares +spec: + chain: + middlewares: + - name: basic-ratelimit + - name: basic-secure-headers + - name: compress diff --git a/stable/traefik/6.3.1/templates/custom/middlewares/basicauth.yaml b/stable/traefik/6.3.1/templates/custom/middlewares/basicauth.yaml new file mode 100644 index 00000000000..412502ed73c --- /dev/null +++ b/stable/traefik/6.3.1/templates/custom/middlewares/basicauth.yaml @@ -0,0 +1,28 @@ +{{ range $index, $middlewareData := .Values.middlewares.basicAuth }} +--- +{{- $users := list }} +{{ range $index, $userdata := $middlewareData.users }} + {{ $users = append $users ( htpasswd $userdata.username $userdata.password | b64enc ) }} +{{ end }} + +apiVersion: v1 +kind: Secret +metadata: + name: {{printf "%v-%v" $middlewareData.name "secret" }} + namespace: traefikmiddlewares +data: + users: |{{ len $users }} + {{- range $index, $user := $users }} + {{ printf "%s" $user }} + {{- end }} +--- +# Declaring the user list +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: {{ $middlewareData.name }} + namespace: traefikmiddlewares +spec: + basicAuth: + secret: {{printf "%v-%v" $middlewareData.name "secret" }} +{{ end }} diff --git a/stable/traefik/6.3.1/templates/custom/middlewares/forwardauth.yaml b/stable/traefik/6.3.1/templates/custom/middlewares/forwardauth.yaml new file mode 100644 index 00000000000..bb90d33775e --- /dev/null +++ b/stable/traefik/6.3.1/templates/custom/middlewares/forwardauth.yaml @@ -0,0 +1,23 @@ +{{ range $index, $middlewareData := .Values.middlewares.forwardAuth }} +--- +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: {{ $middlewareData.name }} + namespace: traefikmiddlewares +spec: + forwardAuth: + address: {{ $middlewareData.address }} + {{- if $middlewareData.authResponseHeaders }} + authResponseHeaders: {{ $middlewareData.authResponseHeaders }} + {{- end }} + {{- if $middlewareData.authRequestHeaders }} + authRequestHeaders: {{ $middlewareData.authRequestHeaders }} + {{- end }} + {{- if $middlewareData.authResponseHeadersRegex }} + authResponseHeadersRegex: {{ $middlewareData.authResponseHeadersRegex }} + {{- end }} + {{- if $middlewareData.trustForwardHeader }} + trustForwardHeader: true + {{- end }} +{{ end }} diff --git a/stable/traefik/6.3.1/templates/custom/portal.yaml b/stable/traefik/6.3.1/templates/custom/portal.yaml new file mode 100644 index 00000000000..92e80f287a2 --- /dev/null +++ b/stable/traefik/6.3.1/templates/custom/portal.yaml @@ -0,0 +1,45 @@ +{{- if .Values.portal }} +{{- if .Values.portal.enabled }} +{{- $ingr := dict -}} +{{- $host := "$node_ip" }} +{{- $port := 443 }} +{{- $protocol := "https" }} +{{- $portProtocol := "" }} +{{- $path := "/dashboard/" }} + +{{- if $ingr }} + {{- if $ingr.enabled }} + {{- range $ingr.hosts }} + {{- if .hostTpl }} + {{ $host = ( tpl .hostTpl $ ) }} + {{- else if .host }} + {{ $host = .host }} + {{- else }} + {{ $host = "$node_ip" }} + {{- end }} + {{- if .paths }} + {{- $path = (first .paths).path }} + {{- end }} + {{- end }} + {{- end }} +{{- end }} + +{{- if eq $host "$node_ip" }} + {{- $port = .Values.ports.traefik.exposedPort }} + {{- $protocol = "http" }} +{{- end }} + +--- + +apiVersion: v1 +kind: ConfigMap +metadata: + name: portal +data: + protocol: {{ $protocol }} + host: {{ $host | quote }} + port: {{ $port | quote }} + path: {{ $path | quote }} + url: {{ ( printf "%v://%v:%v%v" $protocol $host $port $path ) | quote }} +{{- end }} +{{- end }} diff --git a/stable/traefik/6.3.1/templates/daemonset.yaml b/stable/traefik/6.3.1/templates/daemonset.yaml new file mode 100644 index 00000000000..469e105c358 --- /dev/null +++ b/stable/traefik/6.3.1/templates/daemonset.yaml @@ -0,0 +1,40 @@ +{{- if and .Values.deployment.enabled (eq .Values.deployment.kind "DaemonSet") -}} + {{- with .Values.additionalArguments -}} + {{- range . -}} + {{- if contains ".acme." . -}} + {{- fail (printf "ACME functionality is not supported when running Traefik as a DaemonSet") -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- if eq (default .Chart.AppVersion .Values.image.tag) "latest" }} + {{- fail "\n\n ERROR: latest tag should not be used" }} + {{- end }} + +--- +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- with .Values.deployment.labels }} + {{- toYaml . | nindent 4 }} + {{- end }} + annotations: + {{- with .Values.deployment.annotations }} + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + selector: + matchLabels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + updateStrategy: + type: RollingUpdate + rollingUpdate: + maxUnavailable: {{ .Values.rollingUpdate.maxUnavailable }} + template: {{ template "traefik.podTemplate" . }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/dashboard-hook-ingressroute.yaml b/stable/traefik/6.3.1/templates/dashboard-hook-ingressroute.yaml new file mode 100644 index 00000000000..ec278c26910 --- /dev/null +++ b/stable/traefik/6.3.1/templates/dashboard-hook-ingressroute.yaml @@ -0,0 +1,28 @@ +{{- if .Values.ingressRoute.dashboard.enabled -}} +apiVersion: traefik.containo.us/v1alpha1 +kind: IngressRoute +metadata: + name: {{ template "traefik.fullname" . }}-dashboard + annotations: + helm.sh/hook: "post-install,post-upgrade" + {{- with .Values.ingressRoute.dashboard.annotations }} + {{- toYaml . | nindent 4 }} + {{- end }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- with .Values.ingressRoute.dashboard.labels }} + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + entryPoints: + - traefik + routes: + - match: PathPrefix(`/dashboard`) || PathPrefix(`/api`) + kind: Rule + services: + - name: api@internal + kind: TraefikService +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/deployment.yaml b/stable/traefik/6.3.1/templates/deployment.yaml new file mode 100644 index 00000000000..494087cfd0a --- /dev/null +++ b/stable/traefik/6.3.1/templates/deployment.yaml @@ -0,0 +1,47 @@ +{{- if and .Values.deployment.enabled (eq .Values.deployment.kind "Deployment") -}} + {{- if gt (int .Values.deployment.replicas) 1 -}} + {{- with .Values.additionalArguments -}} + {{- range . -}} + {{- if contains ".acme." . -}} + {{- fail (printf "You can not enable acme if you set more than one traefik replica") -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- if eq (default .Chart.AppVersion .Values.image.tag) "latest" }} + {{- fail "\n\n ERROR: latest tag should not be used" }} + {{- end }} + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- with .Values.deployment.labels }} + {{- toYaml . | nindent 4 }} + {{- end }} + annotations: + {{- with .Values.deployment.annotations }} + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if not .Values.autoscaling.enabled }} + replicas: {{ default 1 .Values.deployment.replicas }} + {{- end }} + selector: + matchLabels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + strategy: + type: RollingUpdate + rollingUpdate: + {{- with .Values.rollingUpdate }} + {{- toYaml . | nindent 6 }} + {{- end }} + template: {{ template "traefik.podTemplate" . }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/gateway.yaml b/stable/traefik/6.3.1/templates/gateway.yaml new file mode 100644 index 00000000000..85194211fe5 --- /dev/null +++ b/stable/traefik/6.3.1/templates/gateway.yaml @@ -0,0 +1,33 @@ +{{- if .Values.experimental.kubernetesGateway.enabled }} +--- +apiVersion: networking.x-k8s.io/v1alpha1 +kind: Gateway +metadata: + name: traefik-gateway + namespace: default +spec: + gatewayClassName: traefik + listeners: + - port: {{ .Values.ports.web.port }} + protocol: HTTP + routes: + kind: HTTPRoute + selector: + matchLabels: + app: {{ .Values.experimental.kubernetesGateway.appLabelSelector }} + + {{- range $index, $cert:= .Values.experimental.kubernetesGateway.certificates }} + - port: {{ $.Values.ports.websecure.port }} + protocol: HTTPS + tls: + certificateRef: + name: {{ $cert.name }} + group: {{ $cert.group }} + kind: {{ $cert.kind }} + routes: + kind: HTTPRoute + selector: + matchLabels: + app: {{ $.Values.experimental.kubernetesGateway.appLabelSelector }} + {{- end }} +{{- end }} diff --git a/stable/traefik/6.3.1/templates/gatewayclass.yaml b/stable/traefik/6.3.1/templates/gatewayclass.yaml new file mode 100644 index 00000000000..61bf007db1e --- /dev/null +++ b/stable/traefik/6.3.1/templates/gatewayclass.yaml @@ -0,0 +1,9 @@ +{{- if .Values.experimental.kubernetesGateway.enabled }} +--- +kind: GatewayClass +apiVersion: networking.x-k8s.io/v1alpha1 +metadata: + name: traefik +spec: + controller: traefik.io/gateway-controller +{{- end }} diff --git a/stable/traefik/6.3.1/templates/hpa.yaml b/stable/traefik/6.3.1/templates/hpa.yaml new file mode 100644 index 00000000000..bf37117de6a --- /dev/null +++ b/stable/traefik/6.3.1/templates/hpa.yaml @@ -0,0 +1,20 @@ +{{- if .Values.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ template "traefik.fullname" . }} + minReplicas: {{ .Values.autoscaling.minReplicas }} + maxReplicas: {{ .Values.autoscaling.maxReplicas }} + metrics: +{{ toYaml .Values.autoscaling.metrics | indent 4 }} +{{- end }} diff --git a/stable/traefik/6.3.1/templates/ingressclass.yaml b/stable/traefik/6.3.1/templates/ingressclass.yaml new file mode 100644 index 00000000000..7c62458c82e --- /dev/null +++ b/stable/traefik/6.3.1/templates/ingressclass.yaml @@ -0,0 +1,23 @@ +{{- if and .Values.ingressClass.enabled (semverCompare ">=2.3.0" (default .Chart.AppVersion .Values.image.tag)) -}} + {{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1/IngressClass" }} +apiVersion: networking.k8s.io/v1 + {{- else if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/IngressClass" }} +apiVersion: networking.k8s.io/v1beta1 + {{- else if or (eq .Values.ingressClass.fallbackApiVersion "v1beta1") (eq .Values.ingressClass.fallbackApiVersion "v1") }} +apiVersion: {{ printf "networking.k8s.io/%s" .Values.ingressClass.fallbackApiVersion }} + {{- else }} + {{- fail "\n\n ERROR: You must have atleast networking.k8s.io/v1beta1 to use ingressClass" }} + {{- end }} +kind: IngressClass +metadata: + annotations: + ingressclass.kubernetes.io/is-default-class: {{ .Values.ingressClass.isDefaultClass | quote }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + name: {{ template "traefik.fullname" . }} +spec: + controller: traefik.io/ingress-controller +{{- end }} diff --git a/stable/traefik/6.3.1/templates/poddisruptionbudget.yaml b/stable/traefik/6.3.1/templates/poddisruptionbudget.yaml new file mode 100644 index 00000000000..9893e521759 --- /dev/null +++ b/stable/traefik/6.3.1/templates/poddisruptionbudget.yaml @@ -0,0 +1,22 @@ +{{- if .Values.podDisruptionBudget.enabled -}} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +spec: + selector: + matchLabels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- if .Values.podDisruptionBudget.minAvailable }} + minAvailable: {{ .Values.podDisruptionBudget.minAvailable | int }} + {{- end }} + {{- if .Values.podDisruptionBudget.maxUnavailable }} + maxUnavailable: {{ .Values.podDisruptionBudget.maxUnavailable | int }} + {{- end }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/rbac/clusterrole.yaml b/stable/traefik/6.3.1/templates/rbac/clusterrole.yaml new file mode 100644 index 00000000000..2c63e006414 --- /dev/null +++ b/stable/traefik/6.3.1/templates/rbac/clusterrole.yaml @@ -0,0 +1,112 @@ +{{- if and .Values.rbac.enabled (not .Values.rbac.namespaced) -}} +kind: ClusterRole +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +rules: + - apiGroups: + - "" + resources: + - services + - endpoints + - secrets + verbs: + - get + - list + - watch + - apiGroups: + - extensions + - networking.k8s.io + resources: + - ingresses + - ingressclasses + verbs: + - get + - list + - watch + - apiGroups: + - extensions + - networking.k8s.io + resources: + - ingresses/status + verbs: + - update + - apiGroups: + - traefik.containo.us + resources: + - ingressroutes + - ingressroutetcps + - ingressrouteudps + - middlewares + - tlsoptions + - tlsstores + - traefikservices + - serverstransports + verbs: + - get + - list + - watch +{{- if .Values.podSecurityPolicy.enabled }} + - apiGroups: + - policy + resourceNames: + - {{ template "traefik.fullname" . }} + resources: + - podsecuritypolicies + verbs: + - use +{{- end -}} +{{- if .Values.experimental.kubernetesGateway.enabled }} + - apiGroups: + - networking.x-k8s.io + resources: + - gatewayclasses + - gatewayclasses/status + - gateways + verbs: + - get + - list + - watch + - apiGroups: + - networking.x-k8s.io + resources: + - gatewayclasses/status + verbs: + - get + - patch + - update + - apiGroups: + - networking.x-k8s.io + resources: + - gateways/status + verbs: + - get + - patch + - update + - apiGroups: + - networking.x-k8s.io + resources: + - httproutes + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: + - networking.x-k8s.io + resources: + - httproutes/status + verbs: + - get + - patch + - update +{{- end -}} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/rbac/clusterrolebinding.yaml b/stable/traefik/6.3.1/templates/rbac/clusterrolebinding.yaml new file mode 100644 index 00000000000..509e92ff2b7 --- /dev/null +++ b/stable/traefik/6.3.1/templates/rbac/clusterrolebinding.yaml @@ -0,0 +1,19 @@ +{{- if and .Values.rbac.enabled (not .Values.rbac.namespaced) }} +kind: ClusterRoleBinding +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ template "traefik.fullname" . }} +subjects: + - kind: ServiceAccount + name: {{ include "traefik.serviceAccountName" . }} + namespace: {{ .Release.Namespace }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/rbac/podsecuritypolicy.yaml b/stable/traefik/6.3.1/templates/rbac/podsecuritypolicy.yaml new file mode 100644 index 00000000000..66bc1458d55 --- /dev/null +++ b/stable/traefik/6.3.1/templates/rbac/podsecuritypolicy.yaml @@ -0,0 +1,68 @@ +{{- if .Values.podSecurityPolicy.enabled }} +--- +apiVersion: policy/v1beta1 +kind: PodSecurityPolicy +metadata: + annotations: + seccomp.security.alpha.kubernetes.io/allowedProfileNames: runtime/default + seccomp.security.alpha.kubernetes.io/defaultProfileName: runtime/default + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +spec: + privileged: false + allowPrivilegeEscalation: false + requiredDropCapabilities: + - ALL +{{- if not .Values.securityContext.runAsNonRoot }} + allowedCapabilities: + - NET_BIND_SERVICE +{{- end }} + hostNetwork: {{ .Values.hostNetwork }} + hostIPC: false + hostPID: false + fsGroup: +{{- if .Values.securityContext.runAsNonRoot }} + ranges: + - max: 65535 + min: 1 + rule: MustRunAs +{{- else }} + rule: RunAsAny +{{- end }} +{{- if .Values.hostNetwork }} + hostPorts: + - max: 65535 + min: 1 +{{- end }} + readOnlyRootFilesystem: true + runAsUser: +{{- if .Values.securityContext.runAsNonRoot }} + rule: MustRunAsNonRoot +{{- else }} + rule: RunAsAny +{{- end }} + seLinux: + rule: RunAsAny + supplementalGroups: +{{- if .Values.securityContext.runAsNonRoot }} + ranges: + - max: 65535 + min: 1 + rule: MustRunAs +{{- else }} + rule: RunAsAny +{{- end }} + volumes: + - configMap + - downwardAPI + - secret + - emptyDir + - projected +{{- if .Values.persistence.enabled }} + - persistentVolumeClaim +{{- end -}} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/rbac/role.yaml b/stable/traefik/6.3.1/templates/rbac/role.yaml new file mode 100644 index 00000000000..6c763065d6f --- /dev/null +++ b/stable/traefik/6.3.1/templates/rbac/role.yaml @@ -0,0 +1,61 @@ +{{- if and .Values.rbac.enabled .Values.rbac.namespaced }} +kind: Role +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +rules: + - apiGroups: + - "" + resources: + - services + - endpoints + - secrets + verbs: + - get + - list + - watch + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - get + - list + - watch + - apiGroups: + - extensions + resources: + - ingresses/status + verbs: + - update + - apiGroups: + - traefik.containo.us + resources: + - ingressroutes + - ingressroutetcps + - ingressrouteudps + - middlewares + - tlsoptions + - tlsstores + - traefikservices + - serverstransports + verbs: + - get + - list + - watch +{{- if .Values.podSecurityPolicy.enabled }} + - apiGroups: + - extensions + resourceNames: + - {{ template "traefik.fullname" . }} + resources: + - podsecuritypolicies + verbs: + - use +{{- end -}} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/rbac/rolebinding.yaml b/stable/traefik/6.3.1/templates/rbac/rolebinding.yaml new file mode 100644 index 00000000000..10416401867 --- /dev/null +++ b/stable/traefik/6.3.1/templates/rbac/rolebinding.yaml @@ -0,0 +1,19 @@ +{{- if and .Values.rbac.enabled .Values.rbac.namespaced }} +kind: RoleBinding +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: {{ template "traefik.fullname" . }} +subjects: + - kind: ServiceAccount + name: {{ include "traefik.serviceAccountName" . }} + namespace: {{ .Release.Namespace }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/rbac/serviceaccount.yaml b/stable/traefik/6.3.1/templates/rbac/serviceaccount.yaml new file mode 100644 index 00000000000..bcc941eec95 --- /dev/null +++ b/stable/traefik/6.3.1/templates/rbac/serviceaccount.yaml @@ -0,0 +1,15 @@ +{{- if not .Values.serviceAccount.name -}} +kind: ServiceAccount +apiVersion: v1 +metadata: + name: {{ include "traefik.serviceAccountName" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + annotations: + {{- with .Values.serviceAccountAnnotations }} + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/service.yaml b/stable/traefik/6.3.1/templates/service.yaml new file mode 100644 index 00000000000..745bb9102d7 --- /dev/null +++ b/stable/traefik/6.3.1/templates/service.yaml @@ -0,0 +1,114 @@ +{{- if .Values.service.enabled -}} + +{{ $tcpPorts := dict }} +{{ $udpPorts := dict }} +{{- range $name, $config := .Values.ports }} + {{- if eq (toString $config.protocol) "UDP" }} + {{ $_ := set $udpPorts $name $config }} + {{- else }} + {{ $_ := set $tcpPorts $name $config }} + {{- end }} +{{- end }} + +apiVersion: v1 +kind: List +metadata: + name: {{ template "traefik.fullname" . }} +items: +{{- if $tcpPorts }} + - apiVersion: v1 + kind: Service + metadata: + name: {{ template "traefik.fullname" . }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- with .Values.service.labels }} + {{- toYaml . | nindent 8 }} + {{- end }} + annotations: + {{- with .Values.service.annotations }} + {{- toYaml . | nindent 8 }} + {{- end }} + spec: + {{- $type := default "LoadBalancer" .Values.service.type }} + type: {{ $type }} + {{- with .Values.service.spec }} + {{- toYaml . | nindent 6 }} + {{- end }} + selector: + app.kubernetes.io/name: {{ template "traefik.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + ports: + {{- range $name, $config := $tcpPorts }} + {{- if $config.expose }} + - port: {{ default $config.port $config.exposedPort }} + name: {{ $name }} + targetPort: {{ $name | quote }} + protocol: {{ default "TCP" $config.protocol | quote }} + {{- if $config.nodePort }} + nodePort: {{ $config.nodePort }} + {{- end }} + {{- end }} + {{- end }} + {{- if eq $type "LoadBalancer" }} + {{- with .Values.service.loadBalancerSourceRanges }} + loadBalancerSourceRanges: + {{- toYaml . | nindent 6 }} + {{- end -}} + {{- end -}} + {{- with .Values.service.externalIPs }} + externalIPs: + {{- toYaml . | nindent 6 }} + {{- end -}} +{{- end }} + +{{- if $udpPorts }} + - apiVersion: v1 + kind: Service + metadata: + name: {{ template "traefik.fullname" . }}-udp + labels: + app.kubernetes.io/name: {{ template "traefik.name" . }} + helm.sh/chart: {{ template "traefik.chart" . }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + app.kubernetes.io/instance: {{ .Release.Name }} + annotations: + {{- with .Values.service.annotations }} + {{- toYaml . | nindent 8 }} + {{- end }} + spec: + {{- $type := default "LoadBalancer" .Values.service.type }} + type: {{ $type }} + {{- with .Values.service.spec }} + {{- toYaml . | nindent 6 }} + {{- end }} + selector: + app.kubernetes.io/name: {{ template "traefik.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + ports: + {{- range $name, $config := $udpPorts }} + {{- if $config.expose }} + - port: {{ default $config.port $config.exposedPort }} + name: {{ $name }} + targetPort: {{ $name | quote }} + protocol: {{ default "UDP" $config.protocol | quote }} + {{- if $config.nodePort }} + nodePort: {{ $config.nodePort }} + {{- end }} + {{- end }} + {{- end }} + {{- if eq $type "LoadBalancer" }} + {{- with .Values.service.loadBalancerSourceRanges }} + loadBalancerSourceRanges: + {{- toYaml . | nindent 6 }} + {{- end -}} + {{- end -}} + {{- with .Values.service.externalIPs }} + externalIPs: + {{- toYaml . | nindent 6 }} + {{- end -}} +{{- end }} +{{- end -}} diff --git a/stable/traefik/6.3.1/templates/tlsoption.yaml b/stable/traefik/6.3.1/templates/tlsoption.yaml new file mode 100644 index 00000000000..ec46e8bbc94 --- /dev/null +++ b/stable/traefik/6.3.1/templates/tlsoption.yaml @@ -0,0 +1,14 @@ +{{- range $name, $config := .Values.tlsOptions }} +apiVersion: traefik.containo.us/v1alpha1 +kind: TLSOption +metadata: + name: {{ $name }} + labels: + app.kubernetes.io/name: {{ template "traefik.name" $ }} + helm.sh/chart: {{ template "traefik.chart" $ }} + app.kubernetes.io/managed-by: {{ $.Release.Service }} + app.kubernetes.io/instance: {{ $.Release.Name }} +spec: + {{- toYaml $config | nindent 2 }} +--- +{{- end -}} diff --git a/stable/traefik/6.3.1/test_values.yaml b/stable/traefik/6.3.1/test_values.yaml new file mode 100644 index 00000000000..74e6d4760b6 --- /dev/null +++ b/stable/traefik/6.3.1/test_values.yaml @@ -0,0 +1,426 @@ +# Default values for Traefik +image: + name: traefik + # defaults to appVersion + tag: v2.4 + pullPolicy: IfNotPresent + +# +# Configure the deployment +# +deployment: + enabled: true + # Can be either Deployment or DaemonSet + kind: Deployment + # Number of pods of the deployment (only applies when kind == Deployment) + replicas: 1 + # Additional deployment annotations (e.g. for jaeger-operator sidecar injection) + annotations: {} + # Additional deployment labels (e.g. for filtering deployment by custom labels) + labels: {} + # Additional pod annotations (e.g. for mesh injection or prometheus scraping) + podAnnotations: {} + # Additional Pod labels (e.g. for filtering Pod by custom labels) + podLabels: {} + # Additional containers (e.g. for metric offloading sidecars) + additionalContainers: [] + # https://docs.datadoghq.com/developers/dogstatsd/unix_socket/?tab=host + # - name: socat-proxy + # image: alpine/socat:1.0.5 + # args: ["-s", "-u", "udp-recv:8125", "unix-sendto:/socket/socket"] + # volumeMounts: + # - name: dsdsocket + # mountPath: /socket + # Additional volumes available for use with initContainers and additionalContainers + additionalVolumes: [] + # - name: dsdsocket + # hostPath: + # path: /var/run/statsd-exporter + # Additional initContainers (e.g. for setting file permission as shown below) + initContainers: [] + # The "volume-permissions" init container is required if you run into permission issues. + # Related issue: https://github.com/traefik/traefik/issues/6972 + # - name: volume-permissions + # image: busybox:1.31.1 + # command: ["sh", "-c", "chmod -Rv 600 /data/*"] + # volumeMounts: + # - name: data + # mountPath: /data + # Custom pod DNS policy. Apply if `hostNetwork: true` + # dnsPolicy: ClusterFirstWithHostNet + # Additional imagePullSecrets + imagePullSecrets: [] + # - name: myRegistryKeySecretName + +# Pod disruption budget +podDisruptionBudget: + enabled: false + # maxUnavailable: 1 + # minAvailable: 0 + +# Use ingressClass. Ignored if Traefik version < 2.3 / kubernetes < 1.18.x +ingressClass: + # true is not unit-testable yet, pending https://github.com/rancher/helm-unittest/pull/12 + enabled: false + isDefaultClass: false + # Use to force a networking.k8s.io API Version for certain CI/CD applications. E.g. "v1beta1" + fallbackApiVersion: + +# Activate Pilot integration +pilot: + enabled: false + token: "" + # Toggle Pilot Dashboard + # dashboard: false + +# Enable experimental features +experimental: + plugins: + enabled: false + kubernetesGateway: + enabled: false + appLabelSelector: "traefik" + certificates: [] + # - group: "core" + # kind: "Secret" + # name: "mysecret" + +# Create an IngressRoute for the dashboard +ingressRoute: + dashboard: + enabled: true + # Additional ingressRoute annotations (e.g. for kubernetes.io/ingress.class) + annotations: {} + # Additional ingressRoute labels (e.g. for filtering IngressRoute by custom labels) + labels: {} + +rollingUpdate: + maxUnavailable: 1 + maxSurge: 1 + + +# +# Configure providers +# +providers: + kubernetesCRD: + enabled: true + namespaces: [] + # - "default" + kubernetesIngress: + enabled: true + # labelSelector: environment=production,method=traefik + namespaces: [] + # - "default" + # IP used for Kubernetes Ingress endpoints + publishedService: + enabled: false + # Published Kubernetes Service to copy status from. Format: namespace/servicename + # By default this Traefik service + # pathOverride: "" + +# +# Add volumes to the traefik pod. The volume name will be passed to tpl. +# This can be used to mount a cert pair or a configmap that holds a config.toml file. +# After the volume has been mounted, add the configs into traefik by using the `additionalArguments` list below, eg: +# additionalArguments: +# - "--providers.file.filename=/config/dynamic.toml" +# - "--ping" +# - "--ping.entrypoint=web" +volumes: [] +# - name: public-cert +# mountPath: "/certs" +# type: secret +# - name: '{{ printf "%s-configs" .Release.Name }}' +# mountPath: "/config" +# type: configMap + +# Additional volumeMounts to add to the Traefik container +additionalVolumeMounts: [] + # For instance when using a logshipper for access logs + # - name: traefik-logs + # mountPath: /var/log/traefik + +# Logs +# https://docs.traefik.io/observability/logs/ +logs: + # Traefik logs concern everything that happens to Traefik itself (startup, configuration, events, shutdown, and so on). + general: + # By default, the logs use a text format (common), but you can + # also ask for the json format in the format option + # format: json + # By default, the level is set to ERROR. Alternative logging levels are DEBUG, PANIC, FATAL, ERROR, WARN, and INFO. + level: INFO + access: + # To enable access logs + enabled: false + # By default, logs are written using the Common Log Format (CLF). + # To write logs in JSON, use json in the format option. + # If the given format is unsupported, the default (CLF) is used instead. + # format: json + # To write the logs in an asynchronous fashion, specify a bufferingSize option. + # This option represents the number of log lines Traefik will keep in memory before writing + # them to the selected output. In some cases, this option can greatly help performances. + # bufferingSize: 100 + # Filtering https://docs.traefik.io/observability/access-logs/#filtering + filters: {} + # statuscodes: "200,300-302" + # retryattempts: true + # minduration: 10ms + # Fields + # https://docs.traefik.io/observability/access-logs/#limiting-the-fieldsincluding-headers + fields: + general: + defaultmode: keep + names: {} + # Examples: + # ClientUsername: drop + headers: + defaultmode: drop + names: {} + # Examples: + # User-Agent: redact + # Authorization: drop + # Content-Type: keep + +globalArguments: + - "--global.checknewversion" + +# +# Configure Traefik static configuration +# Additional arguments to be passed at Traefik's binary +# All available options available on https://docs.traefik.io/reference/static-configuration/cli/ +## Use curly braces to pass values: `helm install --set="additionalArguments={--providers.kubernetesingress.ingressclass=traefik-internal,--log.level=DEBUG}"` +additionalArguments: + - "--metrics.prometheus" + - "--ping" + - "--serverstransport.insecureskipverify=true" + +# Environment variables to be passed to Traefik's binary +env: [] +# - name: SOME_VAR +# value: some-var-value +# - name: SOME_VAR_FROM_CONFIG_MAP +# valueFrom: +# configMapRef: +# name: configmap-name +# key: config-key +# - name: SOME_SECRET +# valueFrom: +# secretKeyRef: +# name: secret-name +# key: secret-key + +envFrom: [] +# - configMapRef: +# name: config-map-name +# - secretRef: +# name: secret-name + +# Configure ports +ports: + # The name of this one can't be changed as it is used for the readiness and + # liveness probes, but you can adjust its config to your liking + traefik: + port: 9000 + # Use hostPort if set. + # hostPort: 9000 + # + # Use hostIP if set. If not set, Kubernetes will default to 0.0.0.0, which + # means it's listening on all your interfaces and all your IPs. You may want + # to set this value if you need traefik to listen on specific interface + # only. + # hostIP: 192.168.100.10 + + # Defines whether the port is exposed if service.type is LoadBalancer or + # NodePort. + # + # You SHOULD NOT expose the traefik port on production deployments. + # If you want to access it from outside of your cluster, + # use `kubectl port-forward` or create a secure ingress + expose: false + # The exposed port for this service + exposedPort: 9000 + # The port protocol (TCP/UDP) + protocol: TCP + web: + port: 9080 + # hostPort: 8000 + expose: true + exposedPort: 80 + # The port protocol (TCP/UDP) + protocol: TCP + # Use nodeport if set. This is useful if you have configured Traefik in a + # LoadBalancer + # nodePort: 32080 + # Port Redirections + # Added in 2.2, you can make permanent redirects via entrypoints. + # https://docs.traefik.io/routing/entrypoints/#redirection + redirectTo: websecure + websecure: + port: 9443 + # hostPort: 8443 + expose: true + exposedPort: 443 + # The port protocol (TCP/UDP) + protocol: TCP + # nodePort: 32443 + # Set TLS at the entrypoint + # https://doc.traefik.io/traefik/routing/entrypoints/#tls + tls: + enabled: true + +# TLS Options are created as TLSOption CRDs +# https://doc.traefik.io/traefik/https/tls/#tls-options +# Example: +tlsOptions: + default: + sniStrict: false + minVersion: VersionTLS12 + curvePreferences: + - CurveP521 + - CurveP384 + cipherSuites: + - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 + - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305 + - TLS_AES_128_GCM_SHA256 + - TLS_AES_256_GCM_SHA384 + - TLS_CHACHA20_POLY1305_SHA256 + +# Options for the main traefik service, where the entrypoints traffic comes +# from. +service: + enabled: true + type: LoadBalancer + # Additional annotations (e.g. for cloud provider specific config) + annotations: {} + # Additional service labels (e.g. for filtering Service by custom labels) + labels: {} + # Additional entries here will be added to the service spec. Cannot contains + # type, selector or ports entries. + spec: {} + # externalTrafficPolicy: Cluster + # loadBalancerIP: "1.2.3.4" + # clusterIP: "2.3.4.5" + loadBalancerSourceRanges: [] + # - 192.168.0.1/32 + # - 172.16.0.0/16 + externalIPs: [] + # - 1.2.3.4 + +## Create HorizontalPodAutoscaler object. +## +autoscaling: + enabled: false +# minReplicas: 1 +# maxReplicas: 10 +# metrics: +# - type: Resource +# resource: +# name: cpu +# targetAverageUtilization: 60 +# - type: Resource +# resource: +# name: memory +# targetAverageUtilization: 60 + +# Enable persistence using Persistent Volume Claims +# ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ +# After the pvc has been mounted, add the configs into traefik by using the `additionalArguments` list below, eg: +# additionalArguments: +# - "--certificatesresolvers.le.acme.storage=/data/acme.json" +# It will persist TLS certificates. +persistence: + enabled: false + name: data + accessMode: ReadWriteOnce + size: 128Mi + path: /data + +# If hostNetwork is true, runs traefik in the host network namespace +# To prevent unschedulabel pods due to port collisions, if hostNetwork=true +# and replicas>1, a pod anti-affinity is recommended and will be set if the +# affinity is left as default. +hostNetwork: false + +# Whether Role Based Access Control objects like roles and rolebindings should be created +rbac: + enabled: true + + # If set to false, installs ClusterRole and ClusterRoleBinding so Traefik can be used across namespaces. + # If set to true, installs namespace-specific Role and RoleBinding and requires provider configuration be set to that same namespace + namespaced: false + +# Enable to create a PodSecurityPolicy and assign it to the Service Account via RoleBinding or ClusterRoleBinding +podSecurityPolicy: + enabled: false + +# The service account the pods will use to interact with the Kubernetes API +serviceAccount: + # If set, an existing service account is used + # If not set, a service account is created automatically using the fullname template + name: "" + +# Additional serviceAccount annotations (e.g. for oidc authentication) +serviceAccountAnnotations: {} + +resources: {} + # requests: + # cpu: "100m" + # memory: "50Mi" + # limits: + # cpu: "300m" + # memory: "150Mi" +affinity: {} +# # This example pod anti-affinity forces the scheduler to put traefik pods +# # on nodes where no other traefik pods are scheduled. +# # It should be used when hostNetwork: true to prevent port conflicts +# podAntiAffinity: +# requiredDuringSchedulingIgnoredDuringExecution: +# - labelSelector: +# matchExpressions: +# - key: app +# operator: In +# values: +# - {{ template "traefik.name" . }} +# topologyKey: failure-domain.beta.kubernetes.io/zone +nodeSelector: {} +tolerations: [] + +# Pods can have priority. +# Priority indicates the importance of a Pod relative to other Pods. +priorityClassName: "" + +# Set the container security context +# To run the container with ports below 1024 this will need to be adjust to run as root +securityContext: + capabilities: + drop: [ALL] + readOnlyRootFilesystem: true + runAsGroup: 65532 + runAsNonRoot: true + runAsUser: 65532 + +podSecurityContext: + fsGroup: 65532 + +## SCALE Middleware Handlers + +middlewares: + basicAuth: [] + # - name: basicauthexample + # users: + # - username: testuser + # password: testpassword + forwardAuth: [] + # - name: forwardAuthexample + # address: https://auth.example.com/ + # authResponseHeaders: + # - X-Secret + # - X-Auth-User + # authRequestHeaders: + # - "Accept" + # - "X-CustomHeader" + # authResponseHeadersRegex: "^X-" + # trustForwardHeader: true diff --git a/stable/traefik/6.3.1/values.yaml b/stable/traefik/6.3.1/values.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/stable/transmission/6.2.0/Chart.lock b/stable/transmission/6.2.0/Chart.lock index 824aac59e0d..343aa3baba8 100644 --- a/stable/transmission/6.2.0/Chart.lock +++ b/stable/transmission/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:40.902033623Z" +generated: "2021-06-30T13:00:36.481604643Z" diff --git a/stable/truecommand/6.2.0/Chart.lock b/stable/truecommand/6.2.0/Chart.lock index 3d319ec77c2..0d77971a206 100644 --- a/stable/truecommand/6.2.0/Chart.lock +++ b/stable/truecommand/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:41.95961162Z" +generated: "2021-06-30T13:00:37.668441228Z" diff --git a/stable/vaultwarden/3.3.0/Chart.lock b/stable/vaultwarden/3.3.0/Chart.lock index db32f20f5fa..f1056068ae6 100644 --- a/stable/vaultwarden/3.3.0/Chart.lock +++ b/stable/vaultwarden/3.3.0/Chart.lock @@ -6,4 +6,4 @@ dependencies: repository: https://charts.bitnami.com/bitnami version: 10.5.0 digest: sha256:bb1b657df8dcf83986b7a76595d50a3eca87a37cce1c64531a81c4f8126db168 -generated: "2021-06-30T12:46:45.462209712Z" +generated: "2021-06-30T13:00:41.495688432Z" diff --git a/stable/zwavejs2mqtt/6.2.0/Chart.lock b/stable/zwavejs2mqtt/6.2.0/Chart.lock index 19d9778eaee..61a5d5583fc 100644 --- a/stable/zwavejs2mqtt/6.2.0/Chart.lock +++ b/stable/zwavejs2mqtt/6.2.0/Chart.lock @@ -3,4 +3,4 @@ dependencies: repository: https://truecharts.org/ version: 6.4.0 digest: sha256:658de1fc8b197f66b33ffeadbeb648ac8a25d29ed59065990b3416def4d1fc24 -generated: "2021-06-30T12:46:49.105562718Z" +generated: "2021-06-30T13:00:45.93985399Z"