Compare commits

...

27 Commits

Author SHA1 Message Date
Vegetto
beaf1d697a [helm-docs] Addopt helm-docs for remaining charts (#660)
* homebridge -> helm-docs

* librespeed -> helmdocs

* node-feature-discovery -> helm-docs

* oauth2-proxy -> helm-docs

* sersock -> helmdocs

* speedtest -> helm-docs

* unifi -> helm-docs

* bump version

* uptimerobot -> helm-docs

* do not install test ser2sock

* Add influxdb dependency

* no default value for externalTrafficPolicy

Co-authored-by: angelnu <git@angelnucom>
2021-03-13 10:30:07 -05:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
41841cd579 [intel-gpu-plugin] Fix casing (#659)
* [intel-gpu-plugin] Fix casing

* Fix README
2021-03-12 19:58:51 +01:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
47f775ff1d [intel-gpu-plugin] Allow GPU sharing (#658) 2021-03-12 17:34:43 +01:00
ᗪєνιη ᗷυнʟ
a4b9ef649d [meta] updates (#657) 2021-03-12 08:57:27 -05:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
4b23411778 [common] Transfer to separate repo (#656)
* [common] Transfer to separate repo

* Remove common unittests

* Use k3d instead of kind

* Bump all charts

* Skip uninstallable charts

* [alertmanager-bot] Disable probes

* Skip uninstallable charts
2021-03-12 07:59:14 -05:00
Patrick Collins
6b0324f3bf make ddclient run as a daemon by default (#622)
Signed-off-by: Patrick Collins <PatrickCP0@Gmail.com>

Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-03-11 20:02:58 -05:00
Travis Lyons
d4f05ae10d [homer] configmap support (#655)
* Add homer ConfigMap

Allows homer to be configured through values.yaml

Signed-off-by: Travis Lyons <travis.lyons@gmail.com>

* Updated README to reflect chart changes.

Signed-off-by: Travis Lyons <travis.lyons@gmail.com>

* Add configmap checksum to podAnnotations dict.

Signed-off-by: Travis Lyons <travis.lyons@gmail.com>

* Make usage of configmap togglable

Signed-off-by: Travis Lyons <travis.lyons@gmail.com>

* Only template configmap sections if enabled

Signed-off-by: Travis Lyons <travis.lyons@gmail.com>

Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-03-11 20:01:53 -05:00
Jack Maloney
8acb00bd4c [jackett] update jackett to version-v0.17.591 (#628)
* [jackett] update jackett to version-v0.17.591

Signed-off-by: Jack Maloney <jmmaloney4@gmail.com>

* Update charts/jackett/Chart.yaml

Co-authored-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <me@bjw-s.dev>

* Update charts/jackett/Chart.yaml

Co-authored-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <me@bjw-s.dev>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-03-11 20:00:36 -05:00
Vegetto
a4b0adde3b [dnsmadeeasy-webhook] New chart (#649)
* add cert-manager-dnsmadeeasy

* fix probes

* Fix for status probes

* Fix deprecation warnings

* update common

* increase path version

* use github repo

* Use helm-docs

* change repo name

* rename

* fix lint issue

* exclude dnsmadeeasy from install check

* Feedback

* splitting ct.yaml

* remove old changelog

Co-authored-by: angelnu <git@angelnucom>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-03-11 19:55:36 -05:00
Hans Kristian Flaatten
8f45bca459 [prometheus-nut-exporter] update chart description (#651) 2021-03-11 10:33:52 +01:00
Vegetto
a032abb1a6 [helm-docs] Add helm-docs CI (#645)
* CI for helm-docs

* add sudo to command

* no need for input partm

* use schedule as trigger

* Update .github/workflows/charts-helm-docs.yaml

Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>

* Update .github/workflows/charts-helm-docs.yaml

Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>

Co-authored-by: angelnu <git@angelnucom>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-03-08 11:00:15 -05:00
Vegetto
5e98e3c4c5 [helm-docs] Use helm docs for all charts [ci-skip] (#646)
* adguard-home to helm-docs

* bitwanders to helm-docs

* blocky to helm-docs

* comcast to helm-docs

* deconz to helm-docs

* bump versions

* remove trailing spaces

* statping

* digitalocean-dyndns

* duplicate - helm-docs

* icantbelieveitsnotvaletudo

* intel-gpu-plugin to helm-docs

* modem-stats to helm-docs

* mosquitto helm-docs update

* plex to helm-docs

* powerdns to helm-docs

* prometheus-nut-exporter to helm-docs

* rtorrent-flood to helm docs

* speedtest-prometheus to helm-docs

* teslamate to helm-docs

* traefik-forward-auth to helm-docs

* uptimerobot-prometheus

* common-test to helm-docs

* version bump

* fix traeffik version

* Update links to docs

Co-authored-by: angelnu <git@angelnucom>
2021-03-08 10:36:06 -05:00
Vegetto
c5a3fc36a0 [statping] Rebase statping on common chart (#642) 2021-03-07 21:42:18 +01:00
Rolf Berkenbosch
a7bb41b467 [duplicati] Add possibility to add additional volume mounts (#643) 2021-03-06 20:56:44 +01:00
Matthew Mattox
f93046f40f [uptimerobot] Swapping from configMapKeyRef to secretKeyRef (#641)
* Swapping from configMapKeyRef to secretKeyRef

* bumping the chart verison
2021-03-05 14:31:48 +01:00
Patrick Collins
97b2477fba [plex] fix typos (#637)
* [plex] fix typos

* [plex] bump version
2021-03-03 09:35:58 +01:00
renovate[bot]
99b4b09bac Update external minor dep (#635)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-03 09:35:14 +01:00
renovate[bot]
09b5b565b2 Update external minor dep Helm releases (#636)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-01 08:57:57 +01:00
renovate[bot]
2e29840788 Update Helm chart common to v3.1.0 (#633)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-03-01 08:20:39 +01:00
Nicholas Wilde
18966b01ab [common] 3.1.0 Addition of secret kind (#596)
Signed-off-by: Nicholas Wilde <ncwilde43@gmail.com>
2021-02-28 20:33:07 +01:00
Vegetto
ba978447bf [tt-rss] Add chart tt-rss (#631)
Co-authored-by: angelnu <git@angelnucom>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-02-28 10:47:15 -05:00
Piotr Maksymiuk
201652581c [mosquitto] port to common (#626) 2021-02-28 10:07:26 +01:00
Jack Maloney
ceeab47aa6 [radarr] update radarr to version-3.0.2.4552 (#629)
Signed-off-by: Jack Maloney <jmmaloney4@gmail.com>
2021-02-28 09:47:15 +01:00
ᗪєνιη ᗷυнʟ
48c20bd85e [workflows] create issue workflows [ci-skip] (#621) 2021-02-24 05:43:56 -05:00
Nicholas Wilde
0129518222 Added wiki section and link (#624)
Signed-off-by: Nicholas Wilde <ncwilde43@gmail.com>
2021-02-24 07:21:22 +01:00
Patrick Collins
5e47a7c1df remove source line matching chart home in template (#623)
Signed-off-by: Patrick Collins <PatrickCP0@Gmail.com>
2021-02-24 06:14:34 +01:00
Patrick Collins
c2065fba97 [wallabag] new chart (#575) 2021-02-24 06:11:05 +01:00
493 changed files with 11446 additions and 6921 deletions

2
.github/CODEOWNERS vendored
View File

@@ -1,2 +1,2 @@
# https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
* @onedr0p @bjw-s @billimek
* @onedr0p @bjw-s @billimek @carpenike

View File

@@ -2,7 +2,7 @@
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
labels: kind:bug
assignees: ''
---

View File

@@ -1,8 +1,8 @@
blank_issues_enabled: true
blank_issues_enabled: false
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
- name: Ask a question
url: https://github.com/k8s-at-home/organization/discussions
about: Please ask and answer questions here.

View File

@@ -2,7 +2,7 @@
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
labels: kind:enhancement
assignees: ''
---

14
.github/ct-install.yaml vendored Normal file
View File

@@ -0,0 +1,14 @@
remote: origin
target-branch: master
helm-extra-args: --timeout 600s
chart-dirs:
- charts
excluded-charts:
- alertmanager-bot
- dnsmadeeasy-webhook
- ser2sock
- zigbee2mqtt
chart-repos:
- bitnami=https://charts.bitnami.com/bitnami
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
- k8s-at-home=https://k8s-at-home.com/charts

View File

@@ -4,8 +4,7 @@ helm-extra-args: --timeout 600s
chart-dirs:
- charts
excluded-charts:
- common
- common-test
chart-repos:
- bitnami=https://charts.bitnami.com/bitnami
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
- k8s-at-home=https://k8s-at-home.com/charts

48
.github/workflows/charts-helm-docs.yaml vendored Normal file
View File

@@ -0,0 +1,48 @@
name: "Charts: helm-docs"
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
jobs:
update-helm-docs:
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Install Helm
uses: azure/setup-helm@v1
with:
version: v3.5.3
- uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Install helm-docs
run: |
wget -O /tmp/helm-docs.deb https://github.com/norwoodj/helm-docs/releases/download/v1.5.0/helm-docs_1.5.0_linux_amd64.deb
sudo dpkg -i /tmp/helm-docs.deb
- name: Update Helm docs
run: |
./hack/gen-helm-docs.sh
- name: Create pull request for helm-docs
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: "helm-docs/ci"
delete-branch: true
title: "chore(docs): update helm-docs [ci-skip]"
signoff: true
committer: "${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>"
author: "${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>"
commit-message: "chore(docs): update helm-docs [ci-skip]"
body: |
Signed-off-by: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
labels: helm-docs

View File

@@ -15,7 +15,6 @@ jobs:
runs-on: ubuntu-20.04
outputs:
changed: ${{ steps.list-changed.outputs.changed }}
common: ${{ steps.list-changed.outputs.common }}
steps:
- name: Checkout
uses: actions/checkout@v2
@@ -25,7 +24,7 @@ jobs:
- name: Install Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0
version: v3.5.3
- uses: actions/setup-python@v2
with:
@@ -37,20 +36,15 @@ jobs:
- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --config .github/ct.yaml)
changed=$(ct list-changed --config .github/ct-lint.yaml)
if [[ -n "$changed" ]]; then
echo "::set-output name=changed::true"
fi
changed_unfiltered=$(ct list-changed --config .github/ct.yaml --excluded-charts "")
if [[ $(grep -E "^charts/common(-test)?$" <<< "$changed_unfiltered") ]]; then
echo "::set-output name=common::true"
fi
- name: Run chart-testing (lint)
id: lint
run: ct lint --config .github/ct.yaml --excluded-charts ""
if: steps.list-changed.outputs.changed == 'true' || steps.list-changed.outputs.common == 'true'
run: ct lint --config .github/ct-lint.yaml
if: steps.list-changed.outputs.changed == 'true'
unittest:
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
@@ -68,7 +62,7 @@ jobs:
- name: Install Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0
version: v3.5.3
- name: Install Ruby
uses: ruby/setup-ruby@v1
@@ -97,7 +91,7 @@ jobs:
- name: Install Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0
version: v3.5.3
- uses: actions/setup-python@v2
with:
@@ -106,15 +100,12 @@ jobs:
- name: Set up chart-testing
uses: helm/chart-testing-action@v2.0.1
- name: Create kind cluster
uses: helm/kind-action@v1.1.0
if: needs.lint.outputs.changed == 'true' || needs.lint.outputs.common == 'true'
- name: Run chart-testing (install)
run: ct install --config .github/ct.yaml --excluded-charts ""
- name: Create k3d cluster
uses: nolar/setup-k3d-k3s@v1
with:
version: v1.19
if: needs.lint.outputs.changed == 'true'
- name: Run chart-testing (common-test)
run: |
ct install --config .github/ct.yaml --charts 'charts/common-test'
if: needs.lint.outputs.common == 'true'
- name: Run chart-testing (install)
run: ct install --config .github/ct-install.yaml
if: needs.lint.outputs.changed == 'true'

View File

@@ -49,7 +49,7 @@ jobs:
- name: Install Helm
uses: azure/setup-helm@v1
with:
version: v3.4.0
version: v3.5.3
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.2.0

21
.github/workflows/invalid-template.yaml vendored Normal file
View File

@@ -0,0 +1,21 @@
---
name: 'Invalid Template'
on:
issues:
types: [labeled, unlabeled, reopened]
jobs:
support:
runs-on: ubuntu-20.04
steps:
- uses: dessant/support-requests@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
support-label: 'kind:invalid-template'
issue-comment: >
:wave: @{issue-author}, please follow the template provided.
close-issue: true
lock-issue: true
issue-lock-reason: 'resolved'

27
.github/workflows/support.yaml vendored Normal file
View File

@@ -0,0 +1,27 @@
---
name: 'Support requests'
on:
issues:
types: [labeled, unlabeled, reopened]
jobs:
support:
runs-on: ubuntu-20.04
steps:
- uses: dessant/support-requests@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
support-label: 'kind:support'
issue-comment: >
:wave: @{issue-author}, we use the issue tracker exclusively
for bug reports and feature requests. However, this issue appears
to be a support request. Please use our support channels
to get help.
- [Docs](https://docs.k8s-at-home.com/)
- [Discord](https://discord.gg/sTMX7Vh)
- [GitHub Discussions](https://github.com/k8s-at-home/organization/discussions)
close-issue: true
lock-issue: false
issue-lock-reason: 'off-topic'

View File

@@ -1,29 +1 @@
charts/adguard-home
charts/bitwardenrs
charts/blocky
charts/comcast
charts/deconz
charts/digitalocean-dyndns
charts/duplicati
charts/homebridge
charts/icantbelieveitsnotvaletudo
charts/intel-gpu-plugin
charts/librespeed
charts/modem-stats
charts/mosquitto
charts/node-feature-discovery
charts/oauth2-proxy
charts/plex
charts/powerdns
charts/prometheus-nut-exporter
charts/rtorrent-flood
charts/ser2sock
charts/speedtest-prometheus
charts/speedtest
charts/statping
charts/teslamate
charts/traefik-forward-auth
charts/unifi
charts/uptimerobot-prometheus
charts/uptimerobot
charts/common-test

View File

@@ -37,7 +37,7 @@ tasks:
ct-lint:
desc: run `ct lint` on your chart code
cmds:
- docker run --rm -it --user $(id -u):$(id -g) -e "HELM_CONFIG_HOME=/tmp/helm" -e "HELM_CACHE_HOME=/tmp/helm" -v {{.GIT_ROOT}}:/ci -w /ci quay.io/helmpack/chart-testing:latest ct lint --charts charts/{{.CHART}} --config /ci/.github/ct.yaml
- docker run --rm -it --user $(id -u):$(id -g) -e "HELM_CONFIG_HOME=/tmp/helm" -e "HELM_CACHE_HOME=/tmp/helm" -v {{.GIT_ROOT}}:/ci -w /ci quay.io/helmpack/chart-testing:latest ct lint --charts charts/{{.CHART}} --config /ci/.github/ct-lint.yaml
deps:
- check-chart
- lint

View File

@@ -39,24 +39,6 @@ See `git help commit`:
Once changes have been merged, the release job will automatically run to package and release changed charts.
### Create new chart
```
# Clone
git clone
cd charts
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
# Linting
task chart:lint CHART=chart_name
task chart:ct-lint CHART=chart_name
```
### Immutability
Chart releases must be immutable. Any change to a chart warrants a chart version bump even if it is only changed to the documentation.
@@ -70,6 +52,6 @@ Charts should start at `1.0.0`. Any breaking (backwards incompatible) changes to
1. Bump the MAJOR version
2. In the README, under a section called "Upgrading", describe the manual steps necessary to upgrade to the new (specified) MAJOR version
### pre-commit
### Pre-commit
This repo supports the [pre-commit](https://pre-commit.com) framework. By installing the framework (see [docs](https://pre-commit.com/#install)) it is possible to perform the chart linting step before committing your code. This can help prevent linter issues in the pipeline. Note that this requires having Docker running on your development environment.

View File

@@ -4,9 +4,9 @@ source 'https://rubygems.org'
group :test do
gem 'm'
gem 'minitest', "5.14.2"
gem 'minitest', "5.14.4"
gem 'minitest-implicit-subject'
gem 'minitest-reporters', "1.4.2"
gem 'pry', "0.13.1"
gem 'minitest-reporters', "1.4.3"
gem 'pry', "0.14.0"
gem 'ruby-jq'
end

View File

@@ -1,10 +1,10 @@
# k8s@Home collection of helm charts
# Helm charts
[![Discord](https://img.shields.io/badge/discord-chat-7289DA.svg)](https://discord.com/invite/7PbmHRK)
[![](https://github.com/k8s-at-home/charts/workflows/Release%20Charts/badge.svg?branch=master)](https://github.com/k8s-at-home/charts/actions)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/k8s-at-home)](https://artifacthub.io/packages/search?repo=k8s-at-home)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![docs](https://img.shields.io/badge/docs-rtfm-yellow?logo=gitbook&logoColor=white&style=for-the-badge)](https://github.com/pre-commit/pre-commit)
[![Discord](https://img.shields.io/badge/discord-chat-7289DA.svg?maxAge=60&style=for-the-badge)](https://discord.gg/sTMX7Vh)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white&style=for-the-badge)](https://github.com/pre-commit/pre-commit)
[![renovate](https://img.shields.io/badge/renovate-enabled-brightgreen?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjUgNSAzNzAgMzcwIj48Y2lyY2xlIGN4PSIxODkiIGN5PSIxOTAiIHI9IjE4NCIgZmlsbD0iI2ZlMiIvPjxwYXRoIGZpbGw9IiM4YmIiIGQ9Ik0yNTEgMjU2bC0zOC0zOGExNyAxNyAwIDAxMC0yNGw1Ni01NmMyLTIgMi02IDAtN2wtMjAtMjFhNSA1IDAgMDAtNyAwbC0xMyAxMi05LTggMTMtMTNhMTcgMTcgMCAwMTI0IDBsMjEgMjFjNyA3IDcgMTcgMCAyNGwtNTYgNTdhNSA1IDAgMDAwIDdsMzggMzh6Ii8+PHBhdGggZmlsbD0iI2Q1MSIgZD0iTTMwMCAyODhsLTggOGMtNCA0LTExIDQtMTYgMGwtNDYtNDZjLTUtNS01LTEyIDAtMTZsOC04YzQtNCAxMS00IDE1IDBsNDcgNDdjNCA0IDQgMTEgMCAxNXoiLz48cGF0aCBmaWxsPSIjYjMwIiBkPSJNMjg1IDI1OGw3IDdjNCA0IDQgMTEgMCAxNWwtOCA4Yy00IDQtMTEgNC0xNiAwbC02LTdjNCA1IDExIDUgMTUgMGw4LTdjNC01IDQtMTIgMC0xNnoiLz48cGF0aCBmaWxsPSIjYTMwIiBkPSJNMjkxIDI2NGw4IDhjNCA0IDQgMTEgMCAxNmwtOCA3Yy00IDUtMTEgNS0xNSAwbC05LThjNSA1IDEyIDUgMTYgMGw4LThjNC00IDQtMTEgMC0xNXoiLz48cGF0aCBmaWxsPSIjZTYyIiBkPSJNMjYwIDIzM2wtNC00Yy02LTYtMTctNi0yMyAwLTcgNy03IDE3IDAgMjRsNCA0Yy00LTUtNC0xMSAwLTE2bDgtOGM0LTQgMTEtNCAxNSAweiIvPjxwYXRoIGZpbGw9IiNiNDAiIGQ9Ik0yODQgMzA0Yy00IDAtOC0xLTExLTRsLTQ3LTQ3Yy02LTYtNi0xNiAwLTIybDgtOGM2LTYgMTYtNiAyMiAwbDQ3IDQ2YzYgNyA2IDE3IDAgMjNsLTggOGMtMyAzLTcgNC0xMSA0em0tMzktNzZjLTEgMC0zIDAtNCAybC04IDdjLTIgMy0yIDcgMCA5bDQ3IDQ3YTYgNiAwIDAwOSAwbDctOGMzLTIgMy02IDAtOWwtNDYtNDZjLTItMi0zLTItNS0yeiIvPjxwYXRoIGZpbGw9IiMxY2MiIGQ9Ik0xNTIgMTEzbDE4LTE4IDE4IDE4LTE4IDE4em0xLTM1bDE4LTE4IDE4IDE4LTE4IDE4em0tOTAgODlsMTgtMTggMTggMTgtMTggMTh6bTM1LTM2bDE4LTE4IDE4IDE4LTE4IDE4eiIvPjxwYXRoIGZpbGw9IiMxZGQiIGQ9Ik0xMzQgMTMxbDE4LTE4IDE4IDE4LTE4IDE4em0tMzUgMzZsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzJiYiIgZD0iTTExNiAxNDlsMTgtMTggMTggMTgtMTggMTh6bTU0LTU0bDE4LTE4IDE4IDE4LTE4IDE4em0tODkgOTBsMTgtMTggMTggMTgtMTggMTh6bTEzOS04NWwyMyAyM2M0IDQgNCAxMSAwIDE2TDE0MiAyNDBjLTQgNC0xMSA0LTE1IDBsLTI0LTI0Yy00LTQtNC0xMSAwLTE1bDEwMS0xMDFjNS01IDEyLTUgMTYgMHoiLz48cGF0aCBmaWxsPSIjM2VlIiBkPSJNMTM0IDk1bDE4LTE4IDE4IDE4LTE4IDE4em0tNTQgMThsMTgtMTcgMTggMTctMTggMTh6bTU1LTUzbDE4LTE4IDE4IDE4LTE4IDE4em05MyA0OGwtOC04Yy00LTUtMTEtNS0xNiAwTDEwMyAyMDFjLTQgNC00IDExIDAgMTVsOCA4Yy00LTQtNC0xMSAwLTE1bDEwMS0xMDFjNS00IDEyLTQgMTYgMHoiLz48cGF0aCBmaWxsPSIjOWVlIiBkPSJNMjcgMTMxbDE4LTE4IDE4IDE4LTE4IDE4em01NC01M2wxOC0xOCAxOCAxOC0xOCAxOHoiLz48cGF0aCBmaWxsPSIjMGFhIiBkPSJNMjMwIDExMGwxMyAxM2M0IDQgNCAxMSAwIDE2TDE0MiAyNDBjLTQgNC0xMSA0LTE1IDBsLTEzLTEzYzQgNCAxMSA0IDE1IDBsMTAxLTEwMWM1LTUgNS0xMSAwLTE2eiIvPjxwYXRoIGZpbGw9IiMxYWIiIGQ9Ik0xMzQgMjQ4Yy00IDAtOC0yLTExLTVsLTIzLTIzYTE2IDE2IDAgMDEwLTIzTDIwMSA5NmExNiAxNiAwIDAxMjIgMGwyNCAyNGM2IDYgNiAxNiAwIDIyTDE0NiAyNDNjLTMgMy03IDUtMTIgNXptNzgtMTQ3bC00IDItMTAxIDEwMWE2IDYgMCAwMDAgOWwyMyAyM2E2IDYgMCAwMDkgMGwxMDEtMTAxYTYgNiAwIDAwMC05bC0yNC0yMy00LTJ6Ii8+PC9zdmc+)](https://github.com/renovatebot/renovate)
[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/k8s-at-home&style=for-the-badge)](https://artifacthub.io/packages/search?repo=k8s-at-home)
## Usage
@@ -19,20 +19,13 @@ helm repo add k8s-at-home https://k8s-at-home.com/charts/
You can then run `helm search repo k8s-at-home` to see the charts.
## Charts
See [Artifact Hub](https://artifacthub.io/packages/search?org=k8s-at-home) or [charts](./charts/) for a complete list.
## 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 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? 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.
We have a few outlets for getting support with our projects:
- Visit our [Docs](https://docs.k8s-at-home.com/).
- Bugs or feature requests should be opened in an [issue](https://github.com/k8s-at-home/charts/issues/new/choose).
- Questions or comments should be discussed in our [Discord](https://discord.gg/sTMX7Vh) or via [Github discussions](https://github.com/k8s-at-home/organization/discussions).
## Contributing

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v0.102.0
description: DNS proxy as ad-blocker for local network
name: adguard-home
version: 2.2.0
version: 2.2.1
keywords:
- adguard-home
- adguard

View File

@@ -1,64 +1,265 @@
# DNS proxy as ad-blocker for local network
# adguard-home
This is an opinionated helm chart for [adguard-home](https://github.com/AdguardTeam/AdGuardHome)
![Version: 2.2.0](https://img.shields.io/badge/Version-2.2.0-informational?style=flat-square) ![AppVersion: v0.102.0](https://img.shields.io/badge/AppVersion-v0.102.0-informational?style=flat-square)
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
DNS proxy as ad-blocker for local network
**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)**
## Source Code
* <https://github.com/AdguardTeam/AdGuardHome>
## Requirements
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
## TL;DR
```shell
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/adguard-home
helm repo update
helm install adguard-home k8s-at-home/adguard-home
```
## Installing the Chart
To install the chart with the release name `my-release`:
To install the chart with the release name `adguard-home`
```console
helm install --name adguard-home k8s-at-home/adguard-home
helm install adguard-home k8s-at-home/adguard-home
```
## Uninstalling the Chart
To uninstall/delete the `adguard-home` deployment:
To uninstall the `adguard-home` deployment
```console
helm delete adguard-home --purge
helm uninstall adguard-home
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/adguard-home/values.yaml) file. It has several commented out suggested values.
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install --name adguard-home \
--set timeZone="America/New York" \
helm install adguard-home \
--set env.TZ="America/New York" \
k8s-at-home/adguard-home
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install --name adguard-home -f values.yaml k8s-at-home/adguard-home
helm install adguard-home k8s-at-home/adguard-home -f values.yaml
```
#### Helm force upgrade
## Custom configuration
```sh
helm upgrade --force
```
N/A
#### Delete the existing `adguard-home` services prior to upgrading
## Values
```sh
kubectl delete svc/adguard-home
```
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
#### Remove the existing adguard-home chart first
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| configAsCode.config.bind_host | string | `"0.0.0.0"` | |
| configAsCode.config.bind_port | int | `3000` | |
| configAsCode.config.clients | list | `[]` | |
| configAsCode.config.debug_pprof | bool | `false` | |
| configAsCode.config.dhcp.enabled | bool | `false` | |
| configAsCode.config.dhcp.gateway_ip | string | `""` | |
| configAsCode.config.dhcp.icmp_timeout_msec | int | `1000` | |
| configAsCode.config.dhcp.interface_name | string | `""` | |
| configAsCode.config.dhcp.lease_duration | int | `86400` | |
| configAsCode.config.dhcp.range_end | string | `""` | |
| configAsCode.config.dhcp.range_start | string | `""` | |
| configAsCode.config.dhcp.subnet_mask | string | `""` | |
| configAsCode.config.dns.aaaa_disabled | bool | `false` | |
| configAsCode.config.dns.all_servers | bool | `false` | |
| configAsCode.config.dns.allowed_clients | list | `[]` | |
| configAsCode.config.dns.anonymize_client_ip | bool | `false` | |
| configAsCode.config.dns.bind_host | string | `"0.0.0.0"` | |
| configAsCode.config.dns.blocked_hosts | list | `[]` | |
| configAsCode.config.dns.blocked_response_ttl | int | `10` | |
| configAsCode.config.dns.blocked_services | list | `[]` | |
| configAsCode.config.dns.blocking_ipv4 | string | `""` | |
| configAsCode.config.dns.blocking_ipv6 | string | `""` | |
| configAsCode.config.dns.blocking_mode | string | `"default"` | |
| configAsCode.config.dns.bogus_nxdomain | list | `[]` | |
| configAsCode.config.dns.bootstrap_dns[0] | string | `"9.9.9.10"` | |
| configAsCode.config.dns.bootstrap_dns[1] | string | `"149.112.112.10"` | |
| configAsCode.config.dns.bootstrap_dns[2] | string | `"2620:fe::10"` | |
| configAsCode.config.dns.bootstrap_dns[3] | string | `"2620:fe::fe:10"` | |
| configAsCode.config.dns.cache_size | int | `4194304` | |
| configAsCode.config.dns.cache_time | int | `30` | |
| configAsCode.config.dns.cache_ttl_max | int | `0` | |
| configAsCode.config.dns.cache_ttl_min | int | `0` | |
| configAsCode.config.dns.disallowed_clients | list | `[]` | |
| configAsCode.config.dns.edns_client_subnet | bool | `false` | |
| configAsCode.config.dns.enable_dnssec | bool | `false` | |
| configAsCode.config.dns.fastest_addr | bool | `false` | |
| configAsCode.config.dns.filtering_enabled | bool | `true` | |
| configAsCode.config.dns.filters_update_interval | int | `24` | |
| configAsCode.config.dns.parental_block_host | string | `"family-block.dns.adguard.com"` | |
| configAsCode.config.dns.parental_cache_size | int | `1048576` | |
| configAsCode.config.dns.parental_enabled | bool | `false` | |
| configAsCode.config.dns.port | int | `53` | |
| configAsCode.config.dns.protection_enabled | bool | `true` | |
| configAsCode.config.dns.querylog_enabled | bool | `true` | |
| configAsCode.config.dns.querylog_interval | int | `90` | |
| configAsCode.config.dns.querylog_size_memory | int | `1000` | |
| configAsCode.config.dns.ratelimit | int | `0` | |
| configAsCode.config.dns.ratelimit_whitelist | list | `[]` | |
| configAsCode.config.dns.refuse_any | bool | `true` | |
| configAsCode.config.dns.rewrites | list | `[]` | |
| configAsCode.config.dns.safebrowsing_block_host | string | `"standard-block.dns.adguard.com"` | |
| configAsCode.config.dns.safebrowsing_cache_size | int | `1048576` | |
| configAsCode.config.dns.safebrowsing_enabled | bool | `false` | |
| configAsCode.config.dns.safesearch_cache_size | int | `1048576` | |
| configAsCode.config.dns.safesearch_enabled | bool | `false` | |
| configAsCode.config.dns.statistics_interval | int | `1` | |
| configAsCode.config.dns.upstream_dns[0] | string | `"https://dns10.quad9.net/dns-query"` | |
| configAsCode.config.filters[0].enabled | bool | `true` | |
| configAsCode.config.filters[0].id | int | `1` | |
| configAsCode.config.filters[0].name | string | `"AdGuard DNS filter"` | |
| configAsCode.config.filters[0].url | string | `"https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt"` | |
| configAsCode.config.filters[1].enabled | bool | `false` | |
| configAsCode.config.filters[1].id | int | `2` | |
| configAsCode.config.filters[1].name | string | `"AdAway"` | |
| configAsCode.config.filters[1].url | string | `"https://adaway.org/hosts.txt"` | |
| configAsCode.config.filters[2].enabled | bool | `false` | |
| configAsCode.config.filters[2].id | int | `4` | |
| configAsCode.config.filters[2].name | string | `"MalwareDomainList.com Hosts List"` | |
| configAsCode.config.filters[2].url | string | `"https://www.malwaredomainlist.com/hostslist/hosts.txt"` | |
| configAsCode.config.http_proxy | string | `""` | |
| configAsCode.config.language | string | `"en"` | |
| configAsCode.config.log_file | string | `""` | |
| configAsCode.config.rlimit_nofile | int | `0` | |
| configAsCode.config.schema_version | int | `6` | |
| configAsCode.config.tls.allow_unencrypted_doh | bool | `false` | |
| configAsCode.config.tls.certificate_chain | string | `""` | |
| configAsCode.config.tls.certificate_path | string | `""` | |
| configAsCode.config.tls.enabled | bool | `false` | |
| configAsCode.config.tls.force_https | bool | `false` | |
| configAsCode.config.tls.port_dns_over_tls | int | `853` | |
| configAsCode.config.tls.port_https | int | `443` | |
| configAsCode.config.tls.private_key | string | `""` | |
| configAsCode.config.tls.private_key_path | string | `""` | |
| configAsCode.config.tls.server_name | string | `""` | |
| configAsCode.config.tls.strict_sni_check | bool | `false` | |
| configAsCode.config.user_rules | list | `[]` | |
| configAsCode.config.users | list | `[]` | |
| configAsCode.config.verbose | bool | `false` | |
| configAsCode.config.web_session_ttl | int | `720` | |
| configAsCode.config.whitelist_filters | list | `[]` | |
| configAsCode.enabled | bool | `false` | |
| configAsCode.image.pullPolicy | string | `"Always"` | |
| configAsCode.image.repository | string | `"busybox"` | |
| configAsCode.image.tag | string | `"latest"` | |
| configAsCode.resources | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"adguard/adguardhome"` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0] | string | `"chart-example.local"` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.config.accessMode | string | `"ReadWriteOnce"` | |
| persistence.config.enabled | bool | `true` | |
| persistence.config.size | string | `"20Mi"` | |
| persistence.config.skipuninstall | bool | `false` | |
| persistence.work.accessMode | string | `"ReadWriteOnce"` | |
| persistence.work.enabled | bool | `true` | |
| persistence.work.size | string | `"10Gi"` | |
| persistence.work.skipuninstall | bool | `false` | |
| podAnnotations."prometheus.io/port" | string | `"api"` | |
| podAnnotations."prometheus.io/scrape" | string | `"true"` | |
| podSecurityContext | object | `{}` | |
| probes.liveness.enabled | bool | `true` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `5` | |
| probes.liveness.periodSeconds | int | `10` | |
| probes.readiness.enabled | bool | `false` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `5` | |
| probes.readiness.periodSeconds | int | `10` | |
| probes.startup.enabled | bool | `false` | |
| probes.startup.failureThreshold | int | `30` | |
| probes.startup.initialDelaySeconds | int | `5` | |
| probes.startup.periodSeconds | int | `10` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.annotations | object | `{}` | |
| service.type | string | `"ClusterIP"` | |
| serviceDHCP.annotations | object | `{}` | |
| serviceDHCP.enabled | bool | `false` | |
| serviceDHCP.loadBalancerIP | string | `""` | |
| serviceDHCP.type | string | `"NodePort"` | |
| serviceDNSOverTLS.annotations | object | `{}` | |
| serviceDNSOverTLS.enabled | bool | `false` | |
| serviceDNSOverTLS.loadBalancerIP | string | `""` | |
| serviceDNSOverTLS.type | string | `"NodePort"` | |
| serviceMonitor.additionalLabels | object | `{}` | |
| serviceMonitor.enabled | bool | `false` | |
| serviceTCP.annotations | object | `{}` | |
| serviceTCP.enabled | bool | `false` | |
| serviceTCP.loadBalancerIP | string | `""` | |
| serviceTCP.type | string | `"NodePort"` | |
| serviceUDP.annotations | object | `{}` | |
| serviceUDP.enabled | bool | `true` | |
| serviceUDP.loadBalancerIP | string | `""` | |
| serviceUDP.type | string | `"NodePort"` | |
| strategyType | string | `"Recreate"` | |
| timezone | string | `"UTC"` | |
| tlsSecretName | string | `""` | |
| tolerations | list | `[]` | |
| volumePermissions.image.pullPolicy | string | `"Always"` | |
| volumePermissions.image.repository | string | `"busybox"` | |
| volumePermissions.image.tag | string | `"latest"` | |
| volumePermissions.resources | object | `{}` | |
This is the 'easiest' approach, but will incur downtime which can be problematic if you rely on adguard-home for DNS
## Changelog
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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).
### [2.2.0]
#### Added
- N/A
#### Changed
- Use helm-docs
#### Removed
- N/A
[2.2.0]: #2.2.0
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -0,0 +1,145 @@
{{- define "custom.repository.organization" -}}
k8s-at-home
{{- end -}}
{{- define "custom.repository.url" -}}
https://github.com/k8s-at-home/charts
{{- end -}}
{{- define "custom.helm.url" -}}
https://k8s-at-home.com/charts/
{{- end -}}
{{- define "custom.helm.path" -}}
{{ template "custom.repository.organization" . }}/{{ template "chart.name" . }}
{{- end -}}
{{- define "custom.notes" -}}
**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)**
{{- end -}}
{{- define "custom.requirements" -}}
## Requirements
{{ template "chart.kubeVersionLine" . }}
{{- end -}}
{{- define "custom.dependencies" -}}
## Dependencies
{{ template "chart.requirementsTable" . }}
{{- end -}}
{{- define "custom.install.tldr" -}}
## TL;DR
```console
helm repo add {{ template "custom.repository.organization" . }} {{ template "custom.helm.url" . }}
helm repo update
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.install" -}}
## Installing the Chart
To install the chart with the release name `{{ template "chart.name" . }}`
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.uninstall" -}}
## Uninstalling the Chart
To uninstall the `{{ template "chart.name" . }}` deployment
```console
helm uninstall {{ template "chart.name" . }}
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
{{- end -}}
{{- define "custom.configuration.header" -}}
## Configuration
{{- end -}}
{{- define "custom.configuration.readValues" -}}
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
{{- end -}}
{{- define "custom.configuration.example.set" -}}
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install {{ template "chart.name" . }} \
--set env.TZ="America/New York" \
{{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.configuration.example.file" -}}
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -f values.yaml
```
{{- end -}}
{{- define "custom.valuesSection" -}}
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
{{ template "chart.valuesTable" . }}
{{- end -}}
{{- define "custom.support" -}}
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}
{{ template "chart.header" . }}
{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }}
{{ template "chart.description" . }}
{{ template "custom.notes" . }}
{{ template "chart.sourcesSection" . }}
{{ template "custom.requirements" . }}
{{ template "custom.dependencies" . }}
{{ template "custom.install.tldr" . }}
{{ template "custom.install" . }}
{{ template "custom.uninstall" . }}
{{ template "custom.configuration.header" . }}
{{ template "custom.configuration.readValues" . }}
{{ template "custom.configuration.example.set" . }}
{{ template "custom.configuration.example.file" . }}
{{ template "custom.custom.configuration" . }}
{{ template "custom.valuesSection" . }}
{{ template "custom.changelog" . }}
{{ template "custom.support" . }}
{{ template "helm-docs.versionFooter" . }}

View File

@@ -0,0 +1,27 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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).
### [2.2.1]
#### Added
- N/A
#### Changed
- Use helm-docs
#### Removed
- N/A
[2.2.1]: #2.2.1
{{- end -}}

View File

@@ -0,0 +1,9 @@
{{- define "custom.custom.configuration.header" -}}
## Custom configuration
{{- end -}}
{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}
N/A
{{- end -}}

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 10.6.2
description: Airsonic is a Free and Open Source community driven media server
name: airsonic
version: 1.0.0
version: 1.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- airsonic
@@ -17,5 +17,5 @@ maintainers:
url: https://patricol.co/
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

View File

@@ -125,8 +125,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community

View File

@@ -100,9 +100,9 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
{{- define "custom.support" -}}
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.4.2
description: Bot for Prometheus Alertmanager
name: alertmanager-bot
version: 3.0.1
version: 3.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- alertmanager
@@ -18,5 +18,5 @@ maintainers:
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

View File

@@ -111,9 +111,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------

View File

@@ -100,9 +100,9 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
{{- define "custom.support" -}}
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}

View File

@@ -28,6 +28,14 @@ service:
ingress:
enabled: false
probes:
liveness:
enabled: false
readiness:
enabled: false
startup:
enabled: false
persistence:
data:
enabled: false

View File

@@ -2,7 +2,7 @@ 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: 3.0.1
version: 3.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- appdaemon
@@ -17,5 +17,5 @@ maintainers:
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

View File

@@ -109,9 +109,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------

View File

@@ -100,9 +100,9 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
{{- define "custom.support" -}}
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}

View File

@@ -2,7 +2,7 @@ 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: 6.0.1
version: 6.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- bazarr
@@ -21,5 +21,5 @@ maintainers:
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

View File

@@ -113,9 +113,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------

View File

@@ -100,9 +100,9 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
{{- define "custom.support" -}}
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}

View File

@@ -2,7 +2,7 @@ apiVersion: v2
name: bitwardenrs
description: Unofficial Bitwarden compatible server written in Rust
type: application
version: 2.0.0
version: 2.0.1
appVersion: 1.18.0
keywords:
- bitwarden

View File

@@ -1,58 +1,185 @@
# Unofficial Bitwarden compatible server written in Rust
# bitwardenrs
This is an opinionated helm chart for [bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs)
![Version: 2.0.0](https://img.shields.io/badge/Version-2.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.18.0](https://img.shields.io/badge/AppVersion-1.18.0-informational?style=flat-square)
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
Unofficial Bitwarden compatible server written in Rust
**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)**
## Source Code
* <https://github.com/dani-garcia/bitwarden_rs>
## Requirements
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/bitwardenrs
helm repo update
helm install bitwardenrs k8s-at-home/bitwardenrs
```
## Installing the Chart
To install the chart with the release name `bitwarden`:
To install the chart with the release name `bitwardenrs`
```console
helm install bitwarden k8s-at-home/bitwardenrs
helm install bitwardenrs k8s-at-home/bitwardenrs
```
## Uninstalling the Chart
To uninstall/delete the `bitwarden` deployment:
To uninstall the `bitwardenrs` deployment
```console
helm uninstall bitwarden
helm uninstall bitwardenrs
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) file. It has several commented out suggested values.
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install bitwarden \
--set timeZone="America/New York" \
helm install bitwardenrs \
--set env.TZ="America/New York" \
k8s-at-home/bitwardenrs
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install bitwarden k8s-at-home/bitwardenrs --values values.yaml
helm install bitwardenrs k8s-at-home/bitwardenrs -f values.yaml
```
## Upgrading an existing Release to a new major version
## Custom configuration
A major chart version change (like 1.1.1 -> 2.0.0) indicates that there is an incompatible breaking change potentially needing manual actions.
N/A
### Upgrading from 1.x.x to 2.x.x
## Values
Chart version 2.0.0 introduces external database support.
* No actions required to continue with the default sqlite backend.
* Refer to the `bitwardenrs.externalDatabase` section of [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) to configure MySQL or PostgreSQL database backends.
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| autoscaling.enabled | bool | `false` | |
| autoscaling.maxReplicas | int | `100` | |
| autoscaling.minReplicas | int | `1` | |
| autoscaling.targetCPUUtilizationPercentage | int | `80` | |
| bitwardenrs.admin.disableAdminToken | bool | `false` | |
| bitwardenrs.admin.enabled | bool | `true` | |
| bitwardenrs.admin.existingSecret.enabled | bool | `false` | |
| bitwardenrs.admin.existingSecret.name | string | `""` | |
| bitwardenrs.admin.existingSecret.tokenKey | string | `""` | |
| bitwardenrs.domain | string | `""` | |
| bitwardenrs.externalDatabase.database | string | `""` | |
| bitwardenrs.externalDatabase.enabled | bool | `false` | |
| bitwardenrs.externalDatabase.existingSecret.enabled | bool | `false` | |
| bitwardenrs.externalDatabase.existingSecret.name | string | `""` | |
| bitwardenrs.externalDatabase.existingSecret.passwordKey | string | `""` | |
| bitwardenrs.externalDatabase.existingSecret.userKey | string | `""` | |
| bitwardenrs.externalDatabase.host | string | `""` | |
| bitwardenrs.externalDatabase.password | string | `""` | |
| bitwardenrs.externalDatabase.port | string | `""` | |
| bitwardenrs.externalDatabase.type | string | `""` | |
| bitwardenrs.externalDatabase.user | string | `""` | |
| bitwardenrs.gui.port | int | `80` | |
| bitwardenrs.signupsAllowed | bool | `false` | |
| bitwardenrs.smtp.enabled | bool | `false` | |
| bitwardenrs.smtp.existingSecret.enabled | bool | `false` | |
| bitwardenrs.smtp.existingSecret.name | string | `""` | |
| bitwardenrs.smtp.existingSecret.passwordKey | string | `""` | |
| bitwardenrs.smtp.existingSecret.userKey | string | `""` | |
| bitwardenrs.smtp.from | string | `""` | |
| bitwardenrs.smtp.fromName | string | `""` | |
| bitwardenrs.smtp.host | string | `""` | |
| bitwardenrs.smtp.password | string | `""` | |
| bitwardenrs.smtp.port | int | `587` | |
| bitwardenrs.smtp.ssl | bool | `true` | |
| bitwardenrs.smtp.user | string | `""` | |
| bitwardenrs.websockets.enabled | bool | `true` | |
| bitwardenrs.websockets.port | int | `3012` | |
| bitwardenrs.yubico.clientId | string | `""` | |
| bitwardenrs.yubico.enabled | bool | `false` | |
| bitwardenrs.yubico.existingSecret.clientIdKey | string | `""` | |
| bitwardenrs.yubico.existingSecret.enabled | bool | `false` | |
| bitwardenrs.yubico.existingSecret.name | string | `""` | |
| bitwardenrs.yubico.existingSecret.secretKeyKey | string | `""` | |
| bitwardenrs.yubico.secretKey | string | `""` | |
| bitwardenrs.yubico.server | string | `""` | |
| env | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"bitwardenrs/server"` | |
| image.tag | string | `""` | |
| imagePullSecrets | list | `[]` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0].host | string | `"chart-example.local"` | |
| ingress.hosts[0].paths | list | `[]` | |
| ingress.tls | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `false` | |
| persistence.size | string | `"1Gi"` | |
| persistence.type | string | `"statefulset"` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.additionalSpec | object | `{}` | |
| service.annotations | object | `{}` | |
| service.labels | object | `{}` | |
| service.port | int | `80` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| tolerations | list | `[]` | |
## Changelog
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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).
### [2.0.0]
#### Added
- external database support
* No actions required to continue with the default sqlite backend.
* Refer to the `bitwardenrs.externalDatabase` section of [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) to configure MySQL or PostgreSQL database backends.
#### Changed
- Use helm-docs
#### Removed
- N/A
[2.0.0]: #2.0.0
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -0,0 +1,145 @@
{{- define "custom.repository.organization" -}}
k8s-at-home
{{- end -}}
{{- define "custom.repository.url" -}}
https://github.com/k8s-at-home/charts
{{- end -}}
{{- define "custom.helm.url" -}}
https://k8s-at-home.com/charts/
{{- end -}}
{{- define "custom.helm.path" -}}
{{ template "custom.repository.organization" . }}/{{ template "chart.name" . }}
{{- end -}}
{{- define "custom.notes" -}}
**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)**
{{- end -}}
{{- define "custom.requirements" -}}
## Requirements
{{ template "chart.kubeVersionLine" . }}
{{- end -}}
{{- define "custom.dependencies" -}}
## Dependencies
{{ template "chart.requirementsTable" . }}
{{- end -}}
{{- define "custom.install.tldr" -}}
## TL;DR
```console
helm repo add {{ template "custom.repository.organization" . }} {{ template "custom.helm.url" . }}
helm repo update
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.install" -}}
## Installing the Chart
To install the chart with the release name `{{ template "chart.name" . }}`
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.uninstall" -}}
## Uninstalling the Chart
To uninstall the `{{ template "chart.name" . }}` deployment
```console
helm uninstall {{ template "chart.name" . }}
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
{{- end -}}
{{- define "custom.configuration.header" -}}
## Configuration
{{- end -}}
{{- define "custom.configuration.readValues" -}}
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
{{- end -}}
{{- define "custom.configuration.example.set" -}}
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install {{ template "chart.name" . }} \
--set env.TZ="America/New York" \
{{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.configuration.example.file" -}}
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -f values.yaml
```
{{- end -}}
{{- define "custom.valuesSection" -}}
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
{{ template "chart.valuesTable" . }}
{{- end -}}
{{- define "custom.support" -}}
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}
{{ template "chart.header" . }}
{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }}
{{ template "chart.description" . }}
{{ template "custom.notes" . }}
{{ template "chart.sourcesSection" . }}
{{ template "custom.requirements" . }}
{{ template "custom.dependencies" . }}
{{ template "custom.install.tldr" . }}
{{ template "custom.install" . }}
{{ template "custom.uninstall" . }}
{{ template "custom.configuration.header" . }}
{{ template "custom.configuration.readValues" . }}
{{ template "custom.configuration.example.set" . }}
{{ template "custom.configuration.example.file" . }}
{{ template "custom.custom.configuration" . }}
{{ template "custom.valuesSection" . }}
{{ template "custom.changelog" . }}
{{ template "custom.support" . }}
{{ template "helm-docs.versionFooter" . }}

View File

@@ -0,0 +1,29 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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).
### [2.0.1]
#### Added
- external database support
* No actions required to continue with the default sqlite backend.
* Refer to the `bitwardenrs.externalDatabase` section of [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) to configure MySQL or PostgreSQL database backends.
#### Changed
- Use helm-docs
#### Removed
- N/A
[2.0.1]: #2.0.1
{{- end -}}

View File

@@ -0,0 +1,9 @@
{{- define "custom.custom.configuration.header" -}}
## Custom configuration
{{- end -}}
{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}
N/A
{{- end -}}

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v0.12
description: DNS proxy as ad-blocker for local network
name: blocky
version: 5.0.0
version: 5.0.1
keywords:
- blocky
- adblock

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,145 @@
{{- define "custom.repository.organization" -}}
k8s-at-home
{{- end -}}
{{- define "custom.repository.url" -}}
https://github.com/k8s-at-home/charts
{{- end -}}
{{- define "custom.helm.url" -}}
https://k8s-at-home.com/charts/
{{- end -}}
{{- define "custom.helm.path" -}}
{{ template "custom.repository.organization" . }}/{{ template "chart.name" . }}
{{- end -}}
{{- define "custom.notes" -}}
**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)**
{{- end -}}
{{- define "custom.requirements" -}}
## Requirements
{{ template "chart.kubeVersionLine" . }}
{{- end -}}
{{- define "custom.dependencies" -}}
## Dependencies
{{ template "chart.requirementsTable" . }}
{{- end -}}
{{- define "custom.install.tldr" -}}
## TL;DR
```console
helm repo add {{ template "custom.repository.organization" . }} {{ template "custom.helm.url" . }}
helm repo update
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.install" -}}
## Installing the Chart
To install the chart with the release name `{{ template "chart.name" . }}`
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.uninstall" -}}
## Uninstalling the Chart
To uninstall the `{{ template "chart.name" . }}` deployment
```console
helm uninstall {{ template "chart.name" . }}
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
{{- end -}}
{{- define "custom.configuration.header" -}}
## Configuration
{{- end -}}
{{- define "custom.configuration.readValues" -}}
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
{{- end -}}
{{- define "custom.configuration.example.set" -}}
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install {{ template "chart.name" . }} \
--set env.TZ="America/New York" \
{{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.configuration.example.file" -}}
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -f values.yaml
```
{{- end -}}
{{- define "custom.valuesSection" -}}
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
{{ template "chart.valuesTable" . }}
{{- end -}}
{{- define "custom.support" -}}
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}
{{ template "chart.header" . }}
{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }}
{{ template "chart.description" . }}
{{ template "custom.notes" . }}
{{ template "chart.sourcesSection" . }}
{{ template "custom.requirements" . }}
{{ template "custom.dependencies" . }}
{{ template "custom.install.tldr" . }}
{{ template "custom.install" . }}
{{ template "custom.uninstall" . }}
{{ template "custom.configuration.header" . }}
{{ template "custom.configuration.readValues" . }}
{{ template "custom.configuration.example.set" . }}
{{ template "custom.configuration.example.file" . }}
{{ template "custom.custom.configuration" . }}
{{ template "custom.valuesSection" . }}
{{ template "custom.changelog" . }}
{{ template "custom.support" . }}
{{ template "helm-docs.versionFooter" . }}

View File

@@ -0,0 +1,28 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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).
### [5.0.1]
#### Added
- N/A
#### Changed
- configuration inside `config` is no longer a yaml object, it is now a multiline string
- moved to helm-docs
#### Removed
- N/A
[5.0.1]: #5.0.1
{{- end -}}

View File

@@ -0,0 +1,9 @@
{{- define "custom.custom.configuration.header" -}}
## Custom configuration
{{- end -}}
{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}
N/A
{{- end -}}

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2009.1.0
description: Booksonic is a platform for accessing the audibooks you own wherever you are
name: booksonic-air
version: 3.0.1
version: 3.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- booksonic
@@ -17,5 +17,5 @@ maintainers:
email: wojoinc@pm.me
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

View File

@@ -121,9 +121,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------

View File

@@ -100,9 +100,9 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
{{- define "custom.support" -}}
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}

View File

@@ -2,7 +2,7 @@ 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: 5.0.1
version: 5.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- calibre
@@ -17,5 +17,5 @@ maintainers:
email: wojoinc@pm.me
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

View File

@@ -112,9 +112,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------

View File

@@ -100,9 +100,9 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
{{- define "custom.support" -}}
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: comcast
version: 3.0.0
version: 3.0.1
appVersion: 1.0.0
description: periodic comcast data usage checks and save the results to InfluxDB
keywords:

View File

@@ -1,79 +1,71 @@
# Comcast Data Cap Usage Collector For InfluxDB and Grafana
# comcast
![Screenshot](https://github.com/billimek/comcastUsage-for-influxdb/raw/master/images/comcast_grafana_example.png)
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
This tool allows you to run periodic comcast data usage checks and save the results to Influxdb
periodic comcast data usage checks and save the results to InfluxDB
## TL;DR;
**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)**
## Source Code
* <https://github.com/billimek/comcastUsage-for-influxdb>
* <https://github.com/k8s-at-home/charts>
## Requirements
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
## TL;DR
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/comcast
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install comcast k8s-at-home/comcast
```
## Introduction
This code is adopted from the work done by [barrycarey](https://github.com/barrycarey) in the [similar thing for capturing speedtest data](https://github.com/barrycarey/Speedtest-for-InfluxDB-and-Grafana) as well as [jantman's](https://github.com/jantman) [xfinity-usage python example](https://github.com/jantman/xfinity-usage)
## Installing the Chart
To install the chart with the release name `my-release`:
To install the chart with the release name `comcast`
```console
$ helm install --name my-release k8s-at-home/comcast
helm install comcast k8s-at-home/comcast
```
## Uninstalling the Chart
To uninstall/delete the `my-release` deployment:
To uninstall the `comcast` deployment
```console
$ helm delete my-release --purge
helm uninstall comcast
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
The configuration is set as a block of text through a configmap and mounted as a file in /src/config.ini Any value in this text block should match the defined Comcast configuration. There are several values here that will have to match our kubernetes configuration.
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
| ------------------------------- | ------------------------------- | ---------------------------------------------------------- |
| `image.repository` | Comcast image | `billimek/comcastusage-for-influxdb` |
| `image.tag` | Comcast image tag | `latest` |
| `image.pullPolicy` | Comcast image pull policy | `IfNotPresent` |
| `debug` | Display debugging output | `false` |
| `config.delay` | how many seconds to wait between checks | `3600` |
| `config.influxdb.host` | InfluxDB hostname | `influxdb-influxdb` |
| `config.influxdb.port` | InfluxDB port | `8086` |
| `config.influxdb.database` | InfluxDB database | `comcast` |
| `config.influxdb.username` | InfluxDB username | `` |
| `config.influxdb.password` | InfluxDB password | `` |
| `config.influxdb.ssl` | InfluxDB connection using SSL | `false` |
| `config.comcast.username` | Comcast website login usernma | `someuser` |
| `config.comcast.password` | Comcast website login password | `somepassword` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install --name my-release \
--set config.comcast.username=tonystark,config.comcast.password=mypassword \
helm install comcast \
--set env.TZ="America/New York" \
k8s-at-home/comcast
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install --name my-release -f values.yaml k8s-at-home/comcast
helm install comcast k8s-at-home/comcast -f values.yaml
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/comcast/values.yaml) file. It has several commented out suggested values.
## Custom configuration
## InfluxDB metrics
### InfluxDB metrics
```
'measurement': 'comcast_data_usage',
'fields': {
@@ -82,3 +74,57 @@ Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master
'unit'
}
```
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| config.comcast.password | string | `"somepassword"` | Comcast website login password |
| config.comcast.username | string | `"someuser"` | Comcast website login username |
| config.delay | int | `3600` | how many seconds to wait between checks |
| config.influxdb.database | string | `"comcast"` | InfluxDB database |
| config.influxdb.host | string | `"influxdb-influxdb"` | InfluxDB hostname |
| config.influxdb.port | int | `8086` | InfluxDB port |
| config.influxdb.ssl | bool | `false` | InfluxDB connection using SSL |
| debug | bool | `false` | Display debugging output |
| image.pullPolicy | string | `"IfNotPresent"` | Comcast image pull policy |
| image.repository | string | `"billimek/comcastusage-for-influxdb"` | Comcast image |
| image.tag | string | `"latest"` | Comcast image tag |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | Key-value pairs to add as pod annotations |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
## Changelog
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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.0]
#### Added
- N/A
#### Changed
- use helm-docs
#### Removed
- N/A
[3.0.0]: #3.0.0
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -0,0 +1,145 @@
{{- define "custom.repository.organization" -}}
k8s-at-home
{{- end -}}
{{- define "custom.repository.url" -}}
https://github.com/k8s-at-home/charts
{{- end -}}
{{- define "custom.helm.url" -}}
https://k8s-at-home.com/charts/
{{- end -}}
{{- define "custom.helm.path" -}}
{{ template "custom.repository.organization" . }}/{{ template "chart.name" . }}
{{- end -}}
{{- define "custom.notes" -}}
**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)**
{{- end -}}
{{- define "custom.requirements" -}}
## Requirements
{{ template "chart.kubeVersionLine" . }}
{{- end -}}
{{- define "custom.dependencies" -}}
## Dependencies
{{ template "chart.requirementsTable" . }}
{{- end -}}
{{- define "custom.install.tldr" -}}
## TL;DR
```console
helm repo add {{ template "custom.repository.organization" . }} {{ template "custom.helm.url" . }}
helm repo update
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.install" -}}
## Installing the Chart
To install the chart with the release name `{{ template "chart.name" . }}`
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.uninstall" -}}
## Uninstalling the Chart
To uninstall the `{{ template "chart.name" . }}` deployment
```console
helm uninstall {{ template "chart.name" . }}
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
{{- end -}}
{{- define "custom.configuration.header" -}}
## Configuration
{{- end -}}
{{- define "custom.configuration.readValues" -}}
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
{{- end -}}
{{- define "custom.configuration.example.set" -}}
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install {{ template "chart.name" . }} \
--set env.TZ="America/New York" \
{{ template "custom.helm.path" . }}
```
{{- end -}}
{{- define "custom.configuration.example.file" -}}
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -f values.yaml
```
{{- end -}}
{{- define "custom.valuesSection" -}}
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
{{ template "chart.valuesTable" . }}
{{- end -}}
{{- define "custom.support" -}}
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
{{- end -}}
{{ template "chart.header" . }}
{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }}
{{ template "chart.description" . }}
{{ template "custom.notes" . }}
{{ template "chart.sourcesSection" . }}
{{ template "custom.requirements" . }}
{{ template "custom.dependencies" . }}
{{ template "custom.install.tldr" . }}
{{ template "custom.install" . }}
{{ template "custom.uninstall" . }}
{{ template "custom.configuration.header" . }}
{{ template "custom.configuration.readValues" . }}
{{ template "custom.configuration.example.set" . }}
{{ template "custom.configuration.example.file" . }}
{{ template "custom.custom.configuration" . }}
{{ template "custom.valuesSection" . }}
{{ template "custom.changelog" . }}
{{ template "custom.support" . }}
{{ template "helm-docs.versionFooter" . }}

View File

@@ -0,0 +1,27 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
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]
#### Added
- N/A
#### Changed
- use helm-docs
#### Removed
- N/A
[3.0.1]: #3.0.1
{{- end -}}

View File

@@ -0,0 +1,17 @@
{{- define "custom.custom.configuration.header" -}}
## Custom configuration
{{- end -}}
{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}
### InfluxDB metrics
```
'measurement': 'comcast_data_usage',
'fields': {
'used',
'total',
'unit'
}
```
{{- end -}}

View File

@@ -3,8 +3,11 @@
# Declare variables to be passed into your templates.
replicaCount: 1
image:
# -- Comcast image
repository: billimek/comcastusage-for-influxdb
# -- Comcast image tag
tag: latest
# -- Comcast image pull policy
pullPolicy: IfNotPresent
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
@@ -18,21 +21,28 @@ resources: {}
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
# -- Display debugging output
debug: false
config:
# how many seconds to wait between checks
# -- how many seconds to wait between checks
delay: 3600
influxdb:
# host/port/database are mandatory - change as needed
# -- InfluxDB hostname
host: influxdb-influxdb
# -- InfluxDB port
port: 8086
# -- InfluxDB database
database: comcast
# username:
# password:
# -- InfluxDB connection using SSL
ssl: false
comcast:
# username/password are mandatory and must be populated
# -- Comcast website login username
username: someuser
# -- Comcast website login password
password: somepassword
# -- Key-value pairs to add as pod annotations
podAnnotations: {}

View File

@@ -1,16 +0,0 @@
apiVersion: v2
name: common-test
description: Helper chart to test different use cases of the common library
version: 1.0.4
kubeVersion: ">=1.16.0-0"
keywords:
- 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
dependencies:
- name: common
repository: file://../common
version: n/a

View File

@@ -1,34 +0,0 @@
# common-test
![Version: 1.0.4](https://img.shields.io/badge/Version-1.0.4-informational?style=flat-square)
Helper chart to test different use cases of the common library
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/common-test>
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| bjw-s | me@bjw-s.dev | |
## Requirements
Kubernetes: `>=1.16.0-0`
| Repository | Name | Version |
|------------|------|---------|
| file://../common | common | n/a |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"b4bz/homer"` | |
| image.tag | string | `"latest"` | |
| ingress.enabled | bool | `true` | |
| service.port.port | int | `8080` | |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -1,19 +0,0 @@
image:
repository: b4bz/homer
tag: latest
pullPolicy: IfNotPresent
service:
port:
port: 8080
ingress:
enabled: true
probes:
liveness:
enabled: true
readiness:
enabled: true
startup:
enabled: true

View File

@@ -1,27 +0,0 @@
image:
repository: b4bz/homer
tag: latest
pullPolicy: IfNotPresent
service:
port:
port: 8080
ingress:
enabled: true
persistence:
config:
enabled: true
emptyDir: true
mountPath: /www/assets
addons:
codeserver:
enabled: true
workingDir: "/www/assets"
ingress:
enabled: true
volumeMounts:
- name: config
mountPath: /www/assets

View File

@@ -1,11 +0,0 @@
image:
repository: b4bz/homer
tag: latest
pullPolicy: IfNotPresent
service:
port:
port: 8080
ingress:
enabled: true

View File

@@ -1,13 +0,0 @@
apiVersion: v2
name: common
description: Function library for k8s-at-home charts
type: library
version: 3.0.1
kubeVersion: ">=1.16.0-0"
keywords:
- 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

View File

@@ -1,424 +0,0 @@
# common
![Version: 3.0.1](https://img.shields.io/badge/Version-3.0.1-informational?style=flat-square) ![Type: library](https://img.shields.io/badge/Type-library-informational?style=flat-square)
Function library for k8s-at-home charts
**WARNING: THIS CHART IS NOT MEANT TO BE INSTALLED DIRECTLY**
This is a [Helm Library Chart](https://helm.sh/docs/topics/library_charts/#helm). It's purpose is for grouping common logic between the k8s@home charts.
Since a lot of charts follow the same pattern this library was built to reduce maintenance cost between the charts that use it and try achieve a goal of being DRY.
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install common k8s-at-home/common
```
## Installing the Chart
To install the chart with the release name `common`
```console
helm install common k8s-at-home/common
```
## Uninstalling the Chart
To uninstall the `common` deployment
```console
helm uninstall common
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install common \
--set env.TZ="America/New York" \
k8s-at-home/common
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install common k8s-at-home/common -f values.yaml
```
## Creating a new chart
First be sure to checkout the many charts that already use this like [qBittorrent](../qbittorrent/), [node-red](../node-red/) or the many others in this repository.
Include this chart as a dependency in your `Chart.yaml` e.g.
```yaml
# Chart.yaml
dependencies:
- name: common
version: 3.0.1
repository: https://k8s-at-home.com/charts/
```
Write a `values.yaml` with some basic defaults you want to present to the user e.g.
```yaml
#
# 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: nodered/node-red
pullPolicy: IfNotPresent
tag: 1.2.5
strategy:
type: Recreate
# See more environment variables in the node-red documentation
# https://nodered.org/docs/getting-started/docker
env: {}
# TZ:
# NODE_OPTIONS:
# NODE_RED_ENABLE_PROJECTS:
# NODE_RED_ENABLE_SAFE_MODE:
# FLOWS:
service:
port:
port: 1880
ingress:
enabled: false
persistence:
data:
enabled: false
emptyDir: false
mountPath: /data
```
If not using a service, set the `service.enabled` to `false`.
```yaml
...
service:
enabled: false
...
```
Add files to the `templates` folder.
```yaml
# templates/common.yaml
{{ include "common.all . }}
# templates/NOTES.txt
{{ include "common.notes.defaultNotes" . }}
```
If testing locally make sure you update the dependencies with:
```bash
helm dependency update
```
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| additionalContainers | list | `[]` | |
| additionalVolumeMounts | list | `[]` | |
| additionalVolumes | list | `[]` | |
| addons.codeserver.args[0] | string | `"--auth"` | |
| addons.codeserver.args[1] | string | `"none"` | |
| addons.codeserver.enabled | bool | `false` | |
| addons.codeserver.env | object | `{}` | |
| addons.codeserver.image.pullPolicy | string | `"IfNotPresent"` | |
| addons.codeserver.image.repository | string | `"codercom/code-server"` | |
| addons.codeserver.image.tag | string | `"3.7.4"` | |
| addons.codeserver.ingress.annotations | object | `{}` | |
| addons.codeserver.ingress.enabled | bool | `false` | |
| addons.codeserver.ingress.hosts[0].host | string | `"code.chart-example.local"` | |
| addons.codeserver.ingress.hosts[0].paths[0].path | string | `"/"` | |
| addons.codeserver.ingress.hosts[0].paths[0].pathType | string | `"Prefix"` | |
| addons.codeserver.ingress.labels | object | `{}` | |
| addons.codeserver.ingress.nameSuffix | string | `"codeserver"` | |
| addons.codeserver.ingress.tls | list | `[]` | |
| addons.codeserver.securityContext.runAsUser | int | `0` | |
| addons.codeserver.service.annotations | object | `{}` | |
| addons.codeserver.service.enabled | bool | `true` | |
| addons.codeserver.service.labels | object | `{}` | |
| addons.codeserver.service.port.name | string | `"codeserver"` | |
| addons.codeserver.service.port.port | int | `12321` | |
| addons.codeserver.service.port.protocol | string | `"TCP"` | |
| addons.codeserver.service.port.targetPort | string | `"codeserver"` | |
| addons.codeserver.service.type | string | `"ClusterIP"` | |
| addons.codeserver.volumeMounts | list | `[]` | |
| addons.codeserver.workingDir | string | `""` | |
| addons.vpn.additionalVolumeMounts | list | `[]` | |
| addons.vpn.configFile | string | `nil` | |
| addons.vpn.enabled | bool | `false` | |
| addons.vpn.env | object | `{}` | |
| addons.vpn.livenessProbe | object | `{}` | |
| addons.vpn.networkPolicy.egress | string | `nil` | |
| addons.vpn.networkPolicy.enabled | bool | `false` | |
| addons.vpn.openvpn.auth | string | `nil` | |
| addons.vpn.openvpn.authSecret | string | `nil` | |
| addons.vpn.openvpn.image.pullPolicy | string | `"IfNotPresent"` | |
| addons.vpn.openvpn.image.repository | string | `"dperson/openvpn-client"` | |
| addons.vpn.openvpn.image.tag | string | `"latest"` | |
| addons.vpn.scripts.down | string | `nil` | |
| addons.vpn.scripts.up | string | `nil` | |
| addons.vpn.securityContext.capabilities.add[0] | string | `"NET_ADMIN"` | |
| addons.vpn.securityContext.capabilities.add[1] | string | `"SYS_MODULE"` | |
| addons.vpn.type | string | `"openvpn"` | |
| addons.vpn.wireguard.image.pullPolicy | string | `"IfNotPresent"` | |
| addons.vpn.wireguard.image.repository | string | `"k8sathome/wireguard"` | |
| addons.vpn.wireguard.image.tag | string | `"1.0.20200827"` | |
| affinity | object | `{}` | |
| args | list | `[]` | |
| command | list | `[]` | |
| controllerAnnotations | object | `{}` | |
| controllerLabels | object | `{}` | |
| controllerType | string | `"deployment"` | |
| dnsPolicy | string | `"ClusterFirst"` | |
| enableServiceLinks | bool | `true` | |
| env | object | `{}` | |
| envFrom | list | `[]` | |
| envTpl | object | `{}` | |
| envValueFrom | object | `{}` | |
| fullnameOverride | string | `""` | |
| hostAliases | list | `[]` | |
| hostNetwork | bool | `false` | |
| ingress.additionalIngresses | list | `[]` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0].host | string | `"chart-example.local"` | |
| ingress.hosts[0].paths[0].path | string | `"/"` | |
| ingress.hosts[0].paths[0].pathType | string | `"Prefix"` | |
| ingress.labels | object | `{}` | |
| ingress.tls | list | `[]` | |
| initContainers | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.config.accessMode | string | `"ReadWriteOnce"` | |
| persistence.config.enabled | bool | `false` | |
| persistence.config.mountPath | string | `"/config"` | |
| persistence.config.size | string | `"1Gi"` | |
| persistence.config.skipuninstall | bool | `false` | |
| persistence.shared.emptyDir | bool | `true` | |
| persistence.shared.enabled | bool | `false` | |
| persistence.shared.mountPath | string | `"/shared"` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| probes.liveness.custom | bool | `false` | |
| probes.liveness.enabled | bool | `true` | |
| probes.liveness.spec.failureThreshold | int | `3` | |
| probes.liveness.spec.initialDelaySeconds | int | `0` | |
| probes.liveness.spec.periodSeconds | int | `10` | |
| probes.liveness.spec.timeoutSeconds | int | `1` | |
| probes.readiness.custom | bool | `false` | |
| probes.readiness.enabled | bool | `true` | |
| probes.readiness.spec.failureThreshold | int | `3` | |
| probes.readiness.spec.initialDelaySeconds | int | `0` | |
| probes.readiness.spec.periodSeconds | int | `10` | |
| probes.readiness.spec.timeoutSeconds | int | `1` | |
| probes.startup.custom | bool | `false` | |
| probes.startup.enabled | bool | `true` | |
| probes.startup.spec.failureThreshold | int | `30` | |
| probes.startup.spec.initialDelaySeconds | int | `0` | |
| probes.startup.spec.periodSeconds | int | `5` | |
| probes.startup.spec.timeoutSeconds | int | `1` | |
| replicas | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.additionalPorts | list | `[]` | |
| service.additionalServices | list | `[]` | |
| service.annotations | object | `{}` | |
| service.enabled | bool | `true` | |
| service.labels | object | `{}` | |
| service.port.name | string | `nil` | |
| service.port.port | string | `nil` | |
| service.port.protocol | string | `"TCP"` | |
| service.port.targetPort | string | `nil` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `false` | |
| serviceAccount.name | string | `""` | |
| strategy.type | string | `"RollingUpdate"` | |
| tolerations | list | `[]` | |
| volumeClaimTemplates | list | `[]` | |
## Changelog
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](../common/README.md).
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
- Made explicit that `service.port.targetPort` cannot be a named port.
### [2.2.0]
#### Added
- Allow serviceLinks to be enabled/disabled.
- Support for ingressClassName on apiVersion `networking.k8s.io/v1` by setting `ingress.ingressClassName`.
- Added some initial proper unit tests for the `common` chart.
#### Changed
- `service.port.targetPort` is now used in the container spec instead of `service.port.port` if specified. This allows for different service and container ports. (Implements [#465](https://github.com/k8s-at-home/charts/issues/465)).
#### Fixed
- Document setting environment variables for code-server add-on in `values.yaml` (Fixes [#436](https://github.com/k8s-at-home/charts/issues/436)).
- Set service targetPort to the service port name first if no `targetPort` value is given.
### [2.1.0]
#### Added
- Allow for additional arguments to be added to code-server runtime via `addons.codeserver.args`
### [2.0.4]
#### Fixed
- `periodSeconds` now works for all probe types.
### [2.0.0]
#### Changed
- :warning: Updated `probes` logic to support custom probes, it is now possible to set your own custom probes by setting the `probes.[liveness|readiness|startup].custom` value to `true` and configuring them. Default is `false`.
- :warning: `addon.vpn.imagePullPolicy` is now `addon.vpn.[openvpn|wireguard].image.pullPolicy`. Default is `IfNotPresent`
- [code-server](https://github.com/cdr/code-server) is now an `addon` like `vpn`. This enables a code-server container inside the pod which allows you to modify a configuration in a volume attached to the pod. Default for `addons.codeserver.enabled` is `false`
- Added `envFrom` for more configuration with environment variables
- Added `dnsConfig` to be configurable
- Added support for 1.19+ ingress spec
- Added this [CHANGELOG.md](CHANGELOG.md)
#### Fixed
- `nameOverride` and `fullNameOverride` not in `values.yaml`
### [1.7.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]: #3.0.1
[3.0.0]: #3.0.0
[2.5.1]: #2.5.1
[2.5.0]: #2.5.0
[2.4.0]: #2.4.0
[2.3.0]: #2.3.0
[2.2.1]: #2.2.1
[2.2.0]: #2.2.0
[2.1.0]: #2.1.0
[2.0.4]: #2.0.4
[2.0.0]: #2.0.0
[1.7.0]: #1.7.0
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki).
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -1,148 +0,0 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](../common/README.md).
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
- Made explicit that `service.port.targetPort` cannot be a named port.
### [2.2.0]
#### Added
- Allow serviceLinks to be enabled/disabled.
- Support for ingressClassName on apiVersion `networking.k8s.io/v1` by setting `ingress.ingressClassName`.
- Added some initial proper unit tests for the `common` chart.
#### Changed
- `service.port.targetPort` is now used in the container spec instead of `service.port.port` if specified. This allows for different service and container ports. (Implements [#465](https://github.com/k8s-at-home/charts/issues/465)).
#### Fixed
- Document setting environment variables for code-server add-on in `values.yaml` (Fixes [#436](https://github.com/k8s-at-home/charts/issues/436)).
- Set service targetPort to the service port name first if no `targetPort` value is given.
### [2.1.0]
#### Added
- Allow for additional arguments to be added to code-server runtime via `addons.codeserver.args`
### [2.0.4]
#### Fixed
- `periodSeconds` now works for all probe types.
### [2.0.0]
#### Changed
- :warning: Updated `probes` logic to support custom probes, it is now possible to set your own custom probes by setting the `probes.[liveness|readiness|startup].custom` value to `true` and configuring them. Default is `false`.
- :warning: `addon.vpn.imagePullPolicy` is now `addon.vpn.[openvpn|wireguard].image.pullPolicy`. Default is `IfNotPresent`
- [code-server](https://github.com/cdr/code-server) is now an `addon` like `vpn`. This enables a code-server container inside the pod which allows you to modify a configuration in a volume attached to the pod. Default for `addons.codeserver.enabled` is `false`
- Added `envFrom` for more configuration with environment variables
- Added `dnsConfig` to be configurable
- Added support for 1.19+ ingress spec
- Added this [CHANGELOG.md](CHANGELOG.md)
#### Fixed
- `nameOverride` and `fullNameOverride` not in `values.yaml`
### [1.7.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]: #3.0.1
[3.0.0]: #3.0.0
[2.5.1]: #2.5.1
[2.5.0]: #2.5.0
[2.4.0]: #2.4.0
[2.3.0]: #2.3.0
[2.2.1]: #2.2.1
[2.2.0]: #2.2.0
[2.1.0]: #2.1.0
[2.0.4]: #2.0.4
[2.0.0]: #2.0.0
[1.7.0]: #1.7.0
{{- end -}}

View File

@@ -1,82 +0,0 @@
{{- define "custom.custom.configuration.header" -}}
## Creating a new chart
{{- end -}}
{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}
First be sure to checkout the many charts that already use this like [qBittorrent](../qbittorrent/), [node-red](../node-red/) or the many others in this repository.
Include this chart as a dependency in your `Chart.yaml` e.g.
```yaml
# Chart.yaml
dependencies:
- name: common
version: {{ template "chart.version" . }}
repository: {{ template "custom.helm.url" . }}
```
Write a `values.yaml` with some basic defaults you want to present to the user e.g.
```yaml
#
# 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: nodered/node-red
pullPolicy: IfNotPresent
tag: 1.2.5
strategy:
type: Recreate
# See more environment variables in the node-red documentation
# https://nodered.org/docs/getting-started/docker
env: {}
# TZ:
# NODE_OPTIONS:
# NODE_RED_ENABLE_PROJECTS:
# NODE_RED_ENABLE_SAFE_MODE:
# FLOWS:
service:
port:
port: 1880
ingress:
enabled: false
persistence:
data:
enabled: false
emptyDir: false
mountPath: /data
```
If not using a service, set the `service.enabled` to `false`.
```yaml
...
service:
enabled: false
...
```
Add files to the `templates` folder.
```yaml
# templates/common.yaml
{{"{{"}} include "common.all . {{"}}"}}
# templates/NOTES.txt
{{"{{"}} include "common.notes.defaultNotes" . {{"}}"}}
```
If testing locally make sure you update the dependencies with:
```bash
helm dependency update
```
{{- end -}}

View File

@@ -1,36 +0,0 @@
{{/*
Main entrypoint for the common library chart. It will render all underlying templates based on the provided values.
*/}}
{{- define "common.all" -}}
{{- /* Merge the local chart values and the common chart defaults */ -}}
{{- include "common.values.setup" . }}
{{- /* Enable code-server add-on if required */ -}}
{{- if .Values.addons.codeserver.enabled }}
{{- include "common.addon.codeserver" . }}
{{- end -}}
{{- /* Enable VPN add-on if required */ -}}
{{- if .Values.addons.vpn.enabled }}
{{- include "common.addon.vpn" . }}
{{- end -}}
{{- /* Build the templates */ -}}
{{- include "common.pvc" . }}
{{- print "---" | nindent 0 -}}
{{- if .Values.serviceAccount.create -}}
{{- include "common.serviceAccount" . }}
{{- print "---" | nindent 0 -}}
{{- end -}}
{{- if eq .Values.controllerType "deployment" }}
{{- include "common.deployment" . | nindent 0 }}
{{ else if eq .Values.controllerType "daemonset" }}
{{- include "common.daemonset" . | nindent 0 }}
{{ else if eq .Values.controllerType "statefulset" }}
{{- include "common.statefulset" . | nindent 0 }}
{{- end -}}
{{- print "---" | nindent 0 -}}
{{ include "common.service" . | nindent 0 }}
{{- print "---" | nindent 0 -}}
{{ include "common.ingress" . | nindent 0 }}
{{- end -}}

View File

@@ -1,33 +0,0 @@
{{/*
This template serves as the blueprint for the DaemonSet objects that are created
within the common library.
*/}}
{{- define "common.daemonset" -}}
apiVersion: {{ include "common.capabilities.daemonset.apiVersion" . }}
kind: DaemonSet
metadata:
name: {{ include "common.names.fullname" . }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with .Values.controllerLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.controllerAnnotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
selector:
matchLabels:
{{- include "common.labels.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "common.labels.selectorLabels" . | nindent 8 }}
spec:
{{- include "common.controller.pod" . | nindent 6 }}
{{- end }}

View File

@@ -1,38 +0,0 @@
{{/*
This template serves as the blueprint for the Deployment objects that are created
within the common library.
*/}}
{{- define "common.deployment" -}}
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
kind: Deployment
metadata:
name: {{ include "common.names.fullname" . }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with .Values.controllerLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.controllerAnnotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
replicas: {{ .Values.replicas }}
{{- with .Values.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
selector:
matchLabels:
{{- include "common.labels.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "common.labels.selectorLabels" . | nindent 8 }}
spec:
{{- include "common.controller.pod" . | nindent 6 }}
{{- end }}

View File

@@ -1,27 +0,0 @@
{{/*
Renders the Ingress objects required by the chart by returning a concatinated list
of the main Ingress and any additionalIngresses.
*/}}
{{- define "common.ingress" -}}
{{- if .Values.ingress.enabled -}}
{{- $svcPort := .Values.service.port.port -}}
{{- /* Generate primary ingress */ -}}
{{- $ingressValues := .Values.ingress -}}
{{- $_ := set . "ObjectValues" (dict "ingress" $ingressValues) -}}
{{- include "common.classes.ingress" . }}
{{- /* Generate additional ingresses as required */ -}}
{{- range $index, $extraIngress := .Values.ingress.additionalIngresses }}
{{- if $extraIngress.enabled -}}
{{- print ("---") | nindent 0 -}}
{{- $ingressValues := $extraIngress -}}
{{- if not $ingressValues.nameSuffix -}}
{{- $_ := set $ingressValues "nameSuffix" $index -}}
{{ end -}}
{{- $_ := set $ "ObjectValues" (dict "ingress" $ingressValues) -}}
{{- include "common.classes.ingress" $ -}}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

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

View File

@@ -1,18 +0,0 @@
{{/*
Renders the PersistentVolumeClaim objects required by the chart by returning a concatinated list
of all the entries of the persistence key.
*/}}
{{- define "common.pvc" -}}
{{- /* Generate pvc as required */ -}}
{{- range $index, $PVC := .Values.persistence }}
{{- if and $PVC.enabled (not (or $PVC.emptyDir $PVC.existingClaim)) -}}
{{- $persistenceValues := $PVC -}}
{{- if not $persistenceValues.nameSuffix -}}
{{- $_ := set $persistenceValues "nameSuffix" $index -}}
{{- end -}}
{{- $_ := set $ "ObjectValues" (dict "persistence" $persistenceValues) -}}
{{- print ("---") | nindent 0 -}}
{{- include "common.classes.pvc" $ -}}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -1,23 +0,0 @@
{{/*
Renders the Service objects required by the chart by returning a concatinated list
of the main Service and any additionalServices.
*/}}
{{- define "common.service" -}}
{{- if .Values.service.enabled -}}
{{- /* Generate primary service */ -}}
{{- include "common.classes.service" . }}
{{- /* Generate additional services as required */ -}}
{{- range $index, $extraService := .Values.service.additionalServices }}
{{- if $extraService.enabled -}}
{{- print ("---") | nindent 0 -}}
{{- $serviceValues := $extraService -}}
{{- if not $serviceValues.nameSuffix -}}
{{- $_ := set $serviceValues "nameSuffix" $index -}}
{{ end -}}
{{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}}
{{- include "common.classes.service" $ -}}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -1,15 +0,0 @@
{{/*
The ServiceAccount object to be created.
*/}}
{{- define "common.serviceAccount" -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ include "common.names.serviceAccountName" . }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}

View File

@@ -1,53 +0,0 @@
{{/*
This template serves as the blueprint for the StatefulSet objects that are created
within the common library.
*/}}
{{- define "common.statefulset" -}}
apiVersion: {{ include "common.capabilities.statefulset.apiVersion" . }}
kind: StatefulSet
metadata:
name: {{ include "common.names.fullname" . }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with .Values.controllerLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.controllerAnnotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
replicas: {{ .Values.replicas }}
{{- with .Values.strategy }}
updateStrategy:
{{- toYaml . | nindent 4 }}
{{- end }}
selector:
matchLabels:
{{- include "common.labels.selectorLabels" . | nindent 6 }}
serviceName: {{ include "common.names.fullname" . }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "common.labels.selectorLabels" . | nindent 8 }}
spec:
{{- 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

@@ -1,44 +0,0 @@
{{/*
Template to render code-server addon
It will include / inject the required templates based on the given values.
*/}}
{{- define "common.addon.codeserver" -}}
{{- if .Values.addons.codeserver.enabled -}}
{{/* Append the code-server container to the additionalContainers */}}
{{- $container := include "common.addon.codeserver.container" . | fromYaml -}}
{{- if $container -}}
{{- $additionalContainers := append .Values.additionalContainers $container -}}
{{- $_ := set .Values "additionalContainers" $additionalContainers -}}
{{- end -}}
{{/* Add the code-server service */}}
{{- if .Values.addons.codeserver.service.enabled -}}
{{- print ("---") | nindent 0 -}}
{{- $serviceValues := .Values.addons.codeserver.service -}}
{{- if not $serviceValues.nameSuffix -}}
{{- $_ := set $serviceValues "nameSuffix" "codeserver" -}}
{{ end -}}
{{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}}
{{- include "common.classes.service" $ -}}
{{- $_ := unset $ "ObjectValues" -}}
{{- end -}}
{{/* Add the code-server ingress */}}
{{- if .Values.addons.codeserver.ingress.enabled -}}
{{- print ("---") | nindent 0 -}}
{{- $ingressValues := .Values.addons.codeserver.ingress -}}
{{- if not $ingressValues.nameSuffix -}}
{{- $_ := set $ingressValues "nameSuffix" "codeserver" -}}
{{ end -}}
{{/* Determine the target service name & port */}}
{{- $svcName := printf "%v-%v" (include "common.names.fullname" .) .Values.addons.codeserver.service.nameSuffix -}}
{{- $_ := set $ingressValues "serviceName" $svcName -}}
{{- $_ := set $ingressValues "servicePort" .Values.addons.codeserver.service.port.port -}}
{{- $_ := set $ "ObjectValues" (dict "ingress" $ingressValues) -}}
{{- include "common.classes.ingress" $ -}}
{{- $_ := unset $ "ObjectValues" -}}
{{- end -}}
{{- end -}}
{{- end -}}

View File

@@ -1,41 +0,0 @@
{{/*
The code-server sidecar container to be inserted.
*/}}
{{- define "common.addon.codeserver.container" -}}
{{- if lt (len .Values.addons.codeserver.volumeMounts) 1 }}
{{- fail "At least 1 volumeMount is required for codeserver container" }}
{{- end -}}
name: codeserver
image: "{{ .Values.addons.codeserver.image.repository }}:{{ .Values.addons.codeserver.image.tag }}"
imagePullPolicy: {{ .Values.addons.codeserver.pullPolicy }}
{{- with .Values.addons.codeserver.securityContext }}
securityContext:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.addons.codeserver.env }}
env:
{{- range $k, $v := . }}
- name: {{ $k }}
value: {{ $v | quote }}
{{- end }}
{{- end }}
ports:
- name: {{ .Values.addons.codeserver.service.port.name }}
containerPort: {{ .Values.addons.codeserver.service.port.port }}
protocol: TCP
args:
{{- range .Values.addons.codeserver.args }}
- {{ . | quote }}
{{- end }}
- "--port"
- "{{ .Values.addons.codeserver.service.port.port }}"
- {{ .Values.addons.codeserver.workingDir | default (first .Values.addons.codeserver.volumeMounts).mountPath }}
{{- with .Values.addons.codeserver.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.addons.codeserver.resources }}
resources:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end -}}

View File

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

View File

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

View File

@@ -1,25 +0,0 @@
{{/*
The volume (referencing VPN config and scripts) to be inserted into additionalVolumes.
*/}}
{{- define "common.addon.vpn.volume" -}}
{{- if or .Values.addons.vpn.configFile .Values.addons.vpn.scripts.up .Values.addons.vpn.scripts.down -}}
name: vpnconfig
configMap:
name: {{ include "common.names.fullname" . }}-vpn
items:
{{- if .Values.addons.vpn.configFile }}
- key: vpnConfigfile
path: vpnConfigfile
{{- end }}
{{- if .Values.addons.vpn.scripts.up }}
- key: up.sh
path: up.sh
mode: 0777
{{- end }}
{{- if .Values.addons.vpn.scripts.down }}
- key: down.sh
path: down.sh
mode: 0777
{{- end }}
{{- end -}}
{{- end -}}

View File

@@ -1,36 +0,0 @@
{{/*
Template to render VPN addon
It will include / inject the required templates based on the given values.
*/}}
{{- define "common.addon.vpn" -}}
{{- if .Values.addons.vpn.enabled -}}
{{- if eq "openvpn" .Values.addons.vpn.type -}}
{{- include "common.addon.openvpn" . }}
{{- end -}}
{{- if eq "wireguard" .Values.addons.vpn.type -}}
{{- include "common.addon.wireguard" . }}
{{- end -}}
{{/* Include the configmap if not empty */}}
{{- $configmap := include "common.addon.vpn.configmap" . -}}
{{- if $configmap -}}
{{- print "---" | nindent 0 -}}
{{- $configmap | nindent 0 -}}
{{- end -}}
{{/* Append the vpn config volume to the additionalVolumes */}}
{{- $volume := include "common.addon.vpn.volume" . | fromYaml -}}
{{- if $volume -}}
{{- $additionalVolumes := append .Values.additionalVolumes $volume }}
{{- $_ := set .Values "additionalVolumes" $additionalVolumes -}}
{{- end -}}
{{/* Include the networkpolicy if not empty */}}
{{- $networkpolicy := include "common.addon.vpn.networkpolicy" . -}}
{{- if $networkpolicy -}}
{{- print "---" | nindent 0 -}}
{{- $networkpolicy | nindent 0 -}}
{{- end -}}
{{- end -}}
{{- end -}}

View File

@@ -1,19 +0,0 @@
{{/*
Template to render OpenVPN addon. It will add the container to the list of additionalContainers
and add a credentials secret if speciffied.
*/}}
{{- define "common.addon.openvpn" -}}
{{/* Append the openVPN container to the additionalContainers */}}
{{- $container := include "common.addon.openvpn.container" . | fromYaml -}}
{{- if $container -}}
{{- $additionalContainers := append .Values.additionalContainers $container -}}
{{- $_ := set .Values "additionalContainers" $additionalContainers -}}
{{- end -}}
{{/* Include the secret if not empty */}}
{{- $secret := include "common.addon.openvpn.secret" . -}}
{{- if $secret -}}
{{- print "---" | nindent 0 -}}
{{- $secret | nindent 0 -}}
{{- end -}}
{{- end -}}

View File

@@ -1,61 +0,0 @@
{{/*
The OpenVPN sidecar container to be inserted.
*/}}
{{- define "common.addon.openvpn.container" -}}
name: openvpn
image: "{{ .Values.addons.vpn.openvpn.image.repository }}:{{ .Values.addons.vpn.openvpn.image.tag }}"
imagePullPolicy: {{ .Values.addons.vpn.openvpn.pullPolicy }}
{{- with .Values.addons.vpn.securityContext }}
securityContext:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.addons.vpn.env }}
env:
{{- range $k, $v := . }}
- name: {{ $k }}
value: {{ $v | quote }}
{{- end }}
{{- end }}
{{- if or .Values.addons.vpn.openvpn.auth .Values.addons.vpn.openvpn.authSecret }}
envFrom:
- secretRef:
{{- if .Values.addons.vpn.openvpn.authSecret }}
name: {{ .Values.addons.vpn.openvpn.authSecret }}
{{- else }}
name: {{ include "common.names.fullname" . }}-openvpn
{{- end }}
{{- end }}
{{- if or .Values.addons.vpn.configFile .Values.addons.vpn.scripts.up .Values.addons.vpn.scripts.down .Values.addons.vpn.additionalVolumeMounts .Values.persistence.shared.enabled }}
volumeMounts:
{{- if .Values.addons.vpn.configFile }}
- name: vpnconfig
mountPath: /vpn/vpn.conf
subPath: vpnConfigfile
{{- end }}
{{- if .Values.addons.vpn.scripts.up }}
- name: vpnconfig
mountPath: /vpn/up.sh
subPath: up.sh
{{- end }}
{{- if .Values.addons.vpn.scripts.down }}
- name: vpnconfig
mountPath: /vpn/down.sh
subPath: down.sh
{{- end }}
{{- if .Values.persistence.shared.enabled }}
- mountPath: {{ .Values.persistence.shared.mountPath }}
name: shared
{{- end }}
{{- with .Values.addons.vpn.additionalVolumeMounts }}
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end }}
{{- with .Values.addons.vpn.livenessProbe }}
livenessProbe:
{{- toYaml . | nindent 2 }}
{{- end -}}
{{- with .Values.addons.vpn.resources }}
resources:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end -}}

View File

@@ -1,15 +0,0 @@
{{/*
The OpenVPN credentials secrets to be included.
*/}}
{{- define "common.addon.openvpn.secret" -}}
{{- with .Values.addons.vpn.openvpn.auth -}}
apiVersion: v1
kind: Secret
metadata:
name: {{ include "common.names.fullname" $ }}-openvpn
labels:
{{- include "common.labels" $ | nindent 4 }}
data:
VPN_AUTH: {{ . | b64enc }}
{{- end -}}
{{- end -}}

View File

@@ -1,12 +0,0 @@
{{/*
Template to render Wireguard addon. It will add the container to the list of additionalContainers.
*/}}
*/}}
{{- define "common.addon.wireguard" -}}
{{/* Append the Wireguard container to the additionalContainers */}}
{{- $container := fromYaml (include "common.addon.wireguard.container" .) -}}
{{- if $container -}}
{{- $additionalContainers := append .Values.additionalContainers $container -}}
{{- $_ := set .Values "additionalContainers" $additionalContainers -}}
{{- end -}}
{{- end -}}

View File

@@ -1,52 +0,0 @@
{{/*
The Wireguard sidecar container to be inserted.
*/}}
{{- define "common.addon.wireguard.container" -}}
name: wireguard
image: "{{ .Values.addons.vpn.wireguard.image.repository }}:{{ .Values.addons.vpn.wireguard.image.tag }}"
imagePullPolicy: {{ .Values.addons.vpn.wireguard.pullPolicy }}
{{- with .Values.addons.vpn.securityContext }}
securityContext:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.addons.vpn.env }}
env:
{{- range $k, $v := . }}
- name: {{ $k }}
value: {{ $v | quote }}
{{- end }}
{{- end }}
{{- if or .Values.addons.vpn.configFile .Values.addons.vpn.scripts.up .Values.addons.vpn.scripts.down .Values.addons.vpn.additionalVolumeMounts .Values.persistence.shared.enabled }}
volumeMounts:
{{- if .Values.addons.vpn.configFile }}
- name: vpnconfig
mountPath: /etc/wireguard/wg0.conf
subPath: vpnConfigfile
{{- end }}
{{- if .Values.addons.vpn.scripts.up }}
- name: vpnconfig
mountPath: /config/up.sh
subPath: up.sh
{{- end }}
{{- if .Values.addons.vpn.scripts.down }}
- name: vpnconfig
mountPath: /config/down.sh
subPath: down.sh
{{- end }}
{{- if .Values.persistence.shared.enabled }}
- mountPath: {{ .Values.persistence.shared.mountPath }}
name: shared
{{- end }}
{{- with .Values.addons.vpn.additionalVolumeMounts }}
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end }}
{{- with .Values.addons.vpn.livenessProbe }}
livenessProbe:
{{- toYaml . | nindent 2 }}
{{- end -}}
{{- with .Values.addons.vpn.resources }}
resources:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end -}}

View File

@@ -1,77 +0,0 @@
{{/*
This template serves as a blueprint for all Ingress objects that are created
within the common library.
*/}}
{{- define "common.classes.ingress" -}}
{{- $ingressName := include "common.names.fullname" . -}}
{{- $values := .Values.ingress -}}
{{- if hasKey . "ObjectValues" -}}
{{- with .ObjectValues.ingress -}}
{{- $values = . -}}
{{- end -}}
{{ end -}}
{{- if hasKey $values "nameSuffix" -}}
{{- $ingressName = printf "%v-%v" $ingressName $values.nameSuffix -}}
{{ end -}}
{{- $svcName := $values.serviceName | default (include "common.names.fullname" .) -}}
{{- $svcPort := $values.servicePort | default $.Values.service.port.port -}}
apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
kind: Ingress
metadata:
name: {{ $ingressName }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- with $values.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if eq (include "common.capabilities.ingress.apiVersion" $) "networking.k8s.io/v1" }}
{{- if $values.ingressClassName }}
ingressClassName: {{ $values.ingressClassName }}
{{- end }}
{{- end }}
{{- if $values.tls }}
tls:
{{- range $values.tls }}
- hosts:
{{- 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 }}
- path: {{ .path }}
{{- if eq (include "common.capabilities.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix
{{- end }}
backend:
{{- if eq (include "common.capabilities.ingress.apiVersion" $) "networking.k8s.io/v1" }}
service:
name: {{ $svcName }}
port:
number: {{ $svcPort }}
{{- else }}
serviceName: {{ $svcName }}
servicePort: {{ $svcPort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -1,40 +0,0 @@
{{/*
This template serves as a blueprint for all PersistentVolumeClaim objects that are created
within the common library.
*/}}
{{- define "common.classes.pvc" -}}
{{- $values := .Values.persistence -}}
{{- if hasKey . "ObjectValues" -}}
{{- with .ObjectValues.persistence -}}
{{- $values = . -}}
{{- end -}}
{{ end -}}
{{- $pvcName := include "common.names.fullname" . -}}
{{- if hasKey $values "nameSuffix" -}}
{{- $pvcName = printf "%v-%v" $pvcName $values.nameSuffix -}}
{{ end -}}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ $pvcName }}
{{- if or $values.skipuninstall $values.annotations }}
annotations:
{{- if $values.skipuninstall }}
"helm.sh/resource-policy": keep
{{- end }}
{{- with $values.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}
labels:
{{- include "common.labels" . | nindent 4 }}
spec:
accessModes:
- {{ required (printf "accessMode is required for PVC %v" $pvcName) $values.accessMode | quote }}
resources:
requests:
storage: {{ required (printf "size is required for PVC %v" $pvcName) $values.size | quote }}
{{- if $values.storageClass }}
storageClassName: {{ if (eq "-" $values.storageClass) }}""{{- else }}{{ $values.storageClass | quote }}{{- end }}
{{- end }}
{{- end -}}

View File

@@ -1,68 +0,0 @@
{{/*
This template serves as a blueprint for all Service objects that are created
within the common library.
*/}}
{{- define "common.classes.service" -}}
{{- $values := .Values.service -}}
{{- if hasKey . "ObjectValues" -}}
{{- with .ObjectValues.service -}}
{{- $values = . -}}
{{- end -}}
{{ end -}}
{{- $serviceName := include "common.names.fullname" . -}}
{{- if hasKey $values "nameSuffix" -}}
{{- $serviceName = printf "%v-%v" $serviceName $values.nameSuffix -}}
{{ end -}}
{{- $svcType := $values.type | default "" -}}
apiVersion: v1
kind: Service
metadata:
name: {{ $serviceName }}
labels:
{{- include "common.labels" . | nindent 4 }}
{{- if $values.labels }}
{{ toYaml $values.labels | nindent 4 }}
{{- end }}
{{- with $values.annotations }}
annotations:
{{ toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if (or (eq $svcType "ClusterIP") (empty $svcType)) }}
type: ClusterIP
{{- if $values.clusterIP }}
clusterIP: {{ $values.clusterIP }}
{{end}}
{{- else if eq $svcType "LoadBalancer" }}
type: {{ $svcType }}
{{- if $values.loadBalancerIP }}
loadBalancerIP: {{ $values.loadBalancerIP }}
{{- end }}
{{- if $values.externalTrafficPolicy }}
externalTrafficPolicy: {{ $values.externalTrafficPolicy }}
{{- end }}
{{- if $values.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml $values.loadBalancerSourceRanges | nindent 4 }}
{{- end -}}
{{- else }}
type: {{ $svcType }}
{{- end }}
{{- if $values.sessionAffinity }}
sessionAffinity: {{ $values.sessionAffinity }}
{{- if $values.sessionAffinityConfig }}
sessionAffinityConfig:
{{ toYaml $values.sessionAffinityConfig | nindent 4 }}
{{- end -}}
{{- end }}
{{- with $values.externalIPs }}
externalIPs:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- if $values.publishNotReadyAddresses }}
publishNotReadyAddresses: {{ $values.publishNotReadyAddresses }}
{{- end }}
{{- include "common.classes.service.ports" (dict "svcType" $svcType "values" $values ) | trim | nindent 2 }}
selector:
{{- include "common.labels.selectorLabels" . | nindent 4 }}
{{- end }}

View File

@@ -1,23 +0,0 @@
{{/*
Render all the ports and additionalPorts for a Service object.
*/}}
{{- define "common.classes.service.ports" -}}
{{- $ports := list -}}
{{- $values := .values -}}
{{- $ports = mustAppend $ports $values.port -}}
{{- range $_ := $values.additionalPorts -}}
{{- $ports = mustAppend $ports . -}}
{{- end }}
{{- if $ports -}}
ports:
{{- range $_ := $ports }}
- port: {{ .port }}
targetPort: {{ .targetPort | default .name | default "http" }}
protocol: {{ .protocol | default "TCP" }}
name: {{ .name | default "http" }}
{{- if (and (eq $.svcType "NodePort") (not (empty .nodePort))) }}
nodePort: {{ .nodePort }}
{{ end }}
{{- end -}}
{{- end -}}
{{- end }}

View File

@@ -1,92 +0,0 @@
{{/*
Return the appropriate apiVersion for DaemonSet objects.
*/}}
{{- define "common.capabilities.daemonset.apiVersion" -}}
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion -}}
{{- print "extensions/v1beta1" -}}
{{- else -}}
{{- print "apps/v1" -}}
{{- end -}}
{{- end -}}
{{/*
Waiting on https://github.com/helm/helm/pull/8608
{{- define "common.capabilities.daemonset.apiVersion" -}}
{{- if .Capabilities.APIVersions.Has "apps/v1/DaemonSet" -}}
{{- print "apps/v1" -}}
{{- else -}}
{{- print "extensions/v1beta1" -}}
{{- end -}}
{{- end -}}
*/}}
{{/*
Return the appropriate apiVersion for Deployment objects.
*/}}
{{- define "common.capabilities.deployment.apiVersion" -}}
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion -}}
{{- print "extensions/v1beta1" -}}
{{- else -}}
{{- print "apps/v1" -}}
{{- end -}}
{{- end -}}
{{/*
Waiting on https://github.com/helm/helm/pull/8608
{{- define "common.capabilities.deployment.apiVersion" -}}
{{- if .Capabilities.APIVersions.Has "apps/v1/Deployment" -}}
{{- print "apps/v1" -}}
{{- else -}}
{{- print "extensions/v1beta1" -}}
{{- end -}}
{{- end -}}
*/}}
{{/*
Return the appropriate apiVersion for StatefulSet objects.
*/}}
{{- define "common.capabilities.statefulset.apiVersion" -}}
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion -}}
{{- print "apps/v1beta1" -}}
{{- else -}}
{{- print "apps/v1" -}}
{{- end -}}
{{- end -}}
{{/*
Waiting on https://github.com/helm/helm/pull/8608
{{- define "common.capabilities.statefulset.apiVersion" -}}
{{- if .Capabilities.APIVersions.Has "apps/v1/StatefulSet" -}}
{{- print "apps/v1" -}}
{{- else -}}
{{- print "apps/v1beta1" -}}
{{- end -}}
{{- end -}}
*/}}
{{/*
Return the appropriate apiVersion for Ingress objects.
*/}}
{{- define "common.capabilities.ingress.apiVersion" -}}
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion -}}
{{- print "extensions/v1beta1" -}}
{{- else if semverCompare "<1.19-0" .Capabilities.KubeVersion.GitVersion -}}
{{- print "networking.k8s.io/v1beta1" -}}
{{- else -}}
{{- print "networking.k8s.io/v1" -}}
{{- end }}
{{- end -}}
{{/*
Waiting on https://github.com/helm/helm/pull/8608
{{- define "common.capabilities.ingress.apiVersion" -}}
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1/Ingress" -}}
{{- print "networking.k8s.io/v1" -}}
{{- else if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/Ingress" -}}
{{- print "networking.k8s.io/v1beta1" -}}
{{- else -}}
{{- print "extensions/v1beta1" -}}
{{- end }}
{{- end -}}
*/}}

View File

@@ -1,19 +0,0 @@
{{/*
Common labels shared across objects.
*/}}
{{- define "common.labels" -}}
helm.sh/chart: {{ include "common.names.chart" . }}
{{ include "common.labels.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels shared across objects.
*/}}
{{- define "common.labels.selectorLabels" -}}
app.kubernetes.io/name: {{ include "common.names.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -1,42 +0,0 @@
{{/*
Expand the name of the chart.
*/}}
{{- define "common.names.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 "common.names.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 "common.names.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create the name of the ServiceAccount to use.
*/}}
{{- define "common.names.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "common.names.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

View File

@@ -1,11 +0,0 @@
{{/*
Merge the local chart values and the common chart defaults.
*/}}
{{- define "common.values.setup" -}}
{{- if .Values.common -}}
{{- $defaultValues := deepCopy .Values.common -}}
{{- $userValues := deepCopy (omit .Values "common") -}}
{{- $mergedValues := mustMergeOverwrite $defaultValues $userValues -}}
{{- $_ := set . "Values" (deepCopy $mergedValues) -}}
{{- end }}
{{- end }}

View File

@@ -1,66 +0,0 @@
{{- /*
The main container included in the controller.
*/ -}}
{{- define "common.controller.mainContainer" -}}
- 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 }}
{{- with .Values.securityContext }}
securityContext:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- 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:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- include "common.controller.ports" . | trim | nindent 2 }}
volumeMounts:
{{- range $index, $PVC := .Values.persistence }}
{{- if $PVC.enabled }}
- mountPath: {{ $PVC.mountPath }}
name: {{ $index }}
{{- if $PVC.subPath }}
subPath: {{ $PVC.subPath }}
{{- end }}
{{- end }}
{{- end }}
{{- 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:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end -}}

View File

@@ -1,63 +0,0 @@
{{- /*
The pod definition included in the controller.
*/ -}}
{{- define "common.controller.pod" -}}
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 2 }}
{{- end }}
serviceAccountName: {{ include "common.names.serviceAccountName" . }}
{{- with .Values.podSecurityContext }}
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 }}
{{- with .Values.dnsConfig }}
dnsConfig:
{{- toYaml . | nindent 2 }}
{{- end }}
enableServiceLinks: {{ .Values.enableServiceLinks }}
{{- with .Values.initContainers }}
initContainers:
{{- toYaml . | nindent 2 }}
{{- end }}
containers:
{{- include "common.controller.mainContainer" . | nindent 0 }}
{{- with .Values.additionalContainers }}
{{- toYaml . | nindent 0 }}
{{- end }}
{{- with (include "common.controller.volumes" . | trim) }}
volumes:
{{- . | nindent 0 }}
{{- end }}
{{- with .Values.hostAliases }}
hostAliases:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end -}}

View File

@@ -1,42 +0,0 @@
{{/*
Ports included by the controller.
*/}}
{{- define "common.controller.ports" -}}
{{- $ports := list -}}
{{- with .Values.service -}}
{{- $serviceValues := deepCopy . -}}
{{/* append the ports for the main service */}}
{{- if .enabled -}}
{{- $_ := set .port "name" (default "http" .port.name) -}}
{{- $ports = mustAppend $ports .port -}}
{{- range $_ := .additionalPorts -}}
{{/* append the additonalPorts for the main service */}}
{{- $ports = mustAppend $ports . -}}
{{- end }}
{{- end }}
{{/* append the ports for each additional service */}}
{{- range $_ := .additionalServices }}
{{- if .enabled -}}
{{- $_ := set .port "name" (required "Missing port.name" .port.name) -}}
{{- $ports = mustAppend $ports .port -}}
{{- range $_ := .additionalPorts -}}
{{/* append the additonalPorts for each additional service */}}
{{- $ports = mustAppend $ports . -}}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
{{/* export/render the list of ports */}}
{{- if $ports -}}
ports:
{{- range $_ := $ports }}
- name: {{ .name }}
{{- if and .targetPort (kindIs "string" .targetPort) }}
{{- fail (printf "Our charts do not support named ports for targetPort. (port name %s, targetPort %s)" .name .targetPort) }}
{{- end }}
containerPort: {{ .targetPort | default .port }}
protocol: {{ .protocol | default "TCP" }}
{{- end -}}
{{- end -}}
{{- end -}}

View File

@@ -1,22 +0,0 @@
{{/*
Probes selection logic.
*/}}
{{- define "common.controller.probes" -}}
{{- $svcPort := .Values.service.port.name -}}
{{- range $probeName, $probe := .Values.probes }}
{{- if $probe.enabled -}}
{{- "" | nindent 0 }}
{{- $probeName }}Probe:
{{- if $probe.custom -}}
{{- $probe.spec | toYaml | nindent 2 }}
{{- else }}
{{- "tcpSocket:" | nindent 2 }}
{{- printf "port: %v" $svcPort | nindent 4 }}
{{- printf "initialDelaySeconds: %v" $probe.spec.initialDelaySeconds | nindent 2 }}
{{- printf "failureThreshold: %v" $probe.spec.failureThreshold | nindent 2 }}
{{- printf "timeoutSeconds: %v" $probe.spec.timeoutSeconds | nindent 2 }}
{{- printf "periodSeconds: %v" $probe.spec.periodSeconds | nindent 2 }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -1,31 +0,0 @@
{{/*
Volumes included by the controller.
*/}}
{{- define "common.controller.volumes" -}}
{{- range $index, $persistence := .Values.persistence }}
{{- if $persistence.enabled }}
- name: {{ $index }}
{{- if $persistence.existingClaim }}
{{- /* Always prefer an existingClaim if that is set */}}
persistentVolumeClaim:
claimName: {{ $persistence.existingClaim }}
{{- else -}}
{{- if $persistence.emptyDir -}}
{{- /* Always prefer an emptyDir next if that is set */}}
emptyDir: {}
{{- else -}}
{{- /* Otherwise refer to the PVC name */}}
persistentVolumeClaim:
{{- if $persistence.nameSuffix }}
claimName: {{ printf "%s-%s" (include "common.names.fullname" $) $persistence.nameSuffix }}
{{- else }}
claimName: {{ printf "%s-%s" (include "common.names.fullname" $) $index }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
{{- if .Values.additionalVolumes }}
{{- toYaml .Values.additionalVolumes | nindent 0 }}
{{- end }}
{{- end -}}

View File

@@ -1,449 +0,0 @@
# type: options are deployment, daemonset or statefulset
controllerType: deployment
# Set annotations on the deployment/statefulset/daemonset
controllerAnnotations: {}
# Set labels on the deployment/statefulset/daemonset
controllerLabels: {}
replicas: 1
strategy:
## For Deployments, valid values are Recreate and RollingUpdate
## For StatefulSets, valid values are OnDelete and RollingUpdate
## DaemonSets ignore this
type: RollingUpdate
# Override the default command
command: []
# Override the default args
args: []
nameOverride: ""
fullnameOverride: ""
# Set annotations on the pod
podAnnotations: {}
serviceAccount:
# Specifies whether a service account should be created
create: false
# 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: ""
env: {}
# 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:
# name: config-map-name
# - 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
dnsPolicy: ClusterFirst
# Optional DNS settings, configuring the ndots option may resolve
# nslookup issues on some Kubernetes setups.
# dnsConfig:
# options:
# - name: ndots
# value: "1"
# Enable/disable the generation of environment variables for services.
# See https://kubernetes.io/docs/concepts/services-networking/connect-applications-service/#accessing-the-service
# for more information.
enableServiceLinks: true
# Configure the Security Context for the Pod
podSecurityContext: {}
# Configure the Security Context for the main container
securityContext: {}
initContainers: []
additionalContainers: []
## Probes configuration
probes:
liveness:
enabled: true
## Set this to true if you wish to specify your own livenessProbe
custom: false
## 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: 0
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
readiness:
enabled: true
## Set this to true if you wish to specify your own readinessProbe
custom: false
## 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: 0
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
startup:
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: 0
timeoutSeconds: 1
## This means it has a maximum of 5*30=150 seconds to start up before it fails
periodSeconds: 5
failureThreshold: 30
service:
enabled: true
type: ClusterIP
## Specify the default port information
port:
port:
## name defaults to http
name:
protocol: TCP
## Specify a service targetPort if you wish to differ the service port from the application port.
## If targetPort is specified, this port number is used in the container definition instead of
## service.port.port. Therefore named ports are not supported for this field.
targetPort:
## Specify the nodePort value for the LoadBalancer and NodePort service types.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
##
# nodePort:
additionalPorts: []
## 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: {}
additionalServices: []
# - enabled: false
# nameSuffix: api
# type: ClusterIP
# # Specify the default port information
# port:
# port:
# # name defaults to http
# name:
# protocol: TCP
# # targetPort defaults to http
# targetPort:
# # nodePort:
# additionalPorts: []
# annotations: {}
# labels: {}
ingress:
enabled: false
annotations: {}
# 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"
# annotations: {}
# # kubernetes.io/ingress.class: nginx
# # kubernetes.io/tls-acme: "true"
# labels: {}
# hosts:
# - host: chart-example.local
# paths:
# - path: /api
# # Ignored if not kubeVersion >= 1.14-0
# pathType: Prefix
# tls: []
# # - secretName: chart-example-tls
# # hosts:
# # - chart-example.local
persistence:
config:
enabled: false
mountPath: /config
## configuration data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# storageClass: "-"
##
## If you want to reuse an existing claim, you can pass the name of the PVC using
## the existingClaim variable
# existingClaim: your-claim
# subPath: some-subpath
accessMode: ReadWriteOnce
size: 1Gi
## Set to true to retain the PVC upon helm uninstall
skipuninstall: false
# Create an emptyDir volume to share between all containers
shared:
enabled: false
emptyDir: true
mountPath: /shared
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: {}
tolerations: []
hostAliases: []
# Use hostAliases to add custom entries to /etc/hosts - mapping IP addresses to hostnames.
# ref: https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
# - ip: "192.168.1.100"
# hostnames:
# - "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
vpn:
enabled: false
# VPN type: options are openvpn or wireguard
type: openvpn
# OpenVPN specific configuration
openvpn:
image:
repository: dperson/openvpn-client
pullPolicy: IfNotPresent
tag: latest
# Credentials to connect to the VPN Service (used with -a)
auth: # "user;password"
# OR specify an existing secret that contains the credentials. Credentials should be stored
# under the VPN_AUTH key
authSecret: # my-vpn-secret
# WireGuard specific configuration
wireguard:
image:
repository: k8sathome/wireguard
pullPolicy: IfNotPresent
tag: 1.0.20200827
# Set the VPN container securityContext
securityContext:
capabilities:
add:
- NET_ADMIN
- SYS_MODULE
# All variables specified here will be added to the vpn sidecar container
# See the documentation of the VPN image for all config values
env: {}
# TZ: UTC
# Provide a customized vpn configuration file to be used by the VPN.
configFile: # |-
# Some Example Config
# remote greatvpnhost.com 8888
# auth-user-pass
# Cipher AES
# Provide custom up/down scripts that can be used by the vpnConf
scripts:
up: # |-
# #!/bin/bash
# echo "connected" > /shared/vpnstatus
down: # |-
# #!/bin/bash
# echo "disconnected" > /shared/vpnstatus
additionalVolumeMounts: []
# Optionally specify a livenessProbe, e.g. to check if the connection is still
# being protected by the VPN
livenessProbe: {}
# exec:
# command:
# - sh
# - -c
# - if [ $(curl -s https://ipinfo.io/country) == 'US' ]; then exit 0; else exit $?; fi
# initialDelaySeconds: 30
# periodSeconds: 60
# failureThreshold: 1
# If set to true, will deploy a network policy that blocks all outbound
# traffic except traffic specified as allowed
networkPolicy:
enabled: false
# The egress configuration for your network policy, All outbound traffic
# From the pod will be blocked unless specified here. Your cluster must
# have a CNI that supports network policies (Canal, Calico, etc...)
# https://kubernetes.io/docs/concepts/services-networking/network-policies/
# https://github.com/ahmetb/kubernetes-network-policy-recipes
egress:
# - to:
# - ipBlock:
# cidr: 0.0.0.0/0
# ports:
# - port: 53
# protocol: UDP
# - port: 53
# protocol: TCP
# Enable running a code-server container in the pod to access files
codeserver:
enabled: false
image:
repository: codercom/code-server
pullPolicy: IfNotPresent
tag: 3.7.4
# Set any environment variables for code-server here
env: {}
# TZ: UTC
# Set codeserver command line arguments
# consider setting --user-data-dir to a persistent location to preserve code-server setting changes
args:
- --auth
- none
# - --user-data-dir
# - "/config/.vscode"
# Specify a list of volumes that get mounted in the code-server container.
# At least 1 volumeMount is required!
volumeMounts: []
# - name: config
# mountPath: /data/config
# Specify the working dir that will be opened when code-server starts
# If not given, the app will default to the mountpah of the first specified volumeMount
workingDir: ""
service:
enabled: true
type: ClusterIP
# Specify the default port information
port:
port: 12321
name: codeserver
protocol: TCP
targetPort: codeserver
## 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: {}
ingress:
enabled: false
nameSuffix: codeserver
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
labels: {}
hosts:
- host: code.chart-example.local
paths:
- path: /
# Ignored if not kubeVersion >= 1.14-0
pathType: Prefix
tls: []
# - secretName: chart-example-tls
# hosts:
# - code.chart-example.local
securityContext:
runAsUser: 0

View File

@@ -2,7 +2,7 @@ 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: 3.0.1
version: 3.2.0
kubeVersion: ">=1.16.0-0"
keywords:
- ddclient
@@ -17,5 +17,5 @@ maintainers:
email: jeff@billimek.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
repository: https://library-charts.k8s-at-home.com
version: 1.0.0

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