Compare commits

...

580 Commits

Author SHA1 Message Date
Bernd Schörgers
5ce3ff0bc1 [multiple] Update library (#135) 2020-11-09 16:36:44 -05:00
Bernd Schörgers
1799d4c057 [common] Add controller labels and annotations (#134) 2020-11-09 15:50:56 -05:00
Bernd Schörgers
9a88e697d2 [multiple] Bump common library version (#133) 2020-11-09 10:11:02 -05:00
Bernd Schörgers
e2bb17f069 [qbittorrent] use common chart (#132) 2020-11-09 09:58:00 -05:00
Bernd Schörgers
55b0fb9c71 [nzbget] use common chart (#131) 2020-11-09 08:19:21 -05:00
Bernd Schörgers
b083c8516c [common] Indenting and fix volume logic (#130) 2020-11-09 07:55:25 -05:00
ᗪєνιη ᗷυнʟ
899a444153 [organizr] use common chart (#129) 2020-11-09 07:53:43 -05:00
ᗪєνιη ᗷυнʟ
ec0aa4fd8c [bazarr] use common chart (#124) 2020-11-09 07:48:15 -05:00
ᗪєνιη ᗷυнʟ
0467981e8c [sabnzbd] use common chart (#125)
* sabnzbd: use common chart

* remove app name in app.env example
2020-11-09 07:22:51 -05:00
ᗪєνιη ᗷυнʟ
e90297be47 [tautulli] use common chart (#127)
* [tautulli] use common chart

* remove app name in app.env example
2020-11-09 07:22:15 -05:00
ᗪєνιη ᗷυнʟ
8c93651a63 [nzbhydra2] use common chart (#128)
* [nzbhydra2] use common chart

* remove app name in app.env example
2020-11-09 07:19:58 -05:00
ᗪєνιη ᗷυнʟ
4566fda5ea [ombi] use common chart (#126)
* ombi: use common chart

* remove app name in app.env example
2020-11-09 07:19:00 -05:00
ᗪєνιη ᗷυнʟ
93774a4ed6 [lidarr] use common chart (#123) 2020-11-08 13:25:59 -05:00
ᗪєνιη ᗷυнʟ
5cfe91e0f3 [sonarr] use common chart (#122) 2020-11-08 13:00:49 -05:00
nolte
aacd8ceac0 [mosquitto] add Prometheus Exporter as Sidecar Container (#118)
Signed-off-by: nolte <nolte07@googlemail.com>

Co-authored-by: nolte <nolte07@googlemail.com>
2020-11-08 12:41:30 -05:00
ᗪєνιη ᗷυнʟ
799111dddb [radarr] use new common chart (#121)
* radarr: use new common chart

* jackett

* radarr fix newline
2020-11-08 12:39:37 -05:00
Bernd Schörgers
2aa2718559 [jackett] Bump library, add ingress test (#117) 2020-11-07 16:40:14 -05:00
Bernd Schörgers
2b158892e3 [common] Add capabilities to determine apiVersion (#116)
* [common] Add capabilities to determine apiVersion

* [common] Add capabilities to determine apiVersion
2020-11-07 08:17:31 -05:00
Bernd Schörgers
45c9f3c39e [jackett] Migrate to common library (#113) 2020-11-06 16:40:53 -05:00
Bernd Schörgers
c7f15f37a2 [common] Fix syntax error (#114) 2020-11-06 16:22:57 -05:00
Bernd Schörgers
6b9650f348 [common] Fix classes logic (#112) 2020-11-06 15:54:25 -05:00
Bernd Schörgers
f36de85c15 [common] Better defaults for service and ingress (#111) 2020-11-06 14:28:01 -05:00
Bernd Schörgers
a3da4245f3 [media-common] Migrate to library chart (#109) 2020-11-06 13:46:50 -05:00
Patrik Boström
bc17f3cc7b [home-assistant] Added metricRelabelings for service monitor (#101)
* Added metricRelabelings for service monitor

* Fixes

* Added end

* Changed chart version to 2.6.0

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-10-28 08:40:20 -04:00
nolte
cce27da342 bump up esphome (#103)
Signed-off-by: nolte <nolte07@googlemail.com>

Co-authored-by: nolte <nolte07@googlemail.com>
Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-10-28 08:32:07 -04:00
Michael Kötter
3a08566dd4 fix stable repo (#104) 2020-10-28 08:12:20 -04:00
Michael Kötter
2282b4113b add extraVolumes & extraVolumeMounts support (#98)
Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-10-26 10:08:00 -04:00
Michael Kötter
714708050a add extraEnv etc., extraVolumes & extraVolumeMounts (#99) 2020-10-26 08:25:07 -04:00
Patrik Boström
f55c117431 [piaware] Added support for BEASTHOST and BEASTPORT (#93)
Signed-off-by: Patrik Boström <patbos@patbos.com>
2020-10-20 11:25:14 -04:00
ᗪєνιη ᗷυнʟ
0470f937bf [zwave2mqtt] Remove the persistent /usr/local/etc/openzwave volume (#90)
* Remove the persistent /usr/local/etc/openzwave volume

* Bump chart version

* bump to major version

* add upgrade instructions
2020-10-14 10:37:26 -04:00
nolte
930df4c36b [home-assistant] pump up esphome chart version (#89)
Co-authored-by: nolte <nolte07@googlemail.com>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2020-10-13 16:04:55 -04:00
Nicholas St. Germain
a1a0fd4c99 Merge pull request #85 from CuBiC3D/master
[media-common] Bump charts depending on media-common
2020-10-12 19:36:02 -05:00
Nicholas St. Germain
0487aa49fb Merge branch 'master' into master 2020-10-12 19:11:13 -05:00
Jeff Billimek
490dc82894 [multiple] Bump various chart image versions (#88)
* Bump various chart image versions

* friagte: 0.6.0
* home-assistant: 0.116.1
* plex: 1.20.2.3402-0fec14d92
* teslamate: 1.20.0

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fix teslamate postgres dependency chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* remove global reference

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-10-09 13:16:16 -04:00
CuBiC
54efffaf52 Merge branch 'master' into master 2020-10-09 01:57:32 +02:00
Hugo Fonseca
8be3edfc59 [Adguard-home] Allow to mount secret with certs so we can set the tls … (#87)
* Adguard-home: Allow to mount secret with certs so we can set the tls configs with these

* adguard-home bump to 2.2.0
2020-10-08 15:38:10 -04:00
CuBiC
20047cade1 Merge branch 'master' into master 2020-10-07 19:38:08 +02:00
Denis
eb2f4bac88 [uptimerobot-prometheus] Support annotations in Service (#86)
* bump chart version

* [uptimerobot-prometheus] Support annotations in Service (#1)

* add annotations to service

* add example annotations to values.yaml

* fix trailing spaces
2020-10-07 13:26:13 -04:00
Waldemar Faist
b4dda5a1ad Bump charts depending on media-common
Signed-off-by: Waldemar Faist <cubic@coldice.net>
2020-10-07 17:54:01 +02:00
Ryan Holt
7f1f2b9150 Merge pull request #84 from CuBiC3D/master
[media-common] Fixes HELM error on extraIngresses
2020-10-07 11:25:44 -04:00
Waldemar Faist
4bde4fa33f Fixes HELM error on extraIngresses
Signed-off-by: Waldemar Faist <cubic@coldice.net>
2020-10-07 14:01:34 +02:00
Piotr Maksymiuk
2e541d77e5 [zigbee2mqtt] Chart version bump (#81) 2020-10-04 14:19:18 -04:00
Piotr Maksymiuk
e60063a352 [zigbee2mqtt] Version 1.15, new UI (#80) 2020-10-04 13:23:07 -04:00
Ryan Holt
e19708e37d [adguard-home] fix svc path (#79)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-10-02 16:44:11 -04:00
Ryan Holt
3258774c07 [adguard-home] enable additional service options (#77) 2020-10-02 16:11:05 -04:00
Bernd Schörgers
ef5f8b3451 [intel-gpu-plugin] New chart (#76) 2020-10-02 08:39:38 -04:00
Richard Cox
c516c4e05d [home-assistant] Adds control over vscode image arguments (#75)
* Added ability to control vscode arguments

Signed-off-by: Richard Cox <cox.richard200@gmail.com>

* Fixed helpers function to handle null and empty string vscode.args value

Signed-off-by: Richard Cox <cox.richard200@gmail.com>

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-09-29 15:45:50 -04:00
nolte
6104d0bc80 update git sync image version, the new version supports multiply architectures like armhf (#72)
Co-authored-by: nolte <nolte07@googlemail.com>
Co-authored-by: Ryan Holt <ryan@ryanholt.net>
2020-09-29 15:38:32 -04:00
Nicholas St. Germain
12752f4018 Merge pull request #69 from k8s-at-home/maint/media-common-semver
[media-common (parents)] Annotations and semver
2020-09-28 21:10:50 -05:00
Ryan Holt
010c3dbf06 Merge branch 'master' into maint/media-common-semver 2020-09-28 16:12:03 -04:00
Ryan Holt
2dba5d9d8e Merge pull request #70 from nolte/feature/esphome-git-sync
[esphome] adding a option for git init container
2020-09-28 16:08:35 -04:00
nolte
1a3f1ad996 using arm supported version
Signed-off-by: nolte <nolte07@googlemail.com>
2020-09-28 19:57:36 +02:00
nolte
f00fef03b6 Adding a option for a git init container.
Signed-off-by: nolte <nolte07@googlemail.com>
2020-09-27 21:39:48 +02:00
Nicholas St. Germain
23dc0d5b14 add maintainer url and artifacthub annotations 2020-09-27 14:05:04 -05:00
Nicholas St. Germain
bae95225cf use minor version matching instead of micro version matching 2020-09-27 13:52:08 -05:00
Nicholas St. Germain
d90ddd9e2b Merge pull request #68 from k8s-at-home/bug/media-common
[media-common] fix nested kube check and update for kube version 1.19 check
2020-09-27 12:58:59 -05:00
Nicholas St. Germain
c058d4adc0 Merge branch 'master' into bug/media-common 2020-09-26 22:44:07 -05:00
Nicholas St. Germain
b2f1661912 Merge pull request #67 from totallyGreg/master
[plex] Fix data claimName and bump chart version
2020-09-26 22:43:49 -05:00
Nicholas St. Germain
7e56103498 Update Chart.yaml 2020-09-26 22:42:02 -05:00
Nicholas St. Germain
d3755f1a04 Merge branch 'master' into master 2020-09-26 22:37:33 -05:00
Nicholas St. Germain
b237726244 Merge branch 'master' into bug/media-common 2020-09-26 22:36:41 -05:00
Nicholas St. Germain
90a691aea0 Merge pull request #66 from dcplaya/media-common
[media-common] Add initContainers
2020-09-26 22:36:23 -05:00
Drew
3ee806f563 [media-common] Wrap in conditional statement
Had a feeling I needed this!
2020-09-26 18:36:54 -07:00
Nicholas St. Germain
b8ae055561 fix nested kube check and update for kube version 1.19 check 2020-09-26 19:34:30 -05:00
J. Greg Williams
8c4f2de8c4 Fix data claimName and bump chart version
Signed-off-by: J. Greg Williams <totallyGreg@gmail.com>
2020-09-26 14:25:22 -04:00
Drew
374b098436 [media-common] Fix version 2020-09-25 23:58:35 -07:00
Drew
e63dbd08d1 [media-common] Forgot this
Not sure if this is why the lint is angry but lets give her a try
2020-09-25 23:50:05 -07:00
Drew
2c15d6617c [media-common] Add initContainers
I think this is all thats needed to get this working
2020-09-25 23:33:12 -07:00
Nicholas St. Germain
aca509001d Merge pull request #63 from bjw-s/qbittorrent
[qbittorrent] Migrate to media-common
2020-09-26 01:15:56 -05:00
Nicholas St. Germain
053d99b0fe Merge branch 'master' into qbittorrent 2020-09-26 01:10:40 -05:00
Nicholas St. Germain
cf9a32053d Merge pull request #65 from mcavoyk/fix/tcp-probe
[traefik-forward-auth] Fix default probe configuration
2020-09-25 23:33:35 -05:00
Kellin McAvoy
d59192d04c fix: default probe configuration 2020-09-25 23:12:17 -05:00
bjws
47c37d6ad8 [qbittorrent] Fix env strings 2020-09-24 13:31:52 +02:00
bjws
571372c4c7 [qbittorrent] No longer require additionalports 2020-09-24 13:08:29 +02:00
bjws
e3e42eea31 [qbittorrent] Migrate to media-common 2020-09-24 10:56:51 +02:00
ᗪєνιη ᗷυнʟ
eaf3b47fec [home-assistant] Add bitnami influxdb chart as optional dependency (#61)
* add influxdb to HA chart

* bump chart version
2020-09-23 08:22:10 -04:00
Carlos Ravelo
8e8e8afd50 [home-assistant] Added the ability to specify subPaths (#53)
* Added the ability to specify subPaths

I mount all my configs into a volume and keep each app under subPaths. By adding the ability of specifying a subpath here I can set hass to store its settings on its own folder.

thanks

* Update Chart.yaml

Version bumped

* Update deployment.yaml

Fixed a typo, the here the config sub path is for appdaemon and not vscode

* Update README.md

Added the new variables to the table

* Update README.md

Removed the git configSubPath because is the same as configSubPath. Same mount definition as the hass config. Also moved the configSubPath setting under persistence which makes more sense

* Update deployment.yaml

Changed configSubPath to be under persistence. Unified the git.configSubPath with the persistence one as they are the same.

* Update values.yaml

Added configSubPath to the values.yaml with a comment.

* Update Chart.yaml

Version bump

* Update values.yaml

trailing space... come on github editor you failed me

* Update values.yaml

Added the subpath setting under appDaemon

* Update values.yaml

trailing spaces... github editor needs an update

* Update values.yaml

grrr trailing spaces

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-09-22 21:46:37 -04:00
Bernd Schörgers
1ec31ad877 [homebridge] metadata updates (#60) 2020-09-22 10:32:26 -04:00
Bernd Schörgers
628e2f6842 [homebridge] New chart (#59)
* [homebridge] New chart

* [homebridge] Additional variables in README

* [homebridge] Set default service type to ClusterIP

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-09-22 08:56:43 -04:00
Gallardo994
85c7673e31 [statping] Allow annotations in service (#58)
* Statping: allow annotations in service

* Bump chart version to 1.0.1

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-09-22 08:12:04 -04:00
Bernd Schörgers
53ca0dfafd [media-common] Add tests, bump version (#57) 2020-09-22 08:07:16 -04:00
Dan Webb
ade40a1e9d [home-assistant] Bump homeassistant to 0.115.2 (#55)
Signed-off-by: Dan Webb <dan.webb@damacus.io>

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-09-21 15:13:32 -04:00
Bernd Schörgers
bc2742e655 [media-common-openvpn] Fix auth syntax, indenting (#56) 2020-09-21 14:57:55 -04:00
Feliksas The Lion
fb1c653533 [node-red] Added serviceAccountName to pod spec (#54)
* Added option to specify ServiceAccount (needed to associate a PodSecurityPolicy)

* Bumped chart version, added variable to README

* Bumped version to 3.1.0, as per request
2020-09-21 09:55:26 -04:00
Bernd Schörgers
9e284da7a6 [jackett] Migrate to media-common (#50)
* [jackett] Migrate to media-common

* [jackett] Rename alias

* [jackett] Process review comments
2020-09-21 09:36:29 -04:00
Bernd Schörgers
6929543b6f [nzbget] Migrate to media-common (#49)
* [nzbget] Migrate to media-common

* [nzbget] Migrate to media-common

* [nzbget] Fix indenting in values

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-09-19 09:03:23 -04:00
Bernd Schörgers
979349b96f [prometheus-nut-exporter] Fix selector (#52)
* [prometheus-nut-exporter] Fix selector

* [prometheus-nut-exporter] Add tests

* Remove tests because no serviceMonitor in pipeline
2020-09-15 11:25:35 -04:00
Bernd Schörgers
521d473cc0 [prometheus-nut-exporter] New chart (#51) 2020-09-15 08:28:32 -04:00
Ryan Holt
00f3ce5523 Merge pull request #48 from k8s-at-home/new/traefik-forward-auth
[traefik-forward-auth] New Chart
2020-09-13 20:39:15 -04:00
Nicholas St. Germain
f7e980ab9c Merge branch 'master' into new/traefik-forward-auth 2020-09-13 12:20:04 -05:00
Nicholas St. Germain
a037936b3e [statping] New Chart (#36)
Co-authored-by: Devin Buhl <onedr0p@users.noreply.github.com>
2020-09-13 08:09:14 -04:00
Nicholas St. Germain
63b87146a3 Merge pull request #45 from bjw-s/media-common
[media-common] Add openvpn add-on
2020-09-13 06:05:55 -05:00
bjws
a5b55b33e4 Fix ct install 2020-09-13 12:57:06 +02:00
Nicholas St. Germain
2eedb285e8 add artifacthub badge 2020-09-13 05:08:51 -05:00
Nicholas St. Germain
54d5f5aaeb fix readme up with templating 2020-09-13 04:21:06 -05:00
bjws
f8babcb5a2 Process review comments 2020-09-13 09:34:47 +02:00
Nicholas St. Germain
f15926425f add traefik-forward-auth 2020-09-13 00:57:28 -05:00
Nicholas St. Germain
b6ec5f8e71 Merge branch 'master' into media-common 2020-09-13 00:13:37 -05:00
Nicholas St. Germain
8158841f31 Merge pull request #46 from bjw-s/media-common-openvpn
[media-common-openvpn] Initial version
2020-09-13 00:10:19 -05:00
Nicholas St. Germain
ff58303989 Merge branch 'master' into media-common-openvpn 2020-09-13 00:08:55 -05:00
Ryan Holt
614f2bd25f Merge pull request #47 from ishioni/mosquitto
[mosquitto] Add chart
2020-09-11 17:11:44 -04:00
Piotr Maksymiuk
ca2c348e6d fix maintainer 2020-09-11 22:46:15 +02:00
Ryan Holt
5bff2ae5ed Add new line 2020-09-11 08:18:25 -04:00
bjws
1bd47c326a [media-common-openvpn] Exclude from ct install 2020-09-11 13:52:11 +02:00
Piotr Maksymiuk
7d06c3d5e3 Add mosquitto chart 2020-09-11 13:46:25 +02:00
bjws
451d0510c2 [media-common] Add openvpn add-on 2020-09-11 13:32:55 +02:00
bjws
cd06a6fb61 [media-common-openvpn] Initial version 2020-09-11 13:24:45 +02:00
Bernd Schörgers
1eb548d382 Add pre-commit support (#42) 2020-09-09 08:00:50 -04:00
Bernd Schörgers
befa7553fa [home-assistant] Improve git-sync script, add git-crypt support (#40)
* Improve git-sync script, add git-crypt support

* Remove old comment
2020-09-07 08:11:31 -04:00
Jeff Billimek
b629ecc876 Merge pull request #34 from k8s-at-home/media-common
Multiple Chart Replacement
2020-09-06 18:18:06 -04:00
Nicholas St. Germain
2676dbded2 quote checks [skip install] [skip lint] 2020-09-06 17:15:41 -05:00
Nicholas St. Germain
7e92803f87 space negative operator [skip install] [skip lint] 2020-09-06 17:14:25 -05:00
Nicholas St. Germain
10cfeb8bd1 fix copy/paste on readmes, standardize readme lines to approx 120 char per line, and allow commit messages to skip linting. [skip install] [skip lint] 2020-09-06 17:10:34 -05:00
Nicholas St. Germain
4f99bc67fb update readmes to original verbosity and address in separate pr 2020-09-06 16:22:54 -05:00
Nicholas St. Germain
6d5c992852 switch organization back to linuxserver until itscontained supports multiarch 2020-09-06 15:40:16 -05:00
Nicholas St. Germain
75fd9f4e6d add back icons sourced from project owner repos 2020-09-06 15:34:41 -05:00
Nicholas St. Germain
da9bea90b3 fix descriptions to projects taglines 2020-09-06 15:23:15 -05:00
Nicholas St. Germain
3b06c431b0 add tag. .Chart.appVersion cannot be passed to dependency until https://github.com/helm/helm/pull/6876 is merged 2020-09-06 01:08:47 -05:00
Nicholas St. Germain
b899548da9 use ls version for now 2020-09-05 23:56:45 -05:00
Nicholas St. Germain
74845ca08e Merge remote-tracking branch 'origin/media-common' into media-common 2020-09-05 22:36:14 -05:00
Nicholas St. Germain
3a40f65b46 version bump to appease chart releaser 2020-09-05 22:36:08 -05:00
Nicholas St. Germain
43392e1e7a Merge branch 'master' into media-common 2020-09-05 22:30:50 -05:00
Nicholas St. Germain
d3406d1f39 add owners and readmes 2020-09-05 22:28:34 -05:00
Nicholas St. Germain
db24d009cc add readme for media-common 2020-09-05 22:17:16 -05:00
Nicholas St. Germain
b94814d3d7 move the rest and replace 2020-09-05 21:58:48 -05:00
Nicholas St. Germain
3070528d2f replace radarr 2020-09-05 21:45:52 -05:00
Ryan Holt
de73201b2b Merge pull request #33 from k8s-at-home/media-common
[media-common] New Chart
2020-09-05 21:38:50 -04:00
Nicholas St. Germain
ba4e6b978c Merge remote-tracking branch 'origin/media-common' into media-common 2020-09-05 20:32:36 -05:00
Nicholas St. Germain
48df925051 stupid line 2020-09-05 20:32:31 -05:00
Ryan Holt
2ecc70f1df newline 2020-09-05 21:31:10 -04:00
Nicholas St. Germain
5c35aa1a1d Merge remote-tracking branch 'origin/media-common' into media-common 2020-09-05 20:31:00 -05:00
Nicholas St. Germain
12853f3b9a add configpath 2020-09-05 20:30:55 -05:00
Ryan Holt
31959e5e37 newline 2020-09-05 21:30:32 -04:00
Ryan Holt
a75a6cef77 newline 2020-09-05 21:30:08 -04:00
Ryan Holt
ac68205d8b newline 2020-09-05 21:29:27 -04:00
Ryan Holt
66d5bd7193 newline 2020-09-05 21:29:05 -04:00
Ryan Holt
c40bdfeff7 newline 2020-09-05 21:28:48 -04:00
Ryan Holt
04478fd52f newline 2020-09-05 21:28:34 -04:00
Ryan Holt
ab4fd1b1e0 newline 2020-09-05 21:28:19 -04:00
Ryan Holt
aec35fe08f newline 2020-09-05 21:28:02 -04:00
Ryan Holt
16828ba415 newline 2020-09-05 21:27:49 -04:00
Ryan Holt
2a3f676426 newline 2020-09-05 21:27:32 -04:00
Ryan Holt
1b1898809b newline 2020-09-05 21:27:11 -04:00
Ryan Holt
1dff5670d8 new line 2020-09-05 21:26:56 -04:00
Ryan Holt
e5b78c7314 added newline 2020-09-05 21:26:02 -04:00
Ryan Holt
c5b81a263f added newline 2020-09-05 21:25:45 -04:00
Ryan Holt
e7e4665389 added newline 2020-09-05 21:25:24 -04:00
Ryan Holt
990ba59dfa added newline 2020-09-05 21:25:07 -04:00
Ryan Holt
0ed3ecbb48 added newline 2020-09-05 21:24:42 -04:00
Ryan Holt
480fa5a7d3 add newline 2020-09-05 21:24:20 -04:00
Nicholas St. Germain
1f6050759b fix configpath, volumemount, and helpers 2020-09-05 20:12:50 -05:00
Nicholas St. Germain
0f37c8776d Merge branch 'master' into media-common 2020-09-05 19:59:54 -05:00
Nicholas St. Germain
5451ce26ab ... 2020-09-05 19:50:27 -05:00
Nicholas St. Germain
107e53d3b7 add extra ingress option for apis and test ct-values.yaml 2020-09-05 19:49:12 -05:00
Jeff Billimek
f4855955cf Merge pull request #32 from k8s-at-home/unifi
[unifi] adding unifi chart
2020-09-05 11:20:11 -04:00
Jeff Billimek
a5694ab9d9 Merge branch 'master' into unifi 2020-09-05 11:13:11 -04:00
Thomas John Wesolowski
2508a42660 Add dns options to values.yaml (#30)
Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>
2020-09-05 11:12:14 -04:00
Ryan Holt
cf4c0ba997 added newline to end of file 2020-09-05 11:06:08 -04:00
Nicholas St. Germain
5705371a35 fix last portselector 2020-09-05 04:36:30 -05:00
Nicholas St. Germain
76c5160e37 back to application or templates arent rendered 2020-09-05 04:25:20 -05:00
Nicholas St. Germain
a26921bba5 add tautulli 2020-09-05 03:38:33 -05:00
Nicholas St. Germain
c67e3df333 add organizr and ombi 2020-09-05 03:31:43 -05:00
Nicholas St. Germain
97f18a033c cleanup 2020-09-05 03:21:49 -05:00
Nicholas St. Germain
22017632bc test 2020-09-05 03:20:13 -05:00
Nicholas St. Germain
c991d11bce fix gitignore 2020-09-05 01:14:28 -05:00
Nicholas St. Germain
561a0f25bb change type 2020-09-05 00:53:09 -05:00
Nicholas St. Germain
e0f64a26f2 fix old template var 2020-09-05 00:30:43 -05:00
Nicholas St. Germain
8999baca25 fix old template var 2020-09-05 00:28:40 -05:00
Nicholas St. Germain
90daf5bcf1 media-common with base radarr/sonarr/lidarr 2020-09-05 00:22:54 -05:00
Jeff Billimek
1746270044 changes to migrate chart to new repo
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-09-04 23:49:37 -04:00
Matt Farmer
55313d0be2 [stable/unifi] Docs: Fix name of cert secret (#23379)
* Fix name of cert secret

The original name in the documentation is incorrect.

Signed-off-by: Matt Farmer <matt@frmr.me>

* Increment patch number

Signed-off-by: Matt Farmer <matt@frmr.me>

* Correctly bump unifi chart version

Signed-off-by: Matt Farmer <matt@frmr.me>
2020-09-04 23:47:36 -04:00
Stephen Liang
153620272e Add ingress for Unifi controller sevice when not using the unified service. (#22703)
Fixes #21887

Bump version to 0.10.0

Signed-off-by: Stephen Liang <stephenliang@users.noreply.github.com>
2020-09-04 23:47:36 -04:00
Marcin Iwiński
8a7fe72ea6 [stable/unifi] adding functionality to mount extra volumes (#22702)
* [stable/unifi] adding functionality to mount extra volumes

This change adds possibility to specify additional volumes
when deploying Unifi controller.

Signed-off-by: Marcin Iwinski <marcin.iwinski@gmail.com>

* fixing defaults in README.md

Signed-off-by: Marcin Iwinski <marcin.iwinski@gmail.com>

* [stable/unifi] bumping version to 0.9.0

Signed-off-by: Marcin Iwinski <marcin.iwinski@gmail.com>
2020-09-04 23:47:36 -04:00
Marcin Iwiński
ca6493faf3 Adding secretName variable to customCert (#22453)
Adding possibility to expose certificate and its key via k8s secret/tls.
Since secret/tls keeps cert under tls.crt and key under tls.key modified
default values for customCert.certName and customCert.keyName to be
more compatible with k8s native way of storing certificates.

Signed-off-by: Marcin Iwinski <marcin.iwinski@gmail.com>
2020-09-04 23:47:35 -04:00
James Choncholas
576ff487df stable/unifi implements subPath functionality (#22432)
* unifi chart supports subPath for existing PVCs

Signed-off-by: James Choncholas <jchoncholas@gmail.com>

* bump version number

Signed-off-by: James Choncholas <jchoncholas@gmail.com>
2020-09-04 23:47:35 -04:00
Jonas Janz
65abab892e [stable/unifi] add custom cert options (#21863)
* feat(unifi): add custom cert options

Signed-off-by: PixelJonas <jonas@janz.digital>

* feat(unifi): bump version to 0.7.0

Signed-off-by: PixelJonas <jonas@janz.digital>
2020-09-04 23:47:35 -04:00
Jeff Billimek
50ce4d6bde Bumping the container version to 5.12.35 (#21492)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-09-04 23:47:34 -04:00
Arno DUBOIS
c69cc6751f [stable/unifi] Ingress was not referring to the good service (#21321)
Signed-off-by: Arno <arno.du@orange.fr>
2020-09-04 23:47:34 -04:00
Arno DUBOIS
995ef7ef2b [stable/unifi] Fixed some mistakes with nodePort (#21320)
Signed-off-by: Arno <arno.du@orange.fr>
2020-09-04 23:47:34 -04:00
Arno DUBOIS
6a3b129a4b [stable/unifi] Adding captive portal service (#21241)
* [stable/unifi] Adding captive portal service
Signed-off-by: Arno Dubois <arno.du@orange.fr>

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

* [stable/unifi] Annnd bumping version
Signed-off-by: Arno Dubois <arno.du@orange.fr>

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

* Added an enabled switch

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

* [stable/unifi] Fixing feedbacks

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

* [stable/unifi] Adding captive portal ingress

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

* [stable/unifi] Better table formatting

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

* [stable/unifi] Fixed ingress

Signed-off-by: Arno DUBOIS <arnodubois@sweetpunk.com>

Co-authored-by: Arno DUBOIS <arnodubois@sweetpunk.com>
2020-09-04 23:47:33 -04:00
Ryan Holt
6c8d01add3 add deploymentannotations, bump chart version (#20763)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-09-04 23:47:33 -04:00
Marco Kilchhofer
9798bb82cc Add ability to specify additional jvm options and config files (#20163)
I use this to override the log4j config to see the logs also on stdout.

Signed-off-by: Marco Kilchhofer <marco@kilchhofer.info>
2020-09-04 23:47:33 -04:00
WTPascoe
0322acc6fe HTTPS is required for unifi gui (#19612)
* HTTPS is required for unifi gui

Signed-off-by: Wayne Pascoe <wayne@penguinpowered.org>

* Removed new annotation in values.yaml
Added instructions in README

Signed-off-by: Wayne Pascoe <wayne+github@penguinpowered.org>
2020-09-04 23:47:32 -04:00
lnattrass
0a221f5297 [stable/unifi] Allow wildcard ingress certificates (#18356)
* [stable/unifi] Allow wildcard ingress certificates

Signed-off-by: Liam Nattrass <liam.d.nattrass+git@gmail.com>

* [stable/unifi] Bump version

Signed-off-by: Liam Nattrass <liam.d.nattrass+git@gmail.com>
2020-09-04 23:47:32 -04:00
Per Otterström
ab941ae48d [stable/unifi] Make web interface ports configurable (#18052)
* bump the unifi docker image to version 5.11.50
* forward port values to unifi docker environment variables

Closes #18051

Signed-off-by: Per Otterström <per.otterstrom@gmail.com>
2020-09-04 23:47:32 -04:00
sherbang
a078da5499 Fix unifi NOTES to find correct service (#13252)
* Fix unifi NOTES to find correct service

Unifi installs the gui service as unifi-gui, but the command in the notes points to a non-existent 'unifi' service.  Use unifi.name + '-gui' to construct the service name here which duplicates the logic in gui-svc.yaml.

Signed-off-by: Brian Johnson <brian@sherbang.com>

* Increment unifi version to 0.4.2

Signed-off-by: Brian Johnson <brian@sherbang.com>
2020-09-04 23:47:31 -04:00
Jeff Billimek
c2df150921 fixing label-name migration (#12691)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-09-04 23:47:31 -04:00
Jeff Billimek
d28bf3fecf [stable/unifi] unifi chart enhancements (#12047)
* switching unifi chart to SatefulSet

* based on the persistent nature of this chart as well as [this
discussion](https://github.com/helm/charts/issues/1863), migrating the
chart to a StatefulSet instead of a deployment. As a result bumping the
major version
* bumping unifi controller to the latest stable version (5.10.19)
* adding @mcronce to the OWNERS file

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* using volumeClaimTemplates for statefulSet

* also updating label syntax to current helm standards (e.g.
`app.kubernetes.io/name`)

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fixing indenting

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* using Parallel podManagementPolicy

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* revert to Deployment and leverage strategy types

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* include readme entry for strategyType

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* hard-code replica count and add mcronce to Chart maintainers

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fixing linting error

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-09-04 23:47:31 -04:00
Thiemo
7f3bc53d12 fix(stable/unifi ingress): fix scoping issue (#12482)
.Values was out of scope for hosts block, since its in a range statement
Moved the failing access to unifiedService.enabled to a variable

Signed-off-by: Thiemo Krause <krausethiemo@googlemail.com>
2020-09-04 23:47:30 -04:00
Mike Cronce
652612e76b stable/unifi: Added "unified service" option to place everything under one service (#11550)
Signed-off-by: Mike Cronce <mike@quadra-tec.net>
2020-09-04 23:47:30 -04:00
Jeff Billimek
93addda234 [stable/unifi] Revert #10789 (#11278)
* Revert "Simplify  for unifi (#10789)"

This reverts commit b09535dfb4.

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* bumping chart version as part of reversion

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-09-04 23:47:30 -04:00
Werner Buck
08f9adbd73 Simplify for unifi (#10789)
The discovery and stun ports are part of the same service. Unifi depends
on them to be on the same hostname.

Signed-off-by: Werner Buck <email@wernerbuck.nl>
2020-09-04 23:47:30 -04:00
nreisbeck
73956c3eed stable/unifi/README.md: fix current version (#10784)
Signed-off-by: Nolan Reisbeck <nolan.reisbeck@gmail.com>
2020-09-04 23:47:29 -04:00
Christian Erhardt
609b2dbe31 Port forward in NOTES.txt is wrong (#10200)
If you do a port-forward to 8080, the unifi controller tries to forward you to a secure TLS connection on port 8443. This fails because the port 8443 is not forwarded. If you do a direct forward to 8443, everything works as expected.

Signed-off-by: Christian Erhardt <christian.erhardt@mojo2k.de>
2020-09-04 23:47:29 -04:00
Mike Cronce
ac0202a0c4 stable/unifi: Replace "addSetfcap" option with simply adding that capability when "runAsRoot" is not set to true (#10359)
Signed-off-by: Mike Cronce <mike@quadra-tec.net>
2020-09-04 23:47:29 -04:00
Jesse Stuart
1a67cf9070 [stable/unifi] Fix typos/formatting in README. (#10277)
Signed-off-by: Jesse Stuart <hi@jessestuart.com>
2020-09-04 23:47:28 -04:00
Jacob Block
4cbe828448 [stable/unifi] Add UID and GID options. (#10218)
Signed-off-by: Jacob Block <jacob.block@gmail.com>
2020-09-04 23:47:28 -04:00
Mike Cronce
be82a0fccb stable/unifi: Add "addSetfcap" option to give the SETFCAP capability to the Unifi container (#10143)
Signed-off-by: Mike Cronce <mike@quadra-tec.net>
2020-09-04 23:47:28 -04:00
Lyle Franklin
d1fbb47709 Add configurable podAnnotations to unifi chart (#9833)
Use case is using `ark` + `restic` to take backups which requires pods
with persistent data to be annotated like:
```
kubectl annotate pod unifi-55f6dcc44c-khbrk backup.ark.heptio.com/backup-volumes=unifi-data
```

Signed-off-by: Lyle Franklin <lylejfranklin@gmail.com>
2020-09-04 23:47:27 -04:00
Lucas Servén Marín
214dd6eaac stable/unifi/templates/deployment.yaml: fix probes (#9180)
* stable/unifi/templates/deployment.yaml: fix probes

The `livenessProbe` and `readinessProbe` are incorrectly defined.
The `initialDelaySeconds` field should not be nested withing the `httpGet`
field.

Signed-off-by: Lucas Serven <lserven@gmail.com>

* stable/unifi: bump patch version

Signed-off-by: Lucas Serven <lserven@gmail.com>
2020-09-04 23:47:27 -04:00
Jeff Billimek
3f50bc7f61 upgrading to unifi v5.9.29 (#8887)
* upgrading to unifi v5.9.29

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* Update Chart.yaml

Signed-off-by: Reinhard Nägele <unguiculus@gmail.com>
2020-09-04 23:47:27 -04:00
Jonathan Herlin
10348d1c0b [stable/unifi] Invalid link in chart sources (#8639)
* Invalid link in chart sources

There was a invalid link in sources, this commit fixes the link
Signed-off-by: Jonathan Herlin <jonte@jherlin.se>

* stable/unifi bump version

Signed-off-by: Jonathan Herlin <jonte@jherlin.se>
2020-09-04 23:47:26 -04:00
Jeff Billimek
062db282ed [stable/unifi] unifi controller chart (New chart) (#6426)
* initial commit - unifi controller chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* enabling persistence by default, per guidelines

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* enabling persistence by default, per guidelines

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* changes requested in PR

* Pegging to a certain version for the chart (0.1.0) until otherwise directed
* Using consistent indentation for lists
* Using camelCase
* updating app version to current (5.8.28)

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* correcting linting failures

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* adding OWNERS for more timely merges in the future

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* Correcting inconsistent service definitions

* fixing inconsistencies with service port & name definitions as described in PR
* bumping app version to current
* correcting typo in Charts.yaml

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* correcting ingress servicePort definition

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* correcting ingress servicePort definition

Signed-off-by: Jeff Billimek <jeff@billimek.com>

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* adding missing NodePort settings

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* Expanding service definitions

* The values and readme reflect that the various services (deployment, stun, gui, controller) can handle annotations, but there is no use of those in the templates. This is now fixed
* Added externalTrafficPolicy to all services
* Some of these changes were requested via https://github.com/billimek/billimek-charts/issues/3

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* switching to apps/v1

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-09-04 23:47:26 -04:00
Jeff Billimek
457a149637 Merge pull request #27 from halkeye/patch-1
[nzbhyrda2] Fix case in readme for service
2020-09-02 07:58:52 -04:00
Gavin Mogan
1b9cfcfb80 Bump version 2020-09-01 21:56:13 -07:00
Gavin Mogan
23a666b18b [nzbhyrda2] Fix case in readme for service 2020-09-01 21:54:28 -07:00
Ryan Holt
66a943c448 [dashmachine] initial chart release for dashmachine (#26) 2020-09-01 11:02:47 -04:00
Jeff Billimek
8c958cbadb Merge pull request #25 from blmhemu/master
[Bazarr] Added subpath for config
2020-09-01 07:50:21 -04:00
Devin Buhl
ba63649c59 Merge branch 'master' into master 2020-09-01 07:45:22 -04:00
Christian Haller
d149fb6bd7 [plex] Fix values reference for "customCertificateDomain" (#24) 2020-09-01 07:44:32 -04:00
Hemanth Bollamreddi
f5241bde3a [Bazarr] Added subpath for config 2020-09-01 14:24:34 +05:30
Devin Buhl
5899c0002c cleanup and bump appVersions (#22) 2020-08-31 16:42:20 -04:00
Jeff Billimek
2182e215f2 Merge pull request #21 from k8s-at-home/fix-ct-yaml
change ct.yaml config file repos reference
2020-08-29 17:58:36 -04:00
Jeff Billimek
eeda505585 change ct.yaml config file repos reference
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-29 17:56:37 -04:00
Jeff Billimek
bed22d6551 mass-rename of chart repo (#3)
* mass-rename of chart repo

* update all Chart.yaml files to replace references from old repo to new
repo
* update all Chart.yaml files to set apiVersion to v2 where necessary
* update all README.md files to replace references from old repo to new
repo

* fix teslamate dependencies for v2

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-29 11:22:37 -04:00
Jeff Billimek
40f4079ad1 Merge pull request #2 from k8s-at-home/rename
re-rename top-level references to URL
2020-08-29 09:53:42 -04:00
Jeff Billimek
69497a0a80 re-rename top-level references to URL
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-29 09:53:08 -04:00
Jeff Billimek
da2bd555a0 fix title 2020-08-29 09:32:13 -04:00
Jeff Billimek
684869b79f Merge pull request #1 from k8s-at-home/rename
top-level renames
2020-08-29 09:30:46 -04:00
Jeff Billimek
c2db003ebd top-level renames
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-29 09:29:12 -04:00
Jeff Billimek
c220d1f189 switch releaser action to GITHUB_TOKEN env var
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-29 07:37:34 -04:00
Jeff Billimek
69a237f194 updating github actions for new home
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-29 07:33:51 -04:00
Devin Buhl
3f54137ccb fix template issue, ? (#344) 2020-08-28 15:30:00 -04:00
Devin Buhl
7138a0646d fix indent issue (#343) 2020-08-28 11:33:52 -04:00
Devin Buhl
c940ad648c Simplify Plex promtail/loki config (#342)
* simplify plex promtail config

* bump plex version

* fix linting issue
2020-08-28 11:08:48 -04:00
Devin Buhl
83d76d5abe [plex] add promtail to ship logs to loki (#337)
* add startup probe to plex

* bump version

* add promtail sidecar

* fix up probes

* fix up logging paths in templates

* add new line to configmap
2020-08-28 09:19:24 -04:00
Bernd Schörgers
4c79130198 [deconz] Fix externalIPs logic, bump app version (#339) 2020-08-28 08:49:21 -04:00
Jeff Billimek
83bb21d987 updating actions versions
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-08-27 11:31:27 -04:00
dcplaya
040818fb1d [librespeed] New Chart (#335)
* [librespeed] initial commit

* [librespeed] Correct use of not equal

* Add enable/disable for history

* Update to use different chart that has working env vars

* [librespeed] Better description

* [librespeed] Formatting
2020-08-20 08:07:31 -04:00
Devin Buhl
69d4339aae [unifi-poller] add servicemonitor (#332)
* add servicemonitor

* add servicemonitor

* add servicemonitor
2020-08-18 14:54:25 -04:00
Devin Buhl
81e0519f1c [unifi-poller] new chart (#331)
* add unifi-poller

* fix lint

* fix lint
2020-08-18 13:58:15 -04:00
Thomas John Wesolowski
cfd9708cf4 [calibre-web] [Add] Add calibre-web chart (#325)
* lift and shift from personal repo

* cleanup chart.yaml, fix port forward in notes

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Bump chart version

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>
2020-08-18 13:55:22 -04:00
Nicholas St. Germain
df13abf94a [bitwarden_rs] New chart (#327)
* add bitwarden_rs chart

* Silly lint opinion fix

* Maintainer Name > Github Username

* add templated fullname for nested include

* push rename

* tweaks

* update readme and secret

* fix existing secret reference
2020-08-16 20:53:28 -04:00
Bernd Schörgers
8c201defc6 [lazylibrarian] Added chart (#326) 2020-08-16 08:08:16 -04:00
Ryan Holt
b247d19865 [home-assistant] Home assistant/db dependencies (#321)
* enable dependent chart support for mariadb and postgres

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* forgot to include the values.yaml file in commit

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* default postgres persistence to disabled

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* bump chart version to 1.2.1

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add commented out storageClass designations for both postgres and mariadb

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* bump chart version

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* bump chart, rename to full postgresql

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* bump chart

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* nested the postgres wrong, bumped chart version

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* revert to v1.2.0 for PR

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fix name for postgresql in readme

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-08-13 11:33:51 -04:00
Dan Webb
5d92d0fe9a [home-assistant] Bump HAAS to 0.114.0 (#322) 2020-08-13 11:02:19 -04:00
Bernd
2b9331c3b6 [node-feature-discovery] Initial version (#319)
* [node-feature-discovery] Initial version

* [node-feature-discovery] Add component label to worker daemonset

* [node-feature-discovery] Update README

* Update README.md

* [node-feature-discovery] Allow specification of feature sources

* [node-feature-discovery] Do not override sources by default

* Update values.yaml
* Update README.md
2020-08-12 07:59:29 -04:00
Bryton Hall
582df68c7d [home-assistant] add esphome dependency (#271)
* add esphome dependency to home-assistant

* bump chart apiVersion to v2

* We need to upgrade the Chart apiVersion to v2

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-08-11 09:14:33 -04:00
Kamuela Franco
b68b05e796 Fix typo in documentation (#281)
* Fix typo in documentation

* bump chart version

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-08-09 08:10:34 -04:00
Miguel Angel Santiago
d733be90e3 [zigbee2mqtt] ui application (#296)
* Including UI with lint

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Ingress deactivated by default

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Version 0.2.0

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Add ui settings

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Display the application URL

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Protect boolean as string

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Remove warning from lint

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Move probes, service and ingress within ui values

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Revert "Move probes, service and ingress within ui values"

This reverts commit 08a91e316bb81aee43739ed51f89d378541cf255.

* Using generic configmap por assistant settings

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Move probes, services and ingress within assistant section

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

* Some wording

Signed-off-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>

Co-authored-by: Miguel Angel Santiago <miguelangel.santiago@hotmail.com>
2020-08-09 08:06:29 -04:00
Piotr Maksymiuk
40b25ebdcd [icantbelieveitsnotvaletudo] Add chart (#293)
* [icantbelieveitsnotvaletudo] Add chart

* use pretty json in configmap

* fix default options

* Add Readme and NOTES

* fix maintainer

* fix NOTES
2020-08-09 08:04:40 -04:00
BJWS
b83cb529a7 [deCONZ] Fix zigbee-device volume name (#316) 2020-08-08 11:16:17 -04:00
BJWS
9ff1b2bdeb [deCONZ] Added chart (#315)
* [deCONZ] Added chart

* [deCONZ] Fix linter error
2020-08-08 10:21:13 -04:00
Ryan Holt
17e306825e [powerdns] Powerdns fix startup (#313) 2020-08-07 16:25:14 -04:00
Ryan Holt
ddd4788598 [powerdns] Introduce Powerdns chart (#308)
* initial commit for powerdns

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add auto-create zone, bump chart version

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add selector for db type

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fix indent

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fix path mount for conf.d

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fix indent

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add liveness & readiness probes. Bump chart

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add more sleep

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add startupProbe

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* replace homepage with home

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove trailing space

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fix maintainer to be github username

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add newline to end of file for linting

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* opinionate the chart -- generate an api_key

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* disable dependent charts by default

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add default values for dependent charts (disabled)

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add newline (lint)

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add check for lifecycle

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add default values for automated tests

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* update default mysql/postgres host to match dependent chart

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* update pdnspass to be the same for mysql and pdns chart

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fixed a broken conditional

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* disable persistence on mariadb by default

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* found the missing toggle

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* mysql=mariadb

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* try using a templated mysql host name

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* fix linting problem

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* maybe this will work?

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* another attempt

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* how about this?

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* trying this

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* try this one out

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* this might work

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove special characters from domain name, attempt to fix configmap

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* try it with quotes

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add 'quote'

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* needs to be = not :

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove the quote option

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove bbenc64

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add probes and optional exclude

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* flip to ClusterIP as default

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove ci exclusions, bump chart to v1

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-08-07 11:53:50 -04:00
Dan Webb
db26e398d2 [home-assistant] Bump HAAS version to 0.113.3 (#311) 2020-08-06 08:42:18 -04:00
BJWS
bd9f296d6c [frigate] Allow mask files to be passed to the container, version bump (#312)
* Update Frigate version

* Allow configmap that contains camera masks

* Enable startupProbe functionality

* Disable probes by default

* Disable probes only during CI

* Disable probes only during CI
2020-08-06 08:41:34 -04:00
Jordan Doyle
bf08c9dc7d Fix errors when ingress.labels is missing (#310) 2020-08-05 13:31:38 -04:00
Alice GIRARD
923c39cfb9 [jellyfin] remove non-existent pvc from README (#307) 2020-08-05 10:45:33 -04:00
Jeff Billimek
4e667d9f0e adding bitnami repo to ct.yaml 2020-08-04 23:54:56 -04:00
Ryan Holt
64f3d61811 [blocky] add support for externalIPs and bump chart (#306)
* add support for externalIPs and bump chart

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* bump chart to full version 3.3.0

Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-08-04 13:52:43 -04:00
Marco Kilchhofer
61556a5215 [adguard-home] Introduce config as code and add ability to run as non-root (#297)
* [adguard-home] Introduce Config as code

* [adguard-home] Rewrite Config as code with initContainers

Configmaps are read only and the app fails to start when config is
read-only:
~~~
[info] AdGuard Home, version v0.102.0, channel release, arch linux amd64
[error] Couldn't save YAML config: open /opt/adguardhome/conf/..2020_07_26_11_38_31.428232526/tmp266296205: read-only file system
[fatal] open /opt/adguardhome/conf/..2020_07_26_11_38_31.428232526/tmp266296205: read-only file system
~~~

* [adguard-home] Add ability to run as non-root

* [adguard-home] Bump chart version to 1.2.0

* [adguard-home] Use charts appVersion by default to specify the image tag
2020-08-03 23:59:25 -04:00
Jordan Doyle
ba69f7cbe2 Add ingress labels (#304) 2020-08-03 12:59:14 -04:00
Marshall Ford
8b5f091355 [home-assistant] if zwave is enabled or hostmounts are set: allowPrivilegeEscalation=true (#305)
* if zwave is enabled or hostmounts are set: allowPrivilegeEscalation=true

* version bump chart to 1.0.4
2020-08-03 12:56:34 -04:00
Devin Buhl
3357f97862 [plex] force new release (#303)
* force new release

* disable plex data vol if asked to
2020-08-01 14:01:49 -04:00
Devin Buhl
3d64343825 [plex] allow disabling of data volume and sync extraMounts from nzbget (#302)
* allow disabling od data volume and sync extraMounts from nzbget

* bump chart version
2020-08-01 10:25:41 -04:00
Ryan Holt
52f4f42a02 add deploymentAnnotations (#300)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-07-31 09:27:11 -04:00
dcplaya
f705e9e41d [esphome] Bug fix for extraEnv (#298)
* [esphome] Quote the env vars

* [esphome] Bump chart version for bug fix
2020-07-29 00:16:51 -04:00
Ian Duffy
c78466c598 [home-assistant] Update deployment.yaml (#299)
* Update deployment.yaml

Add git support on configurator and ensure extraEnvs are quoted

* Update Chart.yaml

* Update deployment.yaml

* Update deployment.yaml
2020-07-29 00:16:31 -04:00
Marco Kilchhofer
457776fe7c [adguard-home] Add basic support for probes, add ability to change deployment strategy (#292)
* [adguard-home] Add basic support for probes

* [adguard-home] Bump chart version

* [adguard-home] Add ability to change deployment strategy

* [adguard-home] Change default strategy to Recreate
2020-07-27 21:57:58 -04:00
Devin Buhl
18880d0dae [xteve] add new chart (#291)
* add xteve chart

* xteve: fix linting issue

* xteve: implement hostnetwork mode

* do not enable persistence by default
2020-07-25 13:36:36 -04:00
Devin Buhl
a86e9aee83 [sabnzbd] add new chart (#290)
* add sab chart

* do not enable persistence by default
2020-07-25 13:35:57 -04:00
Devin Buhl
0f842f3fe7 Add openvpn as sidecar to nzbget 2020-07-24 17:43:57 -04:00
Dan Webb
07324620d5 [home-assistant] Bump HAAS version to 0.112.4 (#287)
See HASS change log for more information
https://www.home-assistant.io/blog/2020/07/01/release-112/
2020-07-20 14:46:23 -04:00
dcplaya
30f6c96711 [adguard-home] Initial Commit (#286)
* Cleanup to submit PR

* Oops!  Had double persistence values somehow

* Guess I missed this replace too

* Fixed references to blocky instead of adguard-home
2020-07-20 00:16:23 -04:00
Johnny Walker
fa9948839e fix lint 2020-07-18 10:27:39 -04:00
Johnny Walker
0c422e0118 bump chart version 2020-07-18 09:57:49 -04:00
Johnny Walker
51e750d07c add openvpn sidecar option for nzbget 2020-07-18 09:55:39 -04:00
Piotr Maksymiuk
c0da502c9e [zigbee2mqtt] Add chart (#283)
* [zigbee2mqtt] Add chart

* remove remnants of zwave from chart

* fix lint

* one more zwave in zigbee

* set default timezone to UTC
2020-07-17 09:31:15 -04:00
dcplaya
2de424be2d [nzbget] Fix if no mountPath is defined (#282)
* Take care of the issue of no mountPath given

Defaults to name, updated values description as well.

* [nzbget] Bump bug fix version for undefined mountPath
2020-07-16 23:05:47 -04:00
Chris Scheib
dec72c4968 [ombi] add baseUrl functionality from upstream docker image (#275)
* ombi: add baseUrl functionality from upstream docker image

* bump image tag for baseurl feature

* bump chart version

* update README.md

* fix trailing spaces
2020-07-12 15:49:11 -04:00
dcplaya
33556bcad3 [ser2sock] Baud rate as a variable. Allows for other serial devices (#276)
* [ser2sock] Added baudRate as a values option

* [ser2sock] bug version should be reset to 0

* [ser2sock] fixed merge error
2020-07-12 15:39:44 -04:00
dcplaya
b110687034 Allow full mount path ability. Matches NZBGet's fix (#278) 2020-07-12 15:39:13 -04:00
dcplaya
516ff2a48f Give Tautulli an existing mount option to allow it to see plex logs (#279) 2020-07-12 15:38:01 -04:00
dcplaya
b9146f48c2 [nzbget] Fixes issue with mounting in sub directories (#280)
* Allow custom, multi-folder mount paths

* Added true independent path mounting. 

For some reason using the other way only allowed level root directory 
mounting
2020-07-12 15:37:14 -04:00
Jeff Billimek
6cd37e095d add this repo as a dependency check 2020-07-08 19:50:36 -04:00
Devin Buhl
b31e5091cf [piaware] add piaware chart (#273)
* add piaware chart

* fix zwave ref
2020-07-08 19:41:56 -04:00
dcplaya
222718f335 [plex] Allow custom extraMount paths (#270)
* Allow extraMounts for Plex, mimicks NZBGet's setup

* Allow extraMounts for Plex, mimicks NZBGet's setup

* Opps, had an extra end

* Up chart up a version since a feature is added instead of a bugfix

* Try and get rid of the weird EOF error. Added a space at the end.

* Dang fat fingers!

* Shouldnt have deleted this! Needed to end the range block

* Doh!   Wrong spot
2020-07-07 15:47:15 -04:00
Bryton Hall
e1b17cb080 [esphome] add chart (#269)
* [esphome] add chart

Signed-off-by: Bryton Hall <email@bryton.io>

* remove home-assistant chart updates

* fix image tag typo

* set pvc size to 1Gi, replace home assistant name
2020-07-07 15:09:55 -04:00
Devin Buhl
d1ee79297d fix serviceName for plex (#268) 2020-07-06 17:52:15 -04:00
Devin Buhl
c80fd298fb [plex] change service in ingress (#267)
* change service in ingress

* bump version
2020-07-06 16:25:01 -04:00
Devin Buhl
b71d3e7581 [plex] add UDP to plex (#266)
* add UDP to plex

* fix up udp type

* comment out metallb annotations

* remove pesky ports
2020-07-06 15:58:44 -04:00
Devin Buhl
2780dae688 [plex] add hostNetwork option (#264)
* add hostNetwork for Plex

* Update Chart.yaml
2020-07-06 08:55:42 -04:00
Juan Ignacio Donoso
ac2f8c0da7 [plex] fix port definition indentation (#262) 2020-07-05 13:33:01 -04:00
Richard Cox
41b52af287 [plex] Added values to choose init container image (#259)
* Added values for the init container image

* bumped Chart version

Co-authored-by: Richard Cox <richard.cox@centurylink.com>
2020-06-30 14:00:26 -04:00
Guillaume
4c16a658a7 [sonarr] Fix liveness and readiness probes on basic auth deployment (#257)
Use tcpSocket instead of httpGet to avoid:

HTTP probe failed with statuscode: 401

Signed-off-by: LEI <guillaume.frichet@gmail.com>
2020-06-30 08:33:52 -04:00
Jeff Billimek
3e9298bff5 bump home-assistant and code-server image versions (#256)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-06-27 15:39:32 -04:00
Blake Blackshear
5a14363804 [frigate] Support disabling probes and secrets for env vars (#249)
* [frigate] add support for secrets with envFrom

* [frigate] update values.yaml with extraSecretForEnvFrom

* [frigate] allow probes to be disabled

* [frigate] update default image

* [frigate] update version and add myself as a maintainer

* [frigate] Readme update
2020-06-21 11:06:10 -04:00
Dewet Diener
fa717823cd [blocky] update to app v0.8 (#252)
* Bump blocky to v0.8

* Bump chart to new minor version
2020-06-21 11:05:04 -04:00
Jeff Billimek
d80c1beed7 adding uptimerobot-prometheus chart (#246)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-06-10 21:23:36 -04:00
Jeff Billimek
800b05db0c [home-assistant] adding home-assistant helm chart (#244)
* adding home-assistant helm chart

* fixing typo
2020-06-10 11:12:35 -04:00
Jeff Billimek
80c196709b [node-red] fixing chart URL reference (#245)
* fixing chart URL reference

* bumping chart version
2020-06-10 11:10:31 -04:00
Jeff Billimek
d1d050f115 adding node-red chart (#243) 2020-06-10 10:59:50 -04:00
Jeff Billimek
1225efac56 forcing bump of heimdall chart (#242)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-06-10 09:08:40 -04:00
Radu Micu
2e01b5e31d Radarr volumeMounts path fix (#238) 2020-06-02 08:29:32 -04:00
Radu Micu
b9301e6e0a Add subPath to PVC config and update subPath doc for media PVC for Radarr (#236) 2020-06-01 07:54:05 -04:00
Radu Micu
ddd1f81c3d Add subPath to PVC config and update subPath doc for media PVC for Sonarr (#235)
Fix
2020-06-01 07:42:01 -04:00
Jeff Billimek
f1c585e318 leverage turnstyle to serialize release workflows (#232)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-05-26 14:38:06 -04:00
Jeff Billimek
9cd8a4fc4d Bump version to trigger automation (#231) 2020-05-26 11:54:06 -04:00
Terry Zink
ddf8decc85 [nzbhydra2] update to use new docker image and latest version (#228)
* update to use new docker image and latest version

* update chart.yaml
2020-05-24 13:57:17 -04:00
Thomas John Wesolowski
a80fa0d800 [Lidarr][Change] Merge downloads and music PVCs (#227)
* Merge music and downloads into single PVC

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Add upgrading section to README

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>
2020-05-23 09:25:18 -04:00
Thomas John Wesolowski
831541d4a8 [Radarr][Change] Merge Movie and Downloads PVCs (#226)
* Merge PVCs into single media PVC. Update README

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Format README

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Add extraExistingClaims back in

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>
2020-05-23 09:24:53 -04:00
Thomas John Wesolowski
f888b8c9d7 [Sonarr][Change] Merge PVCs for tv and downloads into single PVC (#225)
* Merge PVCs for tv and downloads into single PVC

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Add upgrading documentation to README

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Add extraExistingClaims back in

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>
2020-05-23 09:24:20 -04:00
Thomas John Wesolowski
51f46209a2 [Bazarr][Change] Switch to single PVC for media (#224)
* Update Bazarr chart. Switch to single pvc for media

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Add Upgrading section to README

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Update README, make Upgrading documentation more clear.

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Remove unneeded files

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Fix typo in PVC kind attribute

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Fix claim name in deployment.yaml

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>

* Add extraExistingClaimMounts back in

Signed-off-by: Thomas John Wesolowski <wojoinc@gmail.com>
2020-05-23 09:23:39 -04:00
Jeff Billimek
6a795ba8a3 dont allow changing of internal device (#223) 2020-05-19 22:23:39 -04:00
Dewet Diener
90c6d92050 [blocky] Improve values.yaml documentation (#220)
* Improve values.yaml documentation

Also fix syntax error for declaring extraLists -- it needs to be a map, not an array

* bump blocky bugfix version
2020-05-11 08:09:22 -04:00
Jeff Billimek
79e44a4a4b bumping teslamate image version
adjusting the probe values to not fail so quickly
2020-05-03 21:59:55 -04:00
Simon Caron
fa65c4a454 [heimdall] Added Heimdall Chart (#219)
* Added Heimdall Chart

Signed-off-by: Simon Caron <simon.caron@protonmail.com>

* Fix Linting Error

Signed-off-by: Simon Caron <simon.caron@protonmail.com>

* Updated Readme Helm Commands

Signed-off-by: Simon Caron <simon.caron@protonmail.com>

* Removed --name switch from Readme Commands

Signed-off-by: Simon Caron <simon.caron@protonmail.com>
2020-05-03 08:18:23 -04:00
Simon Caron
862a0f817e [duplicati] Added Duplicati Chart (#218)
* Added Duplicati Chart

Signed-off-by: Simon Caron <simon.caron@protonmail.com>

* Updated Helm Commands Examples to comply with Helm 3

Signed-off-by: Simon Caron <simon.caron@protonmail.com>
2020-05-03 08:18:06 -04:00
Jeff Billimek
68f5695d4f [speedtest-prometheus] - adding grafana dashboard example (#215)
* adding grafana dashboard example

* fixing icon
2020-04-30 06:17:48 -04:00
Jeff Billimek
ac92dc3300 updating actions from example repo 2020-04-30 05:18:59 -04:00
Jeff Billimek
ebf44ef9dc [speedtest-prometheus] - adding speedtest-prometheus chart (#214)
* adding speedtest-prometheus chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fixup readme

* use charts apiVersion v1

* chart now needs to be v2

* use charts apiVersion v1

* chart now needs to be v2
2020-04-29 18:58:57 -04:00
Jeff Billimek
3e599d2138 provide units for timeout flag 2020-04-29 18:50:16 -04:00
Jeff Billimek
4bfe8b8f20 bump action versions 2020-04-29 18:35:13 -04:00
runecalico
d3efa1f724 [PLEX] Add CRT/KEY to PKS Conversion Init Process (#212)
* Add template code for container env

* version bump

* trim trailing whitespace

* Bump to 1.2.0

* Add PlexPreferences ConfigMap/Script.

* Lint fixes.

* Add pks from cert init process

* bump to 1.3.0

* set default empty value for medium

* trailing spaces

* somehow got changed to crlf

Co-authored-by: Jonathan C. Kaufman <vitki@tirn-aill.org>
2020-04-27 13:49:03 -04:00
runecalico
520e16fbd5 [plex] Add Init script using configMap that will set Plex Preferences using container ENV (#211)
* Add joinListWithComma helper

* Add template code for container env

* version bump

* trim trailing whitespace

* Bump to 1.2.0

* Add PlexPreferences ConfigMap/Script.

* Lint fixes.

* 2 spaces good enough?

* Add tmpfs option to transcode emptydir

* persistence.transcode.enabled was missing ..

Co-authored-by: Jonathan C. Kaufman <vitki@tirn-aill.org>
Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-04-22 22:19:04 -04:00
runecalico
c591564fa5 [plex] Add all official PMS docker env's, as well as N+1 supplied user ENVs (#210)
* Add joinListWithComma helper

* Add template code for container env

* version bump

* trim trailing whitespace

Co-authored-by: Jonathan C. Kaufman <vitki@tirn-aill.org>
2020-04-21 22:01:55 -04:00
Jeff Billimek
6f0b03551e dont limit CPU for rtorrent containers (#207) 2020-04-19 09:00:40 -04:00
Gavin Mogan
1bd7d7d154 [blocky] Add support for creating extra files, like whitelist.txt (#206)
* Add support for creating extra files, like whitelist.txt

Signed-off-by: Gavin Mogan <git@gavinmogan.com>

* forcing 3.1.0

Co-authored-by: Jeff Billimek <jeff@billimek.com>
2020-04-17 18:04:15 -04:00
Gavin Mogan
01f453d3d2 [blocky] Add checksum annotation to force pod to restart on config change (#205)
* remove double ports

Signed-off-by: Gavin Mogan <git@gavinmogan.com>

* Add an annotation to force k8s to restart pod on config file changes

Signed-off-by: Gavin Mogan <git@gavinmogan.com>

* bump chart version

Signed-off-by: Gavin Mogan <git@gavinmogan.com>
2020-04-17 17:08:21 -04:00
Jeff Billimek
f3e99ffb70 [plex] initial commit of plex chart (#203)
* initial commit of plex chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* remove commented code

* fix linting

* use safe defaults

* no tests dir needed
2020-04-14 21:27:48 -04:00
Jeff Billimek
9848d64e43 document breaking change (#202) 2020-04-14 12:59:12 -04:00
Devin Buhl
590dbb9135 add sonarr-exporter (#201) 2020-04-14 10:32:08 -04:00
Jeff Billimek
6dd129e4a9 [blocky] update blocky for v0.6 (#200)
* update blocky for v0.6

* fix missing port rename

* making service spec more robust

* make defaults sane
2020-04-14 09:31:23 -04:00
Devin Buhl
9bef0aac5e [radarr] Add exportarr for Radarr (#199)
* first attempt at adding exportarr

* add appVersion back
2020-04-14 09:04:58 -04:00
Simon Caron
99e23213ff Added Jellyfin Chart (#198)
Signed-off-by: Simon Caron <simon.caron.8@gmail.com>
2020-04-13 07:48:37 -04:00
Simon Caron
4af5069fed [couchpotato] Added CouchPotato Chart (#197)
* Added CouchPotato Chart

Signed-off-by: Simon Caron <simon.caron.8@gmail.com>

* Updated Image Version to multi-arch & fixed port typo in Notes

Signed-off-by: Simon Caron <simon.caron.8@gmail.com>
2020-04-13 07:47:02 -04:00
Devin Buhl
3a53e50092 [bazarr] add chart (#192)
* [bazarr] add chart

* [bazarr] update port to 6767
2020-04-02 12:15:04 -04:00
Devin Buhl
0a9203ec64 [lidarr] fix up docs (#193) 2020-04-02 12:01:44 -04:00
Devin Buhl
57b0a62907 [lidarr] add new chart (#190)
* [lidarr] add new chart

* [lidarr] fix port

* [lidarr] clean up some movie references
2020-04-02 10:15:53 -04:00
Devin Buhl
6b39213862 [blocky] use projected volume for configmap (#189)
* use projected volume on configmap

* bump chart version
2020-03-29 13:19:04 -04:00
Ryan Holt
9819265d4e [grocy] Add Grocy (#185)
* initial grocy build

Signed-off-by: Ryan Holt <ryan@Ryans-iMac.holthome.net>

* forgot the helper file

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove comments

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* change to port 80

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add liveness probe

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* helps if the probes are actually defined in values

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* adding more time for readiness probe

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* flip from readiness to liveness

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* add startup probe, revert readiness/liveness to default

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove readiness probe

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* remove startupprobe, change default liveness and readiness to higher numbers

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* trying the startupProbe again

* fix indentations

* that wasn't a fix

* definitely not right

* bump up default values

* change from timeoutSeconds to periodSeconds

* rename the value variable

* add timeoutSeconds back in

* update readme and chart owner

Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-03-23 10:09:34 -04:00
Julien DOCHE
d465d792ab Add skipuninstall value to avoid deleting pvc upon helm uninstall (#184)
Signed-off-by: Julien DOCHE <julien.doche@gmail.com>
2020-03-19 07:01:35 -04:00
Devin Buhl
ad6673d9f4 [jackett] bump version to 2.2.1 (#182) 2020-03-13 08:54:40 -04:00
Devin Buhl
9d261a0128 [qb] bump chart to 3.1.1 (#181) 2020-03-13 08:53:49 -04:00
Jeff Billimek
dd0a4c84bf bumping ombi chart version to force automation
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-12 17:07:32 -04:00
Jeff Billimek
8edf1a5862 bumping to trigger action
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-12 12:11:26 -04:00
Devin Buhl
a435029a52 [qb] add deployment annotations (#176) 2020-03-12 09:57:34 -04:00
Devin Buhl
1220c61773 [tautulli] add deployment annotations (#175) 2020-03-12 09:57:10 -04:00
Devin Buhl
3bf3e6d66b [jackett] add deployment annotations (#174) 2020-03-12 09:52:03 -04:00
Devin Buhl
cedcd11bfe [ombi] add deployment annotations (#173)
* [ombi] add deployment annotations

* Fix lint issue
2020-03-12 09:51:43 -04:00
Ryan Holt
352f2d37ec [nzbhydra2] Adds deploymentAnnotations support (#172)
* incorporate deploymentAnnotations, bump default tag

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* Bumped chart version to 2.1.0
2020-03-11 18:03:52 -04:00
Jeff Billimek
9203d2d558 better safe defaults for blocky (#170) 2020-03-11 00:33:52 -04:00
Jeff Billimek
92a0db15d1 [blocky] Refactor config yaml (#169)
* Refactor config yaml

Also disable logs volume (no longer needed)

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fix linting

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-11 00:09:41 -04:00
Jeff Billimek
def0e8c7ed rename blocky headless service (#167) 2020-03-10 06:44:29 -04:00
Julien DOCHE
59456f31ad [jackett] Do not enable torrentblackhole volume by default (#166)
Signed-off-by: Julien DOCHE <julien.doche@gmail.com>
2020-03-09 08:10:56 -04:00
Julien DOCHE
71bcd78fb3 [jackett] Add torrent-blackhole volume (#165)
Signed-off-by: Julien DOCHE <julien.doche@gmail.com>
2020-03-09 06:08:16 -04:00
Jeff Billimek
a2f4de737f enable prometheus servicemonitor (#164)
also enable proper healthchecks

Fixes #160
Fixes #161

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-08 20:10:57 -04:00
Jeff Billimek
018c383c7c fix typo in prometheus port name (#163) 2020-03-08 13:43:32 -04:00
Jeff Billimek
5bdba2161c readme typos (#162) 2020-03-08 13:08:40 -04:00
Jeff Billimek
6ff2fcaf27 [blocky] - fix minor issues (#159)
* remove extraneous service from values

* fix prom service type and port mapping

* allow annotations

* bump chart version

* fix notes file
2020-03-08 12:47:35 -04:00
Jeff Billimek
5431d8d4e4 fixing blocky icon (#158) 2020-03-08 12:24:04 -04:00
Jeff Billimek
3090695046 [blocky] - initial cut of blocky helm chart (#157)
* initial cut of blocky helm chart

* fix linting

* fix more linting
2020-03-08 11:12:37 -04:00
Jeff Billimek
932dfd1a65 use subpath for zwave2mqtt volume (#156)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-05 20:10:26 -05:00
Jeff Billimek
fe3826ed3a bumping zwave2mqtt image to 3.0.1
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-04 13:02:12 -05:00
Jeff Billimek
e0a6c8a361 [frigate] - Bumping to frigate 0.5.0 (#155)
* Bumping to frigate 0.5.0

* Includes the ability to optionally use the coral USB device (no longer
required)
* Introduces the requirement to leverage shared memory, by using
'Memory' as the medium

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fix linting
2020-03-03 22:01:31 -05:00
Jeff Billimek
68d7a640b3 Breaking Changes: Upgrading to 3.0.0 (#154)
Upgrading zwave2mqtt to the 3.0.0 release.  See [the release
notes](https://github.com/OpenZWave/Zwave2Mqtt/releases/tag/v3.0.0) for
all of the breaking changes

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-03-03 08:57:38 -05:00
Jeff Billimek
877e5c46a1 bumping commit to trigger release job 2020-02-23 08:54:43 -05:00
Devin Buhl
c7d2a9a141 implement revisionHistoryLimit: 3 (#152)
* implement revisionHistoryLimit: 3

* bump all chart versions
2020-02-23 06:32:29 -07:00
Jeff Billimek
33c1662d84 bumping teslamate image version (#150) 2020-02-17 17:22:56 -07:00
Jeff Billimek
7bc49f3454 bumping chart image version (#149) 2020-02-17 17:21:49 -07:00
Devin Buhl
67167f787c remove cloudflare-ddns chart (#148) 2020-02-17 16:14:44 -05:00
Ryan Holt
e73b9697e3 added deployment annotations and bumped chart (#146)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-02-13 09:32:18 -05:00
Ryan Holt
faef189636 add deployment annotations and bumped chart version (#147)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-02-12 12:01:42 -05:00
Ryan Holt
a4a7e17788 [sonarr] enable support for deployment annotations (#145)
* enable deployment annotations

Signed-off-by: Ryan Holt <ryan@ryanholt.net>

* include readme updates

Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2020-02-10 18:55:55 -05:00
Jeff Billimek
aa4d60d783 bumping teslamate to 1.15.0 (#144)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-23 14:23:00 -05:00
Devin Buhl
7b425402a2 [qbittorrent] minor refactoring, add readme (#143)
* minor refactoring, add readme

* fix lint issue

* fix some nzbget references
2020-01-19 15:29:43 -05:00
Jeff Billimek
ac61ec1208 fixing zwave2mqtt dev defaults (#142)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-18 23:57:00 -05:00
Jeff Billimek
3e7fcd738d last commit made in error 2020-01-18 22:27:35 -05:00
Jeff Billimek
ed7f6f0677 forcing arm64 image for zwave2mqtt 2020-01-18 22:25:40 -05:00
Jeff Billimek
2516d7abe0 [frigate] frigate needs configurable probes (#141)
* frigate needs configurable probes

* adjust probe defaults
2020-01-18 21:57:42 -05:00
Jeff Billimek
7c5a94e9f4 adding zwave2mqtt chart (#140)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-18 21:37:06 -05:00
Jeff Billimek
309338a745 Cleanup (#139)
* removing kube-plex

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* removing DCO checkbox from PR template

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-18 21:06:24 -05:00
Yasser Saleemi
67cb8ec883 [nzbget] Allow mounting additional claims (#137)
This is useful if some data exists in different paths and you wish to make use
of categories + paths. So you can have a volume for Movies and have a movies
category that points to this path.

Useful for when they exist on NFS, this allows you to easily attach NFS mounts
to the pod.

Signed-off-by: Yasser Saleemi <yassersaleemi@gmail.com>
2020-01-18 17:11:04 -05:00
Devin Buhl
07a132c04a [jackett/nzbhydra2/ombi/tautulli] Add subPaths for config PVCs (#138)
* Add subPath for config, bump jackett image tag

* Add subPath for config, bump hydra2 image tag

* fix up jackett appversion

* fix up hydra2 appversion

* Add subPath for config, bump ombi image tag

* Add subPath for config, bump tautulli image tag
2020-01-17 23:20:38 -05:00
Jeff Billimek
406628ef0a [frigate] frigate v4.0.0-beta (#135)
* frigate v4.0.0-beta

* fixing linting errors
2020-01-15 23:31:44 -05:00
Jeff Billimek
6fe7be4d7e moving PR template file
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-13 08:18:28 -05:00
Jeff Billimek
7a967529f5 fixing search instructions
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-11 08:19:04 -05:00
Jeff Billimek
c24047ec9a speedtest chart migration (#132)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:40:50 -05:00
Jeff Billimek
eb17f5b148 teslamate chart migration (#134)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:34:09 -05:00
Jeff Billimek
b1762aa3a0 tautulli chart migration (#133)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:30:52 -05:00
Jeff Billimek
a329904ac9 sonarr chart migration (#131)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:29:27 -05:00
Jeff Billimek
b70b192d46 ser2sock chart migration (#130)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:28:35 -05:00
Jeff Billimek
85c3e2c3de radarr chart migration (#128)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:27:26 -05:00
Jeff Billimek
ef11c7e2ca rtorrent-flood chart migration (#129)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:26:05 -05:00
Jeff Billimek
76794f3e4a bumping qbittorrent chart for CI (#127)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:25:00 -05:00
Jeff Billimek
a554af9331 bumping ombi chart for CI (#125)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:24:20 -05:00
Jeff Billimek
ae78a8b878 bumping nzbhydra2 chart for CI (#126)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:22:58 -05:00
Jeff Billimek
80a40046ea digitalocean-dyndns chart migration (#116)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:13:10 -05:00
Jeff Billimek
3adc8bb035 frigate chart migration (#118)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:12:59 -05:00
Jeff Billimek
6ba9d71849 qbittorrent chart migration (#124)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:12:17 -05:00
Jeff Billimek
67d409f4a1 ombi chart migration (#123)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:12:08 -05:00
Jeff Billimek
f788b75a06 nzbhydra2 chart migration (#122)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:12:00 -05:00
Jeff Billimek
51f8d327c9 nzbget chart migration (#121)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:11:51 -05:00
Jeff Billimek
dc91c4b413 modem-stats chart migration (#120)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 16:10:13 -05:00
Jeff Billimek
ee9f35fc3f jackett chart migration (#119)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 15:55:15 -05:00
Jeff Billimek
a92e2f4c7c deprecating forwardauth chart (#117)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 15:40:58 -05:00
Jeff Billimek
ee33737bfb comcast chart migration (#115)
* comcast chart migration

Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>

* fixing typo

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 15:36:01 -05:00
Jeff Billimek
85fa273534 cloudflare-dyndns chart migration (#114)
Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2020-01-10 15:27:26 -05:00
Jeff Billimek
f091bfb2b2 moving uptimerobot chart (#113)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 15:18:22 -05:00
Jeff Billimek
14023d3024 moving all charts under charts/ dir (#112)
* moving all charts under charts/ dir

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* add date and name to license file

* add contributing file

* rewrite readme

* pull request template

Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>

* fixing badge icon
2020-01-10 14:58:11 -05:00
Jeff Billimek
479dcdcb4c relocating ct.yaml config file
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 14:35:35 -05:00
Jeff Billimek
67e3541b51 adding charts repo for releases
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 14:34:18 -05:00
Jeff Billimek
e1ff00fde1 using release action defaults
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 14:06:57 -05:00
Jeff Billimek
a72217a375 using charts defaults
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 13:57:02 -05:00
Jeff Billimek
edb74accf5 manually passing charts dirs to lint command
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 13:42:50 -05:00
Jeff Billimek
a4ba4888e6 setting charts_dir for release workflow
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 11:12:43 -05:00
Jeff Billimek
0deb3dede3 relocating ct.yaml config
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 10:55:33 -05:00
Jeff Billimek
1bf054bf7d experimenting with github actions
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2020-01-10 10:52:38 -05:00
Jeff Billimek
1bd3a65a62 ser2sock shouldn't have probes (#107) 2019-12-22 02:04:43 -05:00
Jeff Billimek
b332249e9d Introduces the teslamate chart (#106)
* Introduces the teslamate chart

Fixes #101

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* get on the startupprobe bandwagon
2019-12-22 00:19:10 -05:00
Devin Buhl
190225e7af add startupprobes for jackett and nzbhydra2 (#102) 2019-12-22 00:14:17 -05:00
Devin Buhl
f7e31c464a Add cloudflare-dyndns chart (#99)
* add cloudflare-dyndns chart

* fix spaces before comments

* whoops forgot to change text from copy-pasta

* fix template err

* fix template err
2019-12-16 22:38:04 -05:00
Devin Buhl
d0315de42f Add probe configuration (#98) 2019-12-14 10:15:02 -05:00
Devin Buhl
1de3b25e66 Update probes, default setting is too low (#95) 2019-12-10 19:44:52 -05:00
Devin Buhl
1786410887 Add nzbhydra2 chart (#94)
* Add chart for nzbhydra2

* Update nzbhydra2 in README.md

* Update port in deployment
2019-12-10 14:32:57 -05:00
Devin Buhl
b8073b9310 Add chart for Jackett (#93) 2019-12-10 11:40:15 -05:00
Devin Buhl
94d7913f31 Add Ombi Chart (#91)
* Add Ombi Chart

* Remove download path

* Update default port 3579

* Update README.md
2019-12-10 09:41:38 -05:00
Devin Buhl
a3062bebad Add Tautulli chart (#92)
* Add tautulli chart

* Update README.md
2019-12-10 09:40:53 -05:00
Jeff Billimek
a559078b59 various fixes (#88) 2019-10-29 23:46:48 -04:00
Jeff Billimek
af5e168703 adding qbittorrent chart (#87)
* adding qbittorrent chart

* fixing linting

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* qbittorrent tweaks
2019-10-29 23:02:14 -04:00
Jeff Billimek
4649600ef6 new chart - ser2sock (#86)
* new chart - ser2sock

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fix notes

* more notes fixes
2019-10-28 21:22:00 -04:00
Jeff Billimek
87cc1ee645 Remove submodule (#82)
* removing submodule

Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>

* removing submodule

Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>

* removing submodule

Signed-off-by: Jeff Billimek <jeffrey_k_billimek@homedepot.com>
2019-10-19 20:11:30 -04:00
Jeff Billimek
d7ee691ea9 using billimek/rtorrent docker image until upstream is fixed (#81)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-19 12:31:27 -04:00
Jeff Billimek
05cf548b9e Fix annotations on multiple charts (#80)
* fix annotations for comcast chart

* fix annotations for modem-stats chart

* fix annotations for nzbget chart

* fix annotations for rtorrent-flood chart

* fix annotations for speedtest chart

* fix annotations for uptimerobot chart
2019-10-13 17:40:58 -04:00
Jeff Billimek
6884ae9cde adding pod annotations to speedtest chart (#78)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 13:40:18 -04:00
Jeff Billimek
897ba1e981 adding pod annotations to uptimerobot chart (#79)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 13:38:52 -04:00
Jeff Billimek
efd1200716 adding pod annotations to modem-stats chart (#77)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 13:38:34 -04:00
Jeff Billimek
1ed56e9f26 adding pod annotations to comcast chart (#76)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 13:34:17 -04:00
Jeff Billimek
f8d654a7d7 adding pod annotations to rtorrent-flood (#75)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 13:28:25 -04:00
Jeff Billimek
ba96aa3efd adding pod annotations to nzbget (#73)
* adding pod annotations to nzbget

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* adding missing if check

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 13:18:18 -04:00
Jeff Billimek
88744888e7 switching local-path-provisioner for chart testing in kind
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-10-07 10:46:08 -04:00
Ryan Holt
f95ab5d59c add subpath to data for session info (#70) 2019-10-06 13:40:01 -04:00
Ryan Holt
0902903bae add podannotations to radarr (#69) 2019-10-03 13:23:46 -04:00
Ryan Holt
fde5379871 add podannotations to sonarr (#68)
* add podannotations to sonarr

* add newline at end to resolve CI issue
2019-10-03 12:54:50 -04:00
Jeff Billimek
dd686320ac updates to rtorrent-flood chart (#67)
* updates to rtorrent-flood chart

* trying to fix linting errors

* resources should be set in values

* add necessary resources stanza

* revert livenessProbe for rtorrent container
2019-09-29 07:55:44 -05:00
Winston R. Milling
32c21ea851 Add name to repo add command (#66)
```
$ helm repo add https://billimek.com/billimek-charts/
Error: This command needs 2 arguments: name for the chart repository, the url of the chart repository
```
2019-09-08 18:12:20 -04:00
Jeff Billimek
05594cc703 copying submodule charts instead of symlink (#65)
* copying submodule charts instead of symlink

* fix linting for provisioner chart

* fix linting

* removing trailing space

* linting fixes
2019-08-08 23:48:25 -04:00
Jeff Billimek
bac9d5bc47 Merge branch 'master' of github.com:billimek/billimek-charts
* 'master' of github.com:billimek/billimek-charts:
  adding provisioner chart submodule (#64)
2019-08-08 23:03:13 -04:00
Jeff Billimek
643cb125fa exclude hidden dirs 2019-08-08 23:01:19 -04:00
Jeff Billimek
ae793fdedc adding provisioner chart submodule (#64)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-08-08 22:58:15 -04:00
Jeff Billimek
2219bde075 forcing bump of kube-plex submodule (#63)
* forcing bump of kube-plex submodule

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* re-arranging submodules

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-08-08 22:52:06 -04:00
Jeff Billimek
114be3b2aa adding auth0 chart (#62)
* adding auth0 chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* renaming auth0 chart to forwardauth

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* adding home stanza to charts.yaml

* adding dniel as maintainer

* fixing linting error with Chart.yaml
2019-08-08 22:23:39 -04:00
Jeff Billimek
ead44d74e3 Migrate to apps/v1 (#60)
Fixes #47
2019-08-05 08:13:12 -04:00
Jeff Billimek
bcbaca7f90 handle git submodules 2019-08-05 06:49:45 -04:00
Jeff Billimek
def813d007 bumping frigate chart for CI test (#59) 2019-08-05 06:11:39 -04:00
Jeff Billimek
65d9a88cf7 correct use of variable 2019-08-05 01:19:20 -04:00
Jeff Billimek
03e04fd8a7 use local var 2019-08-05 01:17:14 -04:00
Jeff Billimek
b6cfb96517 refactor check 2019-08-05 01:15:14 -04:00
Jeff Billimek
da472a93d7 debugging 2019-08-05 01:11:17 -04:00
Jeff Billimek
4930cf60ec refactoring changed check 2019-08-05 01:07:09 -04:00
Jeff Billimek
4ad5b20e64 fix linting 2019-08-05 00:57:04 -04:00
Jeff Billimek
5a8da33729 Merge branch 'master' of github.com:billimek/billimek-charts
* 'master' of github.com:billimek/billimek-charts:
  bumping to latest kube-plex (#58)
2019-08-05 00:52:40 -04:00
Jeff Billimek
d54e0ae98b better change detection 2019-08-05 00:52:34 -04:00
Jeff Billimek
56b9c216cb bumping to latest kube-plex (#58)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-08-05 00:02:07 -04:00
Jeff Billimek
ee2bcafce3 adding kube-plex dir to check 2019-08-04 23:59:55 -04:00
Jeff Billimek
cd9f5b725a shellcheck linting 2019-08-04 23:54:51 -04:00
Jeff Billimek
85b73933b4 better chart check upfront 2019-08-04 23:53:45 -04:00
Jeff Billimek
7f0177fed4 wrap check for release and update 2019-08-04 23:40:44 -04:00
Jeff Billimek
d1e2700fb6 skip ci for gh-pages commit
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-08-04 23:29:30 -04:00
Jeff Billimek
091f4aa5f9 bumping chart for CI test (#57)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-08-04 23:05:04 -04:00
Jeff Billimek
e0931c1cb4 fixup chart-dirs 2019-08-04 22:51:11 -04:00
Jeff Billimek
1212d23325 inject ssh key fingerprint 2019-08-04 22:51:00 -04:00
Jeff Billimek
3ce6c23e2b more robust change detection 2019-08-04 22:17:37 -04:00
Jeff Billimek
9c6d072261 adding additional filtering to changed chart detection 2019-08-04 22:10:36 -04:00
Jeff Billimek
f82ee862f5 instruct ct where charts are located 2019-08-04 21:51:49 -04:00
Jeff Billimek
6d6c119b4b fix chart diff check and add badge 2019-08-04 21:29:20 -04:00
Jeff Billimek
950e912b1e fixing command case typo 2019-08-04 21:25:01 -04:00
Jeff Billimek
5f077e840b bumping frigate chart and image tag (#55)
* bumping frigate chart and image tag

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* fixing repo name and chart diff script
2019-08-04 21:23:14 -04:00
Jeff Billimek
999c2a1a93 add chart testing on PRs 2019-08-04 20:52:18 -04:00
Jeff Billimek
fd0707c148 initial circleci import 2019-08-04 20:40:59 -04:00
Jeff Billimek
f5698b87a5 Update main.workflow
commenting all github actions workflows

for migration to circleCI
2019-08-04 20:33:03 -04:00
Jeff Billimek
627754823c clarify readme (#53)
* changing icon

* fixing readme

* clarifying readme instructions
2019-07-27 00:20:41 -04:00
Jeff Billimek
3a892389d7 changing icon (#52)
* changing icon

* fixing readme
2019-07-27 00:11:56 -04:00
Jeff Billimek
83f7e4556c Frigate (#51)
* frigate helm chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* remove trailing spaces

* bump chart version

* refactoring frigate ingress

* refactoring configmap

* refactoring configmap
2019-07-26 23:55:53 -04:00
Jeff Billimek
d3b3ef83a9 refactoring frigate ingress (#50)
* frigate helm chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* remove trailing spaces

* bump chart version

* refactoring frigate ingress
2019-07-26 23:39:18 -04:00
Jeff Billimek
201b2a2dc9 Frigate (#49)
* frigate helm chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* remove trailing spaces

* bump chart version
2019-07-26 23:17:39 -04:00
Jeff Billimek
7ba269f56c frigate helm chart (#48)
* frigate helm chart

Signed-off-by: Jeff Billimek <jeff@billimek.com>

* remove trailing spaces
2019-07-26 23:01:33 -04:00
Jeff Billimek
12564f09c0 fix rtorrent socket location 2019-07-12 21:41:19 -04:00
Jeff Billimek
e7ee503cbe Rtorrent flood refactor (#46)
* refactoring rtorrent-flood chart
2019-07-12 21:29:31 -04:00
Jeff Billimek
3d16f4143f updating kube-plex submodule (#45)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-07-11 23:19:43 -04:00
Jeff Billimek
352ab8a040 fixing image tag for rtorrent-flood and tweaking probes (#44)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-07-08 07:00:11 -04:00
Jeff Billimek
7f2d657c3c Add build status badge (#42) 2019-06-12 17:24:38 -04:00
Jeff Billimek
b4b1cc0fc7 Add missing logos (#39)
* adding logo for comcast

* add logo for digitalocean-dyndns

* adding icon for modem-stats

* adding icon for speedtest chart

* adding icon for uptimerobot chart

* remove trailing space
2019-05-27 22:50:01 -04:00
Jeff Billimek
8e1b67f663 bumping chart versions (#38)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 22:10:12 -04:00
Jeff Billimek
703efb3748 Bump image versions (#36)
* bumping nzbget image versions

* bumping radarr image versions
2019-05-27 21:59:46 -04:00
Jeff Billimek
95ff428bd1 skip linting for pushing charts step 2019-05-27 21:49:08 -04:00
Jeff Billimek
170c03595b skip linting of all charts during a push to master 2019-05-27 21:47:56 -04:00
Jeff Billimek
1db19435df bumping sonarr image version (#35)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 21:41:44 -04:00
Jeff Billimek
b527a7e0cd reverting .github/main/workflow to commit b0e4a8fe85 2019-05-27 21:37:50 -04:00
Jeff Billimek
f886b4600f updating speedtest readme (#33)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 21:22:42 -04:00
Jeff Billimek
fcbf8ec362 doing push events in parallel 2019-05-27 21:02:41 -04:00
Jeff Billimek
91737bd9fd fixing syntax 2019-05-27 20:58:42 -04:00
Jeff Billimek
849fcbc703 updating labels 2019-05-27 20:40:05 -04:00
Jeff Billimek
d225f62e29 attempting to merge filters in parallel 2019-05-27 20:39:05 -04:00
Jeff Billimek
17696bfbc9 updating uptimerobot readme (#31)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 08:26:39 -04:00
Jeff Billimek
b0e4a8fe85 filter PRs on action 'opened|synchronize' 2019-05-27 08:23:32 -04:00
Jeff Billimek
fce9902416 updating uptimerobot readme (#30)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:55:51 -04:00
Jeff Billimek
b48a0e4b08 updating uptimerobot readme
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:51:52 -04:00
Jeff Billimek
15b1d8301a filter not deleted PRs 2019-05-27 01:47:24 -04:00
Jeff Billimek
6fb5bc988c updating uptimerobot readme (#29)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:32:47 -04:00
Jeff Billimek
3d181e42f7 forcing a github action check
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:20:32 -04:00
Jeff Billimek
7af7d77860 forcing a github action check
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:18:06 -04:00
Jeff Billimek
e8b78673fb bumping chart version
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:04:01 -04:00
Jeff Billimek
aaf0f86201 forcing a push
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 01:01:27 -04:00
Jeff Billimek
9c50b524bc updating speedtest readme (#28)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-27 00:51:52 -04:00
Jeff Billimek
7105c766fb fixing wording 2019-05-27 00:47:14 -04:00
Jeff Billimek
857a207e99 use personal access token till bug is resolved 2019-05-27 00:27:15 -04:00
Jeff Billimek
eda95a9988 adding COMMIT_EMAIL secret 2019-05-26 23:43:05 -04:00
Jeff Billimek
11118ef0fb updating sonarr readme (#27)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-26 23:08:07 -04:00
Jeff Billimek
fb9fb64a6b split-out branch cleanup into separate workflow 2019-05-26 23:03:06 -04:00
Jeff Billimek
8abc8acae6 updating radarr readme (#26)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-26 22:52:40 -04:00
Jeff Billimek
038f9af431 add safe exit to branch cleanup step 2019-05-26 22:50:05 -04:00
Jeff Billimek
73602d60f0 add master branch filter and auto delete branch 2019-05-26 22:47:14 -04:00
Jeff Billimek
d4ef757ae1 updating nzbget readme (#25)
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-26 22:38:58 -04:00
Jeff Billimek
7253d71265 add a 'not deleted' filter check 2019-05-26 22:22:20 -04:00
Jeff Billimek
c8c5b54dde correcting readme for modem-stats chart (#24) 2019-05-26 22:09:42 -04:00
Jeff Billimek
c18e9e0944 add additional refs/head/master filter for pushes 2019-05-26 22:06:16 -04:00
Jeff Billimek
84dcf9011f remediating digitalocean chart README (#23) 2019-05-26 22:00:45 -04:00
Jeff Billimek
f8897a11cf remove PR action type check 2019-05-26 21:51:18 -04:00
Jeff Billimek
d441df7842 switching PR workflow to use pull request events 2019-05-26 21:48:06 -04:00
Jeff Billimek
64228b418f add additional PR filter 2019-05-26 21:39:41 -04:00
Jeff Billimek
935deb6863 separate push and PR workflows 2019-05-26 17:49:44 -04:00
Jeff Billimek
5a2889e4b1 combine push and PR workflows 2019-05-26 17:46:29 -04:00
Jeff Billimek
9159b65fbf fixing comcast chart README (#21)
* fixing comcast README

* bumping chart version

Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-26 16:42:46 -04:00
Jeff Billimek
98f572ef60 add filter to exclude merged PRs
... due to double-push events that occur when a PR is merged
2019-05-26 16:33:17 -04:00
Jeff Billimek
9f95ce7d52 fixing repo urls (#18)
* fixing repo urls

* bumping chart versions
2019-05-20 00:12:31 -04:00
Jeff Billimek
d9aa9a6830 fixing charts URL in readme 2019-05-15 23:28:18 -04:00
Jeff Billimek
556f14c4f8 Update README.md 2019-05-15 23:27:42 -04:00
Jeff Billimek
a10d285a86 bumping to trigger action
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-15 23:07:41 -04:00
Jeff Billimek
261438eca1 removing unnecessary quotes 2019-05-15 22:55:47 -04:00
Jeff Billimek
50bef9035d fixing URL argument 2019-05-15 22:53:29 -04:00
Jeff Billimek
984cb08d43 bumping submodule
Signed-off-by: Jeff Billimek <jeff@billimek.com>
2019-05-15 22:45:24 -04:00
Jeff Billimek
ec360be552 bumping radarr chart version (#17) 2019-05-15 22:12:03 -04:00
Jeff Billimek
c585c75f8b bumping flood-rtorrent 2019-05-15 22:07:53 -04:00
Jeff Billimek
167960ce38 bumping sonarr version (#16) 2019-05-15 22:03:34 -04:00
Jeff Billimek
12a0da30ac adding filter for master branch 2019-05-15 22:00:20 -04:00
Jeff Billimek
d708128847 fixing linting (#15)
* fixing linting

* bumping chart version

* fixing comment linting error

* removing trailing spaces
2019-05-15 21:47:11 -04:00
Jeff Billimek
49f5027b6b remove old env variables 2019-05-15 21:38:10 -04:00
Jeff Billimek
c8dd8e5380 adding required newline to end of file 2019-05-15 21:36:39 -04:00
Jeff Billimek
56d0d0228c Merge pull request #14 from billimek/speedtest
bumping speedtest chart
2019-05-15 21:29:07 -04:00
Jeff Billimek
3f86f3b099 fixing indenting 2019-05-15 21:28:03 -04:00
Jeff Billimek
62e1806c16 bumping commit 2019-05-15 21:24:07 -04:00
Jeff Billimek
8637d2324c bumping commit 2019-05-15 21:16:37 -04:00
Jeff Billimek
2b539769ad bumping commit 2019-05-15 21:10:17 -04:00
Jeff Billimek
2e432aaeb6 bumping commit 2019-05-15 21:05:42 -04:00
Jeff Billimek
e63ed21681 bumping commit 2019-05-15 20:33:49 -04:00
Jeff Billimek
de901ec867 fixing description 2019-05-15 20:31:23 -04:00
Jeff Billimek
608e9a7b1a bumping commit 2019-05-15 20:22:59 -04:00
Jeff Billimek
01edda8c9c bumping bommit 2019-05-15 20:16:50 -04:00
Jeff Billimek
33499b6027 adding env variables 2019-05-15 20:16:09 -04:00
Jeff Billimek
516dad2b25 bumping speedtest chart 2019-05-15 20:12:03 -04:00
Jeff Billimek
e8fdd66385 Update main.workflow 2019-05-15 20:08:56 -04:00
Jeff Billimek
0977a5cfb2 Update main.workflow 2019-05-15 20:07:40 -04:00
Jeff Billimek
78027546f4 adding space in comment 2019-05-15 18:50:04 -04:00
Jeff Billimek
61fed37427 removing trailing space 2019-05-15 18:47:13 -04:00
Jeff Billimek
d29703a73a bumping modem-stats 2019-05-15 18:43:10 -04:00
Jeff Billimek
02b4a75046 remove extra trailing newline 2019-05-15 18:38:03 -04:00
Jeff Billimek
e488ab0309 add extra trailing space 2019-05-15 18:28:33 -04:00
Jeff Billimek
c56e0d05ae fixing trailing space 2019-05-15 18:25:39 -04:00
Jeff Billimek
52ef2636b0 removing trailing space 2019-05-15 18:23:39 -04:00
Jeff Billimek
bd982d0b67 bumping modem-stats 2019-05-15 18:19:16 -04:00
Jeff Billimek
04d3d1a520 bumping comcast chart 2019-05-15 16:50:23 -04:00
Jeff Billimek
08648f79a4 bumping nzbget chart version 2019-05-15 16:44:58 -04:00
Jeff Billimek
d52f402b54 changing readme for comcast chart 2019-05-15 16:43:43 -04:00
Jeff Billimek
426f77ec01 Merge branch 'master' of github.com:billimek/billimek-charts
* 'master' of github.com:billimek/billimek-charts:
  Update main.workflow
  using check_run instead of push
2019-05-15 16:41:31 -04:00
Jeff Billimek
5c9e09b2fa bumping to force a change 2019-05-15 16:41:23 -04:00
Jeff Billimek
2f9350fe77 Update main.workflow 2019-05-15 16:28:32 -04:00
Jeff Billimek
6966e65fb6 using check_run instead of push 2019-05-15 16:27:10 -04:00
Jeff Billimek
839c516811 Merge branch 'master' of github.com:billimek/billimek-charts
* 'master' of github.com:billimek/billimek-charts:
  remove chart pre-check step
2019-05-15 16:08:23 -04:00
Jeff Billimek
402740ac73 adding newline to values.yaml file 2019-05-15 16:08:14 -04:00
Jeff Billimek
27a0e8f8df remove chart pre-check step 2019-05-15 14:57:54 -04:00
Jeff Billimek
372381f88e Merge branch 'master' of github.com:billimek/billimek-charts
* 'master' of github.com:billimek/billimek-charts:
  add precondition check before packaging step
2019-05-15 11:50:53 -04:00
Jeff Billimek
5d5f0f4178 bumping modem-stats chart version 2019-05-15 11:50:44 -04:00
Jeff Billimek
f45bf6662b add precondition check before packaging step 2019-05-15 11:49:15 -04:00
Jeff Billimek
71eb8b4ed7 bumping digitalocean-dns chart version 2019-05-15 11:18:10 -04:00
Jeff Billimek
798070948a use . instead of * for target 2019-05-15 11:06:10 -04:00
Jeff Billimek
fdc9109227 use billimek fork of action template 2019-05-15 10:56:56 -04:00
Jeff Billimek
b792f0d99a bumping comcast chart version 2019-05-15 10:40:47 -04:00
Jeff Billimek
9685a001da Update main.workflow 2019-05-15 10:31:33 -04:00
659 changed files with 26716 additions and 697 deletions

7
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,7 @@
#### Special notes for your reviewer:
#### Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]
- [ ] Chart Version bumped
- [ ] Variables are documented in the README.md
- [ ] Title of the PR starts with chart name (e.g. `[radarr]`)

28
.github/workflows/lint-test.yaml vendored Normal file
View File

@@ -0,0 +1,28 @@
name: Lint and Test Charts
on: pull_request
jobs:
lint-test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Fetch history
run: |
git fetch --prune --unshallow;
echo ::set-env name=commitmsg::$(git log --format=%B -n 1 ${{ github.event.after }})
- name: Run chart-testing (lint)
id: lint
uses: helm/chart-testing-action@v1.0.0
if: "! contains(env.commitmsg, '[skip lint]')"
with:
command: lint
config: ct.yaml
- name: Create kind cluster
uses: helm/kind-action@v1.0.0
if: "steps.lint.outputs.changed == 'true' && ! contains(env.commitmsg, '[skip install]')"
- name: Run chart-testing (install)
uses: helm/chart-testing-action@v1.0.0
if: "steps.lint.outputs.changed == 'true' && ! contains(env.commitmsg, '[skip install]')"
with:
command: install
config: ct.yaml

45
.github/workflows/release.yaml vendored Normal file
View File

@@ -0,0 +1,45 @@
name: Release Charts
on:
push:
branches:
- master
jobs:
release:
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Turnstyle
uses: softprops/turnstyle@v1
with:
continue-after-seconds: 180
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch history
run: git fetch --prune --unshallow
- name: Configure Git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
# See https://github.com/helm/chart-releaser-action/issues/6
- name: Install Helm
run: |
curl -fsSLo get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
- name: Add dependency chart repos
run: |
helm repo add stable https://charts.helm.sh/stable
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.0.0
with:
charts_repo_url: https://k8s-at-home.com/charts/
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

3
.gitignore vendored
View File

@@ -1 +1,4 @@
.env
.idea
charts/*/Chart.lock
charts/*/charts

3
.gitmodules vendored
View File

@@ -1,3 +0,0 @@
[submodule "kube-plex"]
path = kube-plex
url = https://github.com/billimek/kube-plex.git

13
.pre-commit-config.yaml Normal file
View File

@@ -0,0 +1,13 @@
# See https://pre-commit.com for more information
repos:
- repo: local
hooks:
- id: ct-lint
name: "Chart Test: Lint"
language: docker_image
pass_filenames: false
types: ['file']
files: '^charts/.*(\.ya?ml|\.tpl|\.helmignore|NOTES.txt)'
entry: -u 0 quay.io/helmpack/chart-testing:v3.0.0 ct
args:
- lint

57
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,57 @@
# Contributing Guidelines
Contributions are welcome via GitHub pull requests. This document outlines the process to help get your contribution accepted.
## Sign off Your Work
The Developer Certificate of Origin (DCO) is a lightweight way for contributors to certify that they wrote or otherwise have the right to submit the code they are contributing to the project. Here is the full text of the [DCO](http://developercertificate.org/). Contributors must sign-off that they adhere to these requirements by adding a `Signed-off-by` line to commit messages.
```
This is my commit message
Signed-off-by: Random J Developer <random@developer.example.org>
```
See `git help commit`:
```
-s, --signoff
Add Signed-off-by line by the committer at the end of the commit log
message. The meaning of a signoff depends on the project, but it typically
certifies that committer has the rights to submit this work under the same
license and agrees to a Developer Certificate of Origin (see
http://developercertificate.org/ for more information).
```
## How to Contribute
1. Fork this repository, develop, and test your changes
1. Remember to sign off your commits as described above
1. Submit a pull request
***NOTE***: In order to make testing and merging of PRs easier, please submit changes to multiple charts in separate PRs.
### Technical Requirements
* Must follow [Charts best practices](https://helm.sh/docs/topics/chart_best_practices/).
* Must pass CI jobs for linting and installing changed charts with the [chart-testing](https://github.com/helm/chart-testing) tool See [pre-commit](#pre-commit) below.
* Any change to a chart requires a version bump following [semver](https://semver.org/) principles. See [Immutability](#immutability) and [Versioning](#versioning) below.
Once changes have been merged, the release job will automatically run to package and release changed charts.
### Immutability
Chart releases must be immutable. Any change to a chart warrants a chart version bump even if it is only changed to the documentation.
### Versioning
The chart `version` should follow [semver](https://semver.org/).
Charts should start at `1.0.0`. Any breaking (backwards incompatible) changes to a chart should:
1. Bump the MAJOR version
2. In the README, under a section called "Upgrading", describe the manual steps necessary to upgrade to the new (specified) MAJOR version
### pre-commit
This repo supports the [pre-commit](https://pre-commit.com) framework. By installing the framework (see [docs](https://pre-commit.com/#install)) it is possible to perform the chart linting step before committing your code. This can help prevent linter issues in the pipeline. Note that this requires having Docker running on your development environment.

View File

@@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Copyright 2020 k8s@Home
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

View File

@@ -1,8 +1,30 @@
# personal helm charts
# k8s@Home collection of helm charts
## Installation
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![](https://github.com/k8s-at-home/charts/workflows/Release%20Charts/badge.svg?branch=master)](https://github.com/k8s-at-home/charts/actions)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
[![Artifact HUB](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/k8s-at-home)](https://artifacthub.io/packages/search?repo=k8s-at-home)
## Usage
[Helm](https://helm.sh) must be installed to use the charts.
Please refer to Helm's [documentation](https://helm.sh/docs/) to get started.
Once Helm is set up properly, add the repo as follows:
```console
helm repo add billimek https://billimek.github.io/helm-repo
helm search billimek
helm repo add k8s-at-home https://k8s-at-home.com/charts/
```
You can then run `helm search repo k8s-at-home` to see the charts.
## Charts
See [artifact hub](https://artifacthub.io/packages/search?org=k8s-at-home) for a complete list.
## Contributing
See [CONTRIBUTING.md](./CONTRIBUTING.md)
## License
[Apache 2.0 License](./LICENSE)

View File

@@ -0,0 +1,72 @@
{{- define "repository.organization" -}}
k8s-at-home
{{- end -}}
{{- define "repository.url" -}}
https://github.com/k8s-at-home/charts
{{- end -}}
{{- define "helm.url" -}}
https://k8s-at-home.com/charts/
{{- end -}}
{{- define "helm.path" -}}
{{ template "repository.organization" . }}/{{ template "chart.name" . }}
{{- end -}}
{{- define "badge.artifactHub" -}}
[![ArtifactHub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/{{ template "chart.name" . }})](https://artifacthub.io/packages/helm/{{ template "chart.name" . }})
{{- end -}}
{{- define "description.multiarch" -}}
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
{{- end -}}
{{- define "install.tldr" -}}
## TL;DR
```console
$ helm repo add {{ template "repository.organization" . }} {{ template "helm.url" . }}
$ helm install {{ template "helm.path" . }}
```
{{- end -}}
{{- define "install" -}}
## Installing the Chart
To install the chart with the release name `{{ template "chart.name" . }}`:
```console
helm install {{ template "chart.name" . }} {{ template "helm.path" . }}
```
{{- end -}}
{{- define "uninstall" -}}
## Uninstalling the Chart
To uninstall the `{{ template "chart.name" . }}` deployment:
```console
helm uninstall {{ template "chart.name" . }}
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
{{- end -}}
{{- define "configuration.header" -}}
## Configuration
{{- end -}}
{{- define "configuration.readValues" -}}
Read through the [values.yaml]({{ template "repository.url" . }}/blob/master/charts/{{ template "chart.name" . }}/values.yaml)
file. It has several commented out suggested values.
{{- end -}}
{{- define "configuration.example.set" -}}
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install {{ template "chart.name" . }} \
--set env.TZ="America/New York" \
{{ template "helm.path" . }}
```
{{- end -}}
{{- define "configuration.example.file" -}}
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
For example,
```console
helm install {{ template "chart.name" . }} {{ template "helm.path" . }} --values values.yaml
```
{{- end -}}

View File

@@ -0,0 +1,24 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
# OWNERS file for Kubernetes
OWNERS

View File

@@ -0,0 +1,15 @@
apiVersion: v2
appVersion: v0.102.0
description: DNS proxy as ad-blocker for local network
name: adguard-home
version: 2.2.0
keywords:
- adguard-home
- adguard
- dns
home: https://github.com/k8s-at-home/charts/tree/master/charts/adguard-home
icon: https://avatars3.githubusercontent.com/u/8361145?s=200&v=4?sanitize=true
sources:
- https://github.com/AdguardTeam/AdGuardHome
maintainers:
- name: billimek

View File

@@ -0,0 +1,4 @@
approvers:
- billimek
reviewers:
- billimek

View File

@@ -0,0 +1,64 @@
# DNS proxy as ad-blocker for local network
This is an opinionated helm chart for [adguard-home](https://github.com/AdguardTeam/AdGuardHome)
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
## TL;DR
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/adguard-home
```
## Installing the Chart
To install the chart with the release name `my-release`:
```console
helm install --name adguard-home k8s-at-home/adguard-home
```
## Uninstalling the Chart
To uninstall/delete the `adguard-home` deployment:
```console
helm delete adguard-home --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/adguard-home/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name adguard-home \
--set timeZone="America/New York" \
k8s-at-home/adguard-home
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name adguard-home -f values.yaml k8s-at-home/adguard-home
```
#### Helm force upgrade
```sh
helm upgrade --force
```
#### Delete the existing `adguard-home` services prior to upgrading
```sh
kubectl delete svc/adguard-home
```
#### Remove the existing adguard-home chart first
This is the 'easiest' approach, but will incur downtime which can be problematic if you rely on adguard-home for DNS

View File

@@ -0,0 +1,15 @@
1. Get the application URL by running these commands:
{{- if contains "NodePort" .Values.serviceUDP.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "adguard-home.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.serviceUDP.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w {{ include "adguard-home.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "adguard-home.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.serviceUDP.port }}
{{- else if contains "ClusterIP" .Values.serviceUDP.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "adguard-home.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl port-forward $POD_NAME 8080:3000
{{- end }}

View File

@@ -0,0 +1,32 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "adguard-home.name" -}}
{{- default .Chart.Name .Values.nameOverride | 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 "adguard-home.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 -}}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "adguard-home.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

View File

@@ -0,0 +1,29 @@
{{- if and .Values.persistence.config.enabled (not .Values.persistence.config.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ template "adguard-home.fullname" . }}-config
{{- if .Values.persistence.config.skipuninstall }}
annotations:
"helm.sh/resource-policy": keep
{{- end }}
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
accessModes:
- {{ .Values.persistence.config.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.config.size | quote }}
{{- if .Values.persistence.config.storageClass }}
{{- if (eq "-" .Values.persistence.config.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.config.storageClass }}"
{{- end }}
{{- end }}
{{- end -}}

View File

@@ -0,0 +1,14 @@
{{- if .Values.configAsCode.enabled }}
kind: ConfigMap
apiVersion: v1
metadata:
name: {{ include "adguard-home.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
data:
AdGuardHome.yaml: |
{{- toYaml .Values.configAsCode.config | nindent 4 }}
{{- end }}

View File

@@ -0,0 +1,196 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "adguard-home.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
replicas: 1
strategy:
type: {{ .Values.strategyType }}
revisionHistoryLimit: 3
selector:
matchLabels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
annotations:
{{- with .Values.podAnnotations }}
{{ toYaml . | nindent 8 }}
{{- end }}
{{- if .Values.configAsCode.enabled }}
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
{{- end }}
spec:
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
{{- if or .Values.configAsCode.enabled .Values.securityContext.runAsUser }}
initContainers:
{{- if .Values.configAsCode.enabled }}
- name: "config"
securityContext:
readOnlyRootFilesystem: true
image: "{{ .Values.configAsCode.image.repository }}:{{ .Values.configAsCode.image.tag }}"
imagePullPolicy: {{ .Values.configAsCode.image.pullPolicy }}
command: ["sh", "-c", "cat /configmap/AdGuardHome.yaml > /opt/adguardhome/conf/AdGuardHome.yaml"]
resources: {{- toYaml .Values.configAsCode.resources | nindent 12 }}
volumeMounts:
- name: configmap
mountPath: /configmap
- name: config
mountPath: /opt/adguardhome/conf
readOnly: false
{{- end }}
{{- if .Values.securityContext.runAsUser }}
- name: "volume-permissions"
securityContext:
readOnlyRootFilesystem: true
image: "{{ .Values.volumePermissions.image.repository }}:{{ .Values.volumePermissions.image.tag }}"
imagePullPolicy: {{ .Values.volumePermissions.image.pullPolicy }}
command: ["/bin/chown", "-R", "{{ .Values.securityContext.runAsUser }}:", "/opt/adguardhome/work", "/opt/adguardhome/conf"]
resources: {{- toYaml .Values.volumePermissions.resources | nindent 12 }}
volumeMounts:
- name: work
mountPath: /opt/adguardhome/work
readOnly: false
- name: config
mountPath: /opt/adguardhome/conf
readOnly: false
{{- end }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ default .Chart.AppVersion .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
{{- if .Values.timezone }}
- name: TZ
value: {{ .Values.timezone | quote }}
{{- end }}
volumeMounts:
- name: work
mountPath: /opt/adguardhome/work
readOnly: false
- name: config
mountPath: /opt/adguardhome/conf
readOnly: false
{{- if .Values.tlsSecretName }}
- name: certs
mountPath: /certs
readOnly: false
{{- end }}
ports:
- name: http
{{- if .Values.configAsCode.enabled }}
containerPort: {{ .Values.configAsCode.config.bind_port | default 3000 }}
{{- else }}
containerPort: 3000
{{- end }}
- name: dns
{{- if .Values.configAsCode.enabled }}
containerPort: {{ .Values.configAsCode.config.dns.port | default 53 }}
{{- else }}
containerPort: 53
{{- end }}
protocol: TCP
- name: dns-udp
{{- if .Values.configAsCode.enabled }}
containerPort: {{ .Values.configAsCode.config.dns.port | default 53 }}
{{- else }}
containerPort: 53
{{- end }}
protocol: UDP
{{- if .Values.serviceDHCP.enabled }}
- name: dhcp-server-udp
containerPort: 67
protocol: UDP
- name: dhcp-client-tcp
containerPort: 68
protocol: TCP
- name: dhcp-client-udp
containerPort: 68
protocol: UDP
{{- end }}
{{- if .Values.serviceDNSOverTLS.enabled }}
- name: dns-over-tls
containerPort: 853
protocol: TCP
{{- end }}
{{- if .Values.probes.liveness.enabled }}
livenessProbe:
httpGet:
path: /login.html
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.liveness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
periodSeconds: {{ .Values.probes.liveness.periodSeconds }}
{{- end }}
{{- if .Values.probes.readiness.enabled }}
readinessProbe:
httpGet:
path: /login.html
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.readiness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
periodSeconds: {{ .Values.probes.readiness.periodSeconds }}
{{- end }}
{{- if .Values.probes.startup.enabled }}
startupProbe:
httpGet:
path: /login.html
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.startup.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
{{- end }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumes:
{{- if .Values.tlsSecretName }}
- name: certs
secret:
secretName: {{ .Values.tlsSecretName }}
{{- end }}
{{- if .Values.configAsCode.enabled }}
- name: configmap
configMap:
name: {{ include "adguard-home.fullname" . }}
{{- end }}
- name: config
{{- if .Values.persistence.config.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.config.existingClaim }}{{ .Values.persistence.config.existingClaim }}{{- else }}{{ template "adguard-home.fullname" . }}-config{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
- name: work
{{- if .Values.persistence.work.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.work.existingClaim }}{{ .Values.persistence.work.existingClaim }}{{- else }}{{ template "adguard-home.fullname" . }}-work{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@@ -1,13 +1,13 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "sonarr.fullname" . -}}
{{- $fullName := include "adguard-home.fullname" . -}}
{{- $ingressPath := .Values.ingress.path -}}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ $fullName }}
labels:
app.kubernetes.io/name: {{ include "sonarr.name" . }}
helm.sh/chart: {{ include "sonarr.chart" . }}
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- with .Values.ingress.annotations }}

View File

@@ -0,0 +1,45 @@
{{- if .Values.serviceDHCP.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "adguard-home.fullname" . }}-dhcp
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.serviceDHCP.annotations }}
annotations:
{{ toYaml .Values.serviceDHCP.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceDHCP.type }}
{{- if .Values.serviceDHCP.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceDHCP.loadBalancerIP }}
{{- end }}
{{- if .Values.serviceDHCP.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.serviceDHCP.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- if .Values.serviceDHCP.externalIPs }}
externalIPs:
{{ toYaml .Values.serviceDHCP.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.serviceDHCP.externalTrafficPolicy }}
ports:
- port: 67
targetPort: dhcp-server-udp
protocol: UDP
name: dhcp-server-udp
- port: 68
targetPort: dhcp-client-tcp
protocol: TCP
name: dhcp-client-tcp
- port: 68
targetPort: dhcp-client-udp
protocol: UDP
name: dhcp-client-udp
selector:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -0,0 +1,37 @@
{{- if .Values.serviceDNSOverTLS.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "adguard-home.fullname" . }}-dns-over-tls
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.serviceDNSOverTLS.annotations }}
annotations:
{{ toYaml .Values.serviceDNSOverTLS.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceDNSOverTLS.type }}
{{- if .Values.serviceDNSOverTLS.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceDNSOverTLS.loadBalancerIP }}
{{- end }}
{{- if .Values.serviceDNSOverTLS.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.serviceDNSOverTLS.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- if .Values.serviceDNSOverTLS.externalIPs }}
externalIPs:
{{ toYaml .Values.serviceDNSOverTLS.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.serviceDNSOverTLS.externalTrafficPolicy }}
ports:
- port: 853
targetPort: dns-over-tls
protocol: TCP
name: dns-over-tls
selector:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -0,0 +1,37 @@
{{- if .Values.serviceTCP.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "adguard-home.fullname" . }}-tcp
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.serviceTCP.annotations }}
annotations:
{{ toYaml .Values.serviceTCP.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceTCP.type }}
{{- if .Values.serviceTCP.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceTCP.loadBalancerIP }}
{{- end }}
{{- if .Values.serviceTCP.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.serviceTCP.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- if .Values.serviceTCP.externalIPs }}
externalIPs:
{{ toYaml .Values.serviceTCP.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.serviceTCP.externalTrafficPolicy }}
ports:
- port: 53
targetPort: dns
protocol: TCP
name: dns
selector:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -0,0 +1,37 @@
{{- if .Values.serviceUDP.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "adguard-home.fullname" . }}-udp
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.serviceUDP.annotations }}
annotations:
{{ toYaml .Values.serviceUDP.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceUDP.type }}
{{- if .Values.serviceUDP.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceUDP.loadBalancerIP }}
{{- end }}
{{- if .Values.serviceUDP.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.serviceUDP.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- if .Values.serviceUDP.externalIPs }}
externalIPs:
{{ toYaml .Values.serviceUDP.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.serviceUDP.externalTrafficPolicy }}
ports:
- port: 53
targetPort: dns-udp
protocol: UDP
name: dns-udp
selector:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -0,0 +1,35 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "adguard-home.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.service.annotations }}
annotations:
{{ toYaml .Values.service.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.service.type }}
{{- if .Values.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}
{{- if .Values.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- if .Values.service.externalIPs }}
externalIPs:
{{ toYaml .Values.service.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
ports:
- port: 3000
targetPort: http
protocol: TCP
name: http
selector:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -0,0 +1,23 @@
{{- if .Values.serviceMonitor.enabled }}
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ include "adguard-home.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
{{- with .Values.serviceMonitor.additionalLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
selector:
matchLabels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
endpoints:
- port: http
interval: 30s
path: /
{{- end }}

View File

@@ -0,0 +1,29 @@
{{- if and .Values.persistence.work.enabled (not .Values.persistence.work.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ template "adguard-home.fullname" . }}-work
{{- if .Values.persistence.work.skipuninstall }}
annotations:
"helm.sh/resource-policy": keep
{{- end }}
labels:
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
helm.sh/chart: {{ include "adguard-home.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
accessModes:
- {{ .Values.persistence.work.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.work.size | quote }}
{{- if .Values.persistence.work.storageClass }}
{{- if (eq "-" .Values.persistence.work.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.work.storageClass }}"
{{- end }}
{{- end }}
{{- end -}}

View File

@@ -0,0 +1,362 @@
# upgrade strategy type (e.g. Recreate or RollingUpdate)
strategyType: Recreate
configAsCode:
enabled: false
resources: {}
# requests:
# memory: 128Mi
# cpu: 100m
image:
repository: busybox
tag: latest
pullPolicy: Always
config:
bind_host: 0.0.0.0
bind_port: 3000
users: []
# - name: admin
# password: $2y$05$mV4GSa5Dymk4Hjg3NCscBuCYSckCGfc2mbS57SNkBkBAfvqfOdFfm
http_proxy: ""
language: "en"
rlimit_nofile: 0
debug_pprof: false
web_session_ttl: 720
dns:
bind_host: 0.0.0.0
port: 53
statistics_interval: 1
querylog_enabled: true
querylog_interval: 90
querylog_size_memory: 1000
anonymize_client_ip: false
protection_enabled: true
blocking_mode: default
blocking_ipv4: ""
blocking_ipv6: ""
blocked_response_ttl: 10
parental_block_host: family-block.dns.adguard.com
safebrowsing_block_host: standard-block.dns.adguard.com
ratelimit: 0
ratelimit_whitelist: []
refuse_any: true
upstream_dns:
- https://dns10.quad9.net/dns-query
bootstrap_dns:
- 9.9.9.10
- 149.112.112.10
- 2620:fe::10
- 2620:fe::fe:10
all_servers: false
fastest_addr: false
allowed_clients: []
# - 10.0.0.1
# - 10.0.1.1/24
disallowed_clients: []
# - 10.0.1.1
# - 10.0.11.1/24
blocked_hosts: []
# - example.org
# - '*.example.org'
# - '||example.org^'
cache_size: 4194304
cache_ttl_min: 0
cache_ttl_max: 0
bogus_nxdomain: []
aaaa_disabled: false
enable_dnssec: false
edns_client_subnet: false
filtering_enabled: true
filters_update_interval: 24
parental_enabled: false
safesearch_enabled: false
safebrowsing_enabled: false
safebrowsing_cache_size: 1048576
safesearch_cache_size: 1048576
parental_cache_size: 1048576
cache_time: 30
rewrites: []
# - domain: example.org
# answer: 127.0.0.1
# - domain: '*.example.org'
# answer: 127.0.0.1
blocked_services: []
# - facebook
# - origin
# - twitter
# - snapchat
# - skype
# - whatsapp
# - instagram
# - youtube
# - netflix
# - twitch
# - discord
# - amazon
# - ebay
# - cloudflare
# - steam
# - epic_games
# - reddit
# - ok
# - vk
# - mail_ru
# - tiktok
tls:
enabled: false
server_name: ""
force_https: false
port_https: 443
port_dns_over_tls: 853
allow_unencrypted_doh: false
strict_sni_check: false
certificate_chain: ""
private_key: ""
certificate_path: ""
private_key_path: ""
filters:
- enabled: true
url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt
name: AdGuard DNS filter
id: 1
- enabled: false
url: https://adaway.org/hosts.txt
name: AdAway
id: 2
- enabled: false
url: https://www.malwaredomainlist.com/hostslist/hosts.txt
name: MalwareDomainList.com Hosts List
id: 4
whitelist_filters: []
# - enabled: true
# url: https://easylist-downloads.adblockplus.org/exceptionrules.txt
# name: Allow nonintrusive advertising
# id: 1595760241
user_rules: []
# - '||example.org^'
# - '@@||example.org^'
# - 127.0.0.1 example.org
# - '! Here goes a comment'
# - '# Also a comment'
dhcp:
enabled: false
interface_name: ""
gateway_ip: ""
subnet_mask: ""
range_start: ""
range_end: ""
lease_duration: 86400
icmp_timeout_msec: 1000
clients: []
# - name: myuser
# tags:
# - user_admin
# ids:
# - 192.168.91.1
# use_global_settings: true
# filtering_enabled: false
# parental_enabled: false
# safesearch_enabled: false
# safebrowsing_enabled: false
# use_global_blocked_services: true
# blocked_services: []
# upstreams: []
log_file: ""
verbose: false
schema_version: 6
tlsSecretName: ""
# name of the secret that contains the tls cert and key.
# this secret will be mounted inside the adguard container /certs path. e.g. works with cert-manager
image:
repository: adguard/adguardhome
# Image tag is set via charts appVersion. If you want to override the tag, specify it here
# tag: vX.Y.Z
pullPolicy: IfNotPresent
nameOverride: ""
fullnameOverride: ""
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# add:
# - NET_BIND_SERVICE
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
timezone: "UTC"
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
path: /
hosts:
- chart-example.local
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
# Probes configuration
probes:
liveness:
enabled: true
initialDelaySeconds: 5
failureThreshold: 5
periodSeconds: 10
readiness:
enabled: false
initialDelaySeconds: 5
failureThreshold: 5
periodSeconds: 10
startup:
enabled: false
initialDelaySeconds: 5
failureThreshold: 30
periodSeconds: 10
service:
type: ClusterIP
# externalTrafficPolicy: Local
# externalIPs: []
# loadBalancerIP: ""
# a fixed LoadBalancer IP
# loadBalancerSourceRanges: []
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
serviceTCP:
enabled: false
type: NodePort
# externalTrafficPolicy: Local
# externalIPs: []
loadBalancerIP: ""
# a fixed LoadBalancer IP
# loadBalancerSourceRanges: []
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
serviceUDP:
enabled: true
type: NodePort
# externalTrafficPolicy: Local
# externalIPs: []
loadBalancerIP: ""
# a fixed LoadBalancer IP
# loadBalancerSourceRanges: []
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
serviceDNSOverTLS:
enabled: false
## Enable if you use AdGuard as a DNS over TLS/HTTPS server
type: NodePort
# externalTrafficPolicy: Local
# externalIPs: []
loadBalancerIP: ""
# a fixed LoadBalancer IP
# loadBalancerSourceRanges: []
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
serviceDHCP:
enabled: false
## Enable if you use AdGuard as a DHCP Server
type: NodePort
# externalTrafficPolicy: Local
# externalIPs: []
loadBalancerIP: ""
# a fixed LoadBalancer IP
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
serviceMonitor:
enabled: false
additionalLabels: {}
## Pod Annotations
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "api"
persistence:
config:
enabled: true
## adguard-home configuration data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# storageClass: "-"
##
## If you want to reuse an existing claim, you can pass the name of the PVC using
## the existingClaim variable
# existingClaim: your-claim
# subPath: some-subpath
accessMode: ReadWriteOnce
size: 20Mi
## Do not delete the pvc upon helm uninstall
skipuninstall: false
work:
enabled: true
## adguard-home work volume configuration
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# storageClass: "-"
##
## If you want to reuse an existing claim, you can pass the name of the PVC using
## the existingClaim variable
# existingClaim: your-claim
# subPath: some-subpath
accessMode: ReadWriteOnce
size: 10Gi
## Do not delete the pvc upon helm uninstall
skipuninstall: false
volumePermissions:
image:
repository: busybox
tag: latest
pullPolicy: Always
resources: {}
# requests:
# memory: 128Mi
# cpu: 100m
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# memory: 500Mi
# requests:
# cpu: 50m
# memory: 275Mi
nodeSelector: {}
tolerations: []
affinity: {}

24
charts/bazarr/Chart.yaml Normal file
View File

@@ -0,0 +1,24 @@
apiVersion: v2
appVersion: v0.9.0.5
description: Bazarr is a companion application to Sonarr and Radarr. It manages and downloads subtitles based on your requirements
name: bazarr
version: 4.0.2
keywords:
- bazarr
- radarr
- sonarr
- subtitles
- usenet
- torrent
home: https://github.com/k8s-at-home/charts/tree/master/charts/bazarr
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/bazarr.png
sources:
- https://hub.docker.com/r/linuxserver/bazarr/
- https://github.com/morpheus65535/bazarr
maintainers:
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: ^1.1.0

4
charts/bazarr/OWNERS Normal file
View File

@@ -0,0 +1,4 @@
approvers:
- billimek
reviewers:
- billimek

76
charts/bazarr/README.md Normal file
View File

@@ -0,0 +1,76 @@
# Bazarr
This is a helm chart for [Bazarr](https://github.com/morpheus65535/bazarr).
## TL;DR;
```shell
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/bazarr
```
## Installing the Chart
To install the chart with the release name `my-release`:
```console
helm install --name my-release k8s-at-home/bazarr
```
## Uninstalling the Chart
To uninstall/delete the `my-release` deployment:
```console
helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the charts [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bazarr/values.yaml)
file. It has several commented out suggested values.
Additionally you can take a look at the common library [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/common/values.yaml) for more (advanced) configuration options.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install bazarr \
--set env.TZ="America/New York" \
k8s-at-home/bazarr
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the
chart. For example,
```console
helm install bazarr k8s-at-home/bazarr --values values.yaml
```
```yaml
image:
tag: ...
```
---
**NOTE**
If you get
```console
Error: rendered manifests contain a resource that already exists. Unable to continue with install: existing resource conflict: ...`
```
it may be because you uninstalled the chart with `skipuninstall` enabled, you need to manually delete the pvc or use `existingClaim`.
---
## Upgrading an existing Release to a new major version
A major chart version change (like 4.0.1 -> 5.0.0) indicates that there is an incompatible breaking change potentially needing manual actions.
### Upgrading from 3.x.x to 4.x.x
Due to migrating to a centralized common library some values in `values.yaml` have changed.
Examples:
* `service.port` has been moved to `service.port.port`.
* `persistence.type` has been moved to `controllerType`.
Refer to the library values.yaml for more configuration options.

View File

@@ -0,0 +1,2 @@
ingress:
enabled: true

View File

@@ -0,0 +1 @@
{{- include "common.notes.defaultNotes" . -}}

View File

@@ -0,0 +1 @@
{{ include "common.all" . }}

37
charts/bazarr/values.yaml Normal file
View File

@@ -0,0 +1,37 @@
# Default values for Bazarr.
image:
repository: linuxserver/bazarr
pullPolicy: IfNotPresent
tag: version-v0.9.0.5
service:
port:
port: 6767
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
persistence:
config:
enabled: false
emptyDir: false
media:
enabled: false
emptyDir: false
mountPath: /media
## Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
# storageClass: "-"
# accessMode: ReadWriteOnce
# size: 1Gi
## Do not delete the pvc upon helm uninstall
# skipuninstall: false
# existingClaim: ""

View File

@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@@ -0,0 +1,19 @@
apiVersion: v2
name: bitwardenrs
description: Unofficial Bitwarden compatible server written in Rust
type: application
version: 1.0.0
appVersion: 1.16.3
keywords:
- bitwarden
- bitwardenrs
- bitwarden_rs
- password
- rust
home: https://github.com/k8s-at-home/charts/tree/master/charts/bitwarden_rs
sources:
- https://github.com/dani-garcia/bitwarden_rs
maintainers:
- name: DirtyCajunRice
email: nick@cajun.pro
icon: https://raw.githubusercontent.com/bitwarden/brand/master/icons/256x256.png

View File

@@ -0,0 +1,4 @@
approvers:
- DirtyCajunRice
reviewers:
- DirtyCajunRice

View File

@@ -0,0 +1,48 @@
# Unofficial Bitwarden compatible server written in Rust
This is an opinionated helm chart for [bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs)
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/bitwardenrs
```
## Installing the Chart
To install the chart with the release name `bitwarden`:
```console
helm install bitwarden k8s-at-home/bitwardenrs
```
## Uninstalling the Chart
To uninstall/delete the `bitwarden` deployment:
```console
helm uninstall bitwarden
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install bitwarden \
--set timeZone="America/New York" \
k8s-at-home/bitwardenrs
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install bitwarden k8s-at-home/bitwardenrs --values values.yaml
```

View File

@@ -0,0 +1,21 @@
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range $host := .Values.ingress.hosts }}
{{- range .paths }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ . }}
{{- end }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "bitwardenrs.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "bitwardenrs.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "bitwardenrs.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "bitwardenrs.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:80
{{- end }}

View File

@@ -0,0 +1,63 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "bitwardenrs.name" -}}
{{- default .Chart.Name .Values.nameOverride | 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 "bitwardenrs.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 }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "bitwardenrs.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "bitwardenrs.labels" -}}
helm.sh/chart: {{ include "bitwardenrs.chart" . }}
{{ include "bitwardenrs.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "bitwardenrs.selectorLabels" -}}
app.kubernetes.io/name: {{ include "bitwardenrs.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "bitwardenrs.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "bitwardenrs.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,36 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "bitwardenrs.fullname" . }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
data:
SIGNUPS_ALLOWED: {{ .Values.bitwardenrs.signupsAllowed | quote }}
{{- if .Values.bitwardenrs.domain }}
DOMAIN: {{ .Values.bitwardenrs.domain | quote }}
{{- end }}
WEBSOCKET_ENABLED: {{ .Values.bitwardenrs.websockets.enabled | quote }}
{{- if and .Values.bitwardenrs.admin.enabled .Values.bitwardenrs.admin.disableAdminToken }}
DISABLE_ADMIN_TOKEN: "true"
{{- end }}
{{- with .Values.bitwardenrs.smtp }}
{{- if .enabled }}
SMTP_HOST: {{ required "SMTP host is required to enable SMTP" .host | quote }}
SMTP_FROM: {{ required "SMTP sender address ('from') is required to enable SMTP" .from | quote }}
{{- if .fromName }}
SMTP_FROM_NAME: {{ .fromName | quote }}
{{- end }}
{{- if .ssl }}
SMTP_SSL: {{ .ssl | quote }}
{{- end }}
{{- if .port }}
SMTP_PORT: {{ .port | quote }}
{{- end }}
{{- if and (not .existingSecret.enabled) .user }}
SMTP_USERNAME: {{ .user | quote }}
{{- end }}
{{- end }}
{{- end }}
{{- if .Values.env }}
{{- toYaml .Values.env | nindent 2 }}
{{- end }}

View File

@@ -0,0 +1,120 @@
{{- if eq .Values.persistence.type "deployment" }}
{{- $fullName := include "bitwardenrs.fullname" . -}}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ $fullName }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "bitwardenrs.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "bitwardenrs.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "bitwardenrs.serviceAccountName" . }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ $fullName }}
{{- with .Values.securityContext }}
securityContext:
{{- toYaml . | nindent 12 }}
{{- end }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
envFrom:
- configMapRef:
name: {{ $fullName }}
env:
{{- with .Values.bitwardenrs.admin }}
{{- if and .enabled (not .disableAdminToken) }}
- name: ADMIN_TOKEN
valueFrom:
secretKeyRef:
{{- if .existingSecret.enabled }}
name: {{ .existingSecret.name | quote }}
key: {{ .existingSecret.tokenKey | quote }}
{{- else }}
name: {{ $fullName }}
key: admin-token
{{- end }}
{{- end }}
{{- end }}
{{- with .Values.bitwardenrs.smtp }}
{{- if eq .enabled true }}
{{- if and .existingSecret.enabled (not .user) }}
- name: SMTP_USERNAME
valueFrom:
secretKeyRef:
name: {{ .existingSecret.name | quote }}
key: {{ .existingSecret.userKey | quote }}
- name: SMTP_PASSWORD
valueFrom:
secretKeyRef:
name: {{ .existingSecret.name | quote }}
key: {{ .existingSecret.passwordKey | quote }}
{{- end }}
{{- end }}
{{- end }}
ports:
- name: http
containerPort: 80
protocol: TCP
{{- if .Values.bitwardenrs.websockets.enabled }}
- name: websocket
containerPort: {{ .Values.bitwardenrs.websockets.port }}
protocol: TCP
{{- end }}
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
{{- with .Values.resources }}
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
- name: {{ include "bitwardenrs.fullname" . }}
mountPath: /data
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- name: {{ include "bitwardenrs.fullname" . }}
{{- if .Values.persistence.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.existingClaim }}{{ .Values.persistence.existingClaim | quote }}{{- else }}{{ include "bitwardenrs.fullname" . }}{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,28 @@
{{- if .Values.autoscaling.enabled }}
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
name: {{ include "bitwardenrs.fullname" . }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: {{ include "bitwardenrs.fullname" . }}
minReplicas: {{ .Values.autoscaling.minReplicas }}
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
metrics:
{{- if .Values.autoscaling.targetCPUUtilizationPercentage }}
- type: Resource
resource:
name: cpu
targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }}
{{- end }}
{{- if .Values.autoscaling.targetMemoryUtilizationPercentage }}
- type: Resource
resource:
name: memory
targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,41 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "bitwardenrs.fullname" . -}}
{{- $svcPort := .Values.service.port -}}
{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1beta1
{{- else -}}
apiVersion: extensions/v1beta1
{{- end }}
kind: Ingress
metadata:
name: {{ $fullName }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ . }}
backend:
serviceName: {{ $fullName }}
servicePort: {{ $svcPort }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,15 @@
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ include "bitwardenrs.fullname" . }}
spec:
accessModes:
- {{ .Values.persistence.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.size | quote }}
{{- if .Values.persistence.storageClass }}
storageClassName: {{ .Values.persistence.storageClass | quote }}
{{- end }}
{{- end -}}

View File

@@ -0,0 +1,11 @@
{{- if not .Values.bitwardenrs.admin.existingSecret.enabled }}
apiVersion: v1
kind: Secret
metadata:
name: {{ template "bitwardenrs.fullname" . }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
type: Opaque
data:
admin-token: {{ randAlphaNum 48 | b64enc | quote }}
{{- end }}

View File

@@ -0,0 +1,28 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "bitwardenrs.fullname" . }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
{{- with .Values.service.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
{{- if .Values.bitwardenrs.websockets.enabled }}
- port: {{ .Values.bitwardenrs.websockets.port }}
targetPort: websocket
protocol: TCP
name: websocket
{{- end }}
{{- with .Values.service.additionalSpec }}
{{- toYaml . | nindent 2 }}
{{- end }}
selector:
{{- include "bitwardenrs.selectorLabels" . | nindent 4 }}

View File

@@ -0,0 +1,12 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ include "bitwardenrs.serviceAccountName" . }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,121 @@
{{- if eq .Values.persistence.type "statefulset" }}
{{- $fullName := include "bitwardenrs.fullname" . -}}
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ $fullName }}
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "bitwardenrs.selectorLabels" . | nindent 6 }}
serviceName: {{ $fullName }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "bitwardenrs.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "bitwardenrs.serviceAccountName" . }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ $fullName }}
{{- with .Values.securityContext }}
securityContext:
{{- toYaml . | nindent 12 }}
{{- end }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
envFrom:
- configMapRef:
name: {{ $fullName }}
env:
{{- with .Values.bitwardenrs.admin }}
{{- if and .enabled (not .disableAdminToken) }}
- name: ADMIN_TOKEN
valueFrom:
secretKeyRef:
{{- if .existingSecret.enabled }}
name: {{ .existingSecret.name | quote }}
key: {{ .existingSecret.tokenKey | quote }}
{{- else }}
name: {{ $fullName }}
key: admin-token
{{- end }}
{{- end }}
{{- end }}
{{- with .Values.bitwardenrs.smtp }}
{{- if eq .enabled true }}
{{- if and .existingSecret.enabled (not .user) }}
- name: SMTP_USERNAME
valueFrom:
secretKeyRef:
name: {{ .existingSecret.name | quote }}
key: {{ .existingSecret.userKey | quote }}
- name: SMTP_PASSWORD
valueFrom:
secretKeyRef:
name: {{ .existingSecret.name | quote }}
key: {{ .existingSecret.passwordKey | quote }}
{{- end }}
{{- end }}
{{- end }}
ports:
- name: http
containerPort: 80
protocol: TCP
{{- if .Values.bitwardenrs.websockets.enabled }}
- name: websocket
containerPort: {{ .Values.bitwardenrs.websockets.port }}
protocol: TCP
{{- end }}
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
{{- with .Values.resources }}
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
volumeMounts:
- name: {{ include "bitwardenrs.fullname" . }}
mountPath: /data
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- name: {{ include "bitwardenrs.fullname" . }}
{{- if .Values.persistence.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.existingClaim }}{{ .Values.persistence.existingClaim | quote }}{{- else }}{{ include "bitwardenrs.fullname" . }}{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,15 @@
apiVersion: v1
kind: Pod
metadata:
name: "{{ include "bitwardenrs.fullname" . }}-test-connection"
labels:
{{- include "bitwardenrs.labels" . | nindent 4 }}
annotations:
"helm.sh/hook": test-success
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['{{ include "bitwardenrs.fullname" . }}:{{ .Values.service.port }}']
restartPolicy: Never

View File

@@ -0,0 +1,132 @@
# Default values for bitwardenrs.
replicaCount: 1
image:
repository: bitwardenrs/server
pullPolicy: IfNotPresent
tag: ""
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
bitwardenrs:
domain: ""
signupsAllowed: false
websockets:
enabled: true
port: 3012
admin:
enabled: true
disableAdminToken: false
existingSecret:
enabled: false
name: ""
tokenKey: ""
# Enable SMTP. https://github.com/dani-garcia/bitwarden_rs/wiki/SMTP-configuration
smtp:
enabled: false
# SMTP hostname, required if SMTP is enabled
host: ""
# SMTP sender e-mail address, required if SMTP is enabled
from: ""
# SMTP sender name, defaults to 'Bitwarden_RS'
fromName: ""
# Enable SSL connection
ssl: true
# SMTP port
port: 587
# SMTP username
user: ""
# SMTP password. Required is user is specified, ignored if no user provided
password: ""
# Use existing secret for SMTP authentication
existingSecret:
enabled: false
name: ""
userKey: ""
passwordKey: ""
env: {}
persistence:
type: statefulset
enabled: false
size: 1Gi
accessMode: ReadWriteOnce
## Persistent Volume storage class
# storageClass: "-"
## Use existing Persistent Volume Claim
# existingClaim:
serviceAccount:
# Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
type: ClusterIP
port: 80
## Provide any additional annotations which may be required. This can be used to
## set the LoadBalancer service type to internal only.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
##
annotations: {}
labels: {}
additionalSpec: {}
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: chart-example.local
paths: []
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
# targetMemoryUtilizationPercentage: 80
nodeSelector: {}
tolerations: []
affinity: {}

24
charts/blocky/.helmignore Normal file
View File

@@ -0,0 +1,24 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
# OWNERS file for Kubernetes
OWNERS

15
charts/blocky/Chart.yaml Normal file
View File

@@ -0,0 +1,15 @@
apiVersion: v2
appVersion: v0.10
description: DNS proxy as ad-blocker for local network
name: blocky
version: 4.0.1
keywords:
- blocky
- dbs
home: https://github.com/k8s-at-home/charts/tree/master/charts/blocky
icon: https://github.com/0xERR0R/blocky/raw/master/docs/blocky.svg?sanitize=true
sources:
- https://github.com/0xERR0R/blocky
maintainers:
- name: billimek
email: jeff@billimek.com

74
charts/blocky/README.md Normal file
View File

@@ -0,0 +1,74 @@
# DNS proxy as ad-blocker for local network
This is an opinionated helm chart for [blocky](https://github.com/0xERR0R/blocky)
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
## TL;DR
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/blocky
```
## Installing the Chart
To install the chart with the release name `my-release`:
```console
helm install --name blocky k8s-at-home/blocky
```
## Uninstalling the Chart
To uninstall/delete the `blocky` deployment:
```console
helm delete blocky --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/blocky/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name blocky \
--set timeZone="America/New York" \
k8s-at-home/blocky
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name blocky -f values.yaml k8s-at-home/blocky
```
## Upgrading an existing Release to a new major version
A major chart version change (like 2.2.2 -> 3.0.0) indicates that there is an
incompatible breaking change needing manual actions.
### Upgrading from 2.x.x to 3.x.x
Due to the renaming of the service port, an upgrade-in-place will not work. The following are possible approaches to solve this:
#### Helm force upgrade
```sh
helm upgrade --force
```
#### Delete the existing `blocky` service prior to upgrading
```sh
kubectl delete svc/blocky
```
#### Remove the existing blocky chart first
This is the 'easiest' approach, but will incur downtime which can be problematic if you rely on blocky for DNS

View File

@@ -0,0 +1,15 @@
1. Get the application URL by running these commands:
{{- if contains "NodePort" .Values.serviceUDP.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "blocky.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.serviceUDP.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w {{ include "blocky.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "blocky.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.serviceUDP.port }}
{{- else if contains "ClusterIP" .Values.serviceUDP.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "blocky.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl port-forward $POD_NAME 8080:80
{{- end }}

View File

@@ -0,0 +1,41 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "blocky.name" -}}
{{- default .Chart.Name .Values.nameOverride | 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 "blocky.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 -}}
{{/*
Create a default fully qualified postgresql name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
*/}}
{{- define "blocky.postgresql.fullname" -}}
{{- $name := default "postgresql" .Values.postgresql.nameOverride -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "blocky.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

View File

@@ -0,0 +1,20 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "blocky.fullname" . }}
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
helm.sh/chart: {{ include "blocky.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
data:
{{- if .Values.config }}
{{ $root := . }}
config.yml: |
{{ tpl (toYaml .Values.config | indent 4) $root }}
{{- end }}
{{- range $name, $value := .Values.extraLists }}
{{ $name }}: |-
{{ $value | indent 4}}
{{- end }}

View File

@@ -0,0 +1,103 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "blocky.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
helm.sh/chart: {{ include "blocky.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
replicas: {{ .Values.replicas }}
revisionHistoryLimit: 3
selector:
matchLabels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
annotations:
checksum/configmap: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
{{- with .Values.podAnnotations }}
{{ toYaml . | nindent 8 }}
{{- end }}
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
{{- if .Values.timeZone }}
- name: TZ
value: {{ .Values.timeZone | quote }}
{{- end }}
volumeMounts:
- name: config
mountPath: /app/config.yml
subPath: config.yml
readOnly: true
{{- range $name, $value := .Values.extraLists }}
- name: config
mountPath: /app/{{ $name }}
subPath: {{ $name }}
readOnly: true
{{- end }}
ports:
- name: api
containerPort: 4000
- name: dns
containerPort: 53
protocol: TCP
- name: dns-udp
containerPort: 53
protocol: UDP
livenessProbe:
httpGet:
path: /metrics
port: api
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
periodSeconds: {{ .Values.probes.liveness.periodSeconds }}
readinessProbe:
httpGet:
path: /metrics
port: api
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
periodSeconds: {{ .Values.probes.readiness.periodSeconds }}
startupProbe:
httpGet:
path: /metrics
port: api
initialDelaySeconds: {{ .Values.probes.startup.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumes:
- name: config
projected:
defaultMode: 0444
sources:
- configMap:
name: {{ template "blocky.fullname" . }}
items:
- key: config.yml
path: config.yml
{{- range $name, $value := .Values.extraLists }}
- key: {{ $name }}
path: {{ $name }}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@@ -0,0 +1,34 @@
{{- if .Values.serviceTCP.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "blocky.fullname" . }}-tcp
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
helm.sh/chart: {{ include "blocky.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.serviceTCP.annotations }}
annotations:
{{ toYaml .Values.serviceTCP.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceTCP.type }}
{{- if .Values.serviceTCP.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceTCP.loadBalancerIP }}
{{- end }}
{{- if .Values.serviceTCP.externalIPs }}
externalIPs:
{{ toYaml .Values.serviceTCP.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.serviceTCP.externalTrafficPolicy }}
ports:
- port: 53
targetPort: dns
protocol: TCP
name: dns
selector:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -0,0 +1,33 @@
{{- if .Values.serviceUDP.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "blocky.fullname" . }}-udp
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
helm.sh/chart: {{ include "blocky.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.serviceUDP.annotations }}
annotations:
{{ toYaml .Values.serviceUDP.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceUDP.type }}
{{- if .Values.serviceUDP.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceUDP.loadBalancerIP }}
{{- end }}
{{- if .Values.serviceUDP.externalIPs }}
externalIPs:
{{ toYaml .Values.serviceUDP.externalIPs | indent 4 }}
{{- end }}
externalTrafficPolicy: {{ .Values.serviceUDP.externalTrafficPolicy }}
ports:
- port: 53
targetPort: dns-udp
protocol: UDP
name: dns-udp
selector:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -0,0 +1,45 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "blocky.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
helm.sh/chart: {{ include "blocky.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.service.annotations }}
annotations:
{{ toYaml .Values.service.annotations | indent 4 }}
{{- end }}
spec:
{{- if (or (eq .Values.service.type "ClusterIP") (empty .Values.service.type)) }}
type: ClusterIP
{{- if .Values.service.clusterIP }}
clusterIP: {{ .Values.service.clusterIP }}
{{end}}
{{- else if eq .Values.service.type "LoadBalancer" }}
type: {{ .Values.service.type }}
{{- if .Values.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}
{{- if .Values.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- else }}
type: {{ .Values.service.type }}
{{- end }}
{{- if .Values.service.externalIPs }}
externalIPs:
{{ toYaml .Values.service.externalIPs | indent 4 }}
{{- end }}
{{- if .Values.service.externalTrafficPolicy }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
{{- end }}
ports:
- name: api
port: 4000
targetPort: api
selector:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -0,0 +1,23 @@
{{- if .Values.serviceMonitor.enabled }}
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ include "blocky.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
helm.sh/chart: {{ include "blocky.chart" . }}
{{- with .Values.serviceMonitor.additionalLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
selector:
matchLabels:
app.kubernetes.io/name: {{ include "blocky.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
endpoints:
- port: api
interval: 30s
path: /metrics
{{- end }}

190
charts/blocky/values.yaml Normal file
View File

@@ -0,0 +1,190 @@
replicaCount: 1
image:
repository: spx01/blocky
tag: v0.10
pullPolicy: IfNotPresent
nameOverride: ""
fullnameOverride: ""
replicas: 1
timeZone: "UTC"
# blocky configuration - will translate to config.yml file inside the pod
config:
upstream:
# these external DNS resolvers will be used. Blocky picks 2 random resolvers from the list for each query
# format for resolver: net:host:[port][/path]. net could be tcp, udp, tcp-tls or https (DoH). If port is empty, default port will be used (53 for udp and tcp, 853 for tcp-tls, 443 for https (Doh))
externalResolvers:
- udp:8.8.8.8
- udp:8.8.4.4
- udp:1.1.1.1
- tcp-tls:1.0.0.1:853
- https://cloudflare-dns.com/dns-query
# optional: custom IP address for domain name (with all sub-domains)
# example: query "printer.lan" or "my.printer.lan" will return 192.168.178.3
# customDNS:
# mapping:
# printer.lan: 192.168.178.3
# optional: definition, which DNS resolver should be used for queries to the domain (with all sub-domains).
# Example: Query client.fritz.box will ask DNS server 192.168.178.1. This is necessary for local network, to resolve clients by host name
# conditional:
# mapping:
# fritz.box: udp:192.168.178.1
# optional: use black and white lists to block queries (for example ads, trackers, adult pages etc.)
blocking:
# definition of blacklist groups. Can be external link (http/https) or local file
blackLists:
ads:
- https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt
- https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
- https://mirror1.malwaredomains.com/files/justdomains
- http://sysctl.org/cameleon/hosts
- https://zeustracker.abuse.ch/blocklist.php?download=domainblocklist
- https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt
special:
- https://hosts-file.net/ad_servers.txt
# definition of whitelist groups. Attention: if the same group has black and whitelists,
# whitelists will be used to disable particular blacklist entries. If a group has only
# whitelist entries -> this means only domains from this list are allowed,
# all other domains will be blocked.
# Also see the extraLists section below to add your own in-line whitelists
# whiteLists:
# ads:
# - whitelist.txt
# definition: which groups should be applied for which client
clientGroupsBlock:
# default will be used, if no special definition for a client name exists
default:
- ads
- special
# use client name or ip address
# laptop.fritz.box:
# - ads
# which response will be sent, if query is blocked:
# zeroIp: 0.0.0.0 will be returned (default)
# nxDomain: return NXDOMAIN as return code
# blockType: zeroIp
# optional: automatically list refresh period in minutes. Default: 4h.
# Negative value -> deactivate automatically refresh.
# 0 value -> use default
# refreshPeriod: 1
# optional: configuration for caching of DNS responses
# caching:
# # amount in minutes, how long a response must be cached (min value).
# # If <=0, use response's TTL, if >0 use this value, if TTL is smaller
# # Default: 0
# minTime: 40
# # amount in minutes, how long a response must be cached (max value).
# # If <0, do not cache responses
# # If 0, use TTL
# # If > 0, use this value, if TTL is greater
# # Default: 0
# maxTime: -1
# optional: configuration of client name resolution
# clientLookup:
# # this DNS resolver will be used to perform reverse DNS lookup (typically local router)
# upstream: udp:192.168.178.1
# # optional: some routers return multiple names for client (host name and user defined name). Define which single name should be used.
# # Example: take second name if present, if not take first name
# singleNameOrder:
# - 2
# - 1
# optional: configuration for prometheus metrics endpoint
prometheus:
# enabled if true
enable: true
# url path, optional (default '/metrics')
path: /metrics
# optional: HTTP listener port, default 0 = no http listener. If > 0, will be used for prometheus metrics, pprof, ...
httpPort: 4000
# optional: Log level (one from debug, info, warn, error). Default: info
logLevel: info
# Probes configuration
probes:
liveness:
failureThreshold: 5
periodSeconds: 10
readiness:
failureThreshold: 5
periodSeconds: 10
startup:
initialDelaySeconds: 5
failureThreshold: 30
periodSeconds: 10
service:
type: ClusterIP
# externalTrafficPolicy: Local
# loadBalancerIP: ""
# a fixed LoadBalancer IP
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: blocky-svc
serviceTCP:
enabled: false
externalIPs: []
type: NodePort
externalTrafficPolicy: Local
loadBalancerIP: ""
# a fixed LoadBalancer IP
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: blocky-svc
serviceUDP:
enabled: true
externalIPs: []
type: NodePort
externalTrafficPolicy: Local
loadBalancerIP: ""
# a fixed LoadBalancer IP
annotations: {}
# metallb.universe.tf/address-pool: network-services
# metallb.universe.tf/allow-shared-ip: blocky-svc
serviceMonitor:
enabled: false
additionalLabels: {}
## Pod Annotations
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "api"
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# memory: 500Mi
# requests:
# cpu: 50m
# memory: 275Mi
nodeSelector: {}
tolerations: []
affinity: {}
## Add any extra files you want populated to /app here, e.g.:
# extraLists:
# whitelist.txt: |
# analytics.google.com
# googleadservices.com
extraLists: {}

View File

@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@@ -0,0 +1,17 @@
type: application
apiVersion: v2
appVersion: 0.6.8
description: Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
name: calibre-web
version: 2.0.1
keywords:
- calibre
- ebook
home: https://github.com/k8s-at-home/charts/tree/master/charts/calibre-web
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/calibre-web-icon.png
sources:
- https://hub.docker.com/r/linuxserver/calibre-web/
- https://github.com/janeczku/calibre-web
maintainers:
- name: wojoinc
email: wojoinc@pm.me

View File

@@ -0,0 +1,107 @@
# calibre-web
This is a helm chart for [calibre-web](https://github.com/janeczku/calibre-web) utilizing the [Linuxserver.io calibre-web image](https://hub.docker.com/r/linuxserver/calibre-web)
## TL;DR;
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/calibre-web
```
## Installing the Chart
To install the chart with the release name `my-release`:
```console
helm install --name my-release k8s-at-home/calibre-web
```
## Uninstalling the Chart
To uninstall/delete the `my-release` deployment:
```console
helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the `calibre-web` chart and their default values.
| Parameter | Description | Default |
| --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- |
| `image.repository` | Image repository | `linuxserver/calibre-web` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/linuxserver/calibre-web/tags/). | `0.6.8-ls74` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `dockerMods.ebookConversion.enabled` | Enable optional ebook conversion feature. (x86_64 only) refer [here](https://github.com/linuxserver/docker-calibre-web#application-setup) | `false` |
| `dockerMods.ebookConversion.image.repository` | DockerMod image repository | `linuxserver/calibre-web` |
| `dockerMods.ebookConversion.image.tag` | DockerMod image tag. These typically start with `v`, with the "stable" tag being `calibre`. Can be found [here](https://hub.docker.com/r/linuxserver/calibre-web/tags/) | `calibre` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Timezone the calibre-web instance should run as, e.g. 'America/New_York' | `UTC` |
| `puid` | process userID the calibre-web instance should run as | `1001` |
| `pgid` | process groupID the calibre-web instance should run as | `1001` |
| `umask` | Default umask to use when creating new files | `22` |
| `probes.liveness.initialDelaySeconds` | Specify liveness `initialDelaySeconds` parameter for the deployment | `60` |
| `probes.liveness.failureThreshold` | Specify liveness `failureThreshold` parameter for the deployment | `5` |
| `probes.liveness.timeoutSeconds` | Specify liveness `timeoutSeconds` parameter for the deployment | `10` |
| `probes.readiness.initialDelaySeconds` | Specify readiness `initialDelaySeconds` parameter for the deployment | `60` |
| `probes.readiness.failureThreshold` | Specify readiness `failureThreshold` parameter for the deployment | `5` |
| `probes.readiness.timeoutSeconds` | Specify readiness `timeoutSeconds` parameter for the deployment | `10` |
| `Service.type` | Kubernetes service type for the calibre-web GUI | `ClusterIP` |
| `Service.port` | Kubernetes port where the calibre-web GUI is exposed | `8083` |
| `Service.annotations` | Service annotations for the calibre-web GUI | `{}` |
| `Service.labels` | Custom labels | `{}` |
| `Service.loadBalancerIP` | Loadbalance IP for the calibre-web GUI | `{}` |
| `Service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | None |
| `ingress.enabled` | Enables Ingress | `false` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.labels` | Custom labels | `{}` |
| `ingress.path` | Ingress path | `/` |
| `ingress.hosts` | Ingress accepted hostnames | `chart-example.local` |
| `ingress.tls` | Ingress TLS configuration | `[]` |
| `persistence.config.enabled` | Use persistent volume to store configuration data | `true` |
| `persistence.config.size` | Size of persistent volume claim | `1Gi` |
| `persistence.config.existingClaim` | Use an existing PVC to persist data | `nil` |
| `persistence.config.storageClass` | Type of persistent volume claim | `-` |
| `persistence.config.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.config.skipuninstall` | Do not delete the pvc upon helm uninstall | `false` |
| `persistence.books.enabled` | Use persistent volume to store books data | `true` |
| `persistence.books.size` | Size of persistent volume claim | `10Gi` |
| `persistence.books.existingClaim` | Use an existing PVC to persist data | `nil` |
| `persistence.books.storageClass` | Type of persistent volume claim | `-` |
| `persistence.books.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.books.skipuninstall` | Do not delete the pvc upon helm uninstall | `false` |
| `persistence.extraExistingClaimMounts` | Optionally add multiple existing claims | `[]` |
| `resources` | CPU/Memory resource requests/limits | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `tolerations` | Toleration labels for pod assignment | `[]` |
| `affinity` | Affinity settings for pod assignment | `{}` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
| `deploymentAnnotations` | Key-value pairs to add as deployment annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name my-release \
--set timezone="America/New York" \
k8s-at-home/calibre-web
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name my-release -f values.yaml stable/calibre-web
```
---
**NOTE**
If you get `Error: rendered manifests contain a resource that already exists. Unable to continue with install: existing resource conflict: ...` it may be because you uninstalled the chart with `skipuninstall` enabled, you need to manually delete the pvc or use `existingClaim`.
---
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/calibre-web/values.yaml) file. It has several commented out suggested values.

View File

@@ -0,0 +1,25 @@
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range $host := .Values.ingress.hosts }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host }}{{ $.Values.ingress.path }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "calibre-web.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "calibre-web.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "calibre-web.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "calibre-web.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:{{ .Values.service.port }}
{{- end }}
{{- if .Values.dockerMods.ebookConversion.enabled }}
2. DockerMods:
You have enabled the EbookConversion Docker Mod using the {{ .Values.dockerMods.ebookConversion.image.repository }}:{{ .Values.dockerMods.ebookConversion.image.tag }} image.
Remember to visit https://github.com/linuxserver/docker-calibre-web#application-setup for instructions on configuring this feature in the calibre-web settings.
{{- end }}

View File

@@ -0,0 +1,63 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "calibre-web.name" -}}
{{- default .Chart.Name .Values.nameOverride | 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 "calibre-web.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 }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "calibre-web.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "calibre-web.labels" -}}
helm.sh/chart: {{ include "calibre-web.chart" . }}
{{ include "calibre-web.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "calibre-web.selectorLabels" -}}
app.kubernetes.io/name: {{ include "calibre-web.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "calibre-web.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "calibre-web.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,25 @@
{{- if and .Values.persistence.books.enabled (not .Values.persistence.books.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ template "calibre-web.fullname" . }}-books
{{- if .Values.persistence.books.skipuninstall }}
annotations:
"helm.sh/resource-policy": keep
{{- end }}
labels: {{ include "calibre-web.labels" . | nindent 4}}
spec:
accessModes:
- {{ .Values.persistence.books.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.books.size | quote }}
{{- if .Values.persistence.books.storageClass }}
{{- if (eq "-" .Values.persistence.books.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.books.storageClass }}"
{{- end }}
{{- end }}
{{- end -}}

View File

@@ -0,0 +1,25 @@
{{- if and .Values.persistence.config.enabled (not .Values.persistence.config.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ template "calibre-web.fullname" . }}-config
{{- if .Values.persistence.config.skipuninstall }}
annotations:
"helm.sh/resource-policy": keep
{{- end }}
labels: {{ include "calibre-web.labels" . | nindent 4 }}
spec:
accessModes:
- {{ .Values.persistence.config.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.config.size | quote }}
{{- if .Values.persistence.config.storageClass }}
{{- if (eq "-" .Values.persistence.config.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.config.storageClass }}"
{{- end }}
{{- end }}
{{- end -}}

View File

@@ -0,0 +1,112 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "calibre-web.fullname" . }}
{{- if .Values.deploymentAnnotations }}
annotations:
{{- range $key, $value := .Values.deploymentAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
labels: {{ include "calibre-web.labels" . | nindent 4 }}
spec:
replicas: 1
revisionHistoryLimit: 3
strategy:
type: {{ .Values.strategyType }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "calibre-web.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "calibre-web.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Values.podAnnotations }}
annotations:
{{- range $key, $value := .Values.podAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 8083
protocol: TCP
livenessProbe:
tcpSocket:
port: http
initialDelaySeconds: {{ .Values.probes.liveness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
timeoutSeconds: {{ .Values.probes.liveness.timeoutSeconds }}
readinessProbe:
tcpSocket:
port: http
initialDelaySeconds: {{ .Values.probes.readiness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
timeoutSeconds: {{ .Values.probes.readiness.timeoutSeconds }}
env:
- name: TZ
value: "{{ .Values.timezone }}"
- name: PUID
value: "{{ .Values.puid }}"
- name: PGID
value: "{{ .Values.pgid }}"
- name: UMASK
value: "{{ .Values.umask }}"
{{- if eq .Values.dockerMods.ebookConversion.enabled true }}
- name: DOCKER_MODS
value: "{{ .Values.dockerMods.ebookConversion.image.repository }}:{{ .Values.dockerMods.ebookConversion.image.tag }}"
{{- end }}
volumeMounts:
- mountPath: /config
name: config
- mountPath: /books
name: books
{{- if .Values.persistence.books.subPath }}
subPath: {{ .Values.persistence.books.subPath }}
{{- end }}
{{- range .Values.persistence.extraExistingClaimMounts }}
- name: {{ .name }}
mountPath: {{ .mountPath }}
readOnly: {{ .readOnly }}
{{- end }}
resources:
{{ toYaml .Values.resources | indent 12 }}
volumes:
- name: config
{{- if .Values.persistence.config.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.config.existingClaim }}{{ .Values.persistence.config.existingClaim }}{{- else }}{{ template "calibre-web.fullname" . }}-config{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
- name: books
{{- if .Values.persistence.books.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.books.existingClaim }}{{ .Values.persistence.books.existingClaim }}{{- else }}{{ template "calibre-web.fullname" . }}-books{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
{{- range .Values.persistence.extraExistingClaimMounts }}
- name: {{ .name }}
persistentVolumeClaim:
claimName: {{ .existingClaim }}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | indent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{ toYaml . | indent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{ toYaml . | indent 8 }}
{{- end }}

View File

@@ -0,0 +1,34 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "calibre-web.fullname" . -}}
{{- $ingressPath := .Values.ingress.path -}}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ $fullName }}
labels: {{ include "calibre-web.labels" . | nindent 4 }}
{{- with .Values.ingress.annotations }}
annotations:
{{ toYaml . | indent 4 }}
{{- end }}
spec:
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ . | quote }}
http:
paths:
- path: {{ $ingressPath }}
backend:
serviceName: {{ $fullName }}
servicePort: http
{{- end }}
{{- end }}

View File

@@ -0,0 +1,48 @@
apiVersion: v1
kind: Service
metadata:
name: {{ template "calibre-web.fullname" . }}
labels: {{ include "calibre-web.labels" . | nindent 4 }}
{{- if .Values.service.labels }}
{{ toYaml .Values.service.labels | indent 4 }}
{{- end }}
{{- with .Values.service.annotations }}
annotations:
{{ toYaml . | indent 4 }}
{{- end }}
spec:
{{- if (or (eq .Values.service.type "ClusterIP") (empty .Values.service.type)) }}
type: ClusterIP
{{- if .Values.service.clusterIP }}
clusterIP: {{ .Values.service.clusterIP }}
{{end}}
{{- else if eq .Values.service.type "LoadBalancer" }}
type: {{ .Values.service.type }}
{{- if .Values.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}
{{- if .Values.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- else }}
type: {{ .Values.service.type }}
{{- end }}
{{- if .Values.service.externalIPs }}
externalIPs:
{{ toYaml .Values.service.externalIPs | indent 4 }}
{{- end }}
{{- if .Values.service.externalTrafficPolicy }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
{{- end }}
ports:
- name: http
port: {{ .Values.service.port }}
protocol: TCP
targetPort: http
{{ if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort))) }}
nodePort: {{.Values.service.nodePort}}
{{ end }}
selector:
app.kubernetes.io/name: {{ include "calibre-web.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -0,0 +1,15 @@
apiVersion: v1
kind: Pod
metadata:
name: "{{ include "calibre-web.fullname" . }}-test-connection"
labels:
{{- include "calibre-web.labels" . | nindent 4 }}
annotations:
"helm.sh/hook": test-success
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['{{ include "calibre-web.fullname" . }}:{{ .Values.service.port }}']
restartPolicy: Never

View File

@@ -0,0 +1,136 @@
# Default values for calibre-web.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
image:
repository: linuxserver/calibre-web
tag: 0.6.8-ls74
pullPolicy: IfNotPresent
# upgrade strategy type (e.g. Recreate or RollingUpdate)
strategyType: Recreate
# Probes configuration
probes:
liveness:
initialDelaySeconds: 60
failureThreshold: 5
timeoutSeconds: 10
readiness:
initialDelaySeconds: 60
failureThreshold: 5
timeoutSeconds: 10
nameOverride: ""
fullnameOverride: ""
# Linuxserver.io additional layers.
# Enables additional features for the image, at the cost of increased size and
# possible incompatabilities with certain architectures. Disabled by default.
dockerMods:
# Enable ebook conversion. Compatible with x86_64 image only.
# To enable, set enabled to true, and follow the guide at: https://github.com/linuxserver/docker-calibre-web#application-setup
# to configure the application.
ebookConversion:
enabled: false
image:
repository: linuxserver/calibre-web
# To use a different tag for the DockerMod, specify the tag below
tag: calibre
timezone: UTC
puid: 1001
pgid: 1001
umask: 22
service:
type: ClusterIP
port: 8083
## Specify the nodePort value for the LoadBalancer and NodePort service types.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
##
# nodePort:
## Provide any additional annotations which may be required. This can be used to
## set the LoadBalancer service type to internal only.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
##
annotations: {}
labels: {}
## Use loadBalancerIP to request a specific static IP,
## otherwise leave blank
##
loadBalancerIP:
# loadBalancerSourceRanges: []
## Set the externalTrafficPolicy in the Service to either Cluster or Local
# externalTrafficPolicy: Cluster
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
path: /
hosts:
- chart-example.local
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
persistence:
config:
enabled: true
## calibre-web configuration data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# storageClass: "-"
##
## If you want to reuse an existing claim, you can pass the name of the PVC using
## the existingClaim variable
# existingClaim: your-claim
accessMode: ReadWriteOnce
size: 1Gi
## Do not delete the pvc upon helm uninstall
skipuninstall: false
books:
enabled: true
# storageClass: "-"
# existingClaim: your-claim
# subPath: some-subpath
accessMode: ReadWriteOnce
size: 10Gi
## Do not delete the pvc upon helm uninstall
skipuninstall: false
extraExistingClaimMounts: []
# - name: external-mount
# mountPath: /srv/external-mount
## A manually managed Persistent Volume and Claim
## If defined, PVC must be created manually before volume will be bound
# existingClaim:
# readOnly: true
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
podAnnotations: {}
deploymentAnnotations: {}

View File

@@ -1,16 +1,17 @@
apiVersion: v1
apiVersion: v2
name: comcast
version: 1.0.0
version: 3.0.0
appVersion: 1.0.0
description: periodic comcast data usage checks and save the results to InfluxDB
keywords:
- comcast
- influxdb
- xfinity
home: https://github.com/billimek/billimek-charts/tree/master/comcast
home: https://github.com/k8s-at-home/charts/tree/master/charts/comcast
icon: https://i.imgur.com/iR1dUpp.png
sources:
- https://github.com/billimek/comcastUsage-for-influxdb
- https://github.com/billimek/billimek-charts
- https://github.com/k8s-at-home/charts
maintainers:
- name: billimek
email: jeff@billimek.com

View File

@@ -7,8 +7,8 @@ This tool allows you to run periodic comcast data usage checks and save the resu
## TL;DR;
```console
$ helm repo add billimek https://billimek.github.io/helm-repo
$ helm install billimek/comcast
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/comcast
```
## Introduction
@@ -20,7 +20,7 @@ This code is adopted from the work done by [barrycarey](https://github.com/barry
To install the chart with the release name `my-release`:
```console
$ helm install --name my-release billimek/comcast
$ helm install --name my-release k8s-at-home/comcast
```
## Uninstalling the Chart
@@ -34,7 +34,7 @@ The command removes all the Kubernetes components associated with the chart and
## Configuration
The configuration is set as a block of text through a configmap and mouted as a file in /src/config.ini Any value in this text block should match the defined Comcast configuration. There are several values here that will have to match our kubernetes configuration.
The configuration is set as a block of text through a configmap and mounted as a file in /src/config.ini Any value in this text block should match the defined Comcast configuration. There are several values here that will have to match our kubernetes configuration.
## Configuration
@@ -55,22 +55,23 @@ The following tables lists the configurable parameters of the Sentry chart and t
| `config.influxdb.ssl` | InfluxDB connection using SSL | `false` |
| `config.comcast.username` | Comcast website login usernma | `someuser` |
| `config.comcast.password` | Comcast website login password | `somepassword` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
$ helm install --name my-release \
helm install --name my-release \
--set config.comcast.username=tonystark,config.comcast.password=mypassword \
billimek/comcast
k8s-at-home/comcast
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
$ helm install --name my-release -f values.yaml billimek/comcast
helm install --name my-release -f values.yaml k8s-at-home/comcast
```
Read through the [values.yaml](values.yaml) file. It has several commented out suggested values.
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/comcast/values.yaml) file. It has several commented out suggested values.
## InfluxDB metrics
```
@@ -80,4 +81,4 @@ Read through the [values.yaml](values.yaml) file. It has several commented out s
'total',
'unit'
}
```
```

View File

@@ -1,4 +1,4 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ template "comcast.fullname" . }}
@@ -13,11 +13,18 @@ spec:
app: {{ template "comcast.name" . }}
release: {{ .Release.Name }}
replicas: {{ default 1 .Values.replicas }}
revisionHistoryLimit: 3
template:
metadata:
labels:
app: {{ template "comcast.name" . }}
release: {{ .Release.Name }}
{{- if .Values.podAnnotations }}
annotations:
{{- range $key, $value := .Values.podAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
containers:
- name: {{ .Chart.Name }}

View File

@@ -20,17 +20,19 @@ resources: {}
nodeSelector: {}
debug: false
config:
# how many seconds to wait between checks
delay: 3600
influxdb:
# host/port/database are mandatory - change as needed
host: influxdb-influxdb
port: 8086
database: comcast
# username:
# password:
ssl: false
comcast:
# username/password are mandatory and must be populated
username: someuser
password: somepassword
# how many seconds to wait between checks
delay: 3600
influxdb:
# host/port/database are mandatory - change as needed
host: influxdb-influxdb
port: 8086
database: comcast
# username:
# password:
ssl: false
comcast:
# username/password are mandatory and must be populated
username: someuser
password: somepassword
podAnnotations: {}

23
charts/common/.helmignore Normal file
View File

@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

12
charts/common/Chart.yaml Normal file
View File

@@ -0,0 +1,12 @@
apiVersion: v2
name: common
description: Function library for k8s-at-home charts
type: library
version: 1.1.0
keywords:
- k8s-at-home
- common
home: https://github.com/k8s-at-home/charts/tree/master/charts/common
maintainers:
- name: BJW-S
email: me@juggels.online

30
charts/common/README.md Normal file
View File

@@ -0,0 +1,30 @@
# Library chart for k8s@home media charts
## **THIS CHART IS NOT MEANT TO BE INSTALLED DIRECTLY**
This is a [Helm Library Chart](https://helm.sh/docs/topics/library_charts/#helm) for grouping common logic between k8s@home charts.
## Introduction
This chart provides common template helpers which can be used to develop new charts using [Helm](https://helm.sh) package manager.
## TL;DR
```yaml
dependencies:
- name: common
version: 0.x.x
repository: https://k8s-at-home.com/charts/
```
```bash
$ helm dependency update
```
```yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "common.names.fullname" . }}
data:
myvalue: "Hello World"
```

View File

@@ -0,0 +1,24 @@
{{- define "common.all" -}}
{{- /* Merge the local chart values and the common chart defaults */ -}}
{{- $defaultValues := .Values.common -}}
{{- $_ := deepCopy $defaultValues | merge .Values -}}
{{- $_ := unset .Values "common" -}}
{{- /* Enable OpenVPN VPN add-on if required */ -}}
{{- if .Values.addons.vpn.enabled }}
{{- include "common.addon.vpn" . }}
{{- end -}}
{{- /* Build the templates */ -}}
{{- include "common.pvc" . }}
{{- print "---" | nindent 0 -}}
{{- if eq .Values.controllerType "statefulset" }}
{{- include "common.statefulset" . | nindent 0 }}
{{ else }}
{{- include "common.deployment" . | nindent 0 }}
{{- end -}}
{{- print "---" | nindent 0 -}}
{{ include "common.service" . | nindent 0 }}
{{- print "---" | nindent 0 -}}
{{ include "common.ingress" . | nindent 0 }}
{{- end -}}

View File

@@ -0,0 +1,62 @@
{{- define "common.deployment" -}}
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
kind: Deployment
metadata:
name: {{ template "common.names.fullname" . }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with .Values.controllerLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.controllerAnnotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
replicas: 1
selector:
matchLabels:
{{- include "common.labels.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "common.labels.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.initContainers }}
initContainers:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
{{- include "common.controller.mainContainer" . | nindent 6 }}
{{- with .Values.additionalContainers }}
{{- toYaml . | nindent 6 }}
{{- end }}
volumes:
{{- include "common.controller.volumes" . | trim | nindent 6 }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | indent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | indent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | indent 8 }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,25 @@
{{- define "common.ingress" -}}
{{- if .Values.ingress.enabled -}}
{{- $svcPort := .Values.service.port.port -}}
{{- /* Generate primary ingress */ -}}
{{- $ingressValues := .Values.ingress -}}
{{- $_ := set $ingressValues "svcPort" $svcPort -}}
{{- $_ := set . "ObjectValues" (dict "ingress" $ingressValues) -}}
{{- include "common.classes.ingress" . }}
{{- /* Generate additional ingresses as required */ -}}
{{- range $index, $extraIngress := .Values.ingress.additionalIngresses }}
{{- if $extraIngress.enabled -}}
{{- print ("---") | nindent 0 -}}
{{- $ingressValues := $extraIngress -}}
{{- $_ := set $ingressValues "svcPort" $svcPort -}}
{{- if not $ingressValues.nameSuffix -}}
{{- $_ := set $ingressValues "nameSuffix" $index -}}
{{ end -}}
{{- $_ := set $ "ObjectValues" (dict "ingress" $ingressValues) -}}
{{- include "common.classes.ingress" $ -}}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,25 @@
{{/*
Default NOTES.txt content.
*/}}
{{- define "common.notes.defaultNotes" -}}
{{- $svcPort := .Values.service.port.port -}}
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.hosts }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ .host }}{{ (first .paths).path }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.names.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w {{ include "common.names.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "common.names.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ $svcPort }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "common.names.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl port-forward $POD_NAME 8080:{{ $svcPort }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,14 @@
{{- define "common.pvc" -}}
{{- /* Generate pvc as required */ -}}
{{- range $index, $PVC := .Values.persistence }}
{{- if and $PVC.enabled (not (or $PVC.emptyDir $PVC.existingClaim)) -}}
{{- $persistenceValues := $PVC -}}
{{- if not $persistenceValues.nameSuffix -}}
{{- $_ := set $persistenceValues "nameSuffix" $index -}}
{{- end -}}
{{- $_ := set $ "ObjectValues" (dict "persistence" $persistenceValues) -}}
{{- print ("---") | nindent 0 -}}
{{- include "common.classes.pvc" $ -}}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,19 @@
{{- define "common.service" -}}
{{- if .Values.service.enabled -}}
{{- /* Generate primary service */ -}}
{{- include "common.classes.service" . }}
{{- /* Generate additional services as required */ -}}
{{- range $index, $extraService := .Values.service.additionalServices }}
{{- if $extraService.enabled -}}
{{- print ("---") | nindent 0 -}}
{{- $serviceValues := $extraService -}}
{{- if not $serviceValues.nameSuffix -}}
{{- $_ := set $serviceValues "nameSuffix" $index -}}
{{ end -}}
{{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}}
{{- include "common.classes.service" $ -}}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,63 @@
{{- define "common.statefulset" -}}
apiVersion: {{ include "common.capabilities.statefulset.apiVersion" . }}
kind: StatefulSet
metadata:
name: {{ template "common.names.fullname" . }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with .Values.controllerLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.controllerAnnotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
replicas: 1
selector:
matchLabels:
{{- include "common.labels.selectorLabels" . | nindent 6 }}
serviceName: {{ include "common.names.fullname" . }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "common.labels.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.initContainers }}
initContainers:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
{{- include "common.controller.mainContainer" . | nindent 6 }}
{{- with .Values.additionalContainers }}
{{- toYaml . | nindent 6 }}
{{- end }}
volumes:
{{- include "common.controller.volumes" . | trim | nindent 6 }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | indent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | indent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | indent 8 }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,26 @@
{{/*
The OpenVPN configmaps to be included
*/}}
{{- define "common.addon.vpn.configmap" -}}
{{- if or .Values.addons.vpn.configFile .Values.addons.vpn.scripts.up .Values.addons.vpn.scripts.down }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "common.names.fullname" . }}-vpn
labels:
{{- include "common.labels" . | nindent 4 }}
data:
{{- with .Values.addons.vpn.configFile }}
vpnConfigfile: |-
{{- . | nindent 4}}
{{- end }}
{{- with .Values.addons.vpn.scripts.up }}
up.sh: |-
{{- . | nindent 4}}
{{- end }}
{{- with .Values.addons.vpn.scripts.down }}
down.sh: |-
{{- . | nindent 4}}
{{- end }}
{{- end -}}
{{- end -}}

View File

@@ -0,0 +1,21 @@
{{/*
The OpenVPN networkpolicy to be included
*/}}
{{- define "common.addon.vpn.networkpolicy" -}}
{{- if .Values.addons.vpn.networkPolicy.enabled -}}
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: {{ template "common.names.fullname" . }}
spec:
podSelector:
matchLabels:
{{- include "common.labels.selectorLabels" . | nindent 6 }}
policyTypes:
- Egress
egress:
{{- with .Values.addons.vpn.networkPolicy.egress }}
{{- . | toYaml | nindent 4 }}
{{- end -}}
{{- end -}}
{{- end -}}

Some files were not shown because too many files have changed in this diff Show More