Compare commits

...

42 Commits

Author SHA1 Message Date
renovate[bot]
94315f07b2 chore(deps): update helm chart common to v3.0.1 (#594)
* chore(deps): update helm chart common to v3.0.1

* Modify kubeVersion

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <me@bjw-s.dev>
2021-02-16 11:04:57 +01:00
ᗪєνιη ᗷυнʟ
d81c4b586f [common] 3.0.1 (#591) 2021-02-16 06:58:53 +01:00
Antoine Bertin
a4b4eee806 [oauth2-proxy] add support for ingressClassName (#592) 2021-02-15 18:17:57 -05:00
charlie-haley
bb810f947a [omada-controller] - Add chart (#588) 2021-02-15 15:47:16 -05:00
ᗪєνιη ᗷυнʟ
951cdba374 [actions] remove updating timestamps in index.yaml (#585)
* actions: remove updating timestamps

* Update charts-release.yaml
2021-02-14 17:13:55 +01:00
Ryan Turner
d297f8b474 chore: fix chart home URL after it was missed (#583) 2021-02-13 19:29:16 -05:00
ᗪєνιη ᗷυнʟ
777c2ebcf3 bump charts to common v3 (#582) 2021-02-13 18:46:58 -05:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
edf66a746e [common] v3.0.0 (#576)
* [common] Modify default probe settings

* Small CHANGELOG update

* Add kubeVersion to metadata
2021-02-13 15:53:29 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
84120a2a65 [meta] Update issue_template 2021-02-12 12:04:23 +01:00
Patrick Collins
c0cbc83eaf fix typo (#574) 2021-02-12 00:56:35 -05:00
Patrick Collins
ebfef9e0f8 shouldn't bump template version (#572)
CONTRIBUTING.md says charts should start at 1.0.0; so presumably the template should too.
2021-02-12 00:55:39 -05:00
Patrick Collins
b17621cf73 install go-replace before using it (#571)
needs this or at least deps:go-replace.
2021-02-12 00:55:08 -05:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
896f9dd5b7 [common] Update changelog, fix values typo (#569) 2021-02-11 19:36:59 +01:00
Mikael Sennerholm
11ef99d20a [common] Add ingress unittest and tpl functionality (#568)
* Add support for tpl in ingress handling
2021-02-11 18:59:30 +01:00
Ingvarr Zhmakin
1c7d6d403e [smarter-device-manager] New chart (#532) 2021-02-11 10:22:30 +01:00
ᗪєνιη ᗷυнʟ
a32e94cfca [couchpotato] delete couchpotato (#567) 2021-02-09 16:57:47 -05:00
ᗪєνιη ᗷυнʟ
91729b6b53 [couchpotato] deprecate chart (#566) 2021-02-09 16:55:18 -05:00
Jeff Billimek
8b932311c1 fix typo in UNIFI_STDOUT placement (#562) 2021-02-09 22:02:04 +01:00
ᗪєνιη ᗷυнʟ
a6edab35b7 [meta] updates to repo (#554) 2021-02-08 13:45:14 +01:00
Jeff Billimek
8c5ade2b2b [unifi] enhance unifi to log to stdout (#547)
* enhance unifi to log to stdout

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

* bump version after rebase from master
2021-02-06 11:49:42 -05:00
David Luong
a9218cd798 Allow service port to define captive portal port in deployment like gui and controller service (#557) 2021-02-06 08:33:09 -05:00
David Luong
f43d3ab7e7 Fixed unifi chart breaking from range restriction value on captive ingress (#555) 2021-02-05 20:01:32 -05:00
renovate[bot]
607fb8a01d Update external patch dep Helm releases (#526)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-02-05 15:21:00 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
15eb4e4e2b [statping] Bump postgresql dependency (#552)
* [statping] Bump postgresql dependency
2021-02-05 15:10:40 +01:00
renovate[bot]
974de8e654 Update Helm chart common to v2.4.0 (#546) 2021-02-05 08:59:30 -05:00
Kjeld Schouten-Lebbing
711b2f332d Remove DashMachine (#548)
Signed-off-by: Kjeld Schouten-Lebbing <kjeld@schouten-lebbing.nl>
2021-02-05 14:27:02 +01:00
David Luong
cef461b7f2 Added conditional, if https svc for captive portal defined, default to https svc (#540) 2021-02-05 13:45:15 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
3d64b1c07a [common] Update to 2.4.0 (#550)
* [common] Add envValueFrom

* Add unit tests

Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-02-05 13:44:48 +01:00
Kjeld Schouten-Lebbing
a5cd196a7f Depricate DashMachine (#549)
Signed-off-by: Kjeld Schouten-Lebbing <kjeld@schouten-lebbing.nl>
2021-02-05 13:15:48 +01:00
ᗪєνιη ᗷυнʟ
94bf122994 [common] Upgrade to v2.3.0 (#513)
* [common] Allow to override container command (#499)

Signed-off-by: Ingvarr Zhmakin

Co-authored-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <6213398+bjw-s@users.noreply.github.com>

* fix: add resources to values

* [common] Add support for volumeClaimTemplates in statefulset (#529)

Signed-off-by: Mikael Sennerholm <mikael@sennerholm.net>

* [common] Add support for templatified env-variables (#530)

* Add support for template env vars

Signed-off-by: Mikael Sennerholm <mikael@sennerholm.net>

* [common-next] some additional pod properties (#533)

* [common] new pod properties

* [common] Move test of statefulset (#536)

* Moved statefulset chart-test to unit test

* [common] Move env tpl test fix (#542)

* Take care of setting envTpl if no env set

* Add Test cases

* Moved to unit tests

* Update changelog, add missing fields to values

* common-test doesn't need a bump

* Relocate end statement

Co-authored-by: Ingvarr Zhmakin <19270832+lazyoldbear@users.noreply.github.com>
Co-authored-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <6213398+bjw-s@users.noreply.github.com>
Co-authored-by: Mikael Sennerholm <mikael@sennerholm.net>
2021-02-04 17:01:40 +01:00
Kjeld Schouten-Lebbing
97de7b430d [lazylibrarian] Move to Common (#543)
* Move LazyLibrarian to Common chart

Signed-off-by: Kjeld Schouten-Lebbing <kjeld@schouten-lebbing.nl>

* Update lazylibrarian to latest

- appVersion is still 1.7.2

Signed-off-by: Kjeld Schouten-Lebbing <kjeld@schouten-lebbing.nl>
2021-02-04 12:15:19 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
3bd8295151 [gonic] Bump to make CI happy again 2021-02-04 08:27:53 +01:00
ᗪєνιη ᗷυнʟ
38efefa16b [gonic] update to latest gonic version (#541) 2021-02-04 08:10:57 +01:00
Eagleman7
c522152e20 [protonmail-bridge] fix documentation formatting (#535)
* fix documentation formatting
2021-02-03 19:54:50 +01:00
Eagleman7
beee21811a protonmail-bridge (#534) 2021-02-02 20:27:06 -05:00
Mike K
1775d51d22 [Paperless] - Update chart to use the 'Paperless-ng' fork (#525) 2021-02-02 08:35:46 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
a52f214568 [frigate] Remove chart (#531) 2021-02-01 19:49:13 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
269e6e6539 [frigate] Deprecate chart (#528)
* [frigate] Deprecate chart

* Fix linter stuff

* More CI fixes

* [frigate] Update
2021-02-01 13:37:39 -05:00
ᗪєνιη ᗷυнʟ
a885f84f21 [home-assistant] bump chart version (#523) 2021-01-28 14:55:41 -05:00
Ryan Holt
dca725c103 reintroduce helmignore (#522)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2021-01-27 10:33:15 -05:00
Ryan Holt
8dcc5b95ca [teedy] Add chart teedy (#521)
Signed-off-by: Ryan Holt <ryan@ryanholt.net>
2021-01-27 16:14:01 +01:00
Ryan Holt
a6044906b8 create new branch prior to creating a chart (#520) 2021-01-27 09:02:10 -05:00
208 changed files with 2696 additions and 2457 deletions

View File

@@ -21,6 +21,10 @@ assignees: ''
<!-- Note: This should be a clear and concise description of what the bug is. -->
**Relevant Helm values:**
<!-- Note: Please include a snippet of the relevant values in (or a Pastebin/similar link to) your values.yaml. -->
**What did you expect to happen:**
**Anything else you would like to add:**

8
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Ask a question
url: https://github.com/k8s-at-home/charts/discussions
about: Please ask and answer questions here.
- name: Discuss on Discord
url: https://discord.com/invite/sTMX7Vh
about: Join our Discord community

View File

@@ -1,14 +0,0 @@
---
name: Question
about: Ask a question to the maintainer
title: ''
labels: question
assignees: ''
---
# Details
**Ask your question:**
<!-- Note: A clear and concise query of what you want to ask. -->

19
.github/PAUL.yaml vendored Normal file
View File

@@ -0,0 +1,19 @@
maintainers:
- billimek
- bjw-s
- carpenike
- onedr0p
labels: true
empty_description_check:
enabled: true
enforced: false
branch_destroyer:
enabled: true
protected_branches:
- master
- gh-pages
pull_requests:
automated_merge: false
cats_enabled: true
dogs_enabled: true
allow_approval: true

View File

@@ -45,46 +45,12 @@ jobs:
uses: azure/setup-helm@v1
with:
version: v3.4.0
# Waiting on new version to be released that supports updating the genereated timestamp field
# https://github.com/helm/chart-releaser/issues/103
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.1.0
with:
charts_repo_url: https://k8s-at-home.com/charts/
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
# Update the generated timestamp in the index.yaml
# needed until https://github.com/helm/chart-releaser/issues/90
# or helm/chart-releaser-action supports this
post-release:
needs: release
runs-on: ubuntu-latest
steps:
- name: Block concurrent jobs
uses: softprops/turnstyle@v1
with:
continue-after-seconds: 180
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout
uses: actions/checkout@v2
with:
ref: "gh-pages"
fetch-depth: 0
- name: Configure Git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Commit and push timestamp updates
run: |
if [[ -f index.yaml ]]; then
git pull
export generated_date=$(date --utc +%FT%T.%9NZ)
sed -i -e "s/^generated:.*/generated: \"$generated_date\"/" index.yaml
git add index.yaml
git commit -sm "Update generated timestamp [ci-skip]" || exit 0
git push
fi

1
.gitignore vendored
View File

@@ -14,4 +14,3 @@ charts/*/charts
.env
.envrc
Gemfile.lock
.helmignore

View File

@@ -1,5 +1,13 @@
# See https://pre-commit.com for more information
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.4.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: fix-byte-order-marker
- id: mixed-line-ending
- repo: local
hooks:
- id: ct-lint

View File

@@ -6,6 +6,7 @@ tasks:
create:
desc: create new chart
cmds:
- git checkout -b add-chart-{{.CHART}}
- cp -r {{.GIT_ROOT}}/templates/chart {{.GIT_ROOT}}/charts/{{.CHART}}
- ./.bin/go-replace -s '${CHARTNAME}' -r "{{.CHART}}" --path={{.GIT_ROOT}}/charts/{{.CHART}} --path-pattern='*.*'
- task: dependency

View File

@@ -48,6 +48,7 @@ sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b .bin
# Create chart
PATH=$PATH:$PWD/.bin
task deps:install
task chart:create CHART=chart_name
# Don't forgot edit some chart informations in charts/char_name/Chart.yaml and charts/char_name/values.yaml

View File

@@ -23,15 +23,15 @@ You can then run `helm search repo k8s-at-home` to see the charts.
See [Artifact Hub](https://artifacthub.io/packages/search?org=k8s-at-home) or [charts](./charts/) for a complete list.
## Common Library
## Common library
The majority of the charts in this repository are using a common library we built. The reason we went with this pattern is a lot of applications are pretty similar in their requirements for Helm charts. Using a library makes maintaining much easier and keeps charts consistent in features. If contributing a new chart first try to make it using the library we built.
More information can be found [here](https://github.com/k8s-at-home/charts/tree/master/charts/common).
More information can be found in our [wiki](https://github.com/k8s-at-home/charts/wiki) and in the common chart directory [here](https://github.com/k8s-at-home/charts/tree/master/charts/common).
## Support
- Having problems with a chart or have a feature request? Open a new [issue](https://github.com/k8s-at-home/charts/issues/new/choose).
- Having problems with a chart? Open a new [issue](https://github.com/k8s-at-home/charts/issues/new/choose) or discuss in our [Discord](https://discord.gg/sTMX7Vh) in the `#support` channel.
- New idea? Discuss [here](https://github.com/k8s-at-home/charts/discussions) or in our [Discord](https://discord.gg/sTMX7Vh) in the `#charts` channel.
## Contributing

View File

@@ -2,20 +2,21 @@ apiVersion: v2
appVersion: 0.4.2
description: Bot for Prometheus Alertmanager
name: alertmanager-bot
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- alertmanager
- telegram
- bot
- alerting
- alertmanager
- telegram
- bot
- alerting
home: https://github.com/k8s-at-home/charts/tree/master/charts/alertmanager-bot
sources:
- https://hub.docker.com/r/metalmatze/alertmanager-bot
- https://github.com/metalmatze/alertmanager-bot
- https://hub.docker.com/r/metalmatze/alertmanager-bot
- https://github.com/metalmatze/alertmanager-bot
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for alertmanager-bot.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: metalmatze/alertmanager-bot
@@ -20,6 +25,9 @@ env:
service:
enabled: false
ingress:
enabled: false
persistence:
data:
enabled: false

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: 4.0.5
description: AppDaemon is a loosely coupled, multi-threaded, sandboxed python execution environment for writing automation apps for various types of Home Automation Software including Home Assistant and MQTT.
name: appdaemon
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- appdaemon
- home-automation
- home-assistant
- mqtt
- appdaemon
- home-automation
- home-assistant
- mqtt
home: https://github.com/k8s-at-home/charts/tree/master/charts/appdaemon
sources:
- https://github.com/AppDaemon/appdaemon
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Appdaemon.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
# Use our own image at https://github.com/k8s-at-home/container-images/tree/main/appdaemon
# until https://github.com/AppDaemon/appdaemon/pull/1002 is merged

View File

@@ -2,23 +2,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: 5.3.1
version: 6.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- bazarr
- radarr
- sonarr
- subtitles
- usenet
- torrent
- 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
- https://hub.docker.com/r/linuxserver/bazarr/
- https://github.com/morpheus65535/bazarr
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Bazarr.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/bazarr
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 6767
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
service:
port:
port: 6767
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: v2009.1.0
description: Booksonic is a platform for accessing the audibooks you own wherever you are
name: booksonic-air
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- booksonic
- audiobook
- booksonic
- audiobook
home: https://github.com/k8s-at-home/charts/tree/master/charts/booksonic-air
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/booksonic-air.png
sources:
- https://github.com/popeen/Booksonic-Air
- https://hub.docker.com/r/linuxserver/booksonic-air
- https://github.com/popeen/Booksonic-Air
- https://hub.docker.com/r/linuxserver/booksonic-air
maintainers:
- name: wojoinc
email: wojoinc@pm.me
- name: wojoinc
email: wojoinc@pm.me
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Booksonic-air.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/booksonic-air
@@ -8,16 +13,19 @@ image:
strategy:
type: Recreate
service:
port:
port: 4040
env: {}
# TZ: UTC
# PUID: "1001"
# PGID: "1001"
# CONTEXT_PATH=url-base # Used to set the base path for reverse proxies eg. /booksonic, /books, etc.
service:
port:
port: 4040
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: 0.6.9
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: 4.3.1
version: 5.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- calibre
- ebook
- 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
- https://hub.docker.com/r/linuxserver/calibre-web/
- https://github.com/janeczku/calibre-web
maintainers:
- name: wojoinc
email: wojoinc@pm.me
- name: wojoinc
email: wojoinc@pm.me
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Calibre-Web.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/calibre-web
@@ -8,10 +13,6 @@ image:
strategy:
type: Recreate
service:
port:
port: 8083
env: {}
# TZ:
# PUID:
@@ -19,6 +20,13 @@ env: {}
# UMASK:
# DOCKER_MODS:
service:
port:
port: 8083
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -1,15 +1,16 @@
apiVersion: v2
name: common-test
description: Helper chart to test different use cases of the common library
version: 1.0.2
version: 1.0.4
kubeVersion: ">=1.16.0-0"
keywords:
- k8s-at-home
- common
- k8s-at-home
- common
home: https://github.com/k8s-at-home/charts/tree/master/charts/common-test
maintainers:
- name: bjw-s
email: me@bjw-s.dev
- name: bjw-s
email: me@bjw-s.dev
dependencies:
- name: common
repository: file://../common
version: n/a
- name: common
repository: file://../common
version: n/a

View File

@@ -4,6 +4,63 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [3.0.1]
### Fixed
- Fixed `kubeVersion` in `Chart.yaml` not working with people running k8s pre-releases
- Added `ingressClassName` to `values.yaml`
## [3.0.0]
### Changed
- `probes.startupProbe` is now enabled by default. This will allow for quicker `Ready` states on Pods. It will precede the liveness and readiness Probes. *Note:* This requires that you are running [Kubernetes 1.16](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/)
- Aligned our default values for liveness and readiness Probes with the Kubernetes defaults:
- `initialDelaySeconds` is now `0`
- `timeoutSeconds` is now `1`
- `failureThreshold` is now `3`
## [2.5.1]
### Added
- Fixed a small typo in `values.yaml`: `ingress.tls.hostTpl` -> `ingress.tls.hostsTpl`
## [2.5.0]
### Added
- Allow setting ingress values through Helm templates:
- `ingress.hosts.hostTpl`
- `ingress.tls.secretNameTpl`
- `ingress.tls.hostsTpl`
## [2.4.0]
### Added
- Allow setting environment variables from Downward API via `envValueFrom`. See [the Kubernetes docs](https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/) for more information.
## [2.3.0]
### Added
- Allow overriding the main container command.
- Allow setting Helm templates as environment variables via `envTpl`. The given value is parsed through Helm's `tpl` function, allowing for powerful variable substitution.
- Support for defining volumeClaimTemplates for StatefulSet.
- Allow the following Pod spec fields to be configurable:
- `priorityClassName`
- `schedulerName`
- `hostname`
### Fixed
- `values.yaml` now contains the following sections, these were already functional but were previously undocumented:
- `podSecurityContext`
- `securityContext`
- `resources`
## [2.2.1]
### Fixed
@@ -59,6 +116,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
This is the last version before starting this changelog. All sorts of cool stuff was changed, but only `git log` remembers what that was :slightly_frowning_face:
[3.0.1]: https://github.com/k8s-at-home/charts/tree/common-3.0.1/charts/common
[3.0.0]: https://github.com/k8s-at-home/charts/tree/common-3.0.0/charts/common
[2.5.1]: https://github.com/k8s-at-home/charts/tree/common-2.5.1/charts/common
[2.5.0]: https://github.com/k8s-at-home/charts/tree/common-2.5.0/charts/common
[2.4.0]: https://github.com/k8s-at-home/charts/tree/common-2.4.0/charts/common
[2.3.0]: https://github.com/k8s-at-home/charts/tree/common-2.3.0/charts/common
[2.2.1]: https://github.com/k8s-at-home/charts/tree/common-2.2.1/charts/common
[2.2.0]: https://github.com/k8s-at-home/charts/tree/common-2.2.0/charts/common

View File

@@ -2,11 +2,12 @@ apiVersion: v2
name: common
description: Function library for k8s-at-home charts
type: library
version: 2.2.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- k8s-at-home
- common
- k8s-at-home
- common
home: https://github.com/k8s-at-home/charts/tree/master/charts/common
maintainers:
- name: bjw-s
email: me@bjw-s.dev
- name: bjw-s
email: me@bjw-s.dev

View File

@@ -6,7 +6,7 @@ Default NOTES.txt content.
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 }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{- if .hostTpl }}{{ tpl .hostTpl $ }}{{ else }}{{ .host }}{{ end }}{{ (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" . }})

View File

@@ -36,4 +36,18 @@ spec:
{{- include "common.labels.selectorLabels" . | nindent 8 }}
spec:
{{- include "common.controller.pod" . | nindent 6 }}
volumeClaimTemplates:
{{- range $index, $vct := .Values.volumeClaimTemplates }}
- metadata:
name: {{ $vct.name }}
spec:
accessModes:
- {{ required (printf "accessMode is required for vCT %v" $vct.name) $vct.accessMode | quote }}
resources:
requests:
storage: {{ required (printf "size is required for PVC %v" $vct.name) $vct.size | quote }}
{{- if $vct.storageClass }}
storageClassName: {{ if (eq "-" $vct.storageClass) }}""{{- else }}{{ $vct.storageClass | quote }}{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -38,12 +38,23 @@ spec:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
{{- range .hostsTpl }}
- {{ tpl . $ | quote }}
{{- end }}
{{- if .secretNameTpl }}
secretName: {{ tpl .secretNameTpl $ | quote}}
{{- else }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
{{- end }}
rules:
{{- range $values.hosts }}
{{- if .hostTpl }}
- host: {{ tpl .hostTpl $ | quote }}
{{- else }}
- host: {{ .host | quote }}
{{- end }}
http:
paths:
{{- range .paths }}

View File

@@ -5,6 +5,9 @@ The main container included in the controller.
- name: {{ include "common.names.fullname" . }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
{{- with .Values.command }}
command: {{ . }}
{{- end }}
{{- with .Values.args }}
args: {{ . }}
{{- end }}
@@ -12,12 +15,21 @@ The main container included in the controller.
securityContext:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- if .Values.env }}
{{- if or .Values.env .Values.envTpl .Values.envValueFrom }}
env:
{{- range $key, $value := .Values.env }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
{{- range $key, $value := .Values.envTpl }}
- name: {{ $key }}
value: {{ tpl $value $ | quote }}
{{- end }}
{{- range $key, $value := .Values.envValueFrom }}
- name: {{ $key }}
valueFrom:
{{- $value | toYaml | nindent 6 }}
{{- end }}
{{- end }}
{{- with .Values.envFrom }}
envFrom:
@@ -37,6 +49,15 @@ The main container included in the controller.
{{- if .Values.additionalVolumeMounts }}
{{- toYaml .Values.additionalVolumeMounts | nindent 2 }}
{{- end }}
{{- if eq .Values.controllerType "statefulset" }}
{{- range $index, $vct := .Values.volumeClaimTemplates }}
- mountPath: {{ $vct.mountPath }}
name: {{ $vct.name }}
{{- if $vct.subPath }}
subPath: {{ $vct.subPath }}
{{- end }}
{{- end }}
{{- end }}
{{- include "common.controller.probes" . | nindent 2 }}
{{- with .Values.resources }}
resources:

View File

@@ -11,9 +11,18 @@ serviceAccountName: {{ include "common.names.serviceAccountName" . }}
securityContext:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.priorityClassName }}
priorityClassName: {{ . }}
{{- end }}
{{- with .Values.schedulerName }}
schedulerName: {{ . }}
{{- end }}
{{- with .Values.hostNetwork }}
hostNetwork: {{ . }}
{{- end }}
{{- with .Values.hostname }}
hostname: {{ . }}
{{- end }}
{{- with .Values.dnsPolicy }}
dnsPolicy: {{ . }}
{{- end }}

View File

@@ -12,6 +12,8 @@ strategy:
## DaemonSets ignore this
type: RollingUpdate
# Override the default command
command: []
# Override the default args
args: []
@@ -31,7 +33,19 @@ serviceAccount:
name: ""
env: {}
# TZ: UTC
# TZ: UTC
## Variables with values set from templates, example
## With a release name of: demo, the example env value will be: demo-admin
envTpl: {}
# TEMPLATE_VALUE: "{{ .Release.Name }}-admin"
## Variables with values from (for example) the Downward API
## See https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/
envValueFrom: {}
# NODE_NAME:
# fieldRef:
# fieldPath: spec.nodeName
envFrom: []
# - configMapRef:
@@ -39,6 +53,15 @@ envFrom: []
# - secretRef:
# name: secret-name
# Custom priority class for different treatment by the scheduler
# priorityClassName: system-node-critical
# Allow specifying a custom scheduler name
# schedulerName: awkward-dangerous-scheduler
# Allow specifying explicit hostname setting
# hostname:
# When using hostNetwork make sure you set dnsPolicy to ClusterFirstWithHostNet
hostNetwork: false
@@ -56,6 +79,12 @@ dnsPolicy: ClusterFirst
# for more information.
enableServiceLinks: true
# Configure the Security Context for the Pod
podSecurityContext: {}
# Configure the Security Context for the main container
securityContext: {}
initContainers: []
additionalContainers: []
@@ -69,10 +98,10 @@ probes:
## The spec field contains the values for the default livenessProbe.
## If you selected custom: true, this field holds the definition of the livenessProbe.
spec:
initialDelaySeconds: 30
failureThreshold: 5
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
readiness:
enabled: true
@@ -81,22 +110,23 @@ probes:
## The spec field contains the values for the default readinessProbe.
## If you selected custom: true, this field holds the definition of the readinessProbe.
spec:
initialDelaySeconds: 30
failureThreshold: 5
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
startup:
enabled: false
enabled: true
## Set this to true if you wish to specify your own startupProbe
custom: false
## The spec field contains the values for the default startupProbe.
## If you selected custom: true, this field holds the definition of the startupProbe.
spec:
initialDelaySeconds: 5
initialDelaySeconds: 0
timeoutSeconds: 1
## This means it has a maximum of 5*30=150 seconds to start up before it fails
periodSeconds: 5
failureThreshold: 30
periodSeconds: 10
timeoutSeconds: 10
service:
enabled: true
@@ -147,16 +177,24 @@ ingress:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
labels: {}
# ingressClassName: "nginx"
hosts:
- host: chart-example.local
## Or a tpl that is evaluated
# hostTpl: '{{ include "common.names.fullname" . }}.{{ .Release.Namespace }}.{{ .Values.ingress.domainname }}'
paths:
- path: /
# Ignored if not kubeVersion >= 1.14-0
pathType: Prefix
tls: []
# - secretName: chart-example-tls
## Or if you need a dynamic secretname
# - secretNameTpl: '{{ include "common.names.fullname" . }}-ingress'
# hosts:
# - chart-example.local
## Or a tpl that is evaluated
# hostsTpl:
# - '{{ include "common.names.fullname" . }}.{{ .Release.Namespace }}.{{ .Values.ingress.domainname }}'
additionalIngresses: []
# - enabled: false
# nameSuffix: "api"
@@ -207,6 +245,19 @@ additionalVolumes: []
additionalVolumeMounts: []
volumeClaimTemplates: []
# Used in statefulset to create individual disks for each instance
# - name: data
# mountPath: /data
# accessMode: "ReadWriteOnce"
# size: 1Gi
# - name: backup
# mountPath: /backup
# subPath: theSubPath
# accessMode: "ReadWriteOnce"
# size: 2Gi
# storageClass: cheap-storage-class
nodeSelector: {}
affinity: {}
@@ -221,6 +272,18 @@ hostAliases: []
# - "example.com"
# - "www.example.com"
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
addons:
# Enable running a VPN in the pod to route traffic through a VPN

View File

@@ -1,21 +0,0 @@
apiVersion: v2
appVersion: latest
description: CouchPotato (CP) is an automatic NZB and torrent downloader.
name: couchpotato
version: 4.3.1
keywords:
- couchpotato
- usenet
- bittorrent
home: https://github.com/k8s-at-home/charts/tree/master/charts/couchpotato
icon: https://github.com/CouchPotato/CouchPotatoServer/raw/master/couchpotato/static/images/icons/android.png
sources:
- https://hub.docker.com/r/linuxserver/couchpotato/
- https://github.com/CouchPotato/CouchPotatoServer/
maintainers:
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1

View File

@@ -1,40 +0,0 @@
# Default values for Couchpotato.
image:
repository: linuxserver/couchpotato
pullPolicy: Always
tag: latest
strategy:
type: Recreate
service:
port:
port: 5050
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

@@ -1,24 +0,0 @@
# 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

@@ -1,16 +0,0 @@
apiVersion: v2
appVersion: v0.5-4
description: DashMachine is another web application bookmark dashboard, with fun features.
icon: https://github.com/rmountjoy92/DashMachine/raw/master/dashmachine/static/images/logo/logo.png
home: https://github.com/rmountjoy92/DashMachine
name: dashmachine
version: 3.3.1
sources:
- https://github.com/rmountjoy92/DashMachine
maintainers:
- name: carpenike
email: ryan@ryanholt.net
dependencies:
- name: common
version: 2.2.1
repository: https://k8s-at-home.com/charts/

View File

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

View File

@@ -1,22 +0,0 @@
# Default values for dashmachine.
image:
repository: rmountjoy/dashmachine
tag: v0.5-4
pullPolicy: IfNotPresent
strategy:
type: Recreate
service:
port:
port: 5000
env: {}
# TZ: UTC
persistence:
config:
enabled: false
emptyDir: false
mountPath: /dashmachine/dashmachine/user_data

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: 3.9.1
description: Perl client used to update dynamic DNS entries for accounts on Dynamic DNS Network Service Providers
name: ddclient
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- ddclient
- dns
- ddclient
- dns
home: https://github.com/ddclient/ddclient
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/ddclient-logo.png
sources:
- https://github.com/ddclient/ddclient
- https://hub.docker.com/r/linuxserver/ddclient
- https://github.com/ddclient/ddclient
- https://hub.docker.com/r/linuxserver/ddclient
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,10 +1,18 @@
# Default values for ddclient.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/ddclient
pullPolicy: IfNotPresent
tag: version-v3.9.1
strategy:
type: Recreate
env: {}
# TZ:
# PUID:
@@ -13,6 +21,9 @@ env: {}
service:
enabled: false
ingress:
enabled: false
probes:
liveness:
enabled: false
@@ -21,9 +32,6 @@ probes:
startup:
enabled: false
strategy:
type: Recreate
config: |
# This is the configuration for ddclient
# Inorder for it to function you need to set it up

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: v2.0.3-2201906121747
description: Deluge is a torrent download client
name: deluge
version: 1.1.1
version: 2.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- deluge
- torrent
- deluge
- torrent
home: https://github.com/k8s-at-home/charts/tree/master/charts/deluge
icon: https://avatars2.githubusercontent.com/u/6733935?v=3&s=200
sources:
- https://hub.docker.com/r/linuxserver/deluge/
- https://deluge-torrent.org/
- https://hub.docker.com/r/linuxserver/deluge/
- https://deluge-torrent.org/
maintainers:
- name: mcmarkj
email: mark@markmcw.uk
- name: mcmarkj
email: mark@markmcw.uk
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for deluge.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/deluge
@@ -12,6 +17,9 @@ service:
port:
port: 8112
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,7 +2,8 @@ apiVersion: v2
appVersion: v4.9.0
description: DSMR-protocol reader, telegram data storage and energy consumption visualizer.
name: dsmr-reader
version: 1.1.1
version: 2.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- dsmr-reader
- energy
@@ -17,8 +18,8 @@ maintainers:
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
version: 3.0.1
- name: postgresql
version: 10.2.0
version: 10.2.7
repository: https://charts.bitnami.com/bitnami
condition: postgresql.enabled

View File

@@ -1,20 +1,18 @@
# Default values for dsmr-reader.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: xirixiz/dsmr-reader-docker
pullPolicy: IfNotPresent
tag: latest-v4.9.0-amd64
securityContext:
privileged: true
strategy:
type: Recreate
service:
port:
port: 80
# For all options see https://github.com/xirixiz/dsmr-reader-docker#dsmr-reader---environment-variables
env:
# TZ: UTC
@@ -24,6 +22,16 @@ env:
DJANGO_DATABASE_PORT: 5432
DJANGO_DATABASE_NAME: dsmr-reader
service:
port:
port: 80
ingress:
enabled: false
securityContext:
privileged: true
# Path to your p1 reader device in the container
# additionalVolumeMounts:
# - name: p1reader

View File

@@ -2,18 +2,19 @@ apiVersion: v2
appVersion: 1.15.3
description: ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
name: esphome
version: 4.3.1
version: 5.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- esphome
- home-automation
- esphome
- home-automation
home: https://github.com/k8s-at-home/charts/tree/master/charts/esphome
icon: https://esphome.io/_images/logo-text.svg
sources:
- https://github.com/esphome/esphome
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for esphome.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: esphome/esphome
@@ -8,10 +13,6 @@ image:
strategy:
type: Recreate
service:
port:
port: 6052
env: {}
# ESPHOME_DASHBOARD_USE_PING: true
# ESPHOME_DASHBOARD_RELATIVE_URL: "/"
@@ -21,6 +22,13 @@ env: {}
# USERNAME:
# PASSWORD:
service:
port:
port: 6052
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,18 +2,19 @@ apiVersion: v2
appVersion: v1.2.3
description: FlareSolverr is a proxy server to bypass Cloudflare protection
name: flaresolverr
version: 1.0.0
version: 2.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- flaresolverr
- jackett
- flaresolverr
- jackett
home: https://github.com/k8s-at-home/charts/tree/master/charts/flaresolverr
sources:
- https://github.com/FlareSolverr/FlareSolverr
- https://hub.docker.com/r/flaresolverr/flaresolverr
- https://github.com/FlareSolverr/FlareSolverr
- https://hub.docker.com/r/flaresolverr/flaresolverr
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for FlareSolverr.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: flaresolverr/flaresolverr
@@ -8,9 +13,12 @@ image:
strategy:
type: Recreate
env: {}
# LOG_LEVEL: UTC
service:
port:
port: 8191
env: {}
# LOG_LEVEL: UTC
ingress:
enabled: false

View File

@@ -2,21 +2,22 @@ apiVersion: v2
appVersion: 4.1.1
description: Flood is a monitoring service for various torrent clients
name: flood
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- flood
- rtorrent
- qbittorrent
- transmission
- flood
- rtorrent
- qbittorrent
- transmission
home: https://github.com/k8s-at-home/charts/tree/master/charts/flood
icon: https://raw.githubusercontent.com/jesec/flood/master/flood.svg
sources:
- https://github.com/jesec/flood
- https://hub.docker.com/r/jesec/flood
- https://github.com/jesec/flood
- https://hub.docker.com/r/jesec/flood
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for flood.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: jesec/flood
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 3000
# Other environment variables that can be configure can be seen at
# https://github.com/jesec/flood/blob/master/config.cli.js
env:
FLOOD_OPTION_RUNDIR: /data
service:
port:
port: 3000
ingress:
enabled: false
persistence:
data:
enabled: false

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: 1.17.0
description: FreshRSS is a self-hosted RSS feed aggregator
name: freshrss
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- freshrss
- rss
- freshrss
- rss
home: https://github.com/k8s-at-home/charts/tree/master/charts/freshrss
icon: https://github.com/FreshRSS/FreshRSS/blob/master/docs/img/FreshRSS-logo.png?raw=true
sources:
- https://github.com/FreshRSS/FreshRSS
- https://hub.docker.com/r/linuxserver/freshrss
- https://github.com/FreshRSS/FreshRSS
- https://hub.docker.com/r/linuxserver/freshrss
maintainers:
- name: npawelek
email: nathan@nathanpawelek.com
- name: npawelek
email: nathan@nathanpawelek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for FreshRSS.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/freshrss
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 80
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
service:
port:
port: 80
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -1,18 +0,0 @@
apiVersion: v2
appVersion: "0.6.0"
description: Realtime object detection on RTSP cameras with the Google Coral
name: frigate
version: 4.0.1
keywords:
- tensorflow
- coral
- ml
home: https://github.com/k8s-at-home/charts/tree/master/charts/frigate
icon: https://upload.wikimedia.org/wikipedia/commons/a/a4/Lutine1.jpg
sources:
- https://github.com/blakeblackshear/frigate
maintainers:
- name: billimek
email: jeff@billimek.com
- name: blakeblackshear
email: blakeb@blakeshome.com

View File

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

View File

@@ -1,99 +0,0 @@
# frigate: Realtime object detection on RTSP cameras with the Google Coral
This is a helm chart for [frigate](https://github.com/blakeblackshear/frigate)
## TL;DR;
```shell
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/frigate
```
## Installing the Chart
To install the chart with the release name `my-release`:
```console
helm install --name my-release k8s-at-home/frigate
```
~~**IMPORTANT NOTE:** the [Google Coral USB Accelerator](https://coral.withgoogle.com/products/accelerator/) must be accessible on the node where this pod runs, in order for this chart to function properly.~~
The Coral USB device is now optional
A way to achieve this can be with nodeAffinity rules, for example:
```yaml
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: tpu
operator: In
values:
- google-coral
```
... where a node with an attached Coral USB device is labeled with `tpu: google-coral`
## 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 Frigate chart and their default values.
| Parameter | Description | Default |
|----------------------------|-------------------------------------|---------------------------------------------------------|
| `image.repository` | Image repository | `blakeblackshear/frigate` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/blakeblackshear/frigate/tags/).| `0.5.1`|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Timezone the frigate instance should run as, e.g. 'America/New_York' | `UTC` |
| `rtspPassword` | Password to use for RTSP cameras | `password` |
| `extraSecretForEnvFrom` | Secrets containing env variables for | `[]` |
| `coral.enabled` | Use the Coral USB device | `false` |
| `coral.hostPath` | Host Path to reference USB device location (on the host) | `/dev/bus/usb` |
| `masksConfigMap` | Reference to existing ConfigMap that contains camera masks - [more info](https://github.com/blakeblackshear/frigate#masks-and-limiting-detection-to-a-certain-area) | `{}` |
| `shmSize` | Shared memory size for processing | `1Gi` |
| `config` | frigate configuration - see [config.yaml](https://github.com/blakeblackshear/frigate/blob/master/config/config.yml) for example | `{}` |
| `Service.type` | Kubernetes service type for the frigate GUI | `ClusterIP` |
| `Service.port` | Kubernetes port where the frigate GUI is exposed| `5000` |
| `Service.annotations` | Service annotations for the frigate GUI | `{}` |
| `Service.labels` | Custom labels | `{}` |
| `Service.loadBalancerIP` | Loadbalance IP for the frigate 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 | `[]` |
| `resources` | CPU/Memory resource requests/limits | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `tolerations` | Toleration labels for pod assignment | `[]` |
| `affinity` | Affinity settings for pod assignment | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name my-release \
--set rtspPassword="nosecrets" \
k8s-at-home/frigate
```
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/frigate
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/frigate/values.yaml) file. It has several commented out suggested values.

View File

@@ -1,8 +0,0 @@
# Probes configuration
probes:
liveness:
enabled: false
readiness:
enabled: false
startup:
enabled: false

View File

@@ -1,19 +0,0 @@
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.hosts }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ . }}{{ $.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 "frigate.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 "frigate.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "frigate.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
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 "frigate.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:5000 to use your application"
kubectl port-forward $POD_NAME 5000:5000
{{- end }}

View File

@@ -1,45 +0,0 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "frigate.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 "frigate.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 "frigate.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Common labels
*/}}
{{- define "frigate.labels" -}}
app.kubernetes.io/name: {{ include "frigate.name" . }}
helm.sh/chart: {{ include "frigate.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}}

View File

@@ -1,13 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "frigate.fullname" . }}
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ include "frigate.name" . }}
helm.sh/chart: {{ include "frigate.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
data:
config.yml: |
{{ .Values.config | indent 4 }}

View File

@@ -1,149 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "frigate.fullname" . }}
labels:
{{ include "frigate.labels" . | indent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
revisionHistoryLimit: 3
strategy:
type: {{ .Values.strategyType }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "frigate.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "frigate.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Values.podAnnotations }}
annotations:
{{- range $key, $value := .Values.podAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
initContainers:
- name: config
securityContext:
readOnlyRootFilesystem: true
image: "{{ .Values.initContainer.image.repository }}:{{ .Values.initContainer.image.tag }}"
imagePullPolicy: {{ .Values.initContainer.image.pullPolicy }}
volumeMounts:
- mountPath: /frigate-config
name: configmap
- mountPath: /masks
name: masks
- mountPath: /config
name: config
readOnly: false
command: ['sh', '-c']
args:
- cp /frigate-config/* /config;
{{- if .Values.masksConfigMap }}
cp /masks/* /config;
{{- end }}
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
securityContext:
privileged: true
ports:
- name: http
containerPort: 5000
protocol: TCP
{{- if .Values.probes.liveness.enabled }}
livenessProbe:
httpGet:
path: /
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.liveness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
timeoutSeconds: {{ .Values.probes.liveness.timeoutSeconds }}
{{- end }}
{{- if .Values.probes.readiness.enabled }}
readinessProbe:
httpGet:
path: /
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.readiness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
timeoutSeconds: {{ .Values.probes.readiness.timeoutSeconds }}
{{- end }}
{{- if .Values.probes.startup.enabled }}
startupProbe:
httpGet:
path: /
port: http
scheme: HTTP
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
{{- end }}
env:
{{- if .Values.timezone }}
- name: TZ
value: "{{ .Values.timezone }}"
{{- end }}
- name: FRIGATE_RTSP_PASSWORD
value: "{{ .Values.rtspPassword }}"
envFrom:
{{- range .Values.extraSecretForEnvFrom }}
- secretRef:
name: {{ . }}
{{- end }}
volumeMounts:
{{- if .Values.coral.enabled }}
- mountPath: /dev/bus/usb
name: usb
{{- end }}
- mountPath: /config
name: config
- name: dshm
mountPath: /dev/shm
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumes:
- name: config
emptyDir: {}
- name: configmap
configMap:
name: {{ template "frigate.fullname" . }}
- name: masks
{{- if .Values.masksConfigMap }}
configMap:
name: {{ .Values.masksConfigMap }}
{{- else }}
emptyDir:
{}
{{- end }}
{{- if .Values.coral.enabled }}
- name: usb
hostPath:
path: {{ .Values.coral.hostPath }}
{{- end }}
- name: dshm
emptyDir:
medium: Memory
sizeLimit: {{ .Values.shmSize }}
{{- 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,35 +0,0 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "frigate.fullname" . -}}
{{- $ingressPath := .Values.ingress.path -}}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ $fullName }}
labels:
{{ include "frigate.labels" . | indent 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: {{ . | quote }}
http:
paths:
- path: {{ $ingressPath }}
backend:
serviceName: {{ $fullName }}
servicePort: http
{{- end }}
{{- end }}

View File

@@ -1,49 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ template "frigate.fullname" . }}
labels:
{{ include "frigate.labels" . | indent 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 "frigate.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -1,251 +0,0 @@
# Default values for frigate.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
# upgrade strategy type (e.g. Recreate or RollingUpdate)
strategyType: Recreate
image:
repository: blakeblackshear/frigate
tag: 0.6.0
pullPolicy: IfNotPresent
rtspPassword: password
# secret name containing environment variables for frigate
extraSecretForEnvFrom: []
coral:
enabled: false
hostPath: /dev/bus/usb
# Specify image that generates the config folder containing the Frigate config file, masks (if specified), etc.
initContainer:
image:
repository: busybox
tag: latest
pullPolicy: Always
# reference to configMap that contains the binary data of the masks to be copied into the container
# this requires that generateConfigFolder.enabled = true
# see https://github.com/blakeblackshear/frigate#masks-and-limiting-detection-to-a-certain-area for more info
masksConfigMap: {}
shmSize: 1Gi
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
# frigate configuration - see https://github.com/blakeblackshear/frigate/blob/master/config/config.yml for example
config: |
web_port: 5000
mqtt:
host: test.mosquitto.org
topic_prefix: frigate
# client_id: frigate # Optional -- set to override default client id of 'frigate' if running multiple instances
# user: username # Optional
#################
## Environment variables that begin with 'FRIGATE_' may be referenced in {}.
## password: '{FRIGATE_MQTT_PASSWORD}'
#################
# password: password # Optional
#################
# Default ffmpeg args. Optional and can be overwritten per camera.
# Should work with most RTSP cameras that send h264 video
# Built from the properties below with:
# "ffmpeg" + global_args + input_args + "-i" + input + output_args
#################
# ffmpeg:
# global_args:
# - -hide_banner
# - -loglevel
# - panic
# hwaccel_args: []
# input_args:
# - -avoid_negative_ts
# - make_zero
# - -fflags
# - nobuffer
# - -flags
# - low_delay
# - -strict
# - experimental
# - -fflags
# - +genpts+discardcorrupt
# - -vsync
# - drop
# - -rtsp_transport
# - tcp
# - -stimeout
# - '5000000'
# - -use_wallclock_as_timestamps
# - '1'
# output_args:
# - -f
# - rawvideo
# - -pix_fmt
# - rgb24
####################
# Global object configuration. Applies to all cameras
# unless overridden at the camera levels.
# Keys must be valid labels. By default, the model uses coco (https://dl.google.com/coral/canned_models/coco_labels.txt).
# All labels from the model are reported over MQTT. These values are used to filter out false positives.
# min_area (optional): minimum width*height of the bounding box for the detected person
# max_area (optional): maximum width*height of the bounding box for the detected person
# threshold (optional): The minimum decimal percentage (50% hit = 0.5) for the confidence from tensorflow
####################
objects:
track:
- person
- car
- truck
filters:
person:
min_area: 5000
max_area: 100000
threshold: 0.5
cameras:
back:
ffmpeg:
################
# Source passed to ffmpeg after the -i parameter. Supports anything compatible with OpenCV and FFmpeg.
# Environment variables that begin with 'FRIGATE_' may be referenced in {}
################
input: rtsp://viewer:{FRIGATE_RTSP_PASSWORD}@10.0.10.10:554/cam/realmonitor?channel=1&subtype=2
#################
# These values will override default values for just this camera
#################
# global_args: []
# hwaccel_args: []
# input_args: []
# output_args: []
################
## Optionally specify the resolution of the video feed. Frigate will try to auto detect if not specified
################
# height: 1280
# width: 720
################
## Optional mask. Must be the same aspect ratio as your video feed.
##
## The mask works by looking at the bottom center of the bounding box for the detected
## person in the image. If that pixel in the mask is a black pixel, it ignores it as a
## false positive. In my mask, the grass and driveway visible from my backdoor camera
## are white. The garage doors, sky, and trees (anywhere it would be impossible for a
## person to stand) are black.
##
## Masked areas are also ignored for motion detection.
################
# mask: back-mask.bmp
################
# Allows you to limit the framerate within frigate for cameras that do not support
# custom framerates. A value of 1 tells frigate to look at every frame, 2 every 2nd frame,
# 3 every 3rd frame, etc.
################
take_frame: 1
################
# The expected framerate for the camera. Frigate will try and ensure it maintains this framerate
# by dropping frames as necessary. Setting this lower than the actual framerate will allow frigate
# to process every frame at the expense of realtime processing.
################
fps: 5
################
# Configuration for the snapshots in the debug view and mqtt
################
snapshots:
show_timestamp: True
################
# Camera level object config. This config is merged with the global config above.
################
objects:
track:
- person
filters:
person:
min_area: 5000
max_area: 100000
threshold: 0.5
# Probes configuration
probes:
liveness:
enabled: true
initialDelaySeconds: 30
failureThreshold: 5
timeoutSeconds: 10
readiness:
enabled: true
initialDelaySeconds: 30
failureThreshold: 5
timeoutSeconds: 10
startup:
enabled: false
failureThreshold: 30
periodSeconds: 10
service:
type: ClusterIP
port: 5000
## 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
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: {}

View File

@@ -2,18 +2,19 @@ apiVersion: v2
appVersion: latest
description: Gaps searches through your Plex Server or local folders for all movies, then queries for known movies in the same collection.
name: gaps
version: 1.1.1
version: 2.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- plex
- plex-media-server
- plex
- plex-media-server
home: https://github.com/k8s-at-home/charts/tree/master/charts/gaps
icon: https://raw.githubusercontent.com/JasonHHouse/gaps/master/images/Final-Black.png
sources:
- https://github.com/JasonHHouse/gaps
- https://github.com/JasonHHouse/gaps
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Gaps.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: housewrecker/gaps
@@ -8,12 +13,15 @@ image:
strategy:
type: Recreate
env: {}
# TZ: UTC
service:
port:
port: 8484
env: {}
# TZ: UTC
ingress:
enabled: false
persistence:
data:

View File

@@ -1,20 +1,21 @@
apiVersion: v2
appVersion: latest
appVersion: v0.12.0
description: Music streaming server / subsonic server API implementation
name: gonic
version: 1.0.0
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- music
- subsonic
- music
- subsonic
home: https://github.com/k8s-at-home/charts/tree/master/charts/gonic
icon: https://raw.githubusercontent.com/sentriz/gonic/master/.github/logo.png
sources:
- https://github.com/sentriz/gonic
- https://hub.docker.com/r/sentriz/gonic
- https://github.com/sentriz/gonic
- https://hub.docker.com/r/sentriz/gonic
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -0,0 +1,21 @@
env:
GONIC_MUSIC_PATH: "/music"
GONIC_PODCAST_PATH: "/podcasts"
GONIC_CACHE_PATH: "/cache"
persistence:
data:
enabled: true
emptyDir: true
mountPath: /data
podcasts:
enabled: true
emptyDir: true
mountPath: /podcasts
cache:
enabled: true
emptyDir: true
mountPath: /cache
music:
enabled: true
emptyDir: true
mountPath: /music

View File

@@ -1,27 +1,46 @@
# Default values for Gonic.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: sentriz/gonic
pullPolicy: IfNotPresent
tag: latest
tag: v0.12.0
strategy:
type: Recreate
# # See more environment variables in the gonic documentation
# https://github.com/sentriz/gonic#configuration-options
env: {}
# TZ:
# GONIC_MUSIC_PATH:
# GONIC_PODCAST_PATH:
# GONIC_CACHE_PATH:
service:
port:
port: 80
# # See more environment variables in the gonic documentation
# https://github.com/sentriz/gonic#configuration-options
env: {}
# TZ: UTC
ingress:
enabled: false
persistence:
data:
enabled: false
emptyDir: false
podcasts:
enabled: false
emptyDir: false
cache:
enabled: false
emptyDir: false
music:
enabled: false
emptyDir: false

View File

@@ -2,17 +2,18 @@ apiVersion: v2
appVersion: v2.7.1
description: ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home
name: grocy
version: 4.3.1
version: 5.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- grocy
- grocy
home: https://github.com/k8s-at-home/charts/tree/master/charts/grocy
icon: https://github.com/grocy/grocy/raw/master/public/img/appicons/mstile-150x150.png
sources:
- https://github.com/grocy/grocy
- https://github.com/grocy/grocy
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
version: 2.2.1
repository: https://k8s-at-home.com/charts/
- name: common
version: 3.0.1
repository: https://k8s-at-home.com/charts/

View File

@@ -1,4 +1,9 @@
# Default values for grocy.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/grocy
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 80
env: {}
# TZ:
# PUID:
# PGID:
service:
port:
port: 80
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,18 +2,19 @@ apiVersion: v2
appVersion: 2.2.2
description: An Application dashboard and launcher
name: heimdall
version: 4.2.1
version: 5.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- heimdall
- heimdall
home: https://github.com/k8s-at-home/charts/tree/master/charts/heimdall
icon: https://i.imgur.com/mM4tcO5.png
sources:
- https://hub.docker.com/r/linuxserver/heimdall/
- https://github.com/linuxserver/heimdall
- https://hub.docker.com/r/linuxserver/heimdall/
- https://github.com/linuxserver/heimdall
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
version: 2.2.1
repository: https://k8s-at-home.com/charts/
- name: common
version: 3.0.1
repository: https://k8s-at-home.com/charts/

View File

@@ -1,4 +1,9 @@
# Default values for heimdall.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/heimdall
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 80
env: {}
# TZ:
# PUID:
# PGID:
service:
port:
port: 80
ingress:
enabled: false
probes:
startup:
enabled: true

View File

@@ -2,7 +2,8 @@ apiVersion: v2
appVersion: 2021.1.5
description: Home Assistant
name: home-assistant
version: 5.4.3
version: 6.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- home-assistant
- hass
@@ -19,16 +20,16 @@ maintainers:
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
version: 3.0.1
- name: postgresql
version: 10.2.0
version: 10.2.7
repository: https://charts.bitnami.com/bitnami
condition: postgresql.enabled
- name: mariadb
version: 9.2.0
version: 9.2.5
repository: https://charts.bitnami.com/bitnami
condition: mariadb.enabled
- name: influxdb
version: 1.1.6
version: 1.1.9
repository: https://charts.bitnami.com/bitnami
condition: influxdb.enabled

View File

@@ -1,4 +1,9 @@
# Default values for home-assistant.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: homeassistant/home-assistant
@@ -15,6 +20,9 @@ service:
port:
port: 8123
ingress:
enabled: false
# # Enable devices to be discoverable
# hostNetwork: true

View File

@@ -4,13 +4,14 @@ description: A dead simple static HOMepage for your servER to keep your services
icon: https://raw.githubusercontent.com/bastienwirtz/homer/main/public/logo.png
home: https://github.com/bastienwirtz/homer
name: homer
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
sources:
- https://github.com/bastienwirtz/homer
- https://github.com/bastienwirtz/homer
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
version: 2.2.1
repository: https://k8s-at-home.com/charts/
- name: common
version: 3.0.1
repository: https://k8s-at-home.com/charts/

View File

@@ -1,4 +1,9 @@
# Default values for homer.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: b4bz/homer
@@ -8,13 +13,16 @@ image:
strategy:
type: Recreate
env: {}
# UID:
# GID:
service:
port:
port: 8080
env: {}
# UID:
# GID:
ingress:
enabled: false
persistence:
config:

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: 2.0.0-alpha9
description: Hyperion is an opensource Bias or Ambient Lighting implementation
name: hyperion-ng
version: 1.1.1
version: 2.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- hyperion-ng
- hyperion
- hyperion-ng
- hyperion
home: https://github.com/k8s-at-home/charts/tree/master/charts/hyperion-ng
icon: https://raw.githubusercontent.com/hyperion-project/hyperion.ng/master/assets/webconfig/img/hyperion/hyperionlogo.png?raw=true
sources:
- https://github.com/hyperion-project/hyperion.ng
- https://hub.docker.com/r/sirfragalot/hyperion.ng
- https://github.com/hyperion-project/hyperion.ng
- https://hub.docker.com/r/sirfragalot/hyperion.ng
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for hyperion-ng.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: sirfragalot/hyperion.ng
@@ -8,6 +13,11 @@ image:
strategy:
type: Recreate
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
service:
port:
port: 8090
@@ -25,10 +35,8 @@ service:
protocol: TCP
targetPort: 19333
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
ingress:
enabled: false
persistence:
config:

View File

@@ -2,19 +2,20 @@ apiVersion: v2
appVersion: v0.16.2106
description: API Support for your favorite torrent trackers
name: jackett
version: 6.3.1
version: 7.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- jackett
- torrent
- jackett
- torrent
home: https://github.com/k8s-at-home/charts/tree/master/charts/jackett
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jackett-banner.png
sources:
- https://hub.docker.com/r/linuxserver/jackett/
- https://github.com/Jackett/Jackett
- https://hub.docker.com/r/linuxserver/jackett/
- https://github.com/Jackett/Jackett
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Jackett.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/jackett
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 9117
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
service:
port:
port: 9117
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,20 +2,21 @@ apiVersion: v2
appVersion: 10.6.4
description: Jellyfin is a Free Software Media System
name: jellyfin
version: 4.3.1
version: 5.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- jellyfin
- plex
- emby
- jellyfin
- plex
- emby
home: https://github.com/k8s-at-home/charts/tree/master/charts/Jellyfin
icon: https://github.com/jellyfin/jellyfin-ux/blob/master/branding/SVG/icon-solid-black.svg
sources:
- https://hub.docker.com/r/linuxserver/Jellyfin/
- https://github.com/jellyfin/jellyfin
- https://hub.docker.com/r/linuxserver/Jellyfin/
- https://github.com/jellyfin/jellyfin
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for jellyfin.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/jellyfin
@@ -12,6 +17,9 @@ service:
port:
port: 8096
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -1,16 +1,21 @@
apiVersion: v2
appVersion: 1.7.2
name: lazylibrarian
description: A Helm chart for deploying LazyLibrarian
version: 2.0.1
appVersion: 1.7.2
version: 4.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- lazylibrarian
- ebooks
- lazylibrarian
- ebooks
home: https://github.com/k8s-at-home/charts/lazylibrarian
icon: https://lazylibrarian.gitlab.io/logo.svg
sources:
- https://gitlab.com/LazyLibrarian/LazyLibrarian.git
- https://lazylibrarian.gitlab.io
- https://gitlab.com/LazyLibrarian/LazyLibrarian.git
- https://lazylibrarian.gitlab.io
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,6 +1,8 @@
# LazyLibrarian helm chart
# LazyLibrarian
This is a helm chart for [LazyLibrarian](https://gitlab.com/LazyLibrarian/LazyLibrarian.git) based on the [container image provided by LinuxServer.io](https://hub.docker.com/r/linuxserver/lazylibrarian/).
This is a helm chart for [LazyLibrarian](https://gitlab.com/LazyLibrarian/LazyLibrarian.git).
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new/choose)**
## TL;DR
@@ -13,89 +15,67 @@ $ helm install k8s-at-home/lazylibrarian
To install the chart with the release name `my-release`:
```shell
helm install my-release k8s-at-home/lazylibrarian
```console
helm install --name my-release k8s-at-home/lazylibrarian
```
## Uninstalling the Chart
To uninstall/delete the `my-release` deployment:
```shell
```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 LazyLibrarian chart and their default values.
| Parameter | Description | Default |
| ------------------------------------------- | --------------------------------------------------------------------------------------------------- | ---------------------------------------------- |
| `image.repository` | Image repository | `linuxserver/lazylibrarian` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/linuxserver/lazylibrarian/tags/). | `581cdfb3-ls23` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Timezone the instance should run as, e.g. 'America/New_York' | `UTC` |
| `puid` | process userID the instance should run as | `1001` |
| `pgid` | process groupID the instance should run as | `1001` |
| `dockerMods.calibre.enabled` | Enable optional calibre conversion feature. refer [here](https://github.com/linuxserver/docker-lazylibrarian#application-setup) | `false` |
| `dockerMods.calibre.image.repository` | DockerMod image repository | `linuxserver/calibre-web` |
| `dockerMods.calibre.image.tag` | DockerMod image tag. Can be found [here](https://hub.docker.com/r/linuxserver/calibre-web/tags/) | `calibre` |
| `dockerMods.ffmpeg.enabled` | Enable optional ffmpeg conversion feature. refer [here](https://github.com/linuxserver/docker-lazylibrarian#application-setup) | `false` |
| `dockerMods.ffmpeg.image.repository` | DockerMod image repository | `linuxserver/mods` |
| `dockerMods.ffmpeg.image.tag` | DockerMod image tag. | `lazylibrarian-ffmpeg` |
| `probes.liveness.enabled` | Enables liveness probe for the main container | `true` |
| `probes.liveness.initialDelaySeconds` | Specify liveness `initialDelaySeconds` parameter for the main container | `60` |
| `probes.liveness.failureThreshold` | Specify liveness `failureThreshold` parameter for the main container | `5` |
| `probes.liveness.timeoutSeconds` | Specify liveness `timeoutSeconds` parameter for the main container | `10` |
| `probes.readiness.enabled` | Enables readiness probe for the main container | `true` |
| `probes.readiness.initialDelaySeconds` | Specify readiness `initialDelaySeconds` parameter for the main container | `60` |
| `probes.readiness.failureThreshold` | Specify readiness `failureThreshold` parameter for the main container | `5` |
| `probes.readiness.timeoutSeconds` | Specify readiness `timeoutSeconds` parameter for the main container | `10` |
| `probes.startup.enabled` | Enables startup probe for the main container | `false` |
| `probes.startup.failureThreshold` | Specify startup `failureThreshold` parameter for the main container | `30` |
| `probes.startup.timeoutSeconds` | Specify startup `periodSeconds` parameter for the main container | `10` |
| `service.type` | Kubernetes service type for the GUI | `ClusterIP` |
| `service.port` | Kubernetes port where the GUI is exposed | `5299` |
| `service.annotations` | Service annotations for the GUI | `{}` |
| `service.labels` | Custom labels | `{}` |
| `service.loadBalancerIP` | Loadbalancer IP for the 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.enabled` | Use persistent volume to store configuration data | `true` |
| `persistence.size` | Size of persistent volume claim | `1Gi` |
| `persistence.existingClaim` | Use an existing PVC to persist data | `nil` |
| `persistence.storageClass` | Type of persistent volume claim | `-` |
| `persistence.subPath` | Mount a sub directory if set | `nil ` |
| `persistence.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.extraVolumes` | Optionally add multiple additional volumes | `[]` |
| `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 | `{}` |
Read through the charts [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/lazylibrarian/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 my-release \
--set timezone="Europe/Amsterdam" \
helm install lazylibrarian \
--set env.TZ="America/New_York" \
k8s-at-home/lazylibrarian
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the
chart. For example,
```console
helm install my-release -f values.yaml k8s-at-home/lazylibrarian
helm install lazylibrarian k8s-at-home/lazylibrarian --values values.yaml
```
```yaml
image:
tag: ...
```
---
**NOTE**
Read through the [values.yaml](https://github.com/k8s-at-home/charts/lazylibrarian/values.yaml) file. It has several commented out suggested values.
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 2.x.x to 3.x.x
Due to migrating to a centralized common library some values in `values.yaml` have changed.
Examples:
* `pguid` has been moved to `env`
* `pgid` has been moved to `env`
* All dockermods have been moved to `env`
* `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

@@ -1,21 +1 @@
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 "lazylibrarian.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 "lazylibrarian.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "lazylibrarian.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 "lazylibrarian.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 }}
{{- include "common.notes.defaultNotes" . -}}

View File

@@ -1,107 +0,0 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "lazylibrarian.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 "lazylibrarian.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 "lazylibrarian.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "lazylibrarian.labels" -}}
helm.sh/chart: {{ include "lazylibrarian.chart" . }}
{{ include "lazylibrarian.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "lazylibrarian.selectorLabels" -}}
app.kubernetes.io/name: {{ include "lazylibrarian.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "lazylibrarian.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "lazylibrarian.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}
{{/*
Determine the addons to be installed
*/}}
{{- define "lazylibrarian.enabledAddons" -}}
{{- $enabledAddons := list -}}
{{- if .Values.dockerMods.calibre.enabled }}
{{- $enabledAddons = printf "%s:%s" .Values.dockerMods.calibre.image.repository .Values.dockerMods.calibre.image.tag | append $enabledAddons -}}
{{- end -}}
{{- if .Values.dockerMods.ffmpeg.enabled }}
{{- $enabledAddons = printf "%s:%s" .Values.dockerMods.ffmpeg.image.repository .Values.dockerMods.ffmpeg.image.tag | append $enabledAddons -}}
{{- end -}}
{{- join "|" $enabledAddons | quote -}}
{{- end -}}
{{/*
Get the additional volumes
*/}}
{{- define "lazylibrarian.extraVolumes" -}}
{{- if .Values.persistence.extraVolumes }}
{{- $extraVolumes := .Values.persistence.extraVolumes -}}
{{- range $extraVolumes }}
{{- $_ := unset . "mountPath" }}
{{- end }}
{{- toYaml $extraVolumes }}
{{- end }}
{{- end }}
{{/*
Get the additional volumeMounts
*/}}
{{- define "lazylibrarian.extraVolumeMounts" -}}
{{- if .Values.persistence.extraVolumes }}
{{- $extraVolumeMounts := list -}}
{{- range .Values.persistence.extraVolumes }}
{{- if .mountPath }}
{{- $extraVolumeMounts = dict "name" .name "mountPath" .mountPath | append $extraVolumeMounts -}}
{{- else }}
{{- $extraVolumeMounts = dict "name" .name "mountPath" (printf "/mnt/%s" .name) | append $extraVolumeMounts -}}
{{- end }}
{{- end }}
{{- toYaml $extraVolumeMounts }}
{{- end }}
{{- end }}

View File

@@ -1,15 +0,0 @@
{{- if .Values.autoscaling.enabled }}
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
name: {{ include "lazylibrarian.fullname" . }}
labels:
{{- include "lazylibrarian.labels" . | nindent 4 }}
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: StatefulSet
name: {{ include "lazylibrarian.fullname" . }}
minReplicas: {{ .Values.autoscaling.minReplicas }}
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
{{- end }}

View File

@@ -1,41 +0,0 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "lazylibrarian.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 "lazylibrarian.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

@@ -1,32 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "lazylibrarian.fullname" . }}
labels:
{{- include "lazylibrarian.labels" . | nindent 4 }}
{{- 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.load }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}
{{- if .Values.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- if .Values.service.externalTrafficPolicy }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
{{- end }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "lazylibrarian.selectorLabels" . | nindent 4 }}

View File

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

View File

@@ -1,132 +0,0 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ include "lazylibrarian.fullname" . }}
labels:
{{- include "lazylibrarian.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "lazylibrarian.selectorLabels" . | nindent 6 }}
serviceName: {{ include "lazylibrarian.name" . }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "lazylibrarian.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "lazylibrarian.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
env:
- name: TZ
value: {{ .Values.timezone }}
- name: PUID
value: {{ .Values.puid | quote }}
- name: PGID
value: {{ .Values.pgid | quote }}
- name: DOCKER_MODS
value: {{ include "lazylibrarian.enabledAddons" . }}
volumeMounts:
- name: config
mountPath: /config
{{- include "lazylibrarian.extraVolumeMounts" . | nindent 12 }}
{{- if .Values.probes.liveness.enabled }}
livenessProbe:
httpGet:
path: /
port: http
scheme: {{ .Values.probes.liveness.scheme }}
initialDelaySeconds: {{ .Values.probes.liveness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
timeoutSeconds: {{ .Values.probes.liveness.timeoutSeconds }}
{{- end }}
{{- if .Values.probes.readiness.enabled }}
readinessProbe:
httpGet:
path: /
port: http
scheme: {{ .Values.probes.readiness.scheme }}
initialDelaySeconds: {{ .Values.probes.readiness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
timeoutSeconds: {{ .Values.probes.readiness.timeoutSeconds }}
{{- end }}
{{- if .Values.probes.startup.enabled }}
startupProbe:
httpGet:
path: /
port: http
scheme: {{ .Values.probes.startup.scheme }}
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
{{- end }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
{{- 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:
{{- if not .Values.persistence.enabled }}
- name: config
emptyDir: {}
{{- end }}
{{- if and .Values.persistence.enabled .Values.persistence.existingClaim }}
- name: config
persistentVolumeClaim:
claimName: {{ .Values.persistence.existingClaim }}
{{- end }}
{{- include "lazylibrarian.extraVolumes" . | nindent 8 }}
volumeClaimTemplates:
{{- if and .Values.persistence.enabled ( not .Values.persistence.existingClaim ) }}
- metadata:
name: config
labels:
{{- include "lazylibrarian.labels" . | nindent 10 }}
{{- if .Values.persistence.annotations }}
annotations:
{{- toYaml .Values.persistence.annotations | nindent 10 }}
{{- end }}
spec:
accessModes: [ {{ .Values.persistence.accessMode | quote }} ]
resources:
requests:
storage: {{ .Values.persistence.size | quote }}
{{- if .Values.persistence.storageClass }}
{{- if (eq "-" .Values.persistence.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: {{ .Values.persistence.storageClass | quote }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -1,153 +1,51 @@
# Default values for lazylibrarian.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 1
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/lazylibrarian
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: 2551a8bc-ls25
tag: version-047f91af
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
strategy:
type: Recreate
timezone: UTC
puid: 1001
pgid: 1001
# 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.
#
# To enable, set enabled to true, and follow the guide at: https://github.com/linuxserver/docker-lazylibrarian#application-setup
# to configure the application.
dockerMods:
# Enable the Calibre Docker Mod to allow Calibredb import
calibre:
enabled: false
image:
repository: linuxserver/calibre-web
tag: calibre
# Enable the FFMpeg Docker Mod. This allows using the audiobook conversion features of LazyLibrarian.
ffmpeg:
enabled: false
image:
repository: linuxserver/mods
tag: lazylibrarian-ffmpeg
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
persistence:
enabled: false
annotations: {}
## lazylibrarian 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: lazylibrarian-config
accessMode: ReadWriteOnce
size: 1Gi
# Any extra volumes to define for the pod
# Volumes will be mounted to the folder specified under mountPath
# If no mountPath is set it will be mounted to /mnt/<name>
extraVolumes: []
# - name: example-name
# hostPath:
# path: /path/on/host
# type: DirectoryOrCreate
# mountPath: "/mnt/test"
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
## Docker Mods are not actively tested and might not work as expected.
# DOCKER_MODS=linuxserver/mods:lazylibrarian-ffmpeg
# DOCKER_MODS=linuxserver/calibre-web:calibre
service:
type: ClusterIP
port: 5299
# externalTrafficPolicy: Local
# loadBalancerIP: ""
# loadBalancerSourceRanges: []
annotations: {}
port:
port: 5299
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
probes:
liveness:
enabled: true
scheme: HTTP
initialDelaySeconds: 60
failureThreshold: 5
timeoutSeconds: 10
readiness:
enabled: true
scheme: HTTP
initialDelaySeconds: 60
failureThreshold: 5
timeoutSeconds: 10
startup:
persistence:
config:
enabled: false
scheme: HTTP
failureThreshold: 30
periodSeconds: 10
emptyDir: false
nodeSelector: {}
tolerations: []
affinity: {}
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

@@ -2,20 +2,21 @@ apiVersion: v2
appVersion: 0.8.0.1886
description: Looks and smells like Sonarr but made for music
name: lidarr
version: 6.3.1
version: 7.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- lidarr
- torrent
- usenet
- lidarr
- torrent
- usenet
home: https://github.com/k8s-at-home/charts/tree/master/charts/lidarr
icon: https://github.com/lidarr/Lidarr/blob/develop/Logo/512.png?raw=true
sources:
- https://github.com/Lidarr/Lidarr
- https://hub.docker.com/r/linuxserver/lidarr
- https://github.com/Lidarr/Lidarr
- https://hub.docker.com/r/linuxserver/lidarr
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Lidarr.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: linuxserver/lidarr
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 8686
env: {}
# TZ: UTC
# PUID: 1001
# PGID: 1001
service:
port:
port: 8686
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,20 +2,21 @@ apiVersion: v2
appVersion: 4.0.8
description: Lychee is a free photo-management tool, which runs on your server or web-space
name: lychee
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- lychee
- photo
- pictures
- lychee
- photo
- pictures
home: https://github.com/k8s-at-home/charts/tree/master/charts/lychee
icon: https://github.com/LycheeOrg/Lychee/blob/master/Banner.png?raw=true
sources:
- https://github.com/LycheeOrg/Lychee
- https://hub.docker.com/r/lycheeorg/lychee
- https://github.com/LycheeOrg/Lychee
- https://hub.docker.com/r/lycheeorg/lychee
maintainers:
- name: auricom
email: k8s-at-home@xpander.eml.cc
- name: auricom
email: k8s-at-home@xpander.eml.cc
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Lychee.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: lycheeorg/lychee-laravel
@@ -8,15 +13,18 @@ image:
strategy:
type: Recreate
service:
port:
port: 80
env: {}
# PHP_TZ: UTC
# PUID: 1001
# PGID: 1001
service:
port:
port: 80
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,22 +2,23 @@ apiVersion: v2
appVersion: v2.19.1
description: A Personal Relationship Management tool to help you organize your social life
name: monica
version: 2.4.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- crm
- crm
home: https://www.monicahq.com/
icon: https://pbs.twimg.com/profile_images/951820722191720450/mtCNuIXX.jpg
sources:
- https://github.com/monicahq/monica
- https://hub.docker.com/_/monica
- https://github.com/monicahq/monica
- https://hub.docker.com/_/monica
maintainers:
- name: billimek
email: jeff@billimek.com
- name: billimek
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: mariadb
version: 9.2.0
repository: https://charts.bitnami.com/bitnami
condition: mariadb.enabled
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
- name: mariadb
version: 9.2.5
repository: https://charts.bitnami.com/bitnami
condition: mariadb.enabled

View File

@@ -1,4 +1,9 @@
# Default values for Monica.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: monica
@@ -8,10 +13,6 @@ image:
strategy:
type: Recreate
service:
port:
port: 80
env: {}
# See the Monica documentation for all available options for environment variables: https://raw.githubusercontent.com/monicahq/monica/master/.env.example
# APP_ENV: production
@@ -23,6 +24,13 @@ env: {}
# DB_USERNAME: monica
# DB_PASSWORD: monicapass
service:
port:
port: 80
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,20 +2,21 @@ apiVersion: v2
appVersion: 0.39.0
description: Navidrome is an open source web-based music collection server and streamer
name: navidrome
version: 2.3.1
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- navidrome
- music
- streaming
- navidrome
- music
- streaming
home: https://github.com/k8s-at-home/charts/tree/master/charts/navidrome
icon: https://github.com/deluan/navidrome/blob/master/ui/src/icons/android-icon-72x72.png?raw=true
sources:
- https://github.com/deluan/navidrome
- https://hub.docker.com/r/deluan/navidrome
- https://github.com/deluan/navidrome
- https://hub.docker.com/r/deluan/navidrome
maintainers:
- name: auricom
email: k8s-at-home@xpander.eml.cc
- name: auricom
email: k8s-at-home@xpander.eml.cc
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Navidrome.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: deluan/navidrome
@@ -8,10 +13,6 @@ image:
strategy:
type: Recreate
service:
port:
port: 4533
env:
ND_SCANINTERVAL: 15m
ND_LOGLEVEL: info
@@ -19,6 +20,13 @@ env:
ND_ENABLETRANSCODINGCONFIG: "true"
ND_MUSICFOLDER: /music
service:
port:
port: 4533
ingress:
enabled: false
persistence:
config:
enabled: false

View File

@@ -2,16 +2,17 @@ apiVersion: v2
appVersion: 0.3.0
description: Neolink - RTSP bridge to Reolink IP cameras
name: neolink
version: 1.1.1
version: 2.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- reolink
- rtsp
- reolink
- rtsp
home: https://github.com/k8s-at-home/charts/tree/master/charts/neolink
sources:
- https://github.com/thirtythreeforty/neolink
- https://github.com/thirtythreeforty/neolink
maintainers:
- name: mr-onion-2
- name: mr-onion-2
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 2.2.1
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,4 +1,9 @@
# Default values for Neolink.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: thirtythreeforty/neolink
@@ -12,6 +17,9 @@ service:
port:
port: 8554
ingress:
enabled: false
# Neolink configuration settings
# https://github.com/thirtythreeforty/neolink/blob/master/sample_config.toml
config: |

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