Compare commits
68 Commits
neolink-2.
...
readarr-3.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e853c19868 | ||
|
|
3767232a34 | ||
|
|
13d028db2f | ||
|
|
57477f7f45 | ||
|
|
93502f1946 | ||
|
|
02471a1b11 | ||
|
|
0d2abb800f | ||
|
|
a227188fae | ||
|
|
8f284df2f5 | ||
|
|
47f4ce2ffe | ||
|
|
1726590f14 | ||
|
|
56a328e8cb | ||
|
|
dfd04a3e67 | ||
|
|
841275dcef | ||
|
|
0302182b3c | ||
|
|
da42d2b8d6 | ||
|
|
a0c91706e2 | ||
|
|
0b95691902 | ||
|
|
e3a7855ce0 | ||
|
|
164459390b | ||
|
|
8c7886aca6 | ||
|
|
64b0f9e85c | ||
|
|
1f6a7848f7 | ||
|
|
9992a5d4cc | ||
|
|
5714a48d9b | ||
|
|
7c477c4a0e | ||
|
|
8def5650cd | ||
|
|
c98cae2e31 | ||
|
|
02bb8528b6 | ||
|
|
6c91d1ab33 | ||
|
|
f3fabbc093 | ||
|
|
6822478f7c | ||
|
|
ee59e9ada2 | ||
|
|
00d17bb5cc | ||
|
|
2c9806a2fd | ||
|
|
dde260bef5 | ||
|
|
91aef6139f | ||
|
|
01983ee081 | ||
|
|
09c6416bff | ||
|
|
6683b9b293 | ||
|
|
91c8466022 | ||
|
|
d8f9e8ce85 | ||
|
|
8ec4a9ab93 | ||
|
|
12df5053ab | ||
|
|
3a78db20ad | ||
|
|
1eaf501196 | ||
|
|
1a64e26400 | ||
|
|
461b727e3f | ||
|
|
8f35b43d38 | ||
|
|
134eaddf9a | ||
|
|
2b32f7ee83 | ||
|
|
dfceb6b41d | ||
|
|
f5aa0cb525 | ||
|
|
367853d6a6 | ||
|
|
5a17a2c1ec | ||
|
|
a69bef244c | ||
|
|
841b72482e | ||
|
|
8d34db1ead | ||
|
|
00ea6e06c3 | ||
|
|
f49a054d38 | ||
|
|
bb2432755e | ||
|
|
04da77a004 | ||
|
|
1335a5687e | ||
|
|
5f5b815cca | ||
|
|
e8734bef7c | ||
|
|
53f9166783 | ||
|
|
6c6bc95452 | ||
|
|
f81faa9219 |
@@ -76,6 +76,87 @@
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "brujoand",
|
||||
"name": "Anders Brujordet",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/124421?v=4",
|
||||
"profile": "https://github.com/brujoand",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "Diaoul",
|
||||
"name": "Antoine Bertin",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/319220?v=4",
|
||||
"profile": "https://github.com/Diaoul",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "onedr0p",
|
||||
"name": "ᗪєνιη ᗷυнʟ",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/213795?v=4",
|
||||
"profile": "https://github.com/onedr0p",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "Ardetus",
|
||||
"name": "Ardetus",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/2253935?v=4",
|
||||
"profile": "https://github.com/Ardetus",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "dynamicat",
|
||||
"name": "Chris Golden",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/12977282?v=4",
|
||||
"profile": "https://github.com/dynamicat",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "psychopenguin",
|
||||
"name": "Fabio Brito d'Araujo e Oliveira",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/1420115?v=4",
|
||||
"profile": "https://github.com/psychopenguin",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "allenporter",
|
||||
"name": "Allen Porter",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/6026418?v=4",
|
||||
"profile": "https://github.com/allenporter",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "rasmustwh",
|
||||
"name": "Rasmus Hermansen",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/2485005?v=4",
|
||||
"profile": "https://github.com/rasmustwh",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "FlipEnergy",
|
||||
"name": "Dennis Zhang",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/7714381?v=4",
|
||||
"profile": "http://pleasenoddos.com",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 7,
|
||||
|
||||
1
.github/ct-install.yaml
vendored
1
.github/ct-install.yaml
vendored
@@ -8,6 +8,7 @@ excluded-charts:
|
||||
- charts/stable/alertmanager-bot
|
||||
- charts/stable/dnsmadeeasy-webhook
|
||||
- charts/stable/ser2sock
|
||||
- charts/stable/zalando-postgres-cluster
|
||||
- charts/stable/zigbee2mqtt
|
||||
chart-repos:
|
||||
- bitnami=https://charts.bitnami.com/bitnami
|
||||
|
||||
3
.github/renovate.json5
vendored
3
.github/renovate.json5
vendored
@@ -29,7 +29,8 @@
|
||||
"updateTypes": ["major"],
|
||||
"bumpVersion": "major",
|
||||
"labels": ["dependency/major"],
|
||||
"packageNames": ["common"]
|
||||
"packageNames": ["common"],
|
||||
"groupName": ["internal major dep"]
|
||||
},
|
||||
{
|
||||
"updateTypes": ["minor"],
|
||||
|
||||
48
.github/workflows/charts-helm-docs.yaml
vendored
48
.github/workflows/charts-helm-docs.yaml
vendored
@@ -1,48 +0,0 @@
|
||||
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
|
||||
52
.github/workflows/charts-helm-docs.yaml.disabled
vendored
Normal file
52
.github/workflows/charts-helm-docs.yaml.disabled
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
#
|
||||
# Disabled until we fix the chart releaser
|
||||
#
|
||||
|
||||
# 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
|
||||
65
.github/workflows/charts-lint-test.yaml
vendored
65
.github/workflows/charts-lint-test.yaml
vendored
@@ -82,14 +82,13 @@ jobs:
|
||||
echo "::set-output name=detected::true"
|
||||
fi
|
||||
|
||||
lint:
|
||||
check_version:
|
||||
needs:
|
||||
- changes-lint
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
||||
&&
|
||||
!contains(github.event.head_commit.message, '[ci-skip]') &&
|
||||
needs.changes-lint.outputs.detected == 'true'
|
||||
name: Lint charts
|
||||
name: Check chart version numbers
|
||||
strategy:
|
||||
matrix: ${{ fromJson(needs.changes-lint.outputs.matrix) }}
|
||||
fail-fast: true
|
||||
@@ -101,11 +100,6 @@ jobs:
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Install Helm
|
||||
uses: azure/setup-helm@v1
|
||||
with:
|
||||
version: v3.5.3
|
||||
|
||||
- name: Get version
|
||||
id: version-get
|
||||
run: |
|
||||
@@ -129,24 +123,58 @@ jobs:
|
||||
case $TYPE in
|
||||
stable)
|
||||
if [[ ${{ steps.version-parse.outputs.major }} -lt 1 ]]; then
|
||||
echo "Chart version for \"$TYPE\" charts must be >= 1.0.0"
|
||||
echo "::error file=${{ matrix.chart }}::Chart version for \"$TYPE\" charts must be >= 1.0.0"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
incubator)
|
||||
if [[ ${{ steps.version-parse.outputs.major }} -gt 0 ]]; then
|
||||
echo "Chart version for \"$TYPE\" charts must be < 1.0.0"
|
||||
echo "::error file=${{ matrix.chart }}::Chart version for \"$TYPE\" charts must be < 1.0.0"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unhandled chart type: $TYPE"
|
||||
echo "::error file=${{ matrix.chart }}::Unhandled chart type: $TYPE"
|
||||
exit 1
|
||||
esac
|
||||
fi
|
||||
|
||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
||||
check_version_success:
|
||||
needs:
|
||||
- changes-lint
|
||||
- check_version
|
||||
if: ${{ always() }}
|
||||
name: Version check successful
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Check Version matrix status
|
||||
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') && needs.changes-lint.outputs.detected == 'true' && needs.check_version.result != 'success' }}
|
||||
run: |
|
||||
exit 1
|
||||
|
||||
lint:
|
||||
needs:
|
||||
- changes-lint
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
||||
&&
|
||||
needs.changes-lint.outputs.detected == 'true'
|
||||
name: Lint charts
|
||||
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
|
||||
@@ -156,18 +184,19 @@ jobs:
|
||||
|
||||
- name: Run chart-testing (lint)
|
||||
id: lint
|
||||
run: ct lint --config .github/ct-lint.yaml --charts ${{ matrix.chart }}
|
||||
run: ct lint --config .github/ct-lint.yaml
|
||||
|
||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
||||
lint_success:
|
||||
needs:
|
||||
- changes-lint
|
||||
- lint
|
||||
if: ${{ always() }}
|
||||
name: Lint successful
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Check lint matrix status
|
||||
if: ${{ needs.lint.result != 'success' }}
|
||||
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') && needs.changes-lint.outputs.detected == 'true' && needs.lint.result != 'success' }}
|
||||
run: exit 1
|
||||
|
||||
unittest:
|
||||
@@ -209,6 +238,7 @@ jobs:
|
||||
install:
|
||||
needs:
|
||||
- changes-install
|
||||
- check_version_success
|
||||
- lint_success
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
||||
@@ -243,17 +273,22 @@ jobs:
|
||||
with:
|
||||
version: v1.19
|
||||
|
||||
- name: Remove node taints
|
||||
run: |
|
||||
kubectl taint --all=true nodes node.cloudprovider.kubernetes.io/uninitialized- || true
|
||||
|
||||
- name: Run chart-testing (install)
|
||||
run: ct install --config .github/ct-install.yaml --charts ${{ matrix.chart }}
|
||||
|
||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
||||
install_success:
|
||||
needs:
|
||||
- changes-install
|
||||
- install
|
||||
if: ${{ always() }}
|
||||
name: Install successful
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Check install matrix status
|
||||
if: ${{ needs.install.result != 'success' }}
|
||||
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') && needs.changes-install.outputs.detected == 'true' && needs.install.result != 'success' }}
|
||||
run: exit 1
|
||||
|
||||
@@ -7,18 +7,18 @@ tasks:
|
||||
desc: create new chart
|
||||
cmds:
|
||||
- git checkout -b add-chart-{{.CHART}}
|
||||
- cp -r {{.GIT_ROOT}}/templates/chart {{.GIT_ROOT}}/charts/{{.CHART}}
|
||||
- ./.bin/go-replace -s '${CHARTNAME}' -r "{{.CHART}}" --path={{.GIT_ROOT}}/charts/{{.CHART}} --path-pattern='*.*'
|
||||
- cp -r {{.GIT_ROOT}}/templates/chart "{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}"
|
||||
- ./.bin/go-replace -s '${CHARTNAME}' -r "{{.CHART}}" --path="{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}" --path-pattern='*.*'
|
||||
- task: dependency
|
||||
- echo "Congratulations, charts/{{.CHART}} successfully generated, you can now edit chart informations ( Chart.yaml and values.yaml )"
|
||||
- echo "Congratulations, charts/{{.CHART_TYPE}}/{{.CHART}} successfully generated, you can now edit chart informations ( Chart.yaml and values.yaml )"
|
||||
status:
|
||||
- test -d {{.GIT_ROOT}}/charts/{{.CHART}}
|
||||
- test -d "{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}"
|
||||
deps:
|
||||
- check-chart
|
||||
silent: true
|
||||
|
||||
dependency:
|
||||
dir: "{{.GIT_ROOT}}/charts/{{.CHART}}"
|
||||
dir: "{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}"
|
||||
cmds:
|
||||
- test -d Chart.lock && rm Chart.lock || exit 0
|
||||
- test -d tmpcharts && rm -rf tmpcharts || exit 0
|
||||
@@ -27,7 +27,7 @@ tasks:
|
||||
|
||||
lint:
|
||||
desc: lint your chart code
|
||||
dir: "{{.GIT_ROOT}}/charts/{{.CHART}}"
|
||||
dir: "{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}"
|
||||
cmds:
|
||||
- helm lint
|
||||
deps:
|
||||
@@ -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-lint.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_TYPE}}/{{.CHART}}" --config /ci/.github/ct-lint.yaml
|
||||
deps:
|
||||
- check-chart
|
||||
- lint
|
||||
@@ -46,12 +46,13 @@ tasks:
|
||||
desc: generate helm-docs
|
||||
dir: "{{.GIT_ROOT}}/hack"
|
||||
cmds:
|
||||
- ./gen-helm-docs.sh "{{.CHART}}"
|
||||
- ./gen-helm-docs.sh "{{.CHART_TYPE}}" "{{.CHART}}"
|
||||
deps:
|
||||
- check-chart
|
||||
|
||||
# Checks Parameters
|
||||
check-chart:
|
||||
cmds:
|
||||
- test ! -z "{{.CHART_TYPE}}" || (echo "Please define CHART_TYPE parameter"; exit 1)
|
||||
- test ! -z "{{.CHART}}" || (echo "Please define CHART parameter"; exit 1)
|
||||
silent: true
|
||||
|
||||
17
README.md
17
README.md
@@ -1,9 +1,9 @@
|
||||
# Helm charts
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
[](#contributors-)
|
||||
[](#contributors-)
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
|
||||
[](https://github.com/pre-commit/pre-commit)
|
||||
[](https://docs.k8s-at-home.com/)
|
||||
[](https://discord.gg/sTMX7Vh)
|
||||
[](https://github.com/pre-commit/pre-commit)
|
||||
[](https://github.com/renovatebot/renovate)
|
||||
@@ -57,6 +57,17 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="http://aaronjohnson.io"><img src="https://avatars.githubusercontent.com/u/1386238?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Aaron Johnson</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=acjohnson" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/brujoand"><img src="https://avatars.githubusercontent.com/u/124421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Anders Brujordet</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=brujoand" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/Diaoul"><img src="https://avatars.githubusercontent.com/u/319220?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Antoine Bertin</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=Diaoul" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/onedr0p"><img src="https://avatars.githubusercontent.com/u/213795?v=4?s=100" width="100px;" alt=""/><br /><sub><b>ᗪєνιη ᗷυнʟ</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=onedr0p" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/Ardetus"><img src="https://avatars.githubusercontent.com/u/2253935?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ardetus</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=Ardetus" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/dynamicat"><img src="https://avatars.githubusercontent.com/u/12977282?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Golden</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=dynamicat" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/psychopenguin"><img src="https://avatars.githubusercontent.com/u/1420115?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Fabio Brito d'Araujo e Oliveira</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=psychopenguin" title="Code">💻</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/allenporter"><img src="https://avatars.githubusercontent.com/u/6026418?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allen Porter</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=allenporter" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/rasmustwh"><img src="https://avatars.githubusercontent.com/u/2485005?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Rasmus Hermansen</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=rasmustwh" title="Code">💻</a></td>
|
||||
<td align="center"><a href="http://pleasenoddos.com"><img src="https://avatars.githubusercontent.com/u/7714381?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dennis Zhang</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=FlipEnergy" title="Code">💻</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -65,4 +76,4 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
||||
|
||||
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
||||
|
||||
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
|
||||
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
|
||||
|
||||
@@ -22,3 +22,5 @@
|
||||
.vscode/
|
||||
# OWNERS file for Kubernetes
|
||||
OWNERS
|
||||
# helm-docs templates
|
||||
*.gotmpl
|
||||
|
||||
@@ -1,15 +1,21 @@
|
||||
apiVersion: v2
|
||||
appVersion: v0.102.0
|
||||
appVersion: v0.105.2
|
||||
description: DNS proxy as ad-blocker for local network
|
||||
name: adguard-home
|
||||
version: 2.2.2
|
||||
version: 3.1.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- adguard-home
|
||||
- adguard
|
||||
- dns
|
||||
- adguard-home
|
||||
- adblock
|
||||
- dns
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/adguard-home
|
||||
icon: https://avatars3.githubusercontent.com/u/8361145?s=200&v=4?sanitize=true
|
||||
sources:
|
||||
- https://github.com/AdguardTeam/AdGuardHome
|
||||
- https://github.com/AdguardTeam/AdGuardHome
|
||||
maintainers:
|
||||
- name: billimek
|
||||
- name: billimek
|
||||
email: jeff@billimek.com
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# adguard-home
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
DNS proxy as ad-blocker for local network
|
||||
|
||||
@@ -12,10 +12,13 @@ DNS proxy as ad-blocker for local network
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -68,169 +71,39 @@ N/A
|
||||
|
||||
## 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
| 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 | `""` | |
|
||||
| args[0] | string | `"--config"` | |
|
||||
| args[1] | string | `"/opt/adguardhome/conf/AdGuardHome.yaml"` | |
|
||||
| args[2] | string | `"--no-check-update"` | |
|
||||
| config | string | `"bind_host: 0.0.0.0\nbind_port: 3000\nbeta_bind_port: 0\nusers: []\nhttp_proxy: \"\"\nlanguage: en\nrlimit_nofile: 0\ndebug_pprof: false\nweb_session_ttl: 720\ndns:\n bind_host: 0.0.0.0\n port: 53\n statistics_interval: 1\n querylog_enabled: true\n querylog_file_enabled: true\n querylog_interval: 90\n querylog_size_memory: 1000\n anonymize_client_ip: false\n protection_enabled: true\n blocking_mode: default\n blocking_ipv4: \"\"\n blocking_ipv6: \"\"\n blocked_response_ttl: 10\n parental_block_host: family-block.dns.adguard.com\n safebrowsing_block_host: standard-block.dns.adguard.com\n ratelimit: 0\n ratelimit_whitelist: []\n refuse_any: true\n upstream_dns:\n - https://dns10.quad9.net/dns-query\n upstream_dns_file: \"\"\n bootstrap_dns:\n - 9.9.9.10\n - 149.112.112.10\n - 2620:fe::10\n - 2620:fe::fe:10\n all_servers: false\n fastest_addr: false\n allowed_clients: []\n disallowed_clients: []\n blocked_hosts: []\n cache_size: 4194304\n cache_ttl_min: 0\n cache_ttl_max: 0\n bogus_nxdomain: []\n aaaa_disabled: false\n enable_dnssec: false\n edns_client_subnet: false\n max_goroutines: 300\n ipset: []\n filtering_enabled: true\n filters_update_interval: 24\n parental_enabled: false\n safesearch_enabled: false\n safebrowsing_enabled: false\n safebrowsing_cache_size: 1048576\n safesearch_cache_size: 1048576\n parental_cache_size: 1048576\n cache_time: 30\n rewrites: []\n blocked_services: []\n customresolver: null\ntls:\n enabled: false\n server_name: \"\"\n force_https: false\n port_https: 443\n port_dns_over_tls: 853\n port_dns_over_quic: 784\n port_dnscrypt: 0\n dnscrypt_config_file: \"\"\n allow_unencrypted_doh: false\n strict_sni_check: false\n certificate_chain: \"\"\n private_key: \"\"\n certificate_path: \"\"\n private_key_path: \"\"\nfilters:\n- enabled: true\n url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt\n name: AdGuard DNS filter\n id: 1\n- enabled: false\n url: https://adaway.org/hosts.txt\n name: AdAway\n id: 2\n- enabled: false\n url: https://www.malwaredomainlist.com/hostslist/hosts.txt\n name: MalwareDomainList.com Hosts List\n id: 4\nwhitelist_filters: []\nuser_rules: []\ndhcp:\n enabled: false\n interface_name: \"\"\n dhcpv4:\n gateway_ip: \"\"\n subnet_mask: \"\"\n range_start: \"\"\n range_end: \"\"\n lease_duration: 86400\n icmp_timeout_msec: 1000\n options: []\n dhcpv6:\n range_start: \"\"\n lease_duration: 86400\n ra_slaac_only: false\n ra_allow_slaac: false\nclients: []\nlog_compress: false\nlog_localtime: false\nlog_max_backups: 0\nlog_max_size: 100\nlog_max_age: 3\nlog_file: \"\"\nverbose: false\nschema_version: 7\n"` | |
|
||||
| env | object | `{}` | |
|
||||
| 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 | `{}` | |
|
||||
| image.tag | string | `"v0.105.2"` | |
|
||||
| initContainers[0].command[0] | string | `"sh"` | |
|
||||
| initContainers[0].command[1] | string | `"-c"` | |
|
||||
| initContainers[0].command[2] | string | `"if [ ! -f /opt/adguardhome/conf/AdGuardHome.yaml ]; then\n mkdir -p /opt/adguardhome/conf\n cp /tmp/AdGuardHome.yaml /opt/adguardhome/conf/AdGuardHome.yaml\nfi\n"` | |
|
||||
| initContainers[0].image | string | `"busybox"` | |
|
||||
| initContainers[0].name | string | `"copy-configmap"` | |
|
||||
| initContainers[0].securityContext.runAsUser | int | `0` | |
|
||||
| initContainers[0].volumeMounts[0].mountPath | string | `"/tmp/AdGuardHome.yaml"` | |
|
||||
| initContainers[0].volumeMounts[0].name | string | `"adguard-home-config"` | |
|
||||
| initContainers[0].volumeMounts[0].subPath | string | `"AdGuardHome.yaml"` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.config.mountPath | string | `"/opt/adguardhome/conf"` | |
|
||||
| persistence.data.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.data.enabled | bool | `false` | |
|
||||
| persistence.data.mountPath | string | `"/opt/adguardhome/work"` | |
|
||||
| prometheus.serviceMonitor.additionalLabels | object | `{}` | |
|
||||
| prometheus.serviceMonitor.enabled | bool | `false` | |
|
||||
| prometheus.serviceMonitor.interval | string | `"30s"` | |
|
||||
| replicas | int | `1` | (int) Number of pods to load balance between |
|
||||
| service.port.port | int | `3000` | |
|
||||
| strategy.type | string | `"Recreate"` | |
|
||||
|
||||
## Changelog
|
||||
|
||||
@@ -238,7 +111,7 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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]
|
||||
### [3.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
@@ -246,13 +119,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
|
||||
#### Changed
|
||||
|
||||
- Use helm-docs
|
||||
- **BREAKING** Migrate Adguard Home to the common library, a lot of configuration has changed.
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
|
||||
[2.2.1]: #2.2.1
|
||||
[3.0.0]: #3.0.0
|
||||
|
||||
## Support
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
|
||||
{{- 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
{{ template "chart.valuesTable" . }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -9,7 +9,7 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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]
|
||||
### [3.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
@@ -17,11 +17,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
|
||||
#### Changed
|
||||
|
||||
- Use helm-docs
|
||||
- **BREAKING** Migrate Adguard Home to the common library, a lot of configuration has changed.
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
|
||||
[2.2.1]: #2.2.1
|
||||
[3.0.0]: #3.0.0
|
||||
{{- end -}}
|
||||
|
||||
11
charts/stable/adguard-home/ci/ct-values.yaml
Normal file
11
charts/stable/adguard-home/ci/ct-values.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
emptyDir:
|
||||
enabled: true
|
||||
mountPath: /opt/adguardhome/conf
|
||||
data:
|
||||
enabled: true
|
||||
emptyDir:
|
||||
enabled: true
|
||||
mountPath: /opt/adguardhome/work
|
||||
@@ -1,15 +1 @@
|
||||
1. Get the application URL by running these commands:
|
||||
{{- if contains "NodePort" .Values.serviceUDP.type }}
|
||||
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "adguard-home.fullname" . }})
|
||||
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||
echo http://$NODE_IP:$NODE_PORT
|
||||
{{- else if contains "LoadBalancer" .Values.serviceUDP.type }}
|
||||
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
|
||||
You can watch the status of by running 'kubectl get svc -w {{ include "adguard-home.fullname" . }}'
|
||||
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "adguard-home.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
|
||||
echo http://$SERVICE_IP:{{ .Values.serviceUDP.port }}
|
||||
{{- else if contains "ClusterIP" .Values.serviceUDP.type }}
|
||||
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "adguard-home.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
|
||||
echo "Visit http://127.0.0.1:8080 to use your application"
|
||||
kubectl port-forward $POD_NAME 8080:3000
|
||||
{{- end }}
|
||||
{{- include "common.notes.defaultNotes" . -}}
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "adguard-home.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "adguard-home.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "adguard-home.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
31
charts/stable/adguard-home/templates/common.yaml
Normal file
31
charts/stable/adguard-home/templates/common.yaml
Normal file
@@ -0,0 +1,31 @@
|
||||
{{/* Make sure all variables are set properly */}}
|
||||
{{- include "common.values.setup" . }}
|
||||
|
||||
{{/* Append the configMap to the additionalVolumes */}}
|
||||
{{- define "adguard-home.configmap.volume" -}}
|
||||
name: adguard-home-config
|
||||
configMap:
|
||||
name: {{ template "common.names.fullname" . }}-config
|
||||
{{- end -}}
|
||||
|
||||
{{- $volume := include "adguard-home.configmap.volume" . | fromYaml -}}
|
||||
{{- if $volume -}}
|
||||
{{- $additionalVolumes := append .Values.additionalVolumes $volume }}
|
||||
{{- $_ := set .Values "additionalVolumes" (deepCopy $additionalVolumes) -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Append the configMap volume to the additionalVolumeMounts */}}
|
||||
{{- define "adguard-home.configmap.volumeMount" -}}
|
||||
name: adguard-home-config
|
||||
mountPath: /tmp/AdGuardHome.yaml
|
||||
subPath: AdGuardHome.yaml
|
||||
{{- end -}}
|
||||
|
||||
{{- $volumeMount := include "adguard-home.configmap.volumeMount" . | fromYaml -}}
|
||||
{{- if $volumeMount -}}
|
||||
{{- $additionalVolumeMounts := append .Values.additionalVolumeMounts $volumeMount }}
|
||||
{{- $_ := set .Values "additionalVolumeMounts" (deepCopy $additionalVolumeMounts) -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "common.all" . }}
|
||||
@@ -1,29 +0,0 @@
|
||||
|
||||
{{- if and .Values.persistence.config.enabled (not .Values.persistence.config.existingClaim) }}
|
||||
kind: PersistentVolumeClaim
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: {{ template "adguard-home.fullname" . }}-config
|
||||
{{- if .Values.persistence.config.skipuninstall }}
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
{{- end }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .Values.persistence.config.accessMode | quote }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.config.size | quote }}
|
||||
{{- if .Values.persistence.config.storageClass }}
|
||||
{{- if (eq "-" .Values.persistence.config.storageClass) }}
|
||||
storageClassName: ""
|
||||
{{- else }}
|
||||
storageClassName: "{{ .Values.persistence.config.storageClass }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
@@ -1,14 +1,9 @@
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
kind: ConfigMap
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}
|
||||
name: {{ template "common.names.fullname" . }}-config
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
data:
|
||||
AdGuardHome.yaml: |
|
||||
{{- toYaml .Values.configAsCode.config | nindent 4 }}
|
||||
{{- end }}
|
||||
{{ .Values.config | indent 4 }}
|
||||
|
||||
@@ -1,196 +0,0 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
type: {{ .Values.strategyType }}
|
||||
revisionHistoryLimit: 3
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
annotations:
|
||||
{{- with .Values.podAnnotations }}
|
||||
{{ toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
{{- if or .Values.configAsCode.enabled .Values.securityContext.runAsUser }}
|
||||
initContainers:
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
- name: "config"
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
image: "{{ .Values.configAsCode.image.repository }}:{{ .Values.configAsCode.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.configAsCode.image.pullPolicy }}
|
||||
command: ["sh", "-c", "cat /configmap/AdGuardHome.yaml > /opt/adguardhome/conf/AdGuardHome.yaml"]
|
||||
resources: {{- toYaml .Values.configAsCode.resources | nindent 12 }}
|
||||
volumeMounts:
|
||||
- name: configmap
|
||||
mountPath: /configmap
|
||||
- name: config
|
||||
mountPath: /opt/adguardhome/conf
|
||||
readOnly: false
|
||||
{{- end }}
|
||||
{{- if .Values.securityContext.runAsUser }}
|
||||
- name: "volume-permissions"
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
image: "{{ .Values.volumePermissions.image.repository }}:{{ .Values.volumePermissions.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.volumePermissions.image.pullPolicy }}
|
||||
command: ["/bin/chown", "-R", "{{ .Values.securityContext.runAsUser }}:", "/opt/adguardhome/work", "/opt/adguardhome/conf"]
|
||||
resources: {{- toYaml .Values.volumePermissions.resources | nindent 12 }}
|
||||
volumeMounts:
|
||||
- name: work
|
||||
mountPath: /opt/adguardhome/work
|
||||
readOnly: false
|
||||
- name: config
|
||||
mountPath: /opt/adguardhome/conf
|
||||
readOnly: false
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
image: "{{ .Values.image.repository }}:{{ default .Chart.AppVersion .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
env:
|
||||
{{- if .Values.timezone }}
|
||||
- name: TZ
|
||||
value: {{ .Values.timezone | quote }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: work
|
||||
mountPath: /opt/adguardhome/work
|
||||
readOnly: false
|
||||
- name: config
|
||||
mountPath: /opt/adguardhome/conf
|
||||
readOnly: false
|
||||
{{- if .Values.tlsSecretName }}
|
||||
- name: certs
|
||||
mountPath: /certs
|
||||
readOnly: false
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
containerPort: {{ .Values.configAsCode.config.bind_port | default 3000 }}
|
||||
{{- else }}
|
||||
containerPort: 3000
|
||||
{{- end }}
|
||||
- name: dns
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
containerPort: {{ .Values.configAsCode.config.dns.port | default 53 }}
|
||||
{{- else }}
|
||||
containerPort: 53
|
||||
{{- end }}
|
||||
protocol: TCP
|
||||
- name: dns-udp
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
containerPort: {{ .Values.configAsCode.config.dns.port | default 53 }}
|
||||
{{- else }}
|
||||
containerPort: 53
|
||||
{{- end }}
|
||||
protocol: UDP
|
||||
{{- if .Values.serviceDHCP.enabled }}
|
||||
- name: dhcp-server-udp
|
||||
containerPort: 67
|
||||
protocol: UDP
|
||||
- name: dhcp-client-tcp
|
||||
containerPort: 68
|
||||
protocol: TCP
|
||||
- name: dhcp-client-udp
|
||||
containerPort: 68
|
||||
protocol: UDP
|
||||
{{- end }}
|
||||
{{- if .Values.serviceDNSOverTLS.enabled }}
|
||||
- name: dns-over-tls
|
||||
containerPort: 853
|
||||
protocol: TCP
|
||||
{{- end }}
|
||||
{{- if .Values.probes.liveness.enabled }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /login.html
|
||||
port: http
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: {{ .Values.probes.liveness.initialDelaySeconds }}
|
||||
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
|
||||
periodSeconds: {{ .Values.probes.liveness.periodSeconds }}
|
||||
{{- end }}
|
||||
{{- if .Values.probes.readiness.enabled }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /login.html
|
||||
port: http
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: {{ .Values.probes.readiness.initialDelaySeconds }}
|
||||
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
|
||||
periodSeconds: {{ .Values.probes.readiness.periodSeconds }}
|
||||
{{- end }}
|
||||
{{- if .Values.probes.startup.enabled }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /login.html
|
||||
port: http
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: {{ .Values.probes.startup.initialDelaySeconds }}
|
||||
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
|
||||
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
|
||||
{{- end }}
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
volumes:
|
||||
{{- if .Values.tlsSecretName }}
|
||||
- name: certs
|
||||
secret:
|
||||
secretName: {{ .Values.tlsSecretName }}
|
||||
{{- end }}
|
||||
{{- if .Values.configAsCode.enabled }}
|
||||
- name: configmap
|
||||
configMap:
|
||||
name: {{ include "adguard-home.fullname" . }}
|
||||
{{- end }}
|
||||
- name: config
|
||||
{{- if .Values.persistence.config.enabled }}
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ if .Values.persistence.config.existingClaim }}{{ .Values.persistence.config.existingClaim }}{{- else }}{{ template "adguard-home.fullname" . }}-config{{- end }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
- name: work
|
||||
{{- if .Values.persistence.work.enabled }}
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ if .Values.persistence.work.existingClaim }}{{ .Values.persistence.work.existingClaim }}{{- else }}{{ template "adguard-home.fullname" . }}-work{{- end }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
@@ -1,38 +0,0 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "adguard-home.fullname" . -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . | quote }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
backend:
|
||||
serviceName: {{ $fullName }}
|
||||
servicePort: http
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -1,45 +0,0 @@
|
||||
{{- if .Values.serviceDHCP.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}-dhcp
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.serviceDHCP.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.serviceDHCP.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.serviceDHCP.type }}
|
||||
{{- if .Values.serviceDHCP.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.serviceDHCP.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceDHCP.loadBalancerSourceRanges }}
|
||||
loadBalancerSourceRanges:
|
||||
{{ toYaml .Values.serviceDHCP.loadBalancerSourceRanges | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.serviceDHCP.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.serviceDHCP.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.serviceDHCP.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 67
|
||||
targetPort: dhcp-server-udp
|
||||
protocol: UDP
|
||||
name: dhcp-server-udp
|
||||
- port: 68
|
||||
targetPort: dhcp-client-tcp
|
||||
protocol: TCP
|
||||
name: dhcp-client-tcp
|
||||
- port: 68
|
||||
targetPort: dhcp-client-udp
|
||||
protocol: UDP
|
||||
name: dhcp-client-udp
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
@@ -1,37 +0,0 @@
|
||||
{{- if .Values.serviceDNSOverTLS.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}-dns-over-tls
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.serviceDNSOverTLS.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.serviceDNSOverTLS.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.serviceDNSOverTLS.type }}
|
||||
{{- if .Values.serviceDNSOverTLS.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.serviceDNSOverTLS.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceDNSOverTLS.loadBalancerSourceRanges }}
|
||||
loadBalancerSourceRanges:
|
||||
{{ toYaml .Values.serviceDNSOverTLS.loadBalancerSourceRanges | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.serviceDNSOverTLS.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.serviceDNSOverTLS.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.serviceDNSOverTLS.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 853
|
||||
targetPort: dns-over-tls
|
||||
protocol: TCP
|
||||
name: dns-over-tls
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
@@ -1,37 +0,0 @@
|
||||
{{- if .Values.serviceTCP.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}-tcp
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.serviceTCP.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.serviceTCP.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.serviceTCP.type }}
|
||||
{{- if .Values.serviceTCP.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.serviceTCP.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceTCP.loadBalancerSourceRanges }}
|
||||
loadBalancerSourceRanges:
|
||||
{{ toYaml .Values.serviceTCP.loadBalancerSourceRanges | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.serviceTCP.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.serviceTCP.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.serviceTCP.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 53
|
||||
targetPort: dns
|
||||
protocol: TCP
|
||||
name: dns
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
@@ -1,37 +0,0 @@
|
||||
{{- if .Values.serviceUDP.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}-udp
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.serviceUDP.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.serviceUDP.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.serviceUDP.type }}
|
||||
{{- if .Values.serviceUDP.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.serviceUDP.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceUDP.loadBalancerSourceRanges }}
|
||||
loadBalancerSourceRanges:
|
||||
{{ toYaml .Values.serviceUDP.loadBalancerSourceRanges | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.serviceUDP.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.serviceUDP.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.serviceUDP.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 53
|
||||
targetPort: dns-udp
|
||||
protocol: UDP
|
||||
name: dns-udp
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
@@ -1,35 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
{{- if .Values.service.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.service.loadBalancerSourceRanges }}
|
||||
loadBalancerSourceRanges:
|
||||
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.service.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.service.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 3000
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
@@ -1,23 +1,21 @@
|
||||
{{- if .Values.serviceMonitor.enabled }}
|
||||
{{- if .Values.prometheus.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "adguard-home.fullname" . }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
{{- with .Values.serviceMonitor.additionalLabels }}
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
{{- with .Values.prometheus.serviceMonitor.additionalLabels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- include "common.labels.selectorLabels" . | nindent 6 }}
|
||||
endpoints:
|
||||
- port: http
|
||||
interval: 30s
|
||||
{{- with .Values.prometheus.serviceMonitor.interval }}
|
||||
interval: {{ . }}
|
||||
{{- end }}
|
||||
path: /
|
||||
{{- end }}
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
|
||||
{{- if and .Values.persistence.work.enabled (not .Values.persistence.work.existingClaim) }}
|
||||
kind: PersistentVolumeClaim
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: {{ template "adguard-home.fullname" . }}-work
|
||||
{{- if .Values.persistence.work.skipuninstall }}
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
{{- end }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "adguard-home.name" . }}
|
||||
helm.sh/chart: {{ include "adguard-home.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .Values.persistence.work.accessMode | quote }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.work.size | quote }}
|
||||
{{- if .Values.persistence.work.storageClass }}
|
||||
{{- if (eq "-" .Values.persistence.work.storageClass) }}
|
||||
storageClassName: ""
|
||||
{{- else }}
|
||||
storageClassName: "{{ .Values.persistence.work.storageClass }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
@@ -1,362 +1,223 @@
|
||||
# upgrade strategy type (e.g. Recreate or RollingUpdate)
|
||||
strategyType: Recreate
|
||||
#
|
||||
# IMPORTANT NOTE
|
||||
#
|
||||
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||
#
|
||||
|
||||
configAsCode:
|
||||
enabled: false
|
||||
resources: {}
|
||||
# requests:
|
||||
# memory: 128Mi
|
||||
# cpu: 100m
|
||||
image:
|
||||
repository: busybox
|
||||
tag: latest
|
||||
pullPolicy: Always
|
||||
# Copy the configmap to the AdGuardHome conf directory
|
||||
# Do NOT overwrite when the file already exists
|
||||
initContainers:
|
||||
- name: copy-configmap
|
||||
image: busybox
|
||||
command:
|
||||
- "sh"
|
||||
- "-c"
|
||||
- |
|
||||
if [ ! -f /opt/adguardhome/conf/AdGuardHome.yaml ]; then
|
||||
mkdir -p /opt/adguardhome/conf
|
||||
cp /tmp/AdGuardHome.yaml /opt/adguardhome/conf/AdGuardHome.yaml
|
||||
fi
|
||||
volumeMounts:
|
||||
- name: adguard-home-config
|
||||
mountPath: /tmp/AdGuardHome.yaml
|
||||
subPath: AdGuardHome.yaml
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
|
||||
image:
|
||||
repository: adguard/adguardhome
|
||||
tag: v0.105.2
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
env: {}
|
||||
# TZ:
|
||||
|
||||
args:
|
||||
- "--config"
|
||||
- "/opt/adguardhome/conf/AdGuardHome.yaml"
|
||||
- "--no-check-update"
|
||||
|
||||
# -- (int) Number of pods to load balance between
|
||||
replicas: 1
|
||||
|
||||
service:
|
||||
port:
|
||||
port: 3000
|
||||
# additionalServices:
|
||||
# - enabled: true
|
||||
# nameSuffix: dns-tcp
|
||||
# type: NodePort
|
||||
# port:
|
||||
# port: 53
|
||||
# name: dns-tcp
|
||||
# protocol: TCP
|
||||
# targetPort: 53
|
||||
# externalTrafficPolicy: Local
|
||||
# - enabled: true
|
||||
# nameSuffix: dns-udp
|
||||
# type: NodePort
|
||||
# port:
|
||||
# port: 53
|
||||
# name: dns-udp
|
||||
# protocol: UDP
|
||||
# targetPort: 53
|
||||
# externalTrafficPolicy: Local
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /opt/adguardhome/conf
|
||||
data:
|
||||
enabled: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /opt/adguardhome/work
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
## If undefined (the default) or set to null, no storageClassName spec is
|
||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
||||
## GKE, AWS & OpenStack)
|
||||
# storageClass: "-"
|
||||
# accessMode: ReadWriteOnce
|
||||
# size: 1Gi
|
||||
## Do not delete the pvc upon helm uninstall
|
||||
# skipuninstall: false
|
||||
# existingClaim: ""
|
||||
|
||||
prometheus:
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
interval: 30s
|
||||
additionalLabels: {}
|
||||
|
||||
# podAnnotations:
|
||||
# prometheus.io/scrape: "true"
|
||||
# prometheus.io/port: "api"
|
||||
|
||||
# -- Full list of options https://github.com/AdguardTeam/AdGuardHome/wiki/Configuration
|
||||
# @default -- see URL to default config
|
||||
config: |
|
||||
bind_host: 0.0.0.0
|
||||
bind_port: 3000
|
||||
beta_bind_port: 0
|
||||
users: []
|
||||
http_proxy: ""
|
||||
language: en
|
||||
rlimit_nofile: 0
|
||||
debug_pprof: false
|
||||
web_session_ttl: 720
|
||||
dns:
|
||||
bind_host: 0.0.0.0
|
||||
bind_port: 3000
|
||||
users: []
|
||||
# - name: admin
|
||||
# password: $2y$05$mV4GSa5Dymk4Hjg3NCscBuCYSckCGfc2mbS57SNkBkBAfvqfOdFfm
|
||||
http_proxy: ""
|
||||
language: "en"
|
||||
rlimit_nofile: 0
|
||||
debug_pprof: false
|
||||
web_session_ttl: 720
|
||||
dns:
|
||||
bind_host: 0.0.0.0
|
||||
port: 53
|
||||
statistics_interval: 1
|
||||
querylog_enabled: true
|
||||
querylog_interval: 90
|
||||
querylog_size_memory: 1000
|
||||
anonymize_client_ip: false
|
||||
protection_enabled: true
|
||||
blocking_mode: default
|
||||
blocking_ipv4: ""
|
||||
blocking_ipv6: ""
|
||||
blocked_response_ttl: 10
|
||||
parental_block_host: family-block.dns.adguard.com
|
||||
safebrowsing_block_host: standard-block.dns.adguard.com
|
||||
ratelimit: 0
|
||||
ratelimit_whitelist: []
|
||||
refuse_any: true
|
||||
upstream_dns:
|
||||
- https://dns10.quad9.net/dns-query
|
||||
bootstrap_dns:
|
||||
- 9.9.9.10
|
||||
- 149.112.112.10
|
||||
- 2620:fe::10
|
||||
- 2620:fe::fe:10
|
||||
all_servers: false
|
||||
fastest_addr: false
|
||||
allowed_clients: []
|
||||
# - 10.0.0.1
|
||||
# - 10.0.1.1/24
|
||||
disallowed_clients: []
|
||||
# - 10.0.1.1
|
||||
# - 10.0.11.1/24
|
||||
blocked_hosts: []
|
||||
# - example.org
|
||||
# - '*.example.org'
|
||||
# - '||example.org^'
|
||||
cache_size: 4194304
|
||||
cache_ttl_min: 0
|
||||
cache_ttl_max: 0
|
||||
bogus_nxdomain: []
|
||||
aaaa_disabled: false
|
||||
enable_dnssec: false
|
||||
edns_client_subnet: false
|
||||
filtering_enabled: true
|
||||
filters_update_interval: 24
|
||||
parental_enabled: false
|
||||
safesearch_enabled: false
|
||||
safebrowsing_enabled: false
|
||||
safebrowsing_cache_size: 1048576
|
||||
safesearch_cache_size: 1048576
|
||||
parental_cache_size: 1048576
|
||||
cache_time: 30
|
||||
rewrites: []
|
||||
# - domain: example.org
|
||||
# answer: 127.0.0.1
|
||||
# - domain: '*.example.org'
|
||||
# answer: 127.0.0.1
|
||||
blocked_services: []
|
||||
# - facebook
|
||||
# - origin
|
||||
# - twitter
|
||||
# - snapchat
|
||||
# - skype
|
||||
# - whatsapp
|
||||
# - instagram
|
||||
# - youtube
|
||||
# - netflix
|
||||
# - twitch
|
||||
# - discord
|
||||
# - amazon
|
||||
# - ebay
|
||||
# - cloudflare
|
||||
# - steam
|
||||
# - epic_games
|
||||
# - reddit
|
||||
# - ok
|
||||
# - vk
|
||||
# - mail_ru
|
||||
# - tiktok
|
||||
tls:
|
||||
enabled: false
|
||||
server_name: ""
|
||||
force_https: false
|
||||
port_https: 443
|
||||
port_dns_over_tls: 853
|
||||
allow_unencrypted_doh: false
|
||||
strict_sni_check: false
|
||||
certificate_chain: ""
|
||||
private_key: ""
|
||||
certificate_path: ""
|
||||
private_key_path: ""
|
||||
filters:
|
||||
- enabled: true
|
||||
url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt
|
||||
name: AdGuard DNS filter
|
||||
id: 1
|
||||
- enabled: false
|
||||
url: https://adaway.org/hosts.txt
|
||||
name: AdAway
|
||||
id: 2
|
||||
- enabled: false
|
||||
url: https://www.malwaredomainlist.com/hostslist/hosts.txt
|
||||
name: MalwareDomainList.com Hosts List
|
||||
id: 4
|
||||
whitelist_filters: []
|
||||
# - enabled: true
|
||||
# url: https://easylist-downloads.adblockplus.org/exceptionrules.txt
|
||||
# name: Allow nonintrusive advertising
|
||||
# id: 1595760241
|
||||
user_rules: []
|
||||
# - '||example.org^'
|
||||
# - '@@||example.org^'
|
||||
# - 127.0.0.1 example.org
|
||||
# - '! Here goes a comment'
|
||||
# - '# Also a comment'
|
||||
dhcp:
|
||||
enabled: false
|
||||
interface_name: ""
|
||||
port: 53
|
||||
statistics_interval: 1
|
||||
querylog_enabled: true
|
||||
querylog_file_enabled: true
|
||||
querylog_interval: 90
|
||||
querylog_size_memory: 1000
|
||||
anonymize_client_ip: false
|
||||
protection_enabled: true
|
||||
blocking_mode: default
|
||||
blocking_ipv4: ""
|
||||
blocking_ipv6: ""
|
||||
blocked_response_ttl: 10
|
||||
parental_block_host: family-block.dns.adguard.com
|
||||
safebrowsing_block_host: standard-block.dns.adguard.com
|
||||
ratelimit: 0
|
||||
ratelimit_whitelist: []
|
||||
refuse_any: true
|
||||
upstream_dns:
|
||||
- https://dns10.quad9.net/dns-query
|
||||
upstream_dns_file: ""
|
||||
bootstrap_dns:
|
||||
- 9.9.9.10
|
||||
- 149.112.112.10
|
||||
- 2620:fe::10
|
||||
- 2620:fe::fe:10
|
||||
all_servers: false
|
||||
fastest_addr: false
|
||||
allowed_clients: []
|
||||
disallowed_clients: []
|
||||
blocked_hosts: []
|
||||
cache_size: 4194304
|
||||
cache_ttl_min: 0
|
||||
cache_ttl_max: 0
|
||||
bogus_nxdomain: []
|
||||
aaaa_disabled: false
|
||||
enable_dnssec: false
|
||||
edns_client_subnet: false
|
||||
max_goroutines: 300
|
||||
ipset: []
|
||||
filtering_enabled: true
|
||||
filters_update_interval: 24
|
||||
parental_enabled: false
|
||||
safesearch_enabled: false
|
||||
safebrowsing_enabled: false
|
||||
safebrowsing_cache_size: 1048576
|
||||
safesearch_cache_size: 1048576
|
||||
parental_cache_size: 1048576
|
||||
cache_time: 30
|
||||
rewrites: []
|
||||
blocked_services: []
|
||||
customresolver: null
|
||||
tls:
|
||||
enabled: false
|
||||
server_name: ""
|
||||
force_https: false
|
||||
port_https: 443
|
||||
port_dns_over_tls: 853
|
||||
port_dns_over_quic: 784
|
||||
port_dnscrypt: 0
|
||||
dnscrypt_config_file: ""
|
||||
allow_unencrypted_doh: false
|
||||
strict_sni_check: false
|
||||
certificate_chain: ""
|
||||
private_key: ""
|
||||
certificate_path: ""
|
||||
private_key_path: ""
|
||||
filters:
|
||||
- enabled: true
|
||||
url: https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt
|
||||
name: AdGuard DNS filter
|
||||
id: 1
|
||||
- enabled: false
|
||||
url: https://adaway.org/hosts.txt
|
||||
name: AdAway
|
||||
id: 2
|
||||
- enabled: false
|
||||
url: https://www.malwaredomainlist.com/hostslist/hosts.txt
|
||||
name: MalwareDomainList.com Hosts List
|
||||
id: 4
|
||||
whitelist_filters: []
|
||||
user_rules: []
|
||||
dhcp:
|
||||
enabled: false
|
||||
interface_name: ""
|
||||
dhcpv4:
|
||||
gateway_ip: ""
|
||||
subnet_mask: ""
|
||||
range_start: ""
|
||||
range_end: ""
|
||||
lease_duration: 86400
|
||||
icmp_timeout_msec: 1000
|
||||
clients: []
|
||||
# - name: myuser
|
||||
# tags:
|
||||
# - user_admin
|
||||
# ids:
|
||||
# - 192.168.91.1
|
||||
# use_global_settings: true
|
||||
# filtering_enabled: false
|
||||
# parental_enabled: false
|
||||
# safesearch_enabled: false
|
||||
# safebrowsing_enabled: false
|
||||
# use_global_blocked_services: true
|
||||
# blocked_services: []
|
||||
# upstreams: []
|
||||
log_file: ""
|
||||
verbose: false
|
||||
schema_version: 6
|
||||
|
||||
tlsSecretName: ""
|
||||
# name of the secret that contains the tls cert and key.
|
||||
# this secret will be mounted inside the adguard container /certs path. e.g. works with cert-manager
|
||||
|
||||
image:
|
||||
repository: adguard/adguardhome
|
||||
# Image tag is set via charts appVersion. If you want to override the tag, specify it here
|
||||
# tag: vX.Y.Z
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
podSecurityContext: {}
|
||||
# fsGroup: 2000
|
||||
|
||||
securityContext: {}
|
||||
# capabilities:
|
||||
# drop:
|
||||
# - ALL
|
||||
# add:
|
||||
# - NET_BIND_SERVICE
|
||||
# readOnlyRootFilesystem: true
|
||||
# runAsNonRoot: true
|
||||
# runAsUser: 1000
|
||||
|
||||
timezone: "UTC"
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
path: /
|
||||
hosts:
|
||||
- chart-example.local
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - chart-example.local
|
||||
|
||||
|
||||
# Probes configuration
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
initialDelaySeconds: 5
|
||||
failureThreshold: 5
|
||||
periodSeconds: 10
|
||||
readiness:
|
||||
enabled: false
|
||||
initialDelaySeconds: 5
|
||||
failureThreshold: 5
|
||||
periodSeconds: 10
|
||||
startup:
|
||||
enabled: false
|
||||
initialDelaySeconds: 5
|
||||
failureThreshold: 30
|
||||
periodSeconds: 10
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
# externalTrafficPolicy: Local
|
||||
# externalIPs: []
|
||||
# loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
# loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
|
||||
|
||||
serviceTCP:
|
||||
enabled: false
|
||||
type: NodePort
|
||||
# externalTrafficPolicy: Local
|
||||
# externalIPs: []
|
||||
loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
# loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
|
||||
|
||||
serviceUDP:
|
||||
enabled: true
|
||||
type: NodePort
|
||||
# externalTrafficPolicy: Local
|
||||
# externalIPs: []
|
||||
loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
# loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
|
||||
|
||||
serviceDNSOverTLS:
|
||||
enabled: false
|
||||
## Enable if you use AdGuard as a DNS over TLS/HTTPS server
|
||||
type: NodePort
|
||||
# externalTrafficPolicy: Local
|
||||
# externalIPs: []
|
||||
loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
# loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
|
||||
|
||||
serviceDHCP:
|
||||
enabled: false
|
||||
## Enable if you use AdGuard as a DHCP Server
|
||||
type: NodePort
|
||||
# externalTrafficPolicy: Local
|
||||
# externalIPs: []
|
||||
loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: adguard-home-svc
|
||||
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
additionalLabels: {}
|
||||
|
||||
## Pod Annotations
|
||||
podAnnotations:
|
||||
prometheus.io/scrape: "true"
|
||||
prometheus.io/port: "api"
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
## adguard-home configuration data Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
## If undefined (the default) or set to null, no storageClassName spec is
|
||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
||||
## GKE, AWS & OpenStack)
|
||||
##
|
||||
# storageClass: "-"
|
||||
##
|
||||
## If you want to reuse an existing claim, you can pass the name of the PVC using
|
||||
## the existingClaim variable
|
||||
# existingClaim: your-claim
|
||||
# subPath: some-subpath
|
||||
accessMode: ReadWriteOnce
|
||||
size: 20Mi
|
||||
## Do not delete the pvc upon helm uninstall
|
||||
skipuninstall: false
|
||||
work:
|
||||
enabled: true
|
||||
## adguard-home work volume configuration
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
## If undefined (the default) or set to null, no storageClassName spec is
|
||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
||||
## GKE, AWS & OpenStack)
|
||||
##
|
||||
# storageClass: "-"
|
||||
##
|
||||
## If you want to reuse an existing claim, you can pass the name of the PVC using
|
||||
## the existingClaim variable
|
||||
# existingClaim: your-claim
|
||||
# subPath: some-subpath
|
||||
accessMode: ReadWriteOnce
|
||||
size: 10Gi
|
||||
## Do not delete the pvc upon helm uninstall
|
||||
skipuninstall: false
|
||||
|
||||
volumePermissions:
|
||||
image:
|
||||
repository: busybox
|
||||
tag: latest
|
||||
pullPolicy: Always
|
||||
resources: {}
|
||||
# requests:
|
||||
# memory: 128Mi
|
||||
# cpu: 100m
|
||||
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# memory: 500Mi
|
||||
# requests:
|
||||
# cpu: 50m
|
||||
# memory: 275Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
options: []
|
||||
dhcpv6:
|
||||
range_start: ""
|
||||
lease_duration: 86400
|
||||
ra_slaac_only: false
|
||||
ra_allow_slaac: false
|
||||
clients: []
|
||||
log_compress: false
|
||||
log_localtime: false
|
||||
log_max_backups: 0
|
||||
log_max_size: 100
|
||||
log_max_age: 3
|
||||
log_file: ""
|
||||
verbose: false
|
||||
schema_version: 7
|
||||
|
||||
@@ -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.2.1
|
||||
version: 2.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- airsonic
|
||||
@@ -18,4 +18,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# airsonic
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
Airsonic is a Free and Open Source community driven media server
|
||||
|
||||
@@ -20,7 +20,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -84,18 +84,18 @@ by not constantly monitoring media folders.
|
||||
| image.repository | string | `"linuxserver/airsonic"` | |
|
||||
| image.tag | string | `"v10.6.2-ls97"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.config.emptyDir | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.media.emptyDir | bool | `false` | |
|
||||
| persistence.media.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.media.enabled | bool | `false` | |
|
||||
| persistence.media.mountPath | string | `"/media"` | |
|
||||
| persistence.music.emptyDir | bool | `false` | |
|
||||
| persistence.music.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.music.enabled | bool | `false` | |
|
||||
| persistence.music.mountPath | string | `"/music"` | |
|
||||
| persistence.playlists.emptyDir | bool | `false` | |
|
||||
| persistence.playlists.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.playlists.enabled | bool | `false` | |
|
||||
| persistence.playlists.mountPath | string | `"/playlists"` | |
|
||||
| persistence.podcasts.emptyDir | bool | `false` | |
|
||||
| persistence.podcasts.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.podcasts.enabled | bool | `false` | |
|
||||
| persistence.podcasts.mountPath | string | `"/podcasts"` | |
|
||||
| service.port.port | int | `4040` | |
|
||||
|
||||
@@ -31,11 +31,13 @@ ingress:
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
|
||||
music:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /music
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
@@ -51,13 +53,16 @@ persistence:
|
||||
# existingClaim: ""
|
||||
playlists:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /playlists
|
||||
podcasts:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /podcasts
|
||||
media:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /media
|
||||
|
||||
@@ -2,7 +2,7 @@ apiVersion: v2
|
||||
appVersion: 0.4.2
|
||||
description: Bot for Prometheus Alertmanager
|
||||
name: alertmanager-bot
|
||||
version: 3.2.1
|
||||
version: 4.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- alertmanager
|
||||
@@ -19,4 +19,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# alertmanager-bot
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
Bot for Prometheus Alertmanager
|
||||
|
||||
@@ -19,7 +19,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -82,7 +82,7 @@ N/A
|
||||
| image.repository | string | `"metalmatze/alertmanager-bot"` | |
|
||||
| image.tag | string | `"0.4.2"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.data.emptyDir | bool | `false` | |
|
||||
| persistence.data.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.data.enabled | bool | `false` | |
|
||||
| probes.liveness.enabled | bool | `false` | |
|
||||
| probes.readiness.enabled | bool | `false` | |
|
||||
|
||||
@@ -39,4 +39,5 @@ probes:
|
||||
persistence:
|
||||
data:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
|
||||
@@ -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.2.1
|
||||
version: 4.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- appdaemon
|
||||
@@ -18,4 +18,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# appdaemon
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
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.
|
||||
|
||||
@@ -18,7 +18,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -80,7 +80,7 @@ N/A
|
||||
| image.repository | string | `"k8sathome/appdaemon"` | |
|
||||
| image.tag | string | `"v4.0.5"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.config.emptyDir | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| service.port.port | int | `5050` | |
|
||||
| strategy.type | string | `"Recreate"` | |
|
||||
|
||||
@@ -36,7 +36,8 @@ ingress:
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
|
||||
28
charts/stable/baikal/Chart.yaml
Normal file
28
charts/stable/baikal/Chart.yaml
Normal file
@@ -0,0 +1,28 @@
|
||||
apiVersion: v2
|
||||
appVersion: 0.8.0
|
||||
description: Baïkal is a lightweight CalDAV+CardDAV server. It offers a web interface with management of users, address books and calendars.
|
||||
name: baikal
|
||||
version: 1.1.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- baikal
|
||||
- caldav
|
||||
- carddav
|
||||
- contacts
|
||||
- calendar
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/baikal
|
||||
icon: https://avatars.githubusercontent.com/u/28524376?s=400&v=4
|
||||
sources:
|
||||
- https://github.com/sabre-io/Baikal
|
||||
- https://github.com/ckulka/baikal-docker
|
||||
maintainers:
|
||||
- name: billimek
|
||||
email: jeff@billimek.com
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 2.2.0
|
||||
- name: mariadb
|
||||
version: 9.3.6
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
condition: mariadb.enabled
|
||||
123
charts/stable/baikal/README.md
Normal file
123
charts/stable/baikal/README.md
Normal file
@@ -0,0 +1,123 @@
|
||||
# baikal
|
||||
|
||||
 
|
||||
|
||||
Baïkal is a lightweight CalDAV+CardDAV server. It offers a web interface with management of users, address books and calendars.
|
||||
|
||||
**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/sabre-io/Baikal>
|
||||
* <https://github.com/ckulka/baikal-docker>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://charts.bitnami.com/bitnami | mariadb | 9.3.6 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
```console
|
||||
helm repo add k8s-at-home https://k8s-at-home.com/charts/
|
||||
helm repo update
|
||||
helm install baikal k8s-at-home/baikal
|
||||
```
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `baikal`
|
||||
|
||||
```console
|
||||
helm install baikal k8s-at-home/baikal
|
||||
```
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `baikal` deployment
|
||||
|
||||
```console
|
||||
helm uninstall baikal
|
||||
```
|
||||
|
||||
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](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
|
||||
|
||||
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||
|
||||
```console
|
||||
helm install baikal \
|
||||
--set env.TZ="America/New York" \
|
||||
k8s-at-home/baikal
|
||||
```
|
||||
|
||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||
|
||||
```console
|
||||
helm install baikal k8s-at-home/baikal -f values.yaml
|
||||
```
|
||||
|
||||
## Custom configuration
|
||||
|
||||
N/A
|
||||
|
||||
## 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/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| env | object | `{}` | |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | |
|
||||
| image.repository | string | `"ckulka/baikal"` | |
|
||||
| image.tag | string | `"0.8.0"` | Image tag. For available image variants see https://github.com/ckulka/baikal-docker#image-variants |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| mariadb.architecture | string | `"standalone"` | |
|
||||
| mariadb.auth.database | string | `"baikal"` | |
|
||||
| mariadb.auth.password | string | `"baikal"` | |
|
||||
| mariadb.auth.rootPassword | string | `"baikal-rootpass"` | |
|
||||
| mariadb.auth.username | string | `"baikal"` | |
|
||||
| mariadb.enabled | bool | `false` | |
|
||||
| mariadb.primary.persistence.enabled | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.config.mountPath | string | `"/var/www/baikal/config"` | |
|
||||
| persistence.data.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.data.enabled | bool | `false` | |
|
||||
| persistence.data.mountPath | string | `"/var/www/baikal/Specific"` | |
|
||||
| service.port.port | int | `80` | |
|
||||
| strategy.type | string | `"Recreate"` | |
|
||||
|
||||
## 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/library-charts/tree/main/charts/stable/common#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).
|
||||
|
||||
### [1.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
- Initial version
|
||||
|
||||
[1.0.0]: #1.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)
|
||||
19
charts/stable/baikal/README_CHANGELOG.md.gotmpl
Normal file
19
charts/stable/baikal/README_CHANGELOG.md.gotmpl
Normal file
@@ -0,0 +1,19 @@
|
||||
{{- 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/library-charts/tree/main/charts/stable/common#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).
|
||||
|
||||
### [1.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
- Initial version
|
||||
|
||||
[1.0.0]: #1.0.0
|
||||
{{- end -}}
|
||||
64
charts/stable/baikal/values.yaml
Normal file
64
charts/stable/baikal/values.yaml
Normal file
@@ -0,0 +1,64 @@
|
||||
#
|
||||
# IMPORTANT NOTE
|
||||
#
|
||||
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||
#
|
||||
|
||||
image:
|
||||
repository: ckulka/baikal
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Image tag. For available image variants see https://github.com/ckulka/baikal-docker#image-variants
|
||||
tag: 0.8.0
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
env: {}
|
||||
# TZ:
|
||||
|
||||
service:
|
||||
port:
|
||||
port: 80
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /var/www/baikal/config
|
||||
data:
|
||||
enabled: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /var/www/baikal/Specific
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
## If undefined (the default) or set to null, no storageClassName spec is
|
||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
||||
## GKE, AWS & OpenStack)
|
||||
# storageClass: "-"
|
||||
# accessMode: ReadWriteOnce
|
||||
# size: 1Gi
|
||||
## Do not delete the pvc upon helm uninstall
|
||||
# skipuninstall: false
|
||||
# existingClaim: ""
|
||||
|
||||
# Enables mariadb
|
||||
# ... for configuration options see https://github.com/bitnami/charts/tree/master/bitnami/mariadb
|
||||
mariadb:
|
||||
enabled: false
|
||||
architecture: standalone
|
||||
auth:
|
||||
database: baikal
|
||||
username: baikal
|
||||
password: baikal
|
||||
rootPassword: baikal-rootpass
|
||||
primary:
|
||||
persistence:
|
||||
enabled: false
|
||||
# storageClass: ""
|
||||
@@ -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.2.1
|
||||
version: 7.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- bazarr
|
||||
@@ -22,4 +22,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# bazarr
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
Bazarr is a companion application to Sonarr and Radarr. It manages and downloads subtitles based on your requirements
|
||||
|
||||
@@ -19,7 +19,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -81,9 +81,9 @@ N/A
|
||||
| image.repository | string | `"linuxserver/bazarr"` | |
|
||||
| image.tag | string | `"version-v0.9.0.5"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.config.emptyDir | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.media.emptyDir | bool | `false` | |
|
||||
| persistence.media.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.media.enabled | bool | `false` | |
|
||||
| persistence.media.mountPath | string | `"/media"` | |
|
||||
| service.port.port | int | `6767` | |
|
||||
|
||||
@@ -28,11 +28,13 @@ ingress:
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
|
||||
media:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /media
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
|
||||
@@ -2,7 +2,7 @@ apiVersion: v2
|
||||
name: bitwardenrs
|
||||
description: Unofficial Bitwarden compatible server written in Rust
|
||||
type: application
|
||||
version: 2.0.2
|
||||
version: 2.1.4
|
||||
appVersion: 1.18.0
|
||||
keywords:
|
||||
- bitwarden
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# bitwardenrs
|
||||
|
||||
  
|
||||
  
|
||||
|
||||
Unofficial Bitwarden compatible server written in Rust
|
||||
|
||||
@@ -62,13 +62,21 @@ Alternatively, a YAML file that specifies the values for the above parameters ca
|
||||
helm install bitwardenrs k8s-at-home/bitwardenrs -f values.yaml
|
||||
```
|
||||
|
||||
### Ldap-Sync
|
||||
|
||||
Via [vividboarder/bitwarden_rs_ldap](https://github.com/ViViDboarder/bitwarden_rs_ldap) it is possible to fetch your user base from an ldap server of your choosing. If ldapSync.enabled is true you will get the opportunity to use an ldap server which could assist with inviting users.
|
||||
|
||||
With the ldapSync.extraContainers and ldapSync.extraVolumes values you're able to customize the ldap-sync pod.
|
||||
|
||||
For example with environments that require a secure connection to an LDAP server you can add a VPN container, which enables the sync container to communicate over a VPN.
|
||||
|
||||
## Custom configuration
|
||||
|
||||
N/A
|
||||
|
||||
## 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
@@ -129,6 +137,11 @@ N/A
|
||||
| ingress.hosts[0].host | string | `"chart-example.local"` | |
|
||||
| ingress.hosts[0].paths | list | `[]` | |
|
||||
| ingress.tls | list | `[]` | |
|
||||
| ldapSync.configToml | string | `"bitwarden_url = \"http://bitwarden:80\"\nbitwarden_admin_token = \"admin\"\nldap_host = \"ldap\"\nldap_bind_dn = \"cn=admin,dc=example,dc=org\"\nldap_bind_password = \"admin\"\nldap_search_base_dn = \"dc=example,dc=org\"\nldap_search_filter = \"(&(objectClass=*)(uid=*))\"\nldap_sync_interval_seconds = 10"` | |
|
||||
| ldapSync.enabled | bool | `false` | |
|
||||
| ldapSync.existingSecret | string | `""` | |
|
||||
| ldapSync.extraContainers | list | `[]` | |
|
||||
| ldapSync.extraVolumes | list | `[]` | |
|
||||
| nameOverride | string | `""` | |
|
||||
| nodeSelector | object | `{}` | |
|
||||
| persistence.accessMode | string | `"ReadWriteOnce"` | |
|
||||
@@ -172,7 +185,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
|
||||
- N/A
|
||||
|
||||
[2.0.1]: #2.0.1
|
||||
[2.1.3]: #2.1.3
|
||||
|
||||
## Support
|
||||
|
||||
@@ -182,4 +195,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
- 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)
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
|
||||
@@ -92,7 +92,7 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
|
||||
{{- 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
{{ template "chart.valuesTable" . }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -25,5 +25,5 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
|
||||
- N/A
|
||||
|
||||
[2.0.1]: #2.0.1
|
||||
[2.1.3]: #2.1.3
|
||||
{{- end -}}
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration" -}}
|
||||
### Ldap-Sync
|
||||
|
||||
Via [vividboarder/bitwarden_rs_ldap](https://github.com/ViViDboarder/bitwarden_rs_ldap) it is possible to fetch your user base from an ldap server of your choosing. If ldapSync.enabled is true you will get the opportunity to use an ldap server which could assist with inviting users.
|
||||
|
||||
With the ldapSync.extraContainers and ldapSync.extraVolumes values you're able to customize the ldap-sync pod.
|
||||
|
||||
For example with environments that require a secure connection to an LDAP server you can add a VPN container, which enables the sync container to communicate over a VPN.
|
||||
|
||||
{{ template "custom.custom.configuration.header" . }}
|
||||
|
||||
N/A
|
||||
|
||||
@@ -51,6 +51,20 @@ app.kubernetes.io/name: {{ include "bitwardenrs.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Ldap labels
|
||||
*/}}
|
||||
{{- define "bitwardenrsLdap.labels" -}}
|
||||
helm.sh/chart: {{ include "bitwardenrs.chart" . }}
|
||||
{{ include "bitwardenrsLdap.selectorLabels" . }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "bitwardenrsLdap.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "bitwardenrs.name" . }}-ldap
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
|
||||
46
charts/stable/bitwardenrs/templates/deployment-ldapsync.yaml
Normal file
46
charts/stable/bitwardenrs/templates/deployment-ldapsync.yaml
Normal file
@@ -0,0 +1,46 @@
|
||||
{{- if and (.Values.ldapSync.enabled) (not .Values.ldapSync.existingSecret) }}
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "bitwardenrsLdap.labels" . | nindent 4 }}
|
||||
name: {{ include "bitwardenrs.name" . }}-ldap
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "bitwardenrsLdap.selectorLabels" . | nindent 6 }}
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "bitwardenrsLdap.selectorLabels" . | nindent 8 }}
|
||||
spec:
|
||||
initContainers:
|
||||
containers:
|
||||
- name: ldap-sync
|
||||
image: vividboarder/bitwarden_rs_ldap
|
||||
imagePullPolicy: Always
|
||||
env:
|
||||
- name: CONFIG_PATH
|
||||
value: "/etc/bitwarden/config.toml"
|
||||
- name: RUST_BACKTRACE
|
||||
value: "full"
|
||||
resources: {}
|
||||
terminationMessagePath: /dev/termination-log
|
||||
terminationMessagePolicy: File
|
||||
volumeMounts:
|
||||
- mountPath: /etc/bitwarden
|
||||
name: {{ if .Values.ldapSync.existingSecret }}{{ .Values.ldapSync.existingSecret }}{{ else }}{{ include "bitwardenrs.name" . }}-ldap{{ end }}
|
||||
readOnly: true
|
||||
{{- if .Values.ldapSync.extraContainers }}
|
||||
{{- toYaml .Values.ldapSync.extraContainers | nindent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: {{ include "bitwardenrs.name" . }}-ldap
|
||||
secret:
|
||||
defaultMode: 420
|
||||
secretName: {{ if .Values.ldapSync.existingSecret }}{{ .Values.ldapSync.existingSecret }}{{ else }}{{ include "bitwardenrs.name" . }}-ldap{{ end }}
|
||||
{{- if .Values.ldapSync.extraVolumes }}
|
||||
{{- toYaml .Values.ldapSync.extraVolumes | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
11
charts/stable/bitwardenrs/templates/secret-ldapsync.yaml
Normal file
11
charts/stable/bitwardenrs/templates/secret-ldapsync.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
{{- if .Values.ldapSync.enabled }}
|
||||
apiVersion: v1
|
||||
data:
|
||||
config.toml: {{ .Values.ldapSync.configToml | b64enc }}
|
||||
kind: Secret
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "bitwardenrsLdap.labels" . | nindent 4 }}
|
||||
name: {{ include "bitwardenrs.name" . -}}-ldap
|
||||
type: Opaque
|
||||
{{- end }}
|
||||
@@ -4,8 +4,8 @@ kind: Secret
|
||||
metadata:
|
||||
name: {{ template "bitwardenrs.fullname" . }}
|
||||
labels:
|
||||
{{- include "bitwardenrs.labels" . | nindent 4 }}
|
||||
{{- include "bitwardenrs.labels" . | nindent 4 }}
|
||||
type: Opaque
|
||||
data:
|
||||
admin-token: {{ randAlphaNum 48 | b64enc | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -176,3 +176,46 @@ nodeSelector: {}
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
|
||||
ldapSync:
|
||||
enabled: false
|
||||
# Configuration file for ldap server connection
|
||||
configToml: |-
|
||||
bitwarden_url = "http://bitwarden:80"
|
||||
bitwarden_admin_token = "admin"
|
||||
ldap_host = "ldap"
|
||||
ldap_bind_dn = "cn=admin,dc=example,dc=org"
|
||||
ldap_bind_password = "admin"
|
||||
ldap_search_base_dn = "dc=example,dc=org"
|
||||
ldap_search_filter = "(&(objectClass=*)(uid=*))"
|
||||
ldap_sync_interval_seconds = 10
|
||||
# Use existing secret for config.toml
|
||||
existingSecret: ""
|
||||
# Add extra containers
|
||||
extraContainers: []
|
||||
# - name: vpn
|
||||
# image: dperson/openvpn-client
|
||||
# command: ["/bin/sh","-c"]
|
||||
# args: ["openvpn --config 'vpn/client.ovpn' --script-security 3;"]
|
||||
# stdin: true
|
||||
# tty: true
|
||||
# securityContext:
|
||||
# privileged: true
|
||||
# capabilities:
|
||||
# add:
|
||||
# - NET_ADMIN
|
||||
# env:
|
||||
# - name: DE
|
||||
# value: "Berlin"
|
||||
# volumeMounts:
|
||||
# - name: bitwardenrs-vpn
|
||||
# mountPath: /vpn/client.ovpn
|
||||
# subPath: client.ovpn
|
||||
# Add extra volumes
|
||||
extraVolumes: []
|
||||
# - name: bitwarden-vpn
|
||||
# secret:
|
||||
# secretName: bitwardenrs-vpn
|
||||
# items:
|
||||
# - key: client.ovpn
|
||||
# path: client.ovpn
|
||||
|
||||
@@ -22,3 +22,5 @@
|
||||
.vscode/
|
||||
# OWNERS file for Kubernetes
|
||||
OWNERS
|
||||
# helm-docs templates
|
||||
*.gotmpl
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
apiVersion: v2
|
||||
appVersion: v0.12
|
||||
appVersion: v0.13
|
||||
description: DNS proxy as ad-blocker for local network
|
||||
name: blocky
|
||||
version: 5.0.2
|
||||
version: 6.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- blocky
|
||||
- adblock
|
||||
- dns
|
||||
- blocky
|
||||
- adblock
|
||||
- dns
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/blocky
|
||||
icon: https://github.com/0xERR0R/blocky/raw/master/docs/blocky.svg?sanitize=true
|
||||
sources:
|
||||
- https://github.com/0xERR0R/blocky
|
||||
- https://github.com/0xERR0R/blocky
|
||||
maintainers:
|
||||
- name: billimek
|
||||
email: jeff@billimek.com
|
||||
- name: billimek
|
||||
email: jeff@billimek.com
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 2.2.0
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -92,7 +92,7 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
|
||||
{{- 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
{{ template "chart.valuesTable" . }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -9,7 +9,7 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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]
|
||||
### [6.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
@@ -17,12 +17,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
|
||||
#### Changed
|
||||
|
||||
- configuration inside `config` is no longer a yaml object, it is now a multiline string
|
||||
- moved to helm-docs
|
||||
- **BREAKING** Migrate Blocky to the common library, a lot of configuration has changed.
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
|
||||
[5.0.1]: #5.0.1
|
||||
[6.0.0]: #6.0.0
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,15 +1 @@
|
||||
1. Get the application URL by running these commands:
|
||||
{{- if contains "NodePort" .Values.serviceUDP.type }}
|
||||
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "blocky.fullname" . }})
|
||||
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||
echo http://$NODE_IP:$NODE_PORT
|
||||
{{- else if contains "LoadBalancer" .Values.serviceUDP.type }}
|
||||
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
|
||||
You can watch the status of by running 'kubectl get svc -w {{ include "blocky.fullname" . }}'
|
||||
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "blocky.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
|
||||
echo http://$SERVICE_IP:{{ .Values.serviceUDP.port }}
|
||||
{{- else if contains "ClusterIP" .Values.serviceUDP.type }}
|
||||
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "blocky.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
|
||||
echo "Visit http://127.0.0.1:8080 to use your application"
|
||||
kubectl port-forward $POD_NAME 8080:80
|
||||
{{- end }}
|
||||
{{- include "common.notes.defaultNotes" . -}}
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "blocky.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "blocky.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified postgresql name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
*/}}
|
||||
{{- define "blocky.postgresql.fullname" -}}
|
||||
{{- $name := default "postgresql" .Values.postgresql.nameOverride -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "blocky.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
@@ -2,26 +2,26 @@
|
||||
{{- include "common.values.setup" . }}
|
||||
|
||||
{{/* Append the configMap to the additionalVolumes */}}
|
||||
{{- define "ddclient.configmap.volume" -}}
|
||||
name: ddclient-settings
|
||||
{{- define "blocky.configmap.volume" -}}
|
||||
name: blocky-config
|
||||
configMap:
|
||||
name: {{ template "common.names.fullname" . }}-settings
|
||||
name: {{ template "common.names.fullname" . }}-config
|
||||
{{- end -}}
|
||||
|
||||
{{- $volume := include "ddclient.configmap.volume" . | fromYaml -}}
|
||||
{{- $volume := include "blocky.configmap.volume" . | fromYaml -}}
|
||||
{{- if $volume -}}
|
||||
{{- $additionalVolumes := append .Values.additionalVolumes $volume }}
|
||||
{{- $_ := set .Values "additionalVolumes" (deepCopy $additionalVolumes) -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Append the configMap volume to the additionalVolumeMounts */}}
|
||||
{{- define "ddclient.configmap.volumeMount" -}}
|
||||
name: ddclient-settings
|
||||
mountPath: /defaults/ddclient.conf
|
||||
subPath: ddclient.conf
|
||||
{{- define "blocky.configmap.volumeMount" -}}
|
||||
name: blocky-config
|
||||
mountPath: /app/config.yml
|
||||
subPath: config.yml
|
||||
{{- end -}}
|
||||
|
||||
{{- $volumeMount := include "ddclient.configmap.volumeMount" . | fromYaml -}}
|
||||
{{- $volumeMount := include "blocky.configmap.volumeMount" . | fromYaml -}}
|
||||
{{- if $volumeMount -}}
|
||||
{{- $additionalVolumeMounts := append .Values.additionalVolumeMounts $volumeMount }}
|
||||
{{- $_ := set .Values "additionalVolumeMounts" (deepCopy $additionalVolumeMounts) -}}
|
||||
@@ -1,13 +1,9 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "blocky.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
name: {{ template "common.names.fullname" . }}-config
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
data:
|
||||
config.yml: |
|
||||
{{ .Values.config | indent 4 }}
|
||||
|
||||
@@ -1,120 +0,0 @@
|
||||
{{- $blockyConfig := .Values.config | fromYaml }}
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "blocky.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicas }}
|
||||
revisionHistoryLimit: 3
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
annotations:
|
||||
checksum/configmap: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
||||
{{- with .Values.podAnnotations }}
|
||||
{{ toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
env:
|
||||
{{- if .Values.timeZone }}
|
||||
- name: TZ
|
||||
value: {{ .Values.timeZone | quote }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: config
|
||||
mountPath: /app/config.yml
|
||||
subPath: config.yml
|
||||
readOnly: true
|
||||
{{- range $name, $value := .Values.extraLists }}
|
||||
- name: config
|
||||
mountPath: /app/{{ $name }}
|
||||
subPath: {{ $name }}
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- if hasKey $blockyConfig "queryLog" }}
|
||||
- name: data
|
||||
mountPath: {{ $blockyConfig.queryLog.dir }}
|
||||
{{- if .Values.persistence.subPath }}
|
||||
subPath: {{ .Values.persistence.subPath }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: api
|
||||
containerPort: 4000
|
||||
- name: dns
|
||||
containerPort: 53
|
||||
protocol: TCP
|
||||
- name: dns-udp
|
||||
containerPort: 53
|
||||
protocol: UDP
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: api
|
||||
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
|
||||
periodSeconds: {{ .Values.probes.liveness.periodSeconds }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: api
|
||||
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
|
||||
periodSeconds: {{ .Values.probes.readiness.periodSeconds }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: api
|
||||
initialDelaySeconds: {{ .Values.probes.startup.initialDelaySeconds }}
|
||||
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
|
||||
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
volumes:
|
||||
- name: config
|
||||
projected:
|
||||
defaultMode: 0444
|
||||
sources:
|
||||
- configMap:
|
||||
name: {{ template "blocky.fullname" . }}
|
||||
items:
|
||||
- key: config.yml
|
||||
path: config.yml
|
||||
{{- range $name, $value := .Values.extraLists }}
|
||||
- key: {{ $name }}
|
||||
path: {{ $name }}
|
||||
{{- end }}
|
||||
{{- if hasKey $blockyConfig "queryLog" }}
|
||||
- name: data
|
||||
{{- if .Values.persistence.enabled }}
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ if .Values.persistence.existingClaim }}{{ .Values.persistence.existingClaim }}{{- else }}{{ template "blocky.fullname" . }}{{- end }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
@@ -1,33 +0,0 @@
|
||||
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ include "blocky.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- with .Values.persistence.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.persistence.finalizers }}
|
||||
finalizers:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
accessModes:
|
||||
{{- toYaml .Values.persistence.accessModes | nindent 4 }}
|
||||
{{- if .Values.persistence.storageClassName }}
|
||||
storageClassName: {{ .Values.persistence.storageClassName }}
|
||||
{{- end }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.size | quote }}
|
||||
{{- with .Values.persistence.selectorLabels }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
@@ -1,34 +0,0 @@
|
||||
{{- if .Values.serviceTCP.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "blocky.fullname" . }}-tcp
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.serviceTCP.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.serviceTCP.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.serviceTCP.type }}
|
||||
{{- if .Values.serviceTCP.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.serviceTCP.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceTCP.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.serviceTCP.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.serviceTCP.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 53
|
||||
targetPort: dns
|
||||
protocol: TCP
|
||||
name: dns
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
{{- if .Values.serviceUDP.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "blocky.fullname" . }}-udp
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.serviceUDP.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.serviceUDP.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.serviceUDP.type }}
|
||||
{{- if .Values.serviceUDP.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.serviceUDP.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceUDP.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.serviceUDP.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
externalTrafficPolicy: {{ .Values.serviceUDP.externalTrafficPolicy }}
|
||||
ports:
|
||||
- port: 53
|
||||
targetPort: dns-udp
|
||||
protocol: UDP
|
||||
name: dns-udp
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
@@ -1,45 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "blocky.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if (or (eq .Values.service.type "ClusterIP") (empty .Values.service.type)) }}
|
||||
type: ClusterIP
|
||||
{{- if .Values.service.clusterIP }}
|
||||
clusterIP: {{ .Values.service.clusterIP }}
|
||||
{{end}}
|
||||
{{- else if eq .Values.service.type "LoadBalancer" }}
|
||||
type: {{ .Values.service.type }}
|
||||
{{- if .Values.service.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.service.loadBalancerSourceRanges }}
|
||||
loadBalancerSourceRanges:
|
||||
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- else }}
|
||||
type: {{ .Values.service.type }}
|
||||
{{- end }}
|
||||
{{- if .Values.service.externalIPs }}
|
||||
externalIPs:
|
||||
{{ toYaml .Values.service.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.service.externalTrafficPolicy }}
|
||||
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: api
|
||||
port: 4000
|
||||
targetPort: api
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
@@ -1,23 +1,21 @@
|
||||
{{- if .Values.serviceMonitor.enabled }}
|
||||
{{- if .Values.prometheus.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "blocky.fullname" . }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "blocky.chart" . }}
|
||||
{{- with .Values.serviceMonitor.additionalLabels }}
|
||||
{{- include "common.labels" . | nindent 4 }}
|
||||
{{- with .Values.prometheus.serviceMonitor.additionalLabels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "blocky.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- include "common.labels.selectorLabels" . | nindent 6 }}
|
||||
endpoints:
|
||||
- port: api
|
||||
interval: 30s
|
||||
- port: http
|
||||
{{- with .Values.prometheus.serviceMonitor.interval }}
|
||||
interval: {{ . }}
|
||||
{{- end }}
|
||||
path: /metrics
|
||||
{{- end }}
|
||||
|
||||
@@ -1,17 +1,77 @@
|
||||
#
|
||||
# IMPORTANT NOTE
|
||||
#
|
||||
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||
#
|
||||
|
||||
image:
|
||||
repository: spx01/blocky
|
||||
tag: v0.12
|
||||
tag: v0.13
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
env: {}
|
||||
# TZ:
|
||||
|
||||
# -- (int) Number of pods to load balance between
|
||||
replicas: 1
|
||||
|
||||
timeZone: "UTC"
|
||||
service:
|
||||
port:
|
||||
port: 4000
|
||||
# additionalServices:
|
||||
# - enabled: true
|
||||
# nameSuffix: dns-tcp
|
||||
# type: NodePort
|
||||
# port:
|
||||
# port: 53
|
||||
# name: dns-tcp
|
||||
# protocol: TCP
|
||||
# targetPort: 53
|
||||
# externalTrafficPolicy: Local
|
||||
# - enabled: true
|
||||
# nameSuffix: dns-udp
|
||||
# type: NodePort
|
||||
# port:
|
||||
# port: 53
|
||||
# name: dns-udp
|
||||
# protocol: UDP
|
||||
# targetPort: 53
|
||||
# externalTrafficPolicy: Local
|
||||
|
||||
# Blocky configuration, for a full list of options see
|
||||
# https://github.com/0xERR0R/blocky/blob/master/docs/config.yml
|
||||
persistence:
|
||||
logs:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
mountPath: /logs
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
## If undefined (the default) or set to null, no storageClassName spec is
|
||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
||||
## GKE, AWS & OpenStack)
|
||||
# storageClass: "-"
|
||||
# accessMode: ReadWriteOnce
|
||||
# size: 1Gi
|
||||
## Do not delete the pvc upon helm uninstall
|
||||
# skipuninstall: false
|
||||
# existingClaim: ""
|
||||
|
||||
prometheus:
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
interval: 30s
|
||||
additionalLabels: {}
|
||||
|
||||
# podAnnotations:
|
||||
# prometheus.io/scrape: "true"
|
||||
# prometheus.io/port: "api"
|
||||
|
||||
# -- Full list of options https://github.com/0xERR0R/blocky/blob/master/docs/config.yml
|
||||
# @default -- see URL to default config
|
||||
config: |
|
||||
upstream:
|
||||
# these external DNS resolvers will be used. Blocky picks 2 random resolvers from the list for each query
|
||||
@@ -136,94 +196,3 @@ config: |
|
||||
logLevel: info
|
||||
# optional: Log format (text or json). Default: text
|
||||
logFormat: text
|
||||
|
||||
## Add persistence for query logs (if enabled)
|
||||
persistence:
|
||||
enabled: false
|
||||
# storageClassName: default
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
size: 10Gi
|
||||
# annotations: {}
|
||||
finalizers:
|
||||
- kubernetes.io/pvc-protection
|
||||
# selectorLabels: {}
|
||||
# subPath: ""
|
||||
# existingClaim:
|
||||
|
||||
# Probes configuration
|
||||
probes:
|
||||
liveness:
|
||||
failureThreshold: 5
|
||||
periodSeconds: 10
|
||||
readiness:
|
||||
failureThreshold: 5
|
||||
periodSeconds: 10
|
||||
startup:
|
||||
initialDelaySeconds: 5
|
||||
failureThreshold: 30
|
||||
periodSeconds: 10
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
# externalTrafficPolicy: Local
|
||||
# loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: blocky-svc
|
||||
|
||||
serviceTCP:
|
||||
enabled: false
|
||||
externalIPs: []
|
||||
type: NodePort
|
||||
externalTrafficPolicy: Local
|
||||
loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: blocky-svc
|
||||
|
||||
serviceUDP:
|
||||
enabled: true
|
||||
externalIPs: []
|
||||
type: NodePort
|
||||
externalTrafficPolicy: Local
|
||||
loadBalancerIP: ""
|
||||
# a fixed LoadBalancer IP
|
||||
annotations: {}
|
||||
# metallb.universe.tf/address-pool: network-services
|
||||
# metallb.universe.tf/allow-shared-ip: blocky-svc
|
||||
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
additionalLabels: {}
|
||||
|
||||
## Pod Annotations
|
||||
podAnnotations:
|
||||
prometheus.io/scrape: "true"
|
||||
prometheus.io/port: "api"
|
||||
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# memory: 500Mi
|
||||
# requests:
|
||||
# cpu: 50m
|
||||
# memory: 275Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
|
||||
## Add any extra files you want populated to /app here, e.g.:
|
||||
# extraLists:
|
||||
# whitelist.txt: |
|
||||
# analytics.google.com
|
||||
# googleadservices.com
|
||||
extraLists: {}
|
||||
|
||||
@@ -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.2.1
|
||||
version: 4.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- booksonic
|
||||
@@ -18,4 +18,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# booksonic-air
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
Booksonic is a platform for accessing the audibooks you own wherever you are
|
||||
|
||||
@@ -19,7 +19,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -83,15 +83,15 @@ by not constantly monitoring media folders.
|
||||
| image.repository | string | `"linuxserver/booksonic-air"` | |
|
||||
| image.tag | string | `"v2009.1.0-ls2"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.audiobooks.emptyDir | bool | `false` | |
|
||||
| persistence.audiobooks.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.audiobooks.enabled | bool | `false` | |
|
||||
| persistence.audiobooks.mountPath | string | `"/audiobooks"` | |
|
||||
| persistence.config.emptyDir | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.othermedia.emptyDir | bool | `false` | |
|
||||
| persistence.othermedia.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.othermedia.enabled | bool | `false` | |
|
||||
| persistence.othermedia.mountPath | string | `"/othermedia"` | |
|
||||
| persistence.podcasts.emptyDir | bool | `false` | |
|
||||
| persistence.podcasts.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.podcasts.enabled | bool | `false` | |
|
||||
| persistence.podcasts.mountPath | string | `"/podcasts"` | |
|
||||
| service.port.port | int | `4040` | |
|
||||
|
||||
@@ -29,11 +29,13 @@ ingress:
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
|
||||
audiobooks:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /audiobooks
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
@@ -49,9 +51,11 @@ persistence:
|
||||
# existingClaim: ""
|
||||
podcasts:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /podcasts
|
||||
othermedia:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
mountPath: /othermedia
|
||||
|
||||
@@ -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.2.1
|
||||
version: 6.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- calibre
|
||||
@@ -18,4 +18,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# calibre-web
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
|
||||
|
||||
@@ -19,7 +19,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -81,9 +81,9 @@ N/A
|
||||
| image.repository | string | `"linuxserver/calibre-web"` | |
|
||||
| image.tag | string | `"version-0.6.9"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.books.emptyDir | bool | `false` | |
|
||||
| persistence.books.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.books.enabled | bool | `false` | |
|
||||
| persistence.config.emptyDir | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| service.port.port | int | `8083` | |
|
||||
| strategy.type | string | `"Recreate"` | |
|
||||
|
||||
@@ -30,11 +30,13 @@ ingress:
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
|
||||
books:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
emptyDir:
|
||||
enabled: false
|
||||
## Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
---
|
||||
|
||||
apiVersion: v2
|
||||
appVersion: 5.13.0
|
||||
appVersion: 5.14.0
|
||||
description: Calibre is a powerful and easy to use e-book manager.
|
||||
name: calibre
|
||||
version: 1.0.1
|
||||
version: 3.1.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- calibre
|
||||
@@ -19,4 +19,4 @@ maintainers:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# calibre
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
Calibre is a powerful and easy to use e-book manager.
|
||||
|
||||
@@ -19,7 +19,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 1.0.0 |
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -77,22 +77,21 @@ N/A
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| env.CLI_ARGS | string | `nil` | Optionally pass cli start arguments to calibre. |
|
||||
| env.GUAC_PASS | string | `nil` | Password's md5 hash for the calibre desktop gui |
|
||||
| env.GUAC_USER | string | `nil` | Username for the calibre desktop gui |
|
||||
| env.GUAC_PASS | string | `nil` | Password's md5 hash for the calibre gui |
|
||||
| env.GUAC_USER | string | `nil` | Username for the calibre gui |
|
||||
| env.PGID | string | `"1000"` | for GroupID |
|
||||
| env.PUID | string | `"1000"` | for UserID |
|
||||
| env.TZ | string | `nil` | Set the time zone, e.g. Europe/Amsterdam |
|
||||
| env.UMASK_SET | string | `"022"` | for umask setting of Calibre, default if left unset is 022. |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | |
|
||||
| image.repository | string | `"linuxserver/calibre"` | |
|
||||
| image.tag | string | `"version-v5.13.0"` | |
|
||||
| image.tag | string | `"version-v5.14.0"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| nodeSelector."kubernetes.io/arch" | string | `"amd64"` | |
|
||||
| persistence.config.accessMode | string | `"ReadWriteOnce"` | |
|
||||
| persistence.config.emptyDir | bool | `false` | |
|
||||
| persistence.config.emptyDir.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.config.size | string | `"1Gi"` | |
|
||||
| service.port | object | `{"name":"desktopgui","port":8080,"targetPort":8080}` | The default port is 8080 |
|
||||
| service.additionalPorts[0].name | string | `"calibre-server"` | |
|
||||
| service.additionalPorts[0].port | int | `8081` | |
|
||||
| service.port | object | `{"name":"gui","port":8080}` | The default port is 8080 |
|
||||
| strategy.type | string | `"Recreate"` | |
|
||||
|
||||
## Changelog
|
||||
@@ -101,21 +100,30 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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).
|
||||
|
||||
### [0.0.1]
|
||||
### [3.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
- First version of the helm chart for wikijs
|
||||
- Added additional port to the service for when calibre-server is running.
|
||||
|
||||
#### Changed
|
||||
|
||||
- N/A
|
||||
- Updated default image tag to `version-v5.14.0`
|
||||
- Renamed default port from `desktopgui` to `gui`
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
- Removed default `nodeSelector`
|
||||
- Removed default values for `accessMode` and `size` under `persistence.config`.
|
||||
|
||||
[0.0.1]: #0.0.1
|
||||
### [1.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
- Initial version
|
||||
|
||||
[3.0.0]: #2.0.0
|
||||
[1.0.0]: #1.0.0
|
||||
|
||||
## Support
|
||||
|
||||
|
||||
@@ -9,19 +9,29 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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).
|
||||
|
||||
### [0.0.1]
|
||||
### [3.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
- First version of the helm chart for wikijs
|
||||
- Added additional port to the service for when calibre-server is running.
|
||||
|
||||
#### Changed
|
||||
|
||||
- N/A
|
||||
- Updated default image tag to `version-v5.14.0`
|
||||
- Renamed default port from `desktopgui` to `gui`
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
- Removed default `nodeSelector`
|
||||
- Removed default values for `accessMode` and `size` under `persistence.config`.
|
||||
|
||||
[0.0.1]: #0.0.1
|
||||
|
||||
### [1.0.0]
|
||||
|
||||
#### Added
|
||||
|
||||
- Initial version
|
||||
|
||||
[3.0.0]: #2.0.0
|
||||
[1.0.0]: #1.0.0
|
||||
{{- end -}}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
image:
|
||||
repository: linuxserver/calibre
|
||||
pullPolicy: IfNotPresent
|
||||
tag: version-v5.13.0
|
||||
tag: version-v5.14.0
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
@@ -23,9 +23,9 @@ env:
|
||||
PUID: "1000"
|
||||
# -- for GroupID
|
||||
PGID: "1000"
|
||||
# -- Username for the calibre desktop gui
|
||||
# -- Username for the calibre gui
|
||||
GUAC_USER:
|
||||
# -- Password's md5 hash for the calibre desktop gui
|
||||
# -- Password's md5 hash for the calibre gui
|
||||
GUAC_PASS:
|
||||
# -- for umask setting of Calibre, default if left unset is 022.
|
||||
UMASK_SET: "022"
|
||||
@@ -36,19 +36,16 @@ service:
|
||||
# -- The default port is 8080
|
||||
port:
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
name: desktopgui
|
||||
name: gui
|
||||
additionalPorts:
|
||||
- name: calibre-server
|
||||
port: 8081
|
||||
|
||||
ingress:
|
||||
# enable this if you would like to access you wiki
|
||||
enabled: false
|
||||
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: amd64
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
emptyDir: false
|
||||
accessMode: "ReadWriteOnce"
|
||||
size: "1Gi"
|
||||
emptyDir:
|
||||
enabled: false
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: comcast
|
||||
version: 3.0.2
|
||||
version: 3.0.3
|
||||
appVersion: 1.0.0
|
||||
description: periodic comcast data usage checks and save the results to InfluxDB
|
||||
keywords:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# comcast
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
periodic comcast data usage checks and save the results to InfluxDB
|
||||
|
||||
@@ -77,7 +77,7 @@ helm install comcast k8s-at-home/comcast -f values.yaml
|
||||
|
||||
## 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
@@ -127,4 +127,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
- 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)
|
||||
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
|
||||
|
||||
@@ -92,7 +92,7 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
|
||||
{{- 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
{{ template "chart.valuesTable" . }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
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.2.1
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- ddclient
|
||||
- dns
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/ddclient
|
||||
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/ddclient-logo.png
|
||||
sources:
|
||||
- https://github.com/ddclient/ddclient
|
||||
- https://hub.docker.com/r/linuxserver/ddclient
|
||||
maintainers:
|
||||
- name: billimek
|
||||
email: jeff@billimek.com
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 1.0.0
|
||||
@@ -1,2 +0,0 @@
|
||||
service:
|
||||
enabled: false
|
||||
@@ -1,48 +0,0 @@
|
||||
#
|
||||
# IMPORTANT NOTE
|
||||
#
|
||||
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||
#
|
||||
|
||||
image:
|
||||
repository: linuxserver/ddclient
|
||||
pullPolicy: IfNotPresent
|
||||
tag: version-v3.9.1
|
||||
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
env: {}
|
||||
# TZ:
|
||||
# PUID:
|
||||
# PGID:
|
||||
|
||||
service:
|
||||
enabled: false
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: false
|
||||
readiness:
|
||||
enabled: false
|
||||
startup:
|
||||
enabled: false
|
||||
|
||||
config: |
|
||||
# This is the configuration for ddclient
|
||||
# Inorder for it to function you need to set it up
|
||||
# e.g. this is the config for Cloudflare
|
||||
daemon=600
|
||||
use=web
|
||||
web=dynamicdns.park-your-domain.com/getip
|
||||
protocol=cloudflare
|
||||
ssl=yes
|
||||
ttl=1
|
||||
login=${CF_EMAIL}
|
||||
password=${CF_GLOBAL_APIKEY}
|
||||
zone=${DOMAIN}.${TLD}
|
||||
${DOMAIN}.${TLD}
|
||||
@@ -14,10 +14,13 @@
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*.orig
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
.vscode/
|
||||
# OWNERS file for Kubernetes
|
||||
OWNERS
|
||||
# helm-docs templates
|
||||
*.gotmpl
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
apiVersion: v2
|
||||
appVersion: 2.10.03
|
||||
description: deCONZ is an easy to use control software, with which you can set up and control Zigbee networks of any size without further programming effort.
|
||||
name: deconz
|
||||
description: A Helm chart for deploying deCONZ
|
||||
version: 2.0.3
|
||||
appVersion: 2.05.80
|
||||
version: 4.2.0
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- deconz
|
||||
- home-automation
|
||||
- zigbee
|
||||
- conbee
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/deconz
|
||||
icon: https://avatars1.githubusercontent.com/u/4217524?s=400&v=4
|
||||
sources:
|
||||
@@ -15,3 +17,7 @@ sources:
|
||||
maintainers:
|
||||
- name: billimek
|
||||
email: jeff@billimek.com
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.k8s-at-home.com
|
||||
version: 2.2.0
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# deconz
|
||||
|
||||
 
|
||||
 
|
||||
|
||||
A Helm chart for deploying deCONZ
|
||||
deCONZ is an easy to use control software, with which you can set up and control Zigbee networks of any size without further programming effort.
|
||||
|
||||
**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)**
|
||||
|
||||
@@ -13,10 +13,13 @@ A Helm chart for deploying deCONZ
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.16.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
|
||||
|
||||
## TL;DR
|
||||
|
||||
@@ -69,69 +72,27 @@ N/A
|
||||
|
||||
## 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| affinity | object | `{}` | Affinity settings for pod assignment |
|
||||
| autoscaling.enabled | bool | `false` | Enables Pod auto-scaling |
|
||||
| autoscaling.maxReplicas | int | `1` | Maximum number of replicas to auto-scale to |
|
||||
| autoscaling.minReplicas | int | `1` | Minimum number of replicas to auto-scale to |
|
||||
| extraVolumes | list | `[]` | Optionally add additional Volumes Volumes will be mounted to the folder specified under mountPath If no mountPath is set it will be mounted to /mnt/<name> |
|
||||
| fullnameOverride | string | `""` | |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| image.repository | string | `"marthoc/deconz"` | Image repository |
|
||||
| image.tag | string | `"amd64-2.05.80"` | Image tag. Possible values listed [here](https://hub.docker.com/r/marthoc/deconz/tags/). |
|
||||
| imagePullSecrets | list | `[]` | |
|
||||
| ingress.annotations | object | `{}` | Ingress annotations |
|
||||
| ingress.enabled | bool | `false` | Enables Ingress |
|
||||
| ingress.hosts | list | `[{"host":"deconz.local"}]` | Ingress accepted hostnames |
|
||||
| ingress.labels | object | `{}` | |
|
||||
| ingress.path | string | `"/"` | Ingress path |
|
||||
| ingress.tls | list | `[]` | Ingress TLS configuration |
|
||||
| nameOverride | string | `""` | |
|
||||
| nodeSelector | object | `{}` | Node labels for pod assignment |
|
||||
| persistence.accessMode | string | `"ReadWriteOnce"` | Use an existing PVC to persist data existingClaim: deconz-data -- Persistence access mode |
|
||||
| persistence.annotations | object | `{}` | Key-value pairs to add as persistent volume claim annotations |
|
||||
| persistence.enabled | bool | `false` | Use persistent volume to store configuration data |
|
||||
| persistence.size | string | `"1Gi"` | Size of persistent volume claim |
|
||||
| podAnnotations | object | `{}` | Key-value pairs to add as pod annotations |
|
||||
| podSecurityContext | object | `{}` | |
|
||||
| probes.liveness.enabled | bool | `true` | Enables liveness probe for the Pod |
|
||||
| probes.liveness.failureThreshold | int | `5` | Specify liveness `failureThreshold` parameter for the Pod |
|
||||
| probes.liveness.initialDelaySeconds | int | `30` | Specify liveness `initialDelaySeconds` parameter for the Pod |
|
||||
| probes.liveness.timeoutSeconds | int | `10` | Specify liveness `timeoutSeconds` parameter for the Pod |
|
||||
| probes.readiness.enabled | bool | `true` | Enables readiness probe for the Pod |
|
||||
| probes.readiness.failureThreshold | int | `5` | Specify readiness `failureThreshold` parameter for the Pod |
|
||||
| probes.readiness.initialDelaySeconds | int | `30` | Specify readiness `initialDelaySeconds` parameter for the Pod |
|
||||
| probes.startup.enabled | bool | `false` | Enables startup probe for the Pod |
|
||||
| probes.startup.failureThreshold | int | `30` | Specify startup `failureThreshold` parameter for the Pod |
|
||||
| probes.startup.periodSeconds | int | `10` | Specify startup `periodSeconds` parameter for the Pod |
|
||||
| replicaCount | int | `1` | Number of replicas to scale to |
|
||||
| resources | object | `{}` | CPU/Memory resource requests/limits |
|
||||
| securityContext.privileged | bool | `true` | |
|
||||
| service.annotations | object | `{}` | Service annotations for the GUI |
|
||||
| service.clusterIP | string | `""` | |
|
||||
| service.externalIPs | list | `[]` | |
|
||||
| service.externalTrafficPolicy | string | `"Local"` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
|
||||
| service.httpPort | int | `80` | Kubernetes port where the GUI is exposed |
|
||||
| service.labels | object | `{}` | Custom labels |
|
||||
| service.loadBalancerIP | string | `""` | Loadbalancer IP for the GUI |
|
||||
| service.loadBalancerSourceRanges | string | `nil` | List of IP CIDRs allowed access to load balancer (if supported) |
|
||||
| service.type | string | `"ClusterIP"` | Kubernetes service type for the GUI |
|
||||
| service.vncPort | int | `5900` | Kubernetes port where the VNC server is exposed |
|
||||
| service.websocketPort | int | `443` | Kubernetes port where the websocket is exposed |
|
||||
| serviceAccount.annotations | object | `{}` | Annotations to add to the service account |
|
||||
| serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
|
||||
| serviceAccount.name | string | `""` | The name of the service account to use. @default: a name is generated using the fullname template |
|
||||
| strategyType | string | `"Recreate"` | Specifies the strategy used to replace old Pods by new ones |
|
||||
| timezone | string | `"UTC"` | Timezone the instance should run as, e.g. 'America/New_York' |
|
||||
| tolerations | list | `[]` | Toleration labels for pod assignment |
|
||||
| vnc.enabled | bool | `true` | Enabled the built-in VNC server to access the application |
|
||||
| vnc.existingSecret | string | `""` | Existing Kubernetes secret containing the VNC password |
|
||||
| vnc.password | string | `"changeme"` | VNC server password |
|
||||
| zigbeeDevice.enabled | bool | `false` | Enables passing through a Zigbee device |
|
||||
| zigbeeDevice.hostPath | string | `"/dev/ttyUSB1"` | HostPath of the Zigbee device that should be passed through |
|
||||
| env.DECONZ_VNC_MODE | int | `1` | |
|
||||
| env.DECONZ_VNC_PORT | int | `5900` | |
|
||||
| env.DECONZ_WEB_PORT | int | `80` | |
|
||||
| env.DECONZ_WS_PORT | int | `443` | |
|
||||
| env.TZ | string | `"UTC"` | |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | |
|
||||
| image.repository | string | `"marthoc/deconz"` | |
|
||||
| image.tag | string | `"amd64-2.10.03"` | |
|
||||
| ingress.enabled | bool | `false` | |
|
||||
| persistence.config.enabled | bool | `false` | |
|
||||
| persistence.config.mountPath | string | `"/root/.local/share/dresden-elektronik/deCONZ"` | |
|
||||
| service.additionalPorts[0].name | string | `"websocket"` | |
|
||||
| service.additionalPorts[0].port | int | `443` | |
|
||||
| service.additionalPorts[1].name | string | `"vnc"` | |
|
||||
| service.additionalPorts[1].port | int | `5900` | |
|
||||
| service.port.port | int | `80` | |
|
||||
| strategy.type | string | `"Recreate"` | |
|
||||
|
||||
## Changelog
|
||||
|
||||
@@ -139,21 +100,21 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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.2]
|
||||
### [3.0.0]
|
||||
|
||||
#### Added
|
||||
#### Migration !breaking change!
|
||||
|
||||
- N/A
|
||||
This version migrates the chart to the common dependency. If you have used prior versions that had version labels
|
||||
attached to the volume template of the `StatefulSet`, you will need to remove the `StatefulSet` manually prior to update
|
||||
or the update will fail until it's removed.
|
||||
|
||||
If you used auto provisioning on the config volume, a new volume will be created upon update. It is recommended to **backup**
|
||||
the prior configuration using Phoscon App (deCONZ frontend) and restore it on a fresh installation (default password on fresh installation: `delight`).
|
||||
This will preserve all devices, settings and access tokens. The configuration can also be restored by copying files over from the old volume.
|
||||
|
||||
#### Changed
|
||||
|
||||
- move to helm-docs
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
|
||||
[2.0.2]: #2.0.2
|
||||
- Initial release using common chart
|
||||
|
||||
## Support
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -
|
||||
{{- 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/library-charts/tree/main/charts/stable/common/)
|
||||
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||
|
||||
{{ template "chart.valuesTable" . }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -9,19 +9,19 @@ All notable changes to this application Helm chart will be documented in this fi
|
||||
|
||||
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.2]
|
||||
### [3.0.0]
|
||||
|
||||
#### Added
|
||||
#### Migration !breaking change!
|
||||
|
||||
- N/A
|
||||
This version migrates the chart to the common dependency. If you have used prior versions that had version labels
|
||||
attached to the volume template of the `StatefulSet`, you will need to remove the `StatefulSet` manually prior to update
|
||||
or the update will fail until it's removed.
|
||||
|
||||
If you used auto provisioning on the config volume, a new volume will be created upon update. It is recommended to **backup**
|
||||
the prior configuration using Phoscon App (deCONZ frontend) and restore it on a fresh installation (default password on fresh installation: `delight`).
|
||||
This will preserve all devices, settings and access tokens. The configuration can also be restored by copying files over from the old volume.
|
||||
|
||||
#### Changed
|
||||
|
||||
- move to helm-docs
|
||||
|
||||
#### Removed
|
||||
|
||||
- N/A
|
||||
|
||||
[2.0.2]: #2.0.2
|
||||
- Initial release using common chart
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,22 +1 @@
|
||||
{{- $svcPort := .Values.service.httpPort -}}
|
||||
1. Get the application URL by running these commands:
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- range $host := .Values.ingress.hosts }}
|
||||
{{- range .paths }}
|
||||
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- else if contains "NodePort" .Values.service.type }}
|
||||
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "deconz.fullname" . }})
|
||||
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||
echo http://$NODE_IP:$NODE_PORT
|
||||
{{- else if contains "LoadBalancer" .Values.service.type }}
|
||||
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
|
||||
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "deconz.fullname" . }}'
|
||||
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "deconz.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
|
||||
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 "deconz.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
|
||||
echo "Visit http://127.0.0.1:8080 to use your application"
|
||||
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:{{ $svcPort }}
|
||||
{{- end }}
|
||||
{{- include "common.notes.defaultNotes" . -}}
|
||||
|
||||
@@ -1,114 +0,0 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "deconz.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 "deconz.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 "deconz.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "deconz.labels" -}}
|
||||
helm.sh/chart: {{ include "deconz.chart" . }}
|
||||
{{ include "deconz.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "deconz.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "deconz.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "deconz.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "deconz.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Return true if a secret object should be created
|
||||
*/}}
|
||||
{{- define "deconz.createSecret" -}}
|
||||
{{- if .Values.vnc.existingSecret }}
|
||||
{{- else -}}
|
||||
{{- true -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Get the password secret.
|
||||
*/}}
|
||||
{{- define "deconz.secretName" -}}
|
||||
{{- if .Values.vnc.existingSecret }}
|
||||
{{- printf "%s" .Values.vnc.existingSecret -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s" (include "deconz.fullname" .) -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Get the additional volumes
|
||||
*/}}
|
||||
{{- define "deconz.extraVolumes" -}}
|
||||
{{- if .Values.extraVolumes }}
|
||||
{{- $extraVolumes := .Values.extraVolumes -}}
|
||||
{{- range $extraVolumes }}
|
||||
{{- $_ := unset . "mountPath" }}
|
||||
{{- end }}
|
||||
{{- toYaml $extraVolumes }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Get the additional volumeMounts
|
||||
*/}}
|
||||
{{- define "deconz.extraVolumeMounts" -}}
|
||||
{{- if .Values.extraVolumes }}
|
||||
{{- $extraVolumeMounts := list -}}
|
||||
{{- range .Values.extraVolumes }}
|
||||
{{- if .mountPath }}
|
||||
{{- $extraVolumeMounts = dict "name" .name "mountPath" .mountPath | append $extraVolumeMounts -}}
|
||||
{{- else }}
|
||||
{{- $extraVolumeMounts = dict "name" .name "mountPath" (printf "/mnt/%s" .name) | append $extraVolumeMounts -}}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- toYaml $extraVolumeMounts }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
1
charts/stable/deconz/templates/common.yaml
Normal file
1
charts/stable/deconz/templates/common.yaml
Normal file
@@ -0,0 +1 @@
|
||||
{{ include "common.all" . }}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user