Compare commits

...

5 Commits

Author SHA1 Message Date
Vegetto
8c7886aca6 [postgres-cluster] New chart to create Postgres clusters with local storage (#739)
* first release of postgres-cluster

* increase path version

* Fix .Values access

* Use common.labels.selectorLabels

* 1.0.4 - Use .Value and not $.Value

* 1.0.5 - fix schedule

* 1.0.6

* 1.0.6 - Remove unneded service

* 1.0.8

* 1.0.9 - fix .Value.replicaNodes

* 1.0.10

* move chart

* WIP

* Ready for test

* update readme

* fix secret name

* Merge branch 'postgres-cluster'

* add labels

* gen secret

* fix labels

* keep DB content

* Ready to submit

* rename chart

Co-authored-by: angelnu <git@angelnucom>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-04-01 07:24:16 -04:00
ᗪєνιη ᗷυнʟ
64b0f9e85c [adguard-home] migrate to common (#741)
* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common

* feat: migrate adguard-home to common
2021-03-31 22:27:05 -04:00
ᗪєνιη ᗷυнʟ
1f6a7848f7 [stash] new chart (#740)
* feat: stash app

* feat: stash app

* feat: stash app

* feat: stash app

* feat: stash app

* feat: stash app
2021-03-31 13:39:48 -04:00
Vegetto
9992a5d4cc Add CHART_TYPE to tasks (#737)
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-03-30 06:51:04 -04:00
ᗪєνιη ᗷυнʟ
5714a48d9b fix: update releases (#736) 2021-03-29 19:56:40 -04:00
139 changed files with 1537 additions and 1186 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -22,3 +22,5 @@
.vscode/
# OWNERS file for Kubernetes
OWNERS
# helm-docs templates
*.gotmpl

View File

@@ -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.3
version: 3.0.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.1.0

View File

@@ -1,6 +1,6 @@
# adguard-home
![Version: 2.2.2](https://img.shields.io/badge/Version-2.2.2-informational?style=flat-square) ![AppVersion: v0.102.0](https://img.shields.io/badge/AppVersion-v0.102.0-informational?style=flat-square)
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: v0.105.2](https://img.shields.io/badge/AppVersion-v0.105.2-informational?style=flat-square)
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.1.0 |
## TL;DR
@@ -72,165 +75,35 @@ N/A
| 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
@@ -262,4 +135,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)

View File

@@ -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 -}}

View 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

View File

@@ -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" . -}}

View File

@@ -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 -}}

View 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" . }}

View File

@@ -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 -}}

View File

@@ -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 }}

View File

@@ -1,208 +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
{{- with .Values.persistence.work.subPath }}
subPath: {{ . }}
{{- end }}
readOnly: false
- name: config
mountPath: /opt/adguardhome/conf
{{- with .Values.persistence.config.subPath }}
subPath: {{ . }}
{{- end }}
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
{{- with .Values.persistence.work.subPath }}
subPath: {{ . }}
{{- end }}
readOnly: false
- name: config
mountPath: /opt/adguardhome/conf
{{- with .Values.persistence.config.subPath }}
subPath: {{ . }}
{{- end }}
readOnly: false
{{- if .Values.tlsSecretName }}
- name: certs
mountPath: /certs
readOnly: false
{{- end }}
ports:
- name: http
{{- if .Values.configAsCode.enabled }}
containerPort: {{ .Values.configAsCode.config.bind_port | default 3000 }}
{{- else }}
containerPort: 3000
{{- end }}
- name: dns
{{- if .Values.configAsCode.enabled }}
containerPort: {{ .Values.configAsCode.config.dns.port | default 53 }}
{{- else }}
containerPort: 53
{{- end }}
protocol: TCP
- name: dns-udp
{{- if .Values.configAsCode.enabled }}
containerPort: {{ .Values.configAsCode.config.dns.port | default 53 }}
{{- else }}
containerPort: 53
{{- end }}
protocol: UDP
{{- if .Values.serviceDHCP.enabled }}
- name: dhcp-server-udp
containerPort: 67
protocol: UDP
- name: dhcp-client-tcp
containerPort: 68
protocol: TCP
- name: dhcp-client-udp
containerPort: 68
protocol: UDP
{{- end }}
{{- if .Values.serviceDNSOverTLS.enabled }}
- name: dns-over-tls
containerPort: 853
protocol: TCP
{{- end }}
{{- if .Values.probes.liveness.enabled }}
livenessProbe:
httpGet:
path: /login.html
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.liveness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.liveness.failureThreshold }}
periodSeconds: {{ .Values.probes.liveness.periodSeconds }}
{{- end }}
{{- if .Values.probes.readiness.enabled }}
readinessProbe:
httpGet:
path: /login.html
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.readiness.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.readiness.failureThreshold }}
periodSeconds: {{ .Values.probes.readiness.periodSeconds }}
{{- end }}
{{- if .Values.probes.startup.enabled }}
startupProbe:
httpGet:
path: /login.html
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.probes.startup.initialDelaySeconds }}
failureThreshold: {{ .Values.probes.startup.failureThreshold }}
periodSeconds: {{ .Values.probes.startup.periodSeconds }}
{{- end }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumes:
{{- if .Values.tlsSecretName }}
- name: certs
secret:
secretName: {{ .Values.tlsSecretName }}
{{- end }}
{{- if .Values.configAsCode.enabled }}
- name: configmap
configMap:
name: {{ include "adguard-home.fullname" . }}
{{- end }}
- name: config
{{- if .Values.persistence.config.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.config.existingClaim }}{{ .Values.persistence.config.existingClaim }}{{- else }}{{ template "adguard-home.fullname" . }}-config{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
- name: work
{{- if .Values.persistence.work.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.work.existingClaim }}{{ .Values.persistence.work.existingClaim }}{{- else }}{{ template "adguard-home.fullname" . }}-work{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@@ -1,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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 -}}

View File

@@ -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

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 10.6.2
description: Airsonic is a Free and Open Source community driven media server
name: airsonic
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- airsonic

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.4.2
description: Bot for Prometheus Alertmanager
name: alertmanager-bot
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- alertmanager

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 4.0.5
description: AppDaemon is a loosely coupled, multi-threaded, sandboxed python execution environment for writing automation apps for various types of Home Automation Software including Home Assistant and MQTT.
name: appdaemon
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- appdaemon

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v0.9.0.5
description: Bazarr is a companion application to Sonarr and Radarr. It manages and downloads subtitles based on your requirements
name: bazarr
version: 7.1.0
version: 7.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- bazarr

View File

@@ -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.0
appVersion: 1.18.0
keywords:
- bitwarden

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v0.13
description: DNS proxy as ad-blocker for local network
name: blocky
version: 6.1.0
version: 6.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- blocky

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2009.1.0
description: Booksonic is a platform for accessing the audibooks you own wherever you are
name: booksonic-air
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- booksonic

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.6.9
description: Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
name: calibre-web
version: 6.1.0
version: 6.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- calibre

View File

@@ -4,7 +4,7 @@ apiVersion: v2
appVersion: 5.13.0
description: Calibre is a powerful and easy to use e-book manager.
name: calibre
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- calibre

View File

@@ -2,7 +2,7 @@ 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
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- deconz

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2.0.3-2201906121747
description: Deluge is a torrent download client
name: deluge
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- deluge

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.3.0
description: Create live TV channel streams from media on your Plex servers.
name: dizquetv
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- dizqueTV

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.0.0
description: Cert-Manager Webhook for DNSMadeEasy
name: dnsmadeeasy-webhook
version: 2.1.0
version: 2.1.1
keywords:
- cert-manager
- dnsmadeeasy

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v4.9.0
description: DSMR-protocol reader, telegram data storage and energy consumption visualizer.
name: dsmr-reader
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- dsmr-reader

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.16.2
description: ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
name: esphome
version: 6.2.0
version: 6.2.1
kubeVersion: ">=1.16.0-0"
keywords:
- esphome

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.2.3
description: FlareSolverr is a proxy server to bypass Cloudflare protection
name: flaresolverr
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- flaresolverr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 4.1.1
description: Flood is a monitoring service for various torrent clients
name: flood
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- flood

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.17.0
description: FreshRSS is a self-hosted RSS feed aggregator
name: freshrss
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- freshrss

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: latest
description: Gaps searches through your Plex Server or local folders for all movies, then queries for known movies in the same collection.
name: gaps
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- plex

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v0.12.0
description: Music streaming server / subsonic server API implementation
name: gonic
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- music

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2.7.1
description: ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home
name: grocy
version: 6.1.0
version: 6.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- grocy

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.19.0
description: Healthchecks is a cron job monitoring service. It listens for HTTP requests and email messages ("pings") from your cron jobs and scheduled tasks ("checks"). When a ping does not arrive on time, Healthchecks sends out alerts.
name: healthchecks
version: 2.1.0
version: 2.1.1
keywords:
- cron
- monitoring

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2.2.2
description: An Application dashboard and launcher
name: heimdall
version: 6.1.0
version: 6.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- heimdall

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2021.3.4
description: Home Assistant
name: home-assistant
version: 7.2.0
version: 7.2.1
kubeVersion: ">=1.16.0-0"
keywords:
- home-assistant

View File

@@ -4,7 +4,7 @@ description: A dead simple static HOMepage for your servER to keep your services
icon: https://raw.githubusercontent.com/bastienwirtz/homer/main/public/logo.png
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/homer
name: homer
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
sources:
- https://github.com/bastienwirtz/homer

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2.0.0-alpha9
description: Hyperion is an opensource Bias or Ambient Lighting implementation
name: hyperion-ng
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- hyperion-ng

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2021.2.0
description: Create live map data from Valetudo powered robots
name: icantbelieveitsnotvaletudo
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- icantbelieveitsnotvaletudo

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v0.17.591
description: API Support for your favorite torrent trackers
name: jackett
version: 8.1.0
version: 8.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- jackett

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 10.7.0
description: Jellyfin is a Free Software Media System
name: jellyfin
version: 7.1.0
version: 7.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- jellyfin

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.7.2
description: This server allows you to sync any Joplin client
name: joplin-server
version: 2.1.0
version: 2.1.1
keywords:
- joplin
- notes

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.2.18
description: Kanboard is a free and open source Kanban project management software.
name: kanboard
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- kanboard

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.7.2
name: lazylibrarian
description: A Helm chart for deploying LazyLibrarian
version: 5.1.0
version: 5.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- lazylibrarian

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.8.0.1886
description: Looks and smells like Sonarr but made for music
name: lidarr
version: 8.1.0
version: 8.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- lidarr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 4.0.8
description: Lychee is a free photo-management tool, which runs on your server or web-space
name: lychee
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- lychee

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2.14.0
description: magic-mirror helm package
name: magic-mirror
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- magic-mirror

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2.0.28
description: Miniflux is a minimalist and opinionated feed reader.
name: miniflux
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- miniflux

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2.19.1
description: A Personal Relationship Management tool to help you organize your social life
name: monica
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- crm

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2.0.7
description: Eclipse Mosquitto - An open source MQTT broker
name: mosquitto
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- mosquitto

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.4.9.5
description: Mylar is the automated Comic Book downloader (cbr/cbz) for use with various download clients.
name: mylar
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- mylar

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.39.0
description: Navidrome is an open source web-based music collection server and streamer
name: navidrome
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- navidrome

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.3.0
description: Neolink - RTSP bridge to Reolink IP cameras
name: neolink
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- reolink

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v2.7.4-2061-g46c7da76
description: Network UPS Tools is a collection of programs which provide a common interface for monitoring and administering UPS, PDU and SCD hardware.
name: network-ups-tools
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- nut

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.2.5
description: Node-RED is low-code programming for event-driven applications
name: node-red
version: 7.1.0
version: 7.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- nodered

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v21.0
description: NZBGet is a Usenet downloader client
name: nzbget
version: 9.1.0
version: 9.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- nzbget

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v3.8.1
description: Usenet meta search
name: nzbhydra2
version: 7.1.0
version: 7.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- nzbhydra2

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.4.2
description: OctoPrint is the snappy web interface for your 3D printer
name: octoprint
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- octoprint

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 4.2.11
description: Omada enables the network administrators to monitor and manage all the Omada products in the network with a centralized management platform.
name: omada-controller
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- omada-controller

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 4.0.681
description: Want a Movie or TV Show on Plex or Emby? Use Ombi!
name: ombi
version: 9.1.0
version: 9.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- ombi

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: latest
description: HTPC/Homelab Services Organizer
name: organizr
version: 5.1.0
version: 5.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- organizr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.19.1
description: Overseerr is a free and open source software application for managing requests for your media library. It integrates with your existing services such as Sonarr, Radarr and Plex!
name: overseerr
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- overseerr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.0.0
description: Paperless - Index and archive all of your scanned paper documents
name: paperless
version: 5.1.0
version: 5.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- paperless

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: "20201122"
description: PhotoPrism® is a server-based application for browsing, organizing and sharing your personal photo collection
name: photoprism
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- photos

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v4.0
description: Program for forwarding ADS-B data to FlightAware
name: piaware
version: 6.1.0
version: 6.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- piaware

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.22.0.4163-d8c4875dd
description: Plex Media Server
name: plex
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- plex

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.0.1
description: Prometheus NUT Exporter a service monitor to send NUT server metrics to a Prometheus instance.
name: prometheus-nut-exporter
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- nut

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.5.7-1
description: Container for protonmail bridge to work on the network.
name: protonmail-bridge
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- protonmail

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.1.0.181
description: Indexer manager/proxy built on the popular arr net base stack to integrate with your various PVR apps.
name: prowlarr
version: 2.1.0
version: 2.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- prowlarr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.4.20
description: pyLoad is a Free and Open Source download manager written in Python and designed to be extremely lightweight, easily extensible and fully manageable via web.
name: pyload
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- pyload

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 4.3.0
description: qBittorrent is a cross-platform free and open-source BitTorrent client
name: qbittorrent
version: 9.1.0
version: 9.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- qbittorrent

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 3.0.2.4552
description: A fork of Sonarr to work with movies à la Couchpotato
name: radarr
version: 10.1.0
version: 10.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- radarr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.1.0.351
description: A fork of Radarr to work with Books & AudioBooks
name: readarr
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- readarr

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.13.0
description: Recipes is a Django application to manage, tag and search recipes using either built in models or external storage providers hosting PDF's, Images or other files.
name: recipes
version: 4.1.0
version: 4.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- recipes

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 2.7.2
description: Resilio Sync is a fast, reliable, and simple file sync and share solution, powered by P2P technology
name: resilio-sync
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- resilio

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: latest
description: rTorrent is a stable, high-performance and low resource consumption BitTorrent client.
name: rtorrent-flood
version: 6.2.0
version: 6.2.1
kubeVersion: ">=1.16.0-0"
keywords:
- rtorrent

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 3.1.0
description: Free and easy binary newsreader
name: sabnzbd
version: 6.1.0
version: 6.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- sabnzbd

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: latest
description: A simple in-cluster Samba server
name: samba
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- samba

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 0.18.0
description: Searx is a privacy-respecting, hackable metasearch engine
name: searx
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- searx

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.0.0
description: Serial to Socket Redirector
name: ser2sock
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- ser2sock

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.6.0
description: Sharry allows to share files with others in a simple way. It is a self-hosted web application. The basic concept is to upload files and get a url back that can then be shared.
name: sharry
version: 2.1.0
version: 2.1.1
keywords:
- file sharing
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/sharry

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 1.1.2
description: Manage hardware resource allocation without a need for privileged containers
name: smarter-device-manager
version: 3.1.0
version: 3.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- kubernetes

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 3.0.4.993
description: Smart PVR for newsgroup and bittorrent users
name: sonarr
version: 10.1.0
version: 10.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- sonarr

View File

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

View File

@@ -0,0 +1,19 @@
apiVersion: v2
appVersion: latest
description: An organizer for your porn, written in Go
name: stash
version: 1.0.0
kubeVersion: ">=1.16.0-0"
keywords:
- porn
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/stash
sources:
- https://github.com/stashapp/stash
- https://hub.docker.com/r/stashapp/stash
maintainers:
- name: onedr0p
email: devin.kray@gmail.com
dependencies:
- name: common
repository: https://library-charts.k8s-at-home.com
version: 2.1.0

View File

@@ -0,0 +1,122 @@
# stash
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square)
An organizer for your porn, written in Go
**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/stashapp/stash>
* <https://hub.docker.com/r/stashapp/stash>
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://library-charts.k8s-at-home.com | common | 2.1.0 |
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install stash k8s-at-home/stash
```
## Installing the Chart
To install the chart with the release name `stash`
```console
helm install stash k8s-at-home/stash
```
## Uninstalling the Chart
To uninstall the `stash` deployment
```console
helm uninstall stash
```
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 stash \
--set env.TZ="America/New York" \
k8s-at-home/stash
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install stash k8s-at-home/stash -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 | `"stashapp/stash"` | |
| image.tag | string | `"latest"` | |
| ingress.enabled | bool | `false` | |
| persistence.config.emptyDir.enabled | bool | `false` | |
| persistence.config.enabled | bool | `false` | |
| persistence.media.emptyDir.enabled | bool | `false` | |
| persistence.media.enabled | bool | `false` | |
| persistence.media.mountPath | string | `"/media"` | |
| service.port.port | int | `9999` | |
| 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
- N/A
#### Changed
- N/A
#### Removed
- N/A
[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)

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,16 @@
env:
STASH_STASH: "/media"
STASH_GENERATED: "/root/.stash/generated"
STASH_METADATA: "/root/.stash/metadata"
STASH_CACHE: "/root/.stash/cache"
persistence:
config:
enabled: true
emptyDir:
enabled: true
mountPath: /root/.stash
media:
enabled: true
emptyDir:
enabled: true
mountPath: /media

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