Compare commits

...

11 Commits

Author SHA1 Message Date
Vegetto
ba978447bf [tt-rss] Add chart tt-rss (#631)
Co-authored-by: angelnu <git@angelnucom>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-02-28 10:47:15 -05:00
Piotr Maksymiuk
201652581c [mosquitto] port to common (#626) 2021-02-28 10:07:26 +01:00
Jack Maloney
ceeab47aa6 [radarr] update radarr to version-3.0.2.4552 (#629)
Signed-off-by: Jack Maloney <jmmaloney4@gmail.com>
2021-02-28 09:47:15 +01:00
ᗪєνιη ᗷυнʟ
48c20bd85e [workflows] create issue workflows [ci-skip] (#621) 2021-02-24 05:43:56 -05:00
Nicholas Wilde
0129518222 Added wiki section and link (#624)
Signed-off-by: Nicholas Wilde <ncwilde43@gmail.com>
2021-02-24 07:21:22 +01:00
Patrick Collins
5e47a7c1df remove source line matching chart home in template (#623)
Signed-off-by: Patrick Collins <PatrickCP0@Gmail.com>
2021-02-24 06:14:34 +01:00
Patrick Collins
c2065fba97 [wallabag] new chart (#575) 2021-02-24 06:11:05 +01:00
paul-the-alien[bot]
2336f09bf8 Merge pull request #619 from jmmaloney4/oauth2-proxy-7.0.0
[oauth2-proxy] Update oauth2-proxy to 7.0.0
2021-02-23 23:01:54 +00:00
Jack Maloney
bd76ee081d [oauth2-proxy] update appVersion and image tag
Signed-off-by: Jack Maloney <jmmaloney4@gmail.com>
2021-02-23 16:55:33 -06:00
Jack Maloney
519d381a25 [oauth2-proxy] update oauth2-proxy to v7.0.1
Signed-off-by: Jack Maloney <jmmaloney4@gmail.com>
2021-02-23 16:46:03 -06:00
ᗪєνιη ᗷυнʟ
c46d2dc089 [meta] revert non-common chart readmes [ci-skip] (#620) 2021-02-23 16:00:03 -05:00
67 changed files with 2995 additions and 2929 deletions

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

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

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

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

View File

@@ -73,3 +73,7 @@ Charts should start at `1.0.0`. Any breaking (backwards incompatible) changes to
### pre-commit
This repo supports the [pre-commit](https://pre-commit.com) framework. By installing the framework (see [docs](https://pre-commit.com/#install)) it is possible to perform the chart linting step before committing your code. This can help prevent linter issues in the pipeline. Note that this requires having Docker running on your development environment.
## Wiki
See the [wiki](https://github.com/k8s-at-home/charts/wiki) for more information.

View File

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

View File

@@ -1,102 +1,58 @@
# bitwardenrs
# Unofficial Bitwarden compatible server written in Rust
![Version: 2.0.0](https://img.shields.io/badge/Version-2.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.18.0](https://img.shields.io/badge/AppVersion-1.18.0-informational?style=flat-square)
This is an opinionated helm chart for [bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs)
Unofficial Bitwarden compatible server written in Rust
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/bitwardenrs>
## TL;DR
## Maintainers
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/bitwardenrs
```
| Name | Email | Url |
| ---- | ------ | --- |
| DirtyCajunRice | nick@cajun.pro | |
## Installing the Chart
## Source Code
To install the chart with the release name `bitwarden`:
* <https://github.com/dani-garcia/bitwarden_rs>
```console
helm install bitwarden k8s-at-home/bitwardenrs
```
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| autoscaling.enabled | bool | `false` | |
| autoscaling.maxReplicas | int | `100` | |
| autoscaling.minReplicas | int | `1` | |
| autoscaling.targetCPUUtilizationPercentage | int | `80` | |
| bitwardenrs.admin.disableAdminToken | bool | `false` | |
| bitwardenrs.admin.enabled | bool | `true` | |
| bitwardenrs.admin.existingSecret.enabled | bool | `false` | |
| bitwardenrs.admin.existingSecret.name | string | `""` | |
| bitwardenrs.admin.existingSecret.tokenKey | string | `""` | |
| bitwardenrs.domain | string | `""` | |
| bitwardenrs.externalDatabase.database | string | `""` | |
| bitwardenrs.externalDatabase.enabled | bool | `false` | |
| bitwardenrs.externalDatabase.existingSecret.enabled | bool | `false` | |
| bitwardenrs.externalDatabase.existingSecret.name | string | `""` | |
| bitwardenrs.externalDatabase.existingSecret.passwordKey | string | `""` | |
| bitwardenrs.externalDatabase.existingSecret.userKey | string | `""` | |
| bitwardenrs.externalDatabase.host | string | `""` | |
| bitwardenrs.externalDatabase.password | string | `""` | |
| bitwardenrs.externalDatabase.port | string | `""` | |
| bitwardenrs.externalDatabase.type | string | `""` | |
| bitwardenrs.externalDatabase.user | string | `""` | |
| bitwardenrs.gui.port | int | `80` | |
| bitwardenrs.signupsAllowed | bool | `false` | |
| bitwardenrs.smtp.enabled | bool | `false` | |
| bitwardenrs.smtp.existingSecret.enabled | bool | `false` | |
| bitwardenrs.smtp.existingSecret.name | string | `""` | |
| bitwardenrs.smtp.existingSecret.passwordKey | string | `""` | |
| bitwardenrs.smtp.existingSecret.userKey | string | `""` | |
| bitwardenrs.smtp.from | string | `""` | |
| bitwardenrs.smtp.fromName | string | `""` | |
| bitwardenrs.smtp.host | string | `""` | |
| bitwardenrs.smtp.password | string | `""` | |
| bitwardenrs.smtp.port | int | `587` | |
| bitwardenrs.smtp.ssl | bool | `true` | |
| bitwardenrs.smtp.user | string | `""` | |
| bitwardenrs.websockets.enabled | bool | `true` | |
| bitwardenrs.websockets.port | int | `3012` | |
| bitwardenrs.yubico.clientId | string | `""` | |
| bitwardenrs.yubico.enabled | bool | `false` | |
| bitwardenrs.yubico.existingSecret.clientIdKey | string | `""` | |
| bitwardenrs.yubico.existingSecret.enabled | bool | `false` | |
| bitwardenrs.yubico.existingSecret.name | string | `""` | |
| bitwardenrs.yubico.existingSecret.secretKeyKey | string | `""` | |
| bitwardenrs.yubico.secretKey | string | `""` | |
| bitwardenrs.yubico.server | string | `""` | |
| env | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"bitwardenrs/server"` | |
| image.tag | string | `""` | |
| imagePullSecrets | list | `[]` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0].host | string | `"chart-example.local"` | |
| ingress.hosts[0].paths | list | `[]` | |
| ingress.tls | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `false` | |
| persistence.size | string | `"1Gi"` | |
| persistence.type | string | `"statefulset"` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.additionalSpec | object | `{}` | |
| service.annotations | object | `{}` | |
| service.labels | object | `{}` | |
| service.port | int | `80` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| tolerations | list | `[]` | |
To uninstall/delete the `bitwarden` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
helm uninstall bitwarden
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install bitwarden \
--set timeZone="America/New York" \
k8s-at-home/bitwardenrs
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install bitwarden k8s-at-home/bitwardenrs --values values.yaml
```
## Upgrading an existing Release to a new major version
A major chart version change (like 1.1.1 -> 2.0.0) indicates that there is an incompatible breaking change potentially needing manual actions.
### Upgrading from 1.x.x to 2.x.x
Chart version 2.0.0 introduces external database support.
* No actions required to continue with the default sqlite backend.
* Refer to the `bitwardenrs.externalDatabase` section of [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/bitwardenrs/values.yaml) to configure MySQL or PostgreSQL database backends.

File diff suppressed because one or more lines are too long

View File

@@ -1,41 +1,84 @@
# comcast
# Comcast Data Cap Usage Collector For InfluxDB and Grafana
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
![Screenshot](https://github.com/billimek/comcastUsage-for-influxdb/raw/master/images/comcast_grafana_example.png)
periodic comcast data usage checks and save the results to InfluxDB
This tool allows you to run periodic comcast data usage checks and save the results to Influxdb
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/comcast>
## TL;DR;
## Maintainers
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/comcast
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Introduction
## Source Code
This code is adopted from the work done by [barrycarey](https://github.com/barrycarey) in the [similar thing for capturing speedtest data](https://github.com/barrycarey/Speedtest-for-InfluxDB-and-Grafana) as well as [jantman's](https://github.com/jantman) [xfinity-usage python example](https://github.com/jantman/xfinity-usage)
* <https://github.com/billimek/comcastUsage-for-influxdb>
* <https://github.com/k8s-at-home/charts>
## Installing the Chart
## Values
To install the chart with the release name `my-release`:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| config.comcast.password | string | `"somepassword"` | |
| config.comcast.username | string | `"someuser"` | |
| config.delay | int | `3600` | |
| config.influxdb.database | string | `"comcast"` | |
| config.influxdb.host | string | `"influxdb-influxdb"` | |
| config.influxdb.port | int | `8086` | |
| config.influxdb.ssl | bool | `false` | |
| debug | bool | `false` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"billimek/comcastusage-for-influxdb"` | |
| image.tag | string | `"latest"` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
```console
$ helm install --name my-release k8s-at-home/comcast
```
## Uninstalling the Chart
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
To uninstall/delete the `my-release` deployment:
```console
$ helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The configuration is set as a block of text through a configmap and mounted as a file in /src/config.ini Any value in this text block should match the defined Comcast configuration. There are several values here that will have to match our kubernetes configuration.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
| ------------------------------- | ------------------------------- | ---------------------------------------------------------- |
| `image.repository` | Comcast image | `billimek/comcastusage-for-influxdb` |
| `image.tag` | Comcast image tag | `latest` |
| `image.pullPolicy` | Comcast image pull policy | `IfNotPresent` |
| `debug` | Display debugging output | `false` |
| `config.delay` | how many seconds to wait between checks | `3600` |
| `config.influxdb.host` | InfluxDB hostname | `influxdb-influxdb` |
| `config.influxdb.port` | InfluxDB port | `8086` |
| `config.influxdb.database` | InfluxDB database | `comcast` |
| `config.influxdb.username` | InfluxDB username | `` |
| `config.influxdb.password` | InfluxDB password | `` |
| `config.influxdb.ssl` | InfluxDB connection using SSL | `false` |
| `config.comcast.username` | Comcast website login usernma | `someuser` |
| `config.comcast.password` | Comcast website login password | `somepassword` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name my-release \
--set config.comcast.username=tonystark,config.comcast.password=mypassword \
k8s-at-home/comcast
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name my-release -f values.yaml k8s-at-home/comcast
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/comcast/values.yaml) file. It has several commented out suggested values.
## InfluxDB metrics
```
'measurement': 'comcast_data_usage',
'fields': {
'used',
'total',
'unit'
}
```

View File

@@ -1,82 +1,102 @@
# deconz
# deCONZ helm chart
![Version: 2.0.1](https://img.shields.io/badge/Version-2.0.1-informational?style=flat-square) ![AppVersion: 2.05.80](https://img.shields.io/badge/AppVersion-2.05.80-informational?style=flat-square)
This is a helm chart for [deCONZ](https://www.dresden-elektronik.de/funk/software/deconz.html) based on the [container image provided by marthoc](https://hub.docker.com/r/marthoc/deconz/).
A Helm chart for deploying deCONZ
## TL;DR
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/deconz>
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/deconz
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
To install the chart with the release name `my-release`:
## Source Code
```shell
helm install my-release k8s-at-home/deconz
```
* <https://github.com/dresden-elektronik/deconz-rest-plugin>
* <https://github.com/marthoc/docker-deconz>
## Uninstalling the Chart
## Values
To uninstall/delete the `my-release` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| autoscaling.enabled | bool | `false` | |
| autoscaling.maxReplicas | int | `1` | |
| autoscaling.minReplicas | int | `1` | |
| extraVolumes | list | `[]` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"marthoc/deconz"` | |
| image.tag | string | `"amd64-2.05.80"` | |
| imagePullSecrets | list | `[]` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0].host | string | `"deconz.local"` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.annotations | object | `{}` | |
| persistence.enabled | bool | `false` | |
| persistence.size | string | `"1Gi"` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| probes.liveness.enabled | bool | `true` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `30` | |
| probes.liveness.timeoutSeconds | int | `10` | |
| probes.readiness.enabled | bool | `true` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `30` | |
| probes.readiness.timeoutSeconds | int | `10` | |
| probes.startup.enabled | bool | `false` | |
| probes.startup.failureThreshold | int | `30` | |
| probes.startup.periodSeconds | int | `10` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext.privileged | bool | `true` | |
| service.clusterIP | string | `""` | |
| service.externalIPs | list | `[]` | |
| service.externalTrafficPolicy | string | `"Local"` | |
| service.httpPort | int | `80` | |
| service.loadBalancerIP | string | `""` | |
| service.type | string | `"ClusterIP"` | |
| service.vncPort | int | `5900` | |
| service.websocketPort | int | `443` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| strategyType | string | `"Recreate"` | |
| timezone | string | `"UTC"` | |
| tolerations | list | `[]` | |
| vnc.enabled | bool | `true` | |
| vnc.existingSecret | string | `""` | |
| vnc.password | string | `"changeme"` | |
| zigbeeDevice.enabled | bool | `false` | |
| zigbeeDevice.hostPath | string | `"/dev/ttyUSB1"` | |
```shell
helm delete my-release --purge
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/deconz/values.yaml) file. It has several commented out suggested values.
| Parameter | Description | Default |
| ------------------------------------------- | -------------------------------------------------------------------------------------------- | ---------------------------------------------- |
| `replicaCount` | Number of replicas to scale to | `1` |
| `autoscaling.enabled` | Enables Pod auto-scaling | `false` |
| `autoscaling.minReplicas` | Minimum number of replicas to auto-scale to | `1` |
| `autoscaling.maxReplicas` | Maximum number of replicas to auto-scale to | `1` |
| `image.repository` | Image repository | `marthoc/deconz` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/marthoc/deconz/tags/). | `amd64-2.05.79` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Timezone the instance should run as, e.g. 'America/New_York' | `UTC` |
| `zigbeeDevice.enabled` | Enables passing through a Zigbee device | `false` |
| `zigbeeDevice.hostPath` | HostPath of the Zigbee device that should be passed through | `/dev/ttyUSB1` |
| `vnc.enabled` | Enabled the built-in VNC server to access the application | `true` |
| `vnc.password` | VNC server password | `changeme` |
| `vnc.existingSecret` | Existing Kubernetes secret containing the VNC password | `nil` |
| `probes.liveness.enabled` | Enables liveness probe for the Pod | `true` |
| `probes.liveness.failureThreshold` | Specify liveness `failureThreshold` parameter for the Pod | `5` |
| `probes.liveness.initialDelaySeconds` | Specify liveness `initialDelaySeconds` parameter for the Pod | `60` |
| `probes.liveness.timeoutSeconds` | Specify liveness `timeoutSeconds` parameter for the Pod | `10` |
| `probes.readiness.enabled` | Enables readiness probe for the Pod | `true` |
| `probes.readiness.initialDelaySeconds` | Specify readiness `initialDelaySeconds` parameter for the Pod | `60` |
| `probes.readiness.failureThreshold` | Specify readiness `failureThreshold` parameter for the Pod | `5` |
| `probes.readiness.timeoutSeconds` | Specify readiness `timeoutSeconds` parameter for the Pod | `10` |
| `probes.startup.enabled` | Enables startup probe for the Pod | `false` |
| `probes.startup.failureThreshold` | Specify startup `failureThreshold` parameter for the Pod | `30` |
| `probes.startup.timeoutSeconds` | Specify startup `periodSeconds` parameter for the Pod | `10` |
| `service.type` | Kubernetes service type for the GUI | `ClusterIP` |
| `service.httpPort` | Kubernetes port where the GUI is exposed | `80` |
| `service.websocketPort` | Kubernetes port where the Websocket is exposed | `443` |
| `service.vncPort` | Kubernetes port where the VNC server is exposed | `5900` |
| `service.annotations` | Service annotations for the GUI | `{}` |
| `service.labels` | Custom labels | `{}` |
| `service.loadBalancerIP` | Loadbalancer IP for the GUI | `{}` |
| `service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | `nil` |
| `ingress.enabled` | Enables Ingress | `false` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.labels` | Custom labels | `{}` |
| `ingress.path` | Ingress path | `/` |
| `ingress.hosts` | Ingress accepted hostnames | `chart-example.local` |
| `ingress.tls` | Ingress TLS configuration | `[]` |
| `persistence.enabled` | Use persistent volume to store configuration data | `true` |
| `persistence.annotations` | Key-value pairs to add as persistent volume claim annotations | `{}` |
| `persistence.storageClass` | Type of persistent volume claim | `-` |
| `persistence.existingClaim` | Use an existing PVC to persist data | `nil` |
| `persistence.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.size` | Size of persistent volume claim | `1Gi` |
| `persistence.subPath` | Mount a sub dir of the persistent volume | `nil` |
| `extraVolumes` | Optionally add additional Volumes | `[]` |
| `resources` | CPU/Memory resource requests/limits | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `tolerations` | Toleration labels for pod assignment | `[]` |
| `affinity` | Affinity settings for pod assignment | `{}` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install my-release \
--set timezone="Europe/Amsterdam" \
k8s-at-home/deconz
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install my-release -f values.yaml k8s-at-home/deconz
```

View File

@@ -1,38 +1,62 @@
# digitalocean-dyndns
# Dynamic DNS using DigitalOcean's DNS Services
![Version: 2.0.1](https://img.shields.io/badge/Version-2.0.1-informational?style=flat-square) ![AppVersion: 1.0](https://img.shields.io/badge/AppVersion-1.0-informational?style=flat-square)
A script that pushes the public IP address of the running machine to DigitalOcean's DNS API's. It requires an existing A record to update. The resulting container image is roughly around 7 MB (thanks to Alpine Linux).
Dynamic DNS using DigitalOcean's DNS Services
## TL;DR;
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/digitalocean-dyndns>
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/digitalocean-dyndns
```
## Maintainers
## Introduction
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
This code is adopted from [this original repo](https://github.com/tunix/digitalocean-dyndns)
## Source Code
## Installing the Chart
* <https://github.com/tunix/digitalocean-dyndns>
* <https://github.com/k8s-at-home/charts>
To install the chart with the release name `my-release`:
## Values
```console
$ helm install --name my-release k8s-at-home/digitalocean-dyndns
```
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| digitialocean.domain | string | `"somedomain"` | |
| digitialocean.name | string | `"@"` | |
| digitialocean.sleep_interval | int | `300` | |
| digitialocean.token | string | `"sometoken"` | |
| image.pullPolicy | string | `"Always"` | |
| image.repository | string | `"tunix/digitalocean-dyndns"` | |
| image.tag | string | `"latest"` | |
| nodeSelector | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| tolerations | list | `[]` | |
To uninstall/delete the `my-release` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
$ helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
| ------------------------------- | ------------------------------- | ---------------------------------------------------------- |
| `image.repository` | digitalocean-dyndns image | `tunix/digitalocean-dyndns` |
| `image.tag` | digitalocean-dyndns image tag | `latest` |
| `image.pullPolicy` | digitalocean-dyndns image pull policy | `Always` |
| `digitialocean.token` | The token you generate in DigitalOcean's API settings. | `` |
| `digitialocean.domain` | The domain your subdomain is registered at. (i.e. foo.com for home.foo.com) | `` |
| `digitialocean.name` | Subdomain to use. (name in A record) (i.e. home for home.foo.com or @ for no subdomain) | `@` |
| `digitialocean.sleep_interval` | Polling time in seconds | `300` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name my-release \
--set config.digitalocean.token=thisismyapikey \
k8s-at-home/digitalocean-dyndns
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name my-release -f values.yaml k8s-at-home/digitalocean-dyndns
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/digitalocean-dyndns/values.yaml) file. It has several commented out suggested values.

View File

@@ -1,72 +1,109 @@
# duplicati
# Duplicati Backup Client
![Version: 2.0.1](https://img.shields.io/badge/Version-2.0.1-informational?style=flat-square) ![AppVersion: v2.0.5.1](https://img.shields.io/badge/AppVersion-v2.0.5.1-informational?style=flat-square)
This is a helm chart for [duplicati](https://github.com/duplicati/duplicati) leveraging the [Linuxserver.io image](https://hub.docker.com/r/linuxserver/duplicati/)
Store securely encrypted backups on cloud storage services!
## TL;DR;
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/duplicati>
```shell
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/duplicati
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| skaro13 | simon.caron@protonmail.com | |
To install the chart with the release name `my-release`:
## Source Code
```console
helm install my-release k8s-at-home/duplicati
```
* <https://hub.docker.com/r/linuxserver/duplicati/>
* <https://github.com/duplicati/duplicati>
## Uninstalling the Chart
## Values
To uninstall/delete the `my-release` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| cliArgs | string | `""` | |
| deploymentAnnotations | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"linuxserver/duplicati"` | |
| image.tag | string | `"v2.0.5.1-2.0.5.1_beta_2020-01-18-ls72"` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0] | string | `"chart-example.local"` | |
| ingress.labels | object | `{}` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.backups.accessMode | string | `"ReadWriteOnce"` | |
| persistence.backups.enabled | bool | `true` | |
| persistence.backups.size | string | `"1Gi"` | |
| persistence.backups.skipuninstall | bool | `false` | |
| persistence.config.accessMode | string | `"ReadWriteOnce"` | |
| persistence.config.enabled | bool | `true` | |
| persistence.config.size | string | `"1Gi"` | |
| persistence.config.skipuninstall | bool | `false` | |
| persistence.extraExistingClaimMounts | list | `[]` | |
| persistence.source.accessMode | string | `"ReadWriteOnce"` | |
| persistence.source.enabled | bool | `true` | |
| persistence.source.size | string | `"1Gi"` | |
| persistence.source.skipuninstall | bool | `false` | |
| pgid | int | `1001` | |
| podAnnotations | object | `{}` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `60` | |
| probes.liveness.timeoutSeconds | int | `10` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `60` | |
| probes.readiness.timeoutSeconds | int | `10` | |
| puid | int | `1001` | |
| resources | object | `{}` | |
| service.annotations | object | `{}` | |
| service.labels | object | `{}` | |
| service.loadBalancerIP | string | `nil` | |
| service.port | int | `8200` | |
| service.type | string | `"ClusterIP"` | |
| strategyType | string | `"Recreate"` | |
| timezone | string | `"UTC"` | |
| tolerations | list | `[]` | |
```console
helm delete my-release
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
|----------------------------|-------------------------------------|---------------------------------------------------------|
| `image.repository` | Image repository | `linuxserver/duplicati` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/linuxserver/duplicati/tags/).| `v2.0.5.1-2.0.5.1_beta_2020-01-18-ls58`|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Timezone the duplicati instance should run as, e.g. 'America/New_York' | `UTC` |
| `puid` | process userID the duplicati instance should run as | `1001` |
| `pgid` | process groupID the duplicati instance should run as | `1001` |
| `cliArgs` | optionally specify any CLI variables you want to launch the app with | `nil` |
| `probes.liveness.initialDelaySeconds` | Specify liveness `initialDelaySeconds` parameter for the deployment | `60` |
| `probes.liveness.failureThreshold` | Specify liveness `failureThreshold` parameter for the deployment | `5` |
| `probes.liveness.timeoutSeconds` | Specify liveness `timeoutSeconds` parameter for the deployment | `10` |
| `probes.readiness.initialDelaySeconds` | Specify readiness `initialDelaySeconds` parameter for the deployment | `60` |
| `probes.readiness.failureThreshold` | Specify readiness `failureThreshold` parameter for the deployment | `5` |
| `probes.readiness.timeoutSeconds` | Specify readiness `timeoutSeconds` parameter for the deployment | `10` |
| `Service.type` | Kubernetes service type for the duplicati GUI | `ClusterIP` |
| `Service.port` | Kubernetes port where the duplicati GUI is exposed| `8200` |
| `Service.annotations` | Service annotations for the duplicati GUI | `{}` |
| `Service.labels` | Custom labels | `{}` |
| `Service.loadBalancerIP` | Loadbalance IP for the duplicati GUI | `{}` |
| `Service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | None
| `ingress.enabled` | Enables Ingress | `false` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.labels` | Custom labels | `{}`
| `ingress.path` | Ingress path | `/` |
| `ingress.hosts` | Ingress accepted hostnames | `chart-example.local` |
| `ingress.tls` | Ingress TLS configuration | `[]` |
| `persistence.config.enabled` | Use persistent volume to store configuration data | `true` |
| `persistence.config.size` | Size of persistent volume claim | `1Gi` |
| `persistence.config.existingClaim`| Use an existing PVC to persist data | `nil` |
| `persistence.config.storageClass` | Type of persistent volume claim | `-` |
| `persistence.config.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.config.skipuninstall` | Do not delete the pvc upon helm uninstall | `false` |
| `persistence.source.enabled` | Use persistent volume to store source data | `true` |
| `persistence.source.size` | Size of persistent volume claim | `10Gi` |
| `persistence.source.existingClaim`| Use an existing PVC to persist data | `nil` |
| `persistence.source.storageClass` | Type of persistent volume claim | `-` |
| `persistence.source.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.source.skipuninstall` | Do not delete the pvc upon helm uninstall | `false` |
| `persistence.backups.enabled` | Use persistent volume to store backups data | `true` |
| `persistence.backups.size` | Size of persistent volume claim | `10Gi` |
| `persistence.backups.existingClaim`| Use an existing PVC to persist data | `nil` |
| `persistence.backups.storageClass` | Type of persistent volume claim | `-` |
| `persistence.backups.accessMode` | Persistence access mode | `ReadWriteOnce` |
| `persistence.backups.skipuninstall` | Do not delete the pvc upon helm uninstall | `false` |
| `persistence.extraExistingClaimMounts` | Optionally add multiple existing claims | `[]` |
| `resources` | CPU/Memory resource requests/limits | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `tolerations` | Toleration labels for pod assignment | `[]` |
| `affinity` | Affinity settings for pod assignment | `{}` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
| `deploymentAnnotations` | Key-value pairs to add as deployment annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install my-release \
--set timezone="America/New York" \
k8s-at-home/duplicati
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install my-release -f values.yaml k8s-at-home/duplicati
```
---
**NOTE**
If you get `Error: rendered manifests contain a resource that already exists. Unable to continue with install: existing resource conflict: ...` it may be because you uninstalled the chart with `skipuninstall` enabled, you need to manually delete the pvc or use `existingClaim`.
---
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/duplicati/values.yaml) file. It has several commented out suggested values.

View File

@@ -1,75 +1,100 @@
# homebridge
# Homebridge
![Version: 1.0.2](https://img.shields.io/badge/Version-1.0.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.1.0](https://img.shields.io/badge/AppVersion-3.1.0-informational?style=flat-square)
This is a helm chart for [Homebridge](https://homebridge.io) based on [Docker Homebridge](https://github.com/oznu/docker-homebridge).
A lightweight NodeJS server that emulates the iOS HomeKit API
## TL;DR;
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/homebridge>
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/homebridge
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| bjw-s | bjw-s@users.noreply.github.com | |
To install the chart with the release name `my-release`:
## Source Code
```shell
helm install --name my-release k8s-at-home/homebridge
```
* <https://homebridge.io/>
* <https://github.com/oznu/docker-homebridge>
## Uninstalling the Chart
## Values
To uninstall/delete the `my-release` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| config.additionalPackages | list | `[]` | |
| config.enableUI | bool | `true` | |
| config.plugins | list | `[]` | |
| extraEnvs | list | `[]` | |
| fullnameOverride | string | `""` | |
| hostNetwork | bool | `false` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"oznu/homebridge"` | |
| image.tag | string | `"3.1.0"` | |
| imagePullSecrets | list | `[]` | |
| 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.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `true` | |
| persistence.size | string | `"1Gi"` | |
| persistence.skipuninstall | bool | `false` | |
| pgid | int | `1000` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| probes.liveness.enabled | bool | `true` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `60` | |
| probes.liveness.timeoutSeconds | int | `10` | |
| probes.readiness.enabled | bool | `true` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `60` | |
| probes.readiness.timeoutSeconds | int | `10` | |
| probes.startup.enabled | bool | `false` | |
| probes.startup.failureThreshold | int | `30` | |
| probes.startup.periodSeconds | int | `10` | |
| puid | int | `1000` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.homebridgePort | int | `51826` | |
| service.httpPort | int | `8080` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| strategyType | string | `"Recreate"` | |
| timezone | string | `"UTC"` | |
| tolerations | list | `[]` | |
```shell
helm delete my-release --purge
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Home Assistant chart and their default values.
| Parameter | Description | Default |
| ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------- |
| `image.repository` | Image repository | `oznu/homebridge` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/oznu/homebridge/tags). | `3.1.0` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `image.pullSecrets` | Secrets to use when pulling the image | `[]` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Specify the container timezone | `UTC` |
| `puid` | process userID the instance should run as | `1000` |
| `pgid` | process groupID the instance should run as | `1000` |
| `config.enableUI` | Enable the Homebridge UI plugin | `true` |
| `config.plugins` | Additional Homebridge plugins to install at container startup | `[]` |
| `config.additionalPackages` | Additional Alpine packages to install at container statup | `[] ` |
| `probes.liveness.enabled` | Use the livenessProbe? | `true` |
| `probes.liveness.initialDelaySeconds` | Specify liveness `initialDelaySeconds` parameter for the deployment | `60` |
| `probes.liveness.failureThreshold` | Specify liveness `failureThreshold` parameter for the deployment | `5` |
| `probes.liveness.timeoutSeconds` | Specify liveness `timeoutSeconds` parameter for the deployment | `10` |
| `probes.readiness.enabled` | Use the readinessProbe? | `true` |
| `probes.readiness.initialDelaySeconds` | Specify readiness `initialDelaySeconds` parameter for the deployment | `60` |
| `probes.readiness.failureThreshold` | Specify readiness `failureThreshold` parameter for the deployment | `5` |
| `probes.readiness.timeoutSeconds` | Specify readiness `timeoutSeconds` parameter for the deployment | `10` |
| `probes.startup.enabled` | Use the startupProbe? (new in kubernetes 1.16) | `false` |
| `probes.startup.failureThreshold` | Specify startup `failureThreshold` parameter for the deployment | `5` |
| `probes.startup.periodSeconds` | Specify startup `periodSeconds` parameter for the deployment | `10` |
| `service.type` | Kubernetes service type for the homebridge GUI | `ClusterIP` |
| `service.httpPort` | Kubernetes port where the homebridge GUI is exposed | `8123` |
| `service.annotations` | Service annotations for the homebridge GUI | `{}` |
| `service.clusterIP` | Cluster IP for the homebridge GUI | `` |
| `service.externalIPs` | External IPs for the homebridge GUI | `[]` |
| `service.loadBalancerIP` | Loadbalancer IP for the homebridge GUI | `` |
| `service.loadBalancerSourceRanges` | Loadbalancer client IP restriction range for the homebridge GUI | `[]` |
| `service.externalTrafficPolicy` | Loadbalancer externalTrafficPolicy | `` |
| `hostNetwork` | Enable hostNetwork - needed for discovery to work | `false` |
| `service.nodePort` | nodePort to listen on for the homebridge GUI | `` |
| `ingress.enabled` | Enables Ingress | `false` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.path` | Ingress path | `/` |
| `ingress.hosts` | Ingress accepted hostnames | `chart-example.local` |
| `ingress.tls` | Ingress TLS configuration | `[]` |
| `persistence.enabled` | Use persistent volume to store data | `true` |
| `persistence.size` | Size of persistent volume claim | `1Gi` |
| `persistence.existingClaim` | Use an existing PVC to persist data | `nil` |
| `persistence.storageClass` | Type of persistent volume claim | `-` |
| `persistence.accessMode` | Persistence access modes | `ReadWriteMany` |
| `persistence.skipuninstall` | Do not delete the pvc upon helm uninstall | `false` |
| `extraEnvs` | Extra ENV vars to pass to the homebridge container | `[]` |
| `resources` | CPU/Memory resource requests/limits or the homebridge GUI | `{}` |
| `nodeSelector` | Node labels for pod assignment or the homebridge GUI | `{}` |
| `tolerations` | Toleration labels for pod assignment or the homebridge GUI | `[]` |
| `affinity` | Affinity settings for pod assignment or the homebridge GUI | `{}` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```shell
helm install --name my-release \
--set timezone="UTC" \
k8s-at-home/homebridge
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```shell
helm install --name my-release -f values.yaml k8s-at-home/homebridge
```
Read through the [values.yaml](values.yaml) file. It has several commented out suggested values.

View File

@@ -1,41 +1,73 @@
# intel-gpu-plugin
# intel-gpu-plugin helm chart
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 0.18.1](https://img.shields.io/badge/AppVersion-0.18.1-informational?style=flat-square)
This is a helm chart that will deploy [intel-gpu-plugin](https://github.com/intel/intel-device-plugins-for-kubernetes/blob/master/cmd/gpu_plugin) as a DaemonSet.
The Intel GPU plugin facilitates offloading the processing of computation intensive workloads to GPU hardware
The GPU plugin facilitates offloading the processing of computation intensive workloads to GPU hardware.
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/intel-gpu-plugin>
## TL;DR
## Maintainers
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/intel-gpu-plugin
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `my-release`:
* <https://github.com/intel/intel-device-plugins-for-kubernetes/blob/master/cmd/gpu_plugin>
```shell
helm install my-release k8s-at-home/intel-gpu-plugin
```
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"intel/intel-gpu-plugin"` | |
| image.tag | string | `"0.18.1"` | |
| imagePullSecrets | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| tolerations | list | `[]` | |
To uninstall/delete the `my-release` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```shell
helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/intel-gpu-plugin/values.yaml) file. It has several commented out suggested values.
| Parameter | Description | Default |
| ------------------------------------------- | -------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `image.repository` | Image repository | `intel/intel-gpu-plugin` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/intel/intel-gpu-plugin/tags). | `0.18.1` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```shell
helm install my-release \
--set image.pullPolicy="Always" \
k8s-at-home/intel-gpu-plugin
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```shell
helm install my-release -f values.yaml k8s-at-home/intel-gpu-plugin
```
### Node Feature Discovery
If your cluster runs [Node Feature Discovery](https://github.com/k8s-at-home/charts/blob/master/charts/node-feature-discovery), you can deploy the device plugin only on nodes with Intel GPU by specifying the desired `nodeSelector` or `affinity` in your values. For example (make sure to update to your exact feature label):
```yaml
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: feature.node.kubernetes.io/pci-0300_8086.present
operator: In
values:
- "true"
```

View File

@@ -1,58 +1,96 @@
# librespeed
# Librespeed
![Version: 2.0.0](https://img.shields.io/badge/Version-2.0.0-informational?style=flat-square) ![AppVersion: 1.0.6-12](https://img.shields.io/badge/AppVersion-1.0.6--12-informational?style=flat-square)
HTML5 based speedtest with password protected history
Librespeed is a HTML5 webpage to test upload and download speeds
**This chart is not maintained by the Librespeed project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new)**
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/librespeed>
## TL;DR;
## Maintainers
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/librespeed
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Introduction
## Source Code
This code is adopted from the [Linuxserver Librespeed docker image](https://hub.docker.com/r/linuxserver/librespeed) which runs the [Librespeed application](https://github.com/librespeed/speedtest)
* <https://github.com/librespeed/speedtest>
* <https://hub.docker.com/r/linuxserver/librespeed>
* <https://github.com/k8s-at-home/charts/tree/master/charts/librespeed>
## Installing the Chart
## Values
To install the chart with the release name `my-release`:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| deploymentAnnotations | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"adolfintel/speedtest"` | |
| image.tag | string | `"latest"` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0] | string | `"chart-example.local"` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| livenessProbePath | string | `"/"` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `false` | |
| persistence.size | string | `"1Gi"` | |
| pgid | string | `"1000"` | |
| podAnnotations | object | `{}` | |
| puid | string | `"1000"` | |
| readinessProbePath | string | `"/"` | |
| resources | object | `{}` | |
| service.annotations | object | `{}` | |
| service.labels | object | `{}` | |
| service.loadBalancerIP | string | `nil` | |
| service.port | int | `80` | |
| service.type | string | `"ClusterIP"` | |
| strategyType | string | `"Recreate"` | |
| telemetry | bool | `false` | |
| timezone | string | `"UTC"` | |
| tolerations | list | `[]` | |
```shell
helm install --name my-release k8s-at-home/librespeed
```
## Uninstalling the Chart
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
To uninstall/delete the `my-release` deployment:
```shell
helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Librespeed chart and their default values.
| Parameter | Description | Default |
|:---------------------------------- |:----------------------------------------------------------------------- |:------------------------- |
| `image.repository` | Librespeed image | `linuxserver/librespeed` |
| `image.tag` | Librespeed image tag | `5.2-ls25` |
| `image.pullPolicy` | Librespeed image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `livenessProbePath` | Default livenessProbe path | `/` |
| `readinessProbePath` | Default readinessProbe path | `/` |
| `timezone` | Default timezone | `UTC` |
| `puid` | Default UID | `1000` |
| `pgid` | Default GID | `1000` |
| `telemetry` | Enable/Disable history | `false` |
| `title` | Title of your speedtest | `LibreSpeed` |
| `idObfuscation` | Test IDs are obfuscated, avoids exposing database internal sequential IDs| `false` |
| `redactIPAddresses` | IP addresses/hostnames are redacted from the collected telemetry | `false` |
| `email` | Email address for GDPR requests. Must be specified when telemetry=true | `fake@fake.com |
| `distance` | how the distance from the server is measured. Options `km`, `mi`, or `` | `km` |
| `service.type` | Kubernetes service type for the GUI | `ClusterIP` |
| `service.port` | Kubernetes port where the GUI is exposed | `1880` |
| `service.nodePort` | Kubernetes nodePort where the GUI is exposed | `` |
| `service.annotations` | Service annotations for the GUI | `{}` |
| `service.labels` | Custom labels | `{}` |
| `service.loadBalancerIP` | Loadbalance IP for the GUI | `{}` |
| `service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | None |
| `service.externalTrafficPolicy` | Set the externalTrafficPolicy in the Service to either Cluster or Local | `Cluster` |
| `ingress.enabled` | Enables Ingress | `false` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.path` | Ingress path | `/` |
| `ingress.hosts` | Ingress accepted hostnames | `chart-example.local` |
| `ingress.tls` | Ingress TLS configuration | `[]` |
| `persistence.enabled` | Use persistent volume to store data | `false` |
| `persistence.size` | Size of persistent volume claim | `5Gi` |
| `persistence.existingClaim` | Use an existing PVC to persist data | `nil` |
| `persistence.storageClass` | Type of persistent volume claim | `-` |
| `persistence.accessModes` | Persistence access modes | `ReadWriteOnce` |
| `persistence.subPath` | Mount a sub dir of the persistent volume | `nil` |
| `resources` | CPU/Memory resource requests/limits | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `tolerations` | Toleration labels for pod assignment | `[]` |
| `affinity` | Affinity settings for pod assignment | `{}` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
| `deploymentAnnotations` | Key-value pairs to add as deployment annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```shell
helm install --name my-release \
--set config.timezone="America/New_York" \
k8s-at-home/librespeed
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```shell
helm install --name my-release -f values.yaml k8s-at-home/librespeed
```
Read through the [values.yaml](values.yaml) file. It has several commented out suggested values.

View File

@@ -1,40 +1,69 @@
# modem-stats
# cable modem (sb6183) signal and stats collection agent for influxdb
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
![Screenshot](https://camo.githubusercontent.com/939e044c0491abf790d91bd1d7f909b187e4098c/68747470733a2f2f692e696d6775722e636f6d2f70705a6a6e6b502e706e67)
periodic cable modem data collection and save the results to InfluxDB
This tool allows you to run periodic scanning of the sb6183 cable modem and save the results to Influxdb
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/modem-stats>
## TL;DR;
## Maintainers
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/modem-stats
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `my-release`:
* <https://github.com/k8s-at-home/SB6183-stats-for-influxdb>
* <https://github.com/k8s-at-home/charts>
```console
$ helm install --name my-release k8s-at-home/modem-stats
```
## Uninstalling the Chart
## Values
To uninstall/delete the `my-release` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| config.delay | int | `3600` | |
| config.influxdb.database | string | `"cable_modem_stats"` | |
| config.influxdb.host | string | `"influxdb-influxdb"` | |
| config.influxdb.port | int | `8086` | |
| config.influxdb.ssl | bool | `false` | |
| config.modem.url | string | `"http://192.168.100.1/RgConnect.asp"` | |
| debug | bool | `false` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"billimek/sb6183-for-influxdb"` | |
| image.tag | string | `"latest"` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
```console
$ helm delete my-release --purge
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The configuration is set as a block of text through a configmap and mouted as a file in /src/config.ini Any value in this text block should match the defined sb6183 configuration. There are several values here that will have to match our kubernetes configuration.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
| ------------------------------- | ------------------------------- | ---------------------------------------------------------- |
| `image.repository` | modem-stats image | `billimek/sb6183-for-influxdb` |
| `image.tag` | modem-stats image tag | `latest` |
| `image.pullPolicy` | modem-stats image pull policy | `IfNotPresent` |
| `debug` | Display debugging output | `false` |
| `config.delay` | how many seconds to wait between checks | `3600` |
| `config.influxdb.host` | InfluxDB hostname | `influxdb-influxdb` |
| `config.influxdb.port` | InfluxDB port | `8086` |
| `config.influxdb.database` | InfluxDB database | `sb6183` |
| `config.influxdb.username` | InfluxDB username | `` |
| `config.influxdb.password` | InfluxDB password | `` |
| `config.influxdb.ssl` | InfluxDB connection using SSL | `false` |
| `config.modem.url` | sb6183 stats URL page | `http://192.168.100.1/RgConnect.asp` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
$ helm install --name my-release \
--set onfig.influxdb.host=some-influx-host \
k8s-at-home/modem-stats
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
$ helm install --name my-release -f values.yaml k8s-at-home/modem-stats
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/modem-stats/values.yaml) file. It has several commented out suggested values.

View File

@@ -20,3 +20,7 @@
.idea/
*.tmproj
.vscode/
# OWNERS file for Kubernetes
OWNERS
# helm-docs templates
*.gotmpl

View File

@@ -1,17 +1,21 @@
apiVersion: v1
appVersion: "2.0.4"
apiVersion: v2
appVersion: 2.0.7
description: Eclipse Mosquitto - An open source MQTT broker
name: mosquitto
version: 0.7.0
version: 1.0.0
kubeVersion: ">=1.16.0-0"
keywords:
- message queue
- MQTT
- mosquitto
- eclipse-iot
home: https://mosquitto.org/
- mosquitto
- MQTT
- eclipse-iot
home: https://github.com/k8s-at-home/charts/tree/master/charts/mosquitto
icon: https://mosquitto.org/images/mosquitto-text-side-28.png
sources:
- https://github.com/eclipse/mosquitto
- https://github.com/eclipse/mosquitto
maintainers:
- name: ishioni
email: helm@movishell.pl
- name: ishioni
email: helm@movishell.pl
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

View File

@@ -1,65 +1,122 @@
# mosquitto
![Version: 0.7.0](https://img.shields.io/badge/Version-0.7.0-informational?style=flat-square) ![AppVersion: 2.0.4](https://img.shields.io/badge/AppVersion-2.0.4-informational?style=flat-square)
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 2.0.7](https://img.shields.io/badge/AppVersion-2.0.7-informational?style=flat-square)
Eclipse Mosquitto - An open source MQTT broker
**Homepage:** <https://mosquitto.org/>
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| ishioni | helm@movishell.pl | |
**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/eclipse/mosquitto>
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://k8s-at-home.com/charts/ | common | 3.0.1 |
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install mosquitto k8s-at-home/mosquitto
```
## Installing the Chart
To install the chart with the release name `mosquitto`
```console
helm install mosquitto k8s-at-home/mosquitto
```
## Uninstalling the Chart
To uninstall the `mosquitto` deployment
```console
helm uninstall mosquitto
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install mosquitto \
--set env.TZ="America/New York" \
k8s-at-home/mosquitto
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install mosquitto k8s-at-home/mosquitto -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/charts/tree/master/charts/common/)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| extraVolumeMounts | list | `[]` | |
| extraVolumes | list | `[]` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"eclipse-mosquitto"` | |
| image.tag | string | `"{{ .Chart.AppVersion }}"` | |
| imagePullSecrets | list | `[]` | |
| monitoring.podMonitor.enabled | bool | `false` | |
| monitoring.sidecar.args[0] | string | `"--use-splitted-config"` | |
| monitoring.sidecar.enabled | bool | `false` | |
| monitoring.sidecar.envs[0].name | string | `"MQTT_CLIENT_ID"` | |
| monitoring.sidecar.envs[0].value | string | `"exporter"` | |
| monitoring.sidecar.envs[1].name | string | `"BROKER_HOST"` | |
| monitoring.sidecar.envs[1].valueFrom.fieldRef.fieldPath | string | `"status.podIP"` | |
| monitoring.sidecar.image.pullPolicy | string | `"IfNotPresent"` | |
| monitoring.sidecar.image.repository | string | `"nolte/mosquitto-exporter"` | |
| monitoring.sidecar.image.tag | string | `"v0.6.3"` | |
| monitoring.sidecar.port | int | `9234` | |
| monitoring.sidecar.resources.limits.cpu | string | `"300m"` | |
| monitoring.sidecar.resources.limits.memory | string | `"128Mi"` | |
| monitoring.sidecar.resources.requests.cpu | string | `"100m"` | |
| monitoring.sidecar.resources.requests.memory | string | `"64Mi"` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.annotations | object | `{}` | |
| persistence.enabled | bool | `false` | |
| persistence.size | string | `"5Gi"` | |
| podSecurityContext | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| image.tag | string | `"2.0.7"` | |
| persistence.data.accessMode | string | `"ReadWriteOnce"` | |
| persistence.data.emptyDir | bool | `false` | |
| persistence.data.enabled | bool | `true` | |
| persistence.data.mountPath | string | `"/data"` | |
| persistence.data.size | string | `"100Mi"` | |
| service.annotations | object | `{}` | |
| service.port | int | `1883` | |
| service.port.name | string | `"mqtt"` | |
| service.port.port | int | `1883` | |
| service.type | string | `"ClusterIP"` | |
| service.websocketPort | int | `9001` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `nil` | |
| tolerations | list | `[]` | |
| 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/charts/tree/master/charts/common/README.md#Changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.0]
#### Added
- Initial release
#### Changed
- N/A
#### Removed
- N/A
[1.0.0]: #1.0.0
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- 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

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

View File

@@ -0,0 +1,27 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.0]
#### Added
- N/A
#### Changed
- Migrated the chart to the [k8s-at-home common library chart](https://github.com/k8s-at-home/charts/tree/master/charts/common).
#### 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

@@ -1,3 +0,0 @@
monitoring:
sidecar:
enabled: true

View File

@@ -1,38 +1 @@
** Please be patient while the chart is being deployed **
Mosquitto can be accessed within the cluster on port {{ .Values.service.port }} at {{ template "mosquitto.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local
To access for outside the cluster, perform the following steps:
{{- if contains "NodePort" .Values.service.type }}
Obtain the NodePort IP and ports:
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[1].nodePort}" services {{ template "mosquitto.fullname" . }})
To Access the Mosquitto MQTT port:
echo "URL : amqp://$NODE_IP:$NODE_PORT/"
{{- else if contains "LoadBalancer" .Values.service.type }}
Obtain the LoadBalancer IP:
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
Watch the status with: 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ template "mosquitto.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "mosquitto.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
To Access the Moquitto port:
echo "URL : mqtt://$SERVICE_IP:{{ .Values.service.port }}/"
{{- else if contains "ClusterIP" .Values.service.type }}
To Access the Mosquitto MQTT port:
kubectl port-forward --namespace {{ .Release.Namespace }} svc/{{ template "mosquitto.fullname" . }} {{ .Values.service.port }}:{{ .Values.service.port }}
echo "URL : mqtt://127.0.0.1:{{ .Values.service.port }}/"
{{- end }}
{{- include "common.notes.defaultNotes" . -}}

View File

@@ -1,56 +0,0 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "mosquitto.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 "mosquitto.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 "mosquitto.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Common labels
*/}}
{{- define "mosquitto.labels" -}}
app.kubernetes.io/name: {{ include "mosquitto.name" . }}
helm.sh/chart: {{ include "mosquitto.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}}
{{/*
Create the name of the service account to use
*/}}
{{- define "mosquitto.serviceAccountName" -}}
{{- if .Values.serviceAccount.create -}}
{{ default (include "mosquitto.fullname" .) .Values.serviceAccount.name }}
{{- else -}}
{{ default "default" .Values.serviceAccount.name }}
{{- end -}}
{{- 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 "mosquitto.configmap.volume" -}}
name: mosquitto-config
configMap:
name: {{ template "common.names.fullname" . }}-config
{{- end -}}
{{- $volume := include "mosquitto.configmap.volume" . | fromYaml -}}
{{- if $volume -}}
{{- $additionalVolumes := append .Values.additionalVolumes $volume }}
{{- $_ := set .Values "additionalVolumes" (deepCopy $additionalVolumes) -}}
{{- end -}}
{{/* Append the configMap volume to the additionalVolumeMounts */}}
{{- define "mosquitto.configmap.volumeMount" -}}
name: mosquitto-config
mountPath: /mosquitto/config/mosquitto.conf
subPath: mosquitto.conf
{{- end -}}
{{- $volumeMount := include "mosquitto.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,897 +1,15 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "mosquitto.fullname" . }}
name: {{ template "common.names.fullname" . }}-config
labels:
{{ include "mosquitto.labels" . | indent 4 }}
{{- include "common.labels" . | nindent 4 }}
data:
mosquitto.conf: |
{{- if not .Values.customConfig }}
# Config file for mosquitto
#
# See mosquitto.conf(5) for more information.
#
# Default values are shown, uncomment to change.
#
# Use the # character to indicate a comment, but only if it is the
# very first character on the line.
# =================================================================
# General configuration
# =================================================================
# Use per listener security settings.
#
# It is recommended this option be set before any other options.
#
# If this option is set to true, then all authentication and access control
# options are controlled on a per listener basis. The following options are
# affected:
#
# password_file acl_file psk_file auth_plugin auth_opt_* allow_anonymous
# auto_id_prefix allow_zero_length_clientid
#
# Note that if set to true, then a durable client (i.e. with clean session set
# to false) that has disconnected will use the ACL settings defined for the
# listener that it was most recently connected to.
#
# The default behaviour is for this to be set to false, which maintains the
# setting behaviour from previous versions of mosquitto.
#per_listener_settings false
# This option controls whether a client is allowed to connect with a zero
# length client id or not. This option only affects clients using MQTT v3.1.1
# and later. If set to false, clients connecting with a zero length client id
# are disconnected. If set to true, clients will be allocated a client id by
# the broker. This means it is only useful for clients with clean session set
# to true.
#allow_zero_length_clientid true
# If allow_zero_length_clientid is true, this option allows you to set a prefix
# to automatically generated client ids to aid visibility in logs.
# Defaults to 'auto-'
#auto_id_prefix auto-
# This option affects the scenario when a client subscribes to a topic that has
# retained messages. It is possible that the client that published the retained
# message to the topic had access at the time they published, but that access
# has been subsequently removed. If check_retain_source is set to true, the
# default, the source of a retained message will be checked for access rights
# before it is republished. When set to false, no check will be made and the
# retained message will always be published. This affects all listeners.
#check_retain_source true
# QoS 1 and 2 messages will be allowed inflight per client until this limit
# is exceeded. Defaults to 0. (No maximum)
# See also max_inflight_messages
#max_inflight_bytes 0
# The maximum number of QoS 1 and 2 messages currently inflight per
# client.
# This includes messages that are partway through handshakes and
# those that are being retried. Defaults to 20. Set to 0 for no
# maximum. Setting to 1 will guarantee in-order delivery of QoS 1
# and 2 messages.
#max_inflight_messages 20
# For MQTT v5 clients, it is possible to have the server send a "server
# keepalive" value that will override the keepalive value set by the client.
# This is intended to be used as a mechanism to say that the server will
# disconnect the client earlier than it anticipated, and that the client should
# use the new keepalive value. The max_keepalive option allows you to specify
# that clients may only connect with keepalive less than or equal to this
# value, otherwise they will be sent a server keepalive telling them to use
# max_keepalive. This only applies to MQTT v5 clients. The maximum value
# allowable is 65535. Do not set below 10.
#max_keepalive 65535
# For MQTT v5 clients, it is possible to have the server send a "maximum packet
# size" value that will instruct the client it will not accept MQTT packets
# with size greater than max_packet_size bytes. This applies to the full MQTT
# packet, not just the payload. Setting this option to a positive value will
# set the maximum packet size to that number of bytes. If a client sends a
# packet which is larger than this value, it will be disconnected. This applies
# to all clients regardless of the protocol version they are using, but v3.1.1
# and earlier clients will of course not have received the maximum packet size
# information. Defaults to no limit. Setting below 20 bytes is forbidden
# because it is likely to interfere with ordinary client operation, even with
# very small payloads.
#max_packet_size 0
# QoS 1 and 2 messages above those currently in-flight will be queued per
# client until this limit is exceeded. Defaults to 0. (No maximum)
# See also max_queued_messages.
# If both max_queued_messages and max_queued_bytes are specified, packets will
# be queued until the first limit is reached.
#max_queued_bytes 0
# Set the maximum QoS supported. Clients publishing at a QoS higher than
# specified here will be disconnected.
#max_qos 2
# The maximum number of QoS 1 and 2 messages to hold in a queue per client
# above those that are currently in-flight. Defaults to 1000. Set
# to 0 for no maximum (not recommended).
# See also queue_qos0_messages.
# See also max_queued_bytes.
#max_queued_messages 1000
#
# This option sets the maximum number of heap memory bytes that the broker will
# allocate, and hence sets a hard limit on memory use by the broker. Memory
# requests that exceed this value will be denied. The effect will vary
# depending on what has been denied. If an incoming message is being processed,
# then the message will be dropped and the publishing client will be
# disconnected. If an outgoing message is being sent, then the individual
# message will be dropped and the receiving client will be disconnected.
# Defaults to no limit.
#memory_limit 0
# This option sets the maximum publish payload size that the broker will allow.
# Received messages that exceed this size will not be accepted by the broker.
# The default value is 0, which means that all valid MQTT messages are
# accepted. MQTT imposes a maximum payload size of 268435455 bytes.
#message_size_limit 0
# This option allows persistent clients (those with clean session set to false)
# to be removed if they do not reconnect within a certain time frame.
#
# This is a non-standard option in MQTT V3.1 but allowed in MQTT v3.1.1.
#
# Badly designed clients may set clean session to false whilst using a randomly
# generated client id. This leads to persistent clients that will never
# reconnect. This option allows these clients to be removed.
#
# The expiration period should be an integer followed by one of h d w m y for
# hour, day, week, month and year respectively. For example
#
# persistent_client_expiration 2m
# persistent_client_expiration 14d
# persistent_client_expiration 1y
#
# The default if not set is to never expire persistent clients.
#persistent_client_expiration
# Write process id to a file. Default is a blank string which means
# a pid file shouldn't be written.
# This should be set to /var/run/mosquitto/mosquitto.pid if mosquitto is
# being run automatically on boot with an init script and
# start-stop-daemon or similar.
#pid_file
# Set to true to queue messages with QoS 0 when a persistent client is
# disconnected. These messages are included in the limit imposed by
# max_queued_messages and max_queued_bytes
# Defaults to false.
# This is a non-standard option for the MQTT v3.1 spec but is allowed in
# v3.1.1.
#queue_qos0_messages false
# Set to false to disable retained message support. If a client publishes a
# message with the retain bit set, it will be disconnected if this is set to
# false.
#retain_available true
# Disable Nagle's algorithm on client sockets. This has the effect of reducing
# latency of individual messages at the potential cost of increasing the number
# of packets being sent.
#set_tcp_nodelay false
# Time in seconds between updates of the $SYS tree.
# Set to 0 to disable the publishing of the $SYS tree.
#sys_interval 10
# The MQTT specification requires that the QoS of a message delivered to a
# subscriber is never upgraded to match the QoS of the subscription. Enabling
# this option changes this behaviour. If upgrade_outgoing_qos is set true,
# messages sent to a subscriber will always match the QoS of its subscription.
# This is a non-standard option explicitly disallowed by the spec.
#upgrade_outgoing_qos false
# When run as root, drop privileges to this user and its primary
# group.
# Set to root to stay as root, but this is not recommended.
# If set to "mosquitto", or left unset, and the "mosquitto" user does not exist
# then it will drop privileges to the "nobody" user instead.
# If run as a non-root user, this setting has no effect.
# Note that on Windows this has no effect and so mosquitto should be started by
# the user you wish it to run as.
#user mosquitto
# =================================================================
# Listeners
# =================================================================
# Listen on a port/ip address combination. By using this variable
# multiple times, mosquitto can listen on more than one port. If
# this variable is used and neither bind_address nor port given,
# then the default listener will not be started.
# The port number to listen on must be given. Optionally, an ip
# address or host name may be supplied as a second argument. In
# this case, mosquitto will attempt to bind the listener to that
# address and so restrict access to the associated network and
# interface. By default, mosquitto will listen on all interfaces.
# Note that for a websockets listener it is not possible to bind to a host
# name.
#
# On systems that support Unix Domain Sockets, it is also possible
# to create a # Unix socket rather than opening a TCP socket. In
# this case, the port number should be set to 0 and a unix socket
# path must be provided, e.g.
# listener 0 /tmp/mosquitto.sock
#
# listener port-number [ip address/host name/unix socket path]
listener {{ .Values.service.port }}
# By default, a listener will attempt to listen on all supported IP protocol
# versions. If you do not have an IPv4 or IPv6 interface you may wish to
# disable support for either of those protocol versions. In particular, note
# that due to the limitations of the websockets library, it will only ever
# attempt to open IPv6 sockets if IPv6 support is compiled in, and so will fail
# if IPv6 is not available.
#
# Set to `ipv4` to force the listener to only use IPv4, or set to `ipv6` to
# force the listener to only use IPv6. If you want support for both IPv4 and
# IPv6, then do not use the socket_domain option.
#
#socket_domain
# Bind the listener to a specific interface. This is similar to
# the [ip address/host name] part of the listener definition, but is useful
# when an interface has multiple addresses or the address may change. It is
# valid to use this with the [ip address/host name] part of the listener
# definition, but take care that the interface you are binding to contains the
# address you are binding to, otherwise you will not be able to connect.
# Only available on Linux and requires elevated privileges.
#
# Example: bind_interface eth0
#bind_interface
# When a listener is using the websockets protocol, it is possible to serve
# http data as well. Set http_dir to a directory which contains the files you
# wish to serve. If this option is not specified, then no normal http
# connections will be possible.
#http_dir
# The maximum number of client connections to allow. This is
# a per listener setting.
# Default is -1, which means unlimited connections.
# Note that other process limits mean that unlimited connections
# are not really possible. Typically the default maximum number of
# connections possible is around 1024.
#max_connections -1
# The listener can be restricted to operating within a topic hierarchy using
# the mount_point option. This is achieved be prefixing the mount_point string
# to all topics for any clients connected to this listener. This prefixing only
# happens internally to the broker; the client will not see the prefix.
#mount_point
# Choose the protocol to use when listening.
# This can be either mqtt or websockets.
# Certificate based TLS may be used with websockets, except that only the
# cafile, certfile, keyfile, ciphers, and ciphers_tls13 options are supported.
#protocol mqtt
# Set use_username_as_clientid to true to replace the clientid that a client
# connected with with its username. This allows authentication to be tied to
# the clientid, which means that it is possible to prevent one client
# disconnecting another by using the same clientid.
# If a client connects with no username it will be disconnected as not
# authorised when this option is set to true.
# Do not use in conjunction with clientid_prefixes.
# See also use_identity_as_username.
#use_username_as_clientid
# Change the websockets headers size. This is a global option, it is not
# possible to set per listener. This option sets the size of the buffer used in
# the libwebsockets library when reading HTTP headers. If you are passing large
# header data such as cookies then you may need to increase this value. If left
# unset, or set to 0, then the default of 1024 bytes will be used.
#websockets_headers_size
# -----------------------------------------------------------------
# Certificate based SSL/TLS support
# -----------------------------------------------------------------
# The following options can be used to enable certificate based SSL/TLS support
# for this listener. Note that the recommended port for MQTT over TLS is 8883,
# but this must be set manually.
#
# See also the mosquitto-tls man page and the "Pre-shared-key based SSL/TLS
# support" section. Only one of certificate or PSK encryption support can be
# enabled for any listener.
# Both of certfile and keyfile must be defined to enable certificate based
# TLS encryption.
# Path to the PEM encoded server certificate.
#certfile
# Path to the PEM encoded keyfile.
#keyfile
# If you wish to control which encryption ciphers are used, use the ciphers
# option. The list of available ciphers can be optained using the "openssl
# ciphers" command and should be provided in the same format as the output of
# that command. This applies to TLS 1.2 and earlier versions only. Use
# ciphers_tls1.3 for TLS v1.3.
#ciphers
# Choose which TLS v1.3 ciphersuites are used for this listener.
# Defaults to "TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256"
#ciphers_tls1.3
# If you have require_certificate set to true, you can create a certificate
# revocation list file to revoke access to particular client certificates. If
# you have done this, use crlfile to point to the PEM encoded revocation file.
#crlfile
# To allow the use of ephemeral DH key exchange, which provides forward
# security, the listener must load DH parameters. This can be specified with
# the dhparamfile option. The dhparamfile can be generated with the command
# e.g. "openssl dhparam -out dhparam.pem 2048"
#dhparamfile
# By default an TLS enabled listener will operate in a similar fashion to a
# https enabled web server, in that the server has a certificate signed by a CA
# and the client will verify that it is a trusted certificate. The overall aim
# is encryption of the network traffic. By setting require_certificate to true,
# the client must provide a valid certificate in order for the network
# connection to proceed. This allows access to the broker to be controlled
# outside of the mechanisms provided by MQTT.
#require_certificate false
# cafile and capath define methods of accessing the PEM encoded
# Certificate Authority certificates that will be considered trusted when
# checking incoming client certificates.
# cafile defines the path to a file containing the CA certificates.
# capath defines a directory that will be searched for files
# containing the CA certificates. For capath to work correctly, the
# certificate files must have ".crt" as the file ending and you must run
# "openssl rehash <path to capath>" each time you add/remove a certificate.
#cafile
#capath
# If require_certificate is true, you may set use_identity_as_username to true
# to use the CN value from the client certificate as a username. If this is
# true, the password_file option will not be used for this listener.
#use_identity_as_username false
# -----------------------------------------------------------------
# Pre-shared-key based SSL/TLS support
# -----------------------------------------------------------------
# The following options can be used to enable PSK based SSL/TLS support for
# this listener. Note that the recommended port for MQTT over TLS is 8883, but
# this must be set manually.
#
# See also the mosquitto-tls man page and the "Certificate based SSL/TLS
# support" section. Only one of certificate or PSK encryption support can be
# enabled for any listener.
# The psk_hint option enables pre-shared-key support for this listener and also
# acts as an identifier for this listener. The hint is sent to clients and may
# be used locally to aid authentication. The hint is a free form string that
# doesn't have much meaning in itself, so feel free to be creative.
# If this option is provided, see psk_file to define the pre-shared keys to be
# used or create a security plugin to handle them.
#psk_hint
# When using PSK, the encryption ciphers used will be chosen from the list of
# available PSK ciphers. If you want to control which ciphers are available,
# use the "ciphers" option. The list of available ciphers can be optained
# using the "openssl ciphers" command and should be provided in the same format
# as the output of that command.
#ciphers
# Set use_identity_as_username to have the psk identity sent by the client used
# as its username. Authentication will be carried out using the PSK rather than
# the MQTT username/password and so password_file will not be used for this
# listener.
#use_identity_as_username false
# =================================================================
# Persistence
# =================================================================
# If persistence is enabled, save the in-memory database to disk
# every autosave_interval seconds. If set to 0, the persistence
# database will only be written when mosquitto exits. See also
# autosave_on_changes.
# Note that writing of the persistence database can be forced by
# sending mosquitto a SIGUSR1 signal.
#autosave_interval 1800
{{- if .Values.persistence.enabled }}
listener {{ .Values.service.port.port }}
allow_anonymous true
{{- if .Values.persistence.data.enabled }}
persistence true
persistence_location {{ .Values.persistence.data.mountPath }}
autosave_interval 1800
{{- end }}
# If true, mosquitto will count the number of subscription changes, retained
# messages received and queued messages and if the total exceeds
# autosave_interval then the in-memory database will be saved to disk.
# If false, mosquitto will save the in-memory database to disk by treating
# autosave_interval as a time in seconds.
#autosave_on_changes false
# Save persistent message data to disk (true/false).
# This saves information about all messages, including
# subscriptions, currently in-flight messages and retained
# messages.
# retained_persistence is a synonym for this option.
#persistence false
{{- if .Values.persistence.enabled }}
persistence true
{{- end }}
# The filename to use for the persistent database, not including
# the path.
#persistence_file mosquitto.db
# Location for persistent database.
# Default is an empty string (current directory).
# Set to e.g. /var/lib/mosquitto if running as a proper service on Linux or
# similar.
#persistence_location
{{- if .Values.persistence.enabled }}
persistence_location /mosquitto/data/
{{- end }}
# =================================================================
# Logging
# =================================================================
# Places to log to. Use multiple log_dest lines for multiple
# logging destinations.
# Possible destinations are: stdout stderr syslog topic file dlt
#
# stdout and stderr log to the console on the named output.
#
# syslog uses the userspace syslog facility which usually ends up
# in /var/log/messages or similar.
#
# topic logs to the broker topic '$SYS/broker/log/<severity>',
# where severity is one of D, E, W, N, I, M which are debug, error,
# warning, notice, information and message. Message type severity is used by
# the subscribe/unsubscribe log_types and publishes log messages to
# $SYS/broker/log/M/susbcribe or $SYS/broker/log/M/unsubscribe.
#
# The file destination requires an additional parameter which is the file to be
# logged to, e.g. "log_dest file /var/log/mosquitto.log". The file will be
# closed and reopened when the broker receives a HUP signal. Only a single file
# destination may be configured.
#
# The dlt destination is for the automotive `Diagnostic Log and Trace` tool.
# This requires that Mosquitto has been compiled with DLT support.
#
# Note that if the broker is running as a Windows service it will default to
# "log_dest none" and neither stdout nor stderr logging is available.
# Use "log_dest none" if you wish to disable logging.
#log_dest stderr
# Types of messages to log. Use multiple log_type lines for logging
# multiple types of messages.
# Possible types are: debug, error, warning, notice, information,
# none, subscribe, unsubscribe, websockets, all.
# Note that debug type messages are for decoding the incoming/outgoing
# network packets. They are not logged in "topics".
#log_type error
#log_type warning
#log_type notice
#log_type information
# If set to true, client connection and disconnection messages will be included
# in the log.
#connection_messages true
# If using syslog logging (not on Windows), messages will be logged to the
# "daemon" facility by default. Use the log_facility option to choose which of
# local0 to local7 to log to instead. The option value should be an integer
# value, e.g. "log_facility 5" to use local5.
#log_facility
# If set to true, add a timestamp value to each log message.
#log_timestamp true
# Set the format of the log timestamp. If left unset, this is the number of
# seconds since the Unix epoch.
# This is a free text string which will be passed to the strftime function. To
# get an ISO 8601 datetime, for example:
# log_timestamp_format %Y-%m-%dT%H:%M:%S
#log_timestamp_format
# Change the websockets logging level. This is a global option, it is not
# possible to set per listener. This is an integer that is interpreted by
# libwebsockets as a bit mask for its lws_log_levels enum. See the
# libwebsockets documentation for more details. "log_type websockets" must also
# be enabled.
#websockets_log_level 0
# =================================================================
# Security
# =================================================================
# If set, only clients that have a matching prefix on their
# clientid will be allowed to connect to the broker. By default,
# all clients may connect.
# For example, setting "secure-" here would mean a client "secure-
# client" could connect but another with clientid "mqtt" couldn't.
#clientid_prefixes
# Boolean value that determines whether clients that connect
# without providing a username are allowed to connect. If set to
# false then a password file should be created (see the
# password_file option) to control authenticated client access.
#
# Defaults to false, unless there are no listeners defined in the configuration
# file, in which case it is set to true, but connections are only allowed from
# the local machine.
#allow_anonymous false
allow_anonymous true
# -----------------------------------------------------------------
# Default authentication and topic access control
# -----------------------------------------------------------------
# Control access to the broker using a password file. This file can be
# generated using the mosquitto_passwd utility. If TLS support is not compiled
# into mosquitto (it is recommended that TLS support should be included) then
# plain text passwords are used, in which case the file should be a text file
# with lines in the format:
# username:password
# The password (and colon) may be omitted if desired, although this
# offers very little in the way of security.
#
# See the TLS client require_certificate and use_identity_as_username options
# for alternative authentication options. If an auth_plugin is used as well as
# password_file, the auth_plugin check will be made first.
#password_file
# Access may also be controlled using a pre-shared-key file. This requires
# TLS-PSK support and a listener configured to use it. The file should be text
# lines in the format:
# identity:key
# The key should be in hexadecimal format without a leading "0x".
# If an auth_plugin is used as well, the auth_plugin check will be made first.
#psk_file
# Control access to topics on the broker using an access control list
# file. If this parameter is defined then only the topics listed will
# have access.
# If the first character of a line of the ACL file is a # it is treated as a
# comment.
# Topic access is added with lines of the format:
#
# topic [read|write|readwrite|deny] <topic>
#
# The access type is controlled using "read", "write", "readwrite" or "deny".
# This parameter is optional (unless <topic> contains a space character) - if
# not given then the access is read/write. <topic> can contain the + or #
# wildcards as in subscriptions.
#
# The "deny" option can used to explicity deny access to a topic that would
# otherwise be granted by a broader read/write/readwrite statement. Any "deny"
# topics are handled before topics that grant read/write access.
#
# The first set of topics are applied to anonymous clients, assuming
# allow_anonymous is true. User specific topic ACLs are added after a
# user line as follows:
#
# user <username>
#
# The username referred to here is the same as in password_file. It is
# not the clientid.
#
#
# If is also possible to define ACLs based on pattern substitution within the
# topic. The patterns available for substition are:
#
# %c to match the client id of the client
# %u to match the username of the client
#
# The substitution pattern must be the only text for that level of hierarchy.
#
# The form is the same as for the topic keyword, but using pattern as the
# keyword.
# Pattern ACLs apply to all users even if the "user" keyword has previously
# been given.
#
# If using bridges with usernames and ACLs, connection messages can be allowed
# with the following pattern:
# pattern write $SYS/broker/connection/%c/state
#
# pattern [read|write|readwrite] <topic>
#
# Example:
#
# pattern write sensor/%u/data
#
# If an auth_plugin is used as well as acl_file, the auth_plugin check will be
# made first.
#acl_file
# -----------------------------------------------------------------
# External authentication and topic access plugin options
# -----------------------------------------------------------------
# External authentication and access control can be supported with the
# auth_plugin option. This is a path to a loadable plugin. See also the
# auth_opt_* options described below.
#
# The auth_plugin option can be specified multiple times to load multiple
# plugins. The plugins will be processed in the order that they are specified
# here. If the auth_plugin option is specified alongside either of
# password_file or acl_file then the plugin checks will be made first.
#
#auth_plugin
# If the auth_plugin option above is used, define options to pass to the
# plugin here as described by the plugin instructions. All options named
# using the format auth_opt_* will be passed to the plugin, for example:
#
# auth_opt_db_host
# auth_opt_db_port
# auth_opt_db_username
# auth_opt_db_password
# =================================================================
# Bridges
# =================================================================
# A bridge is a way of connecting multiple MQTT brokers together.
# Create a new bridge using the "connection" option as described below. Set
# options for the bridges using the remaining parameters. You must specify the
# address and at least one topic to subscribe to.
#
# Each connection must have a unique name.
#
# The address line may have multiple host address and ports specified. See
# below in the round_robin description for more details on bridge behaviour if
# multiple addresses are used. Note that if you use an IPv6 address, then you
# are required to specify a port.
#
# The direction that the topic will be shared can be chosen by
# specifying out, in or both, where the default value is out.
# The QoS level of the bridged communication can be specified with the next
# topic option. The default QoS level is 0, to change the QoS the topic
# direction must also be given.
#
# The local and remote prefix options allow a topic to be remapped when it is
# bridged to/from the remote broker. This provides the ability to place a topic
# tree in an appropriate location.
#
# For more details see the mosquitto.conf man page.
#
# Multiple topics can be specified per connection, but be careful
# not to create any loops.
#
# If you are using bridges with cleansession set to false (the default), then
# you may get unexpected behaviour from incoming topics if you change what
# topics you are subscribing to. This is because the remote broker keeps the
# subscription for the old topic. If you have this problem, connect your bridge
# with cleansession set to true, then reconnect with cleansession set to false
# as normal.
#connection <name>
#address <host>[:<port>] [<host>[:<port>]]
#topic <topic> [[[out | in | both] qos-level] local-prefix remote-prefix]
# If you need to have the bridge connect over a particular network interface,
# use bridge_bind_address to tell the bridge which local IP address the socket
# should bind to, e.g. `bridge_bind_address 192.168.1.10`
#bridge_bind_address
# If a bridge has topics that have "out" direction, the default behaviour is to
# send an unsubscribe request to the remote broker on that topic. This means
# that changing a topic direction from "in" to "out" will not keep receiving
# incoming messages. Sending these unsubscribe requests is not always
# desirable, setting bridge_attempt_unsubscribe to false will disable sending
# the unsubscribe request.
#bridge_attempt_unsubscribe true
# Set the version of the MQTT protocol to use with for this bridge. Can be one
# of mqttv50, mqttv311 or mqttv31. Defaults to mqttv311.
#bridge_protocol_version mqttv311
# Set the clean session variable for this bridge.
# When set to true, when the bridge disconnects for any reason, all
# messages and subscriptions will be cleaned up on the remote
# broker. Note that with cleansession set to true, there may be a
# significant amount of retained messages sent when the bridge
# reconnects after losing its connection.
# When set to false, the subscriptions and messages are kept on the
# remote broker, and delivered when the bridge reconnects.
#cleansession false
# Set the amount of time a bridge using the lazy start type must be idle before
# it will be stopped. Defaults to 60 seconds.
#idle_timeout 60
# Set the keepalive interval for this bridge connection, in
# seconds.
#keepalive_interval 60
# Set the clientid to use on the local broker. If not defined, this defaults to
# 'local.<clientid>'. If you are bridging a broker to itself, it is important
# that local_clientid and clientid do not match.
#local_clientid
# If set to true, publish notification messages to the local and remote brokers
# giving information about the state of the bridge connection. Retained
# messages are published to the topic $SYS/broker/connection/<clientid>/state
# unless the notification_topic option is used.
# If the message is 1 then the connection is active, or 0 if the connection has
# failed.
# This uses the last will and testament feature.
#notifications true
# Choose the topic on which notification messages for this bridge are
# published. If not set, messages are published on the topic
# $SYS/broker/connection/<clientid>/state
#notification_topic
# Set the client id to use on the remote end of this bridge connection. If not
# defined, this defaults to 'name.hostname' where name is the connection name
# and hostname is the hostname of this computer.
# This replaces the old "clientid" option to avoid confusion. "clientid"
# remains valid for the time being.
#remote_clientid
# Set the password to use when connecting to a broker that requires
# authentication. This option is only used if remote_username is also set.
# This replaces the old "password" option to avoid confusion. "password"
# remains valid for the time being.
#remote_password
# Set the username to use when connecting to a broker that requires
# authentication.
# This replaces the old "username" option to avoid confusion. "username"
# remains valid for the time being.
#remote_username
# Set the amount of time a bridge using the automatic start type will wait
# until attempting to reconnect.
# This option can be configured to use a constant delay time in seconds, or to
# use a backoff mechanism based on "Decorrelated Jitter", which adds a degree
# of randomness to when the restart occurs.
#
# Set a constant timeout of 20 seconds:
# restart_timeout 20
#
# Set backoff with a base (start value) of 10 seconds and a cap (upper limit) of
# 60 seconds:
# restart_timeout 10 30
#
# Defaults to jitter with a base of 5 and cap of 30
#restart_timeout 5 30
# If the bridge has more than one address given in the address/addresses
# configuration, the round_robin option defines the behaviour of the bridge on
# a failure of the bridge connection. If round_robin is false, the default
# value, then the first address is treated as the main bridge connection. If
# the connection fails, the other secondary addresses will be attempted in
# turn. Whilst connected to a secondary bridge, the bridge will periodically
# attempt to reconnect to the main bridge until successful.
# If round_robin is true, then all addresses are treated as equals. If a
# connection fails, the next address will be tried and if successful will
# remain connected until it fails
#round_robin false
# Set the start type of the bridge. This controls how the bridge starts and
# can be one of three types: automatic, lazy and once. Note that RSMB provides
# a fourth start type "manual" which isn't currently supported by mosquitto.
#
# "automatic" is the default start type and means that the bridge connection
# will be started automatically when the broker starts and also restarted
# after a short delay (30 seconds) if the connection fails.
#
# Bridges using the "lazy" start type will be started automatically when the
# number of queued messages exceeds the number set with the "threshold"
# parameter. It will be stopped automatically after the time set by the
# "idle_timeout" parameter. Use this start type if you wish the connection to
# only be active when it is needed.
#
# A bridge using the "once" start type will be started automatically when the
# broker starts but will not be restarted if the connection fails.
#start_type automatic
# Set the number of messages that need to be queued for a bridge with lazy
# start type to be restarted. Defaults to 10 messages.
# Must be less than max_queued_messages.
#threshold 10
# If try_private is set to true, the bridge will attempt to indicate to the
# remote broker that it is a bridge not an ordinary client. If successful, this
# means that loop detection will be more effective and that retained messages
# will be propagated correctly. Not all brokers support this feature so it may
# be necessary to set try_private to false if your bridge does not connect
# properly.
#try_private true
# Some MQTT brokers do not allow retained messages. MQTT v5 gives a mechanism
# for brokers to tell clients that they do not support retained messages, but
# this is not possible for MQTT v3.1.1 or v3.1. If you need to bridge to a
# v3.1.1 or v3.1 broker that does not support retained messages, set the
# bridge_outgoing_retain option to false. This will remove the retain bit on
# all outgoing messages to that bridge, regardless of any other setting.
#bridge_outgoing_retain true
# If you wish to restrict the size of messages sent to a remote bridge, use the
# bridge_max_packet_size option. This sets the maximum number of bytes for
# the total message, including headers and payload.
# Note that MQTT v5 brokers may provide their own maximum-packet-size property.
# In this case, the smaller of the two limits will be used.
# Set to 0 for "unlimited".
#bridge_max_packet_size 0
# -----------------------------------------------------------------
# Certificate based SSL/TLS support
# -----------------------------------------------------------------
# Either bridge_cafile or bridge_capath must be defined to enable TLS support
# for this bridge.
# bridge_cafile defines the path to a file containing the
# Certificate Authority certificates that have signed the remote broker
# certificate.
# bridge_capath defines a directory that will be searched for files containing
# the CA certificates. For bridge_capath to work correctly, the certificate
# files must have ".crt" as the file ending and you must run "openssl rehash
# <path to capath>" each time you add/remove a certificate.
#bridge_cafile
#bridge_capath
# If the remote broker has more than one protocol available on its port, e.g.
# MQTT and WebSockets, then use bridge_alpn to configure which protocol is
# requested. Note that WebSockets support for bridges is not yet available.
#bridge_alpn
# When using certificate based encryption, bridge_insecure disables
# verification of the server hostname in the server certificate. This can be
# useful when testing initial server configurations, but makes it possible for
# a malicious third party to impersonate your server through DNS spoofing, for
# example. Use this option in testing only. If you need to resort to using this
# option in a production environment, your setup is at fault and there is no
# point using encryption.
#bridge_insecure false
# Path to the PEM encoded client certificate, if required by the remote broker.
#bridge_certfile
# Path to the PEM encoded client private key, if required by the remote broker.
#bridge_keyfile
# -----------------------------------------------------------------
# PSK based SSL/TLS support
# -----------------------------------------------------------------
# Pre-shared-key encryption provides an alternative to certificate based
# encryption. A bridge can be configured to use PSK with the bridge_identity
# and bridge_psk options. These are the client PSK identity, and pre-shared-key
# in hexadecimal format with no "0x". Only one of certificate and PSK based
# encryption can be used on one
# bridge at once.
#bridge_identity
#bridge_psk
# =================================================================
# External config files
# =================================================================
# External configuration files may be included by using the
# include_dir option. This defines a directory that will be searched
# for config files. All files that end in '.conf' will be loaded as
# a configuration file. It is best to have this as the last option
# in the main file. This option will only be processed from the main
# configuration file. The directory specified must not contain the
# main configuration file.
# Files within include_dir will be loaded sorted in case-sensitive
# alphabetical order, with capital letters ordered first. If this option is
# given multiple times, all of the files from the first instance will be
# processed before the next instance. See the man page for examples.
#include_dir
{{- else }}
{{ .Values.customConfig | indent 4 }}
{{- end }}

View File

@@ -1,40 +0,0 @@
{{- if .Values.monitoring.podMonitor.enabled }}
apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
labels:
{{ include "mosquitto.labels" . | indent 4 }}
{{- if .Values.monitoring.podMonitor.labels }}
{{ toYaml .Values.monitoring.podMonitor.labels }}
{{- end }}
name: {{ template "mosquitto.fullname" . }}-prometheus-exporter
{{- if .Values.monitoring.podMonitor.namespace }}
namespace: {{ .Values.monitoring.podMonitor.namespace }}
{{- end }}
spec:
podMetricsEndpoints:
- port: prometheus
path: /metrics
{{- if .Values.monitoring.podMonitor.interval }}
interval: {{ .Values.monitoring.podMonitor.interval }}
{{- end }}
{{- if .Values.monitoring.podMonitor.bearerTokenFile }}
bearerTokenFile: {{ .Values.monitoring.podMonitor.bearerTokenFile }}
{{- end }}
{{- if .Values.monitoring.podMonitor.bearerTokenSecret }}
bearerTokenSecret:
name: {{ .Values.monitoring.podMonitor.bearerTokenSecret.name }}
key: {{ .Values.monitoring.podMonitor.bearerTokenSecret.key }}
{{- if .Values.monitoring.podMonitor.bearerTokenSecret.optional }}
optional: {{ .Values.monitoring.podMonitor.bearerTokenSecret.optional }}
{{- end }}
{{- end }}
jobLabel: {{ template "mosquitto.fullname" . }}-prometheus-exporter
namespaceSelector:
matchNames:
- {{ .Release.Namespace }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "mosquitto.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@@ -1,36 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "mosquitto.fullname" . }}
labels:
{{ include "mosquitto.labels" . | indent 4 }}
{{- with .Values.service.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.service.type }}
{{- if .Values.service.externalTrafficPolicy }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
{{- end }}
{{- if .Values.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}
ports:
- port: {{ .Values.service.port }}
targetPort: default
protocol: TCP
name: default
- port: {{ .Values.service.websocketPort }}
targetPort: websocket
protocol: TCP
name: websocket
{{- if .Values.monitoring.sidecar.enabled }}
- port: {{ .Values.monitoring.sidecar.port }}
targetPort: prometheus
protocol: TCP
name: prometheus
{{- end }}
selector:
app.kubernetes.io/name: {{ include "mosquitto.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -1,8 +0,0 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ template "mosquitto.serviceAccountName" . }}
labels:
{{ include "mosquitto.labels" . | indent 4 }}
{{- end -}}

View File

@@ -1,114 +0,0 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ include "mosquitto.fullname" . }}
labels:
{{ include "mosquitto.labels" . | indent 4 }}
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: {{ include "mosquitto.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
serviceName: {{ include "mosquitto.name" . }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "mosquitto.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ template "mosquitto.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
{{- if .Values.monitoring.sidecar.enabled }}
- name: exporter
image: "{{ .Values.monitoring.sidecar.image.repository }}:{{ .Values.monitoring.sidecar.image.tag }}"
imagePullPolicy: {{ .Values.monitoring.sidecar.image.pullPolicy }}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
args:
{{ toYaml .Values.monitoring.sidecar.args | indent 12 }}
env:
{{ toYaml .Values.monitoring.sidecar.envs | indent 12 }}
resources:
{{ toYaml .Values.monitoring.sidecar.resources | indent 12 }}
ports:
- containerPort: {{ .Values.monitoring.sidecar.port }}
name: prometheus
protocol: TCP
{{- end }}
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: default
containerPort: 1883
protocol: TCP
- name: websocket
containerPort: 9001
protocol: TCP
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumeMounts:
- name: configmap
mountPath: /mosquitto/config
- name: data
mountPath: /mosquitto/data
{{- if .Values.extraVolumeMounts }}{{ toYaml .Values.extraVolumeMounts | trim | nindent 12 }}{{ end }}
volumes:
- name: configmap
configMap:
name: {{ template "mosquitto.fullname" . }}
{{- if not .Values.persistence.enabled }}
- name: data
emptyDir: {}
{{- end }}
{{- if and .Values.persistence.enabled .Values.persistence.existingClaim }}
- name: data
persistentVolumeClaim:
claimName: {{ .Values.persistence.existingClaim }}
{{- end }}
{{- if .Values.extraVolumes }}{{ toYaml .Values.extraVolumes | trim | nindent 8 }}{{ 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 }}
volumeClaimTemplates:
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
- metadata:
name: data
labels:
app.kubernetes.io/name: {{ include "mosquitto.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Values.persistence.annotations }}
annotations:
{{ toYaml .Values.persistence.annotations | indent 4 }}
{{- end }}
spec:
accessModes: [ {{ .Values.persistence.accessMode | quote }} ]
resources:
requests:
storage: {{ .Values.persistence.size | quote }}
{{- if .Values.persistence.storageClass }}
{{- if (eq "-" .Values.persistence.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: {{ .Values.persistence.storageClass | quote }}
{{- end }}
{{- end }}
{{- end }}

View File

@@ -1,117 +1,40 @@
# Default values for mosquitto.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: eclipse-mosquitto
tag: "{{ .Chart.AppVersion }}"
pullPolicy: IfNotPresent
tag: 2.0.7
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
# Specifies whether a service account should be created
create: true
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name:
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
strategy:
type: Recreate
service:
annotations: {}
type: ClusterIP
port: 1883
websocketPort: 9001
# externalTrafficPolicy:
# loadBalancerIP:
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
annotations: {}
port:
port: 1883
name: mqtt
persistence:
enabled: False
annotations: {}
## mosquitto 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: mosquitto-data
accessMode: ReadWriteOnce
size: 5Gi
# customConfig:
# Any extra volumes to define for the pod
extraVolumes: []
# - name: example-name
# hostPath:
# path: /path/on/host
# type: DirectoryOrCreate
# Any extra volume mounts to define for the containers
extraVolumeMounts: []
# - name: example-name
# mountPath: /path/in/container
monitoring:
podMonitor:
data:
enabled: false
sidecar:
enabled: false
port: 9234
args:
- "--use-splitted-config"
envs:
- name: MQTT_CLIENT_ID
value: exporter
- name: BROKER_HOST
valueFrom:
fieldRef:
fieldPath: status.podIP
image:
repository: nolte/mosquitto-exporter
tag: v0.6.3
pullPolicy: IfNotPresent
resources:
limits:
cpu: 300m
memory: 128Mi
requests:
cpu: 100m
memory: 64Mi
emptyDir: false
mountPath: /mosquitto/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: "-"
accessMode: ReadWriteOnce
size: 100Mi
## Do not delete the pvc upon helm uninstall
# skipuninstall: false
# existingClaim: ""

View File

@@ -1,63 +1,72 @@
# node-feature-discovery
# node-feature-discovery helm chart
![Version: 2.1.0](https://img.shields.io/badge/Version-2.1.0-informational?style=flat-square) ![AppVersion: 0.7.0](https://img.shields.io/badge/AppVersion-0.7.0-informational?style=flat-square)
This is a helm chart for [node-feature-discovery](https://github.com/kubernetes-sigs/node-feature-discovery) using the master/worker pattern.
Detect hardware features available on each node in a Kubernetes cluster, and advertises those features using node labels
## TL;DR
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/node-feature-discovery>
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/node-feature-discovery
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
To install the chart with the release name `my-release`:
## Source Code
```shell
helm install my-release k8s-at-home/node-feature-discovery
```
* <https://github.com/kubernetes-sigs/node-feature-discovery>
* <https://github.com/k8s-at-home/charts>
## Uninstalling the Chart
## Values
To uninstall/delete the `my-release` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| config | string | `"#sources:\n# cpu:\n# cpuid:\n## NOTE: whitelist has priority over blacklist\n# attributeBlacklist:\n# - \"BMI1\"\n# - \"BMI2\"\n# - \"CLMUL\"\n# - \"CMOV\"\n# - \"CX16\"\n# - \"ERMS\"\n# - \"F16C\"\n# - \"HTT\"\n# - \"LZCNT\"\n# - \"MMX\"\n# - \"MMXEXT\"\n# - \"NX\"\n# - \"POPCNT\"\n# - \"RDRAND\"\n# - \"RDSEED\"\n# - \"RDTSCP\"\n# - \"SGX\"\n# - \"SSE\"\n# - \"SSE2\"\n# - \"SSE3\"\n# - \"SSE4.1\"\n# - \"SSE4.2\"\n# - \"SSSE3\"\n# attributeWhitelist:\n# kernel:\n# kconfigFile: \"/path/to/kconfig\"\n# configOpts:\n# - \"NO_HZ\"\n# - \"X86\"\n# - \"DMI\"\n# pci:\n# deviceClassWhitelist:\n# - \"0200\"\n# - \"03\"\n# - \"12\"\n# deviceLabelFields:\n# - \"class\"\n# - \"vendor\"\n# - \"device\"\n# - \"subsystem_vendor\"\n# - \"subsystem_device\"\n# usb:\n# deviceClassWhitelist:\n# - \"0e\"\n# - \"ef\"\n# - \"fe\"\n# - \"ff\"\n# deviceLabelFields:\n# - \"class\"\n# - \"vendor\"\n# - \"device\"\n# custom:\n# - name: \"my.kernel.feature\"\n# matchOn:\n# - loadedKMod: [\"example_kmod1\", \"example_kmod2\"]\n# - name: \"my.pci.feature\"\n# matchOn:\n# - pciId:\n# class: [\"0200\"]\n# vendor: [\"15b3\"]\n# device: [\"1014\", \"1017\"]\n# - pciId :\n# vendor: [\"8086\"]\n# device: [\"1000\", \"1100\"]\n# - name: \"my.usb.feature\"\n# matchOn:\n# - usbId:\n# class: [\"ff\"]\n# vendor: [\"03e7\"]\n# device: [\"2485\"]\n# - usbId:\n# class: [\"fe\"]\n# vendor: [\"1a6e\"]\n# device: [\"089a\"]\n# - name: \"my.combined.feature\"\n# matchOn:\n# - pciId:\n# vendor: [\"15b3\"]\n# device: [\"1014\", \"1017\"]\n# loadedKMod : [\"vendor_kmod1\", \"vendor_kmod2\"]\n"` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"gcr.io/k8s-staging-nfd/node-feature-discovery"` | |
| image.tag | string | `"v0.7.0"` | |
| imagePullSecrets | list | `[]` | |
| master.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[0].preference.matchExpressions[0].key | string | `"node-role.kubernetes.io/master"` | |
| master.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[0].preference.matchExpressions[0].operator | string | `"In"` | |
| master.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[0].preference.matchExpressions[0].values[0] | string | `""` | |
| master.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[0].weight | int | `1` | |
| master.nodeSelector | object | `{}` | |
| master.replicaCount | int | `1` | |
| master.resources | object | `{}` | |
| master.securityContext | object | `{}` | |
| master.tolerations[0].effect | string | `"NoSchedule"` | |
| master.tolerations[0].key | string | `"node-role.kubernetes.io/master"` | |
| master.tolerations[0].operator | string | `"Equal"` | |
| master.tolerations[0].value | string | `""` | |
| nameOverride | string | `""` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| rbac.create | bool | `true` | |
| service.clusterIP | string | `""` | |
| service.externalIPs | list | `[]` | |
| service.externalTrafficPolicy | string | `nil` | |
| service.loadBalancerIP | string | `""` | |
| service.port | int | `8080` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| sources | list | `[]` | |
| worker.affinity | object | `{}` | |
| worker.nodeSelector | object | `{}` | |
| worker.resources | object | `{}` | |
| worker.securityContext | object | `{}` | |
| worker.tolerations | list | `[]` | |
```shell
helm delete my-release --purge
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/node-feature-discovery/values.yaml) file. It has several commented out suggested values.
| Parameter | Description | Default |
| ------------------------------------------- | -------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `image.repository` | Image repository | `quay.io/kubernetes_incubator/node-feature-discovery` |
| `image.tag` | Image tag. Possible values listed [here](https://github.com/kubernetes-sigs/node-feature-discovery/releases). | `v0.6.0` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `sources` | List of sources to consider when labeling - see [documentation](https://github.com/kubernetes-sigs/node-feature-discovery#feature-sources) for info | `[]` |
| `config` | node-feature-discovery configuration - see [nfd-worker.conf.example](https://github.com/kubernetes-sigs/node-feature-discovery/blob/master/nfd-worker.conf.example) for example | `{}` |
| `service.type` | Kubernetes service type for the GUI | `ClusterIP` |
| `service.port` | Kubernetes port where the GUI is exposed | `8080` |
| `service.annotations` | Service annotations for the GUI | `{}` |
| `service.labels` | Custom labels | `{}` |
| `service.loadBalancerIP` | Loadbalancer IP for the GUI | `{}` |
| `service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | `nil` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
| `master.replicaCount` | Number of replicas to scale the master component to | `1` |
| `master.resources` | CPU/Memory resource requests/limits for master component | `{}` |
| `master.nodeSelector` | Node labels for master component pod assignment | `{}` |
| `master.tolerations` | Toleration labels for master component pod assignment | See [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/node-feature-discovery/values.yaml) |
| `master.affinity` | Affinity settings for master component pod assignment | See [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/node-feature-discovery/values.yaml) |
| `worker.resources` | CPU/Memory resource requests/limits for worker component | `{}` |
| `worker.nodeSelector` | Node labels for worker component pod assignment | `{}` |
| `worker.tolerations` | Toleration labels for worker component pod assignment | `[]` |
| `worker.affinity` | Affinity settings for worker component pod assignment | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install my-release \
--set image.pullPolicy="Always" \
k8s-at-home/node-feature-discovery
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install my-release -f values.yaml k8s-at-home/node-feature-discovery
```

View File

@@ -1,7 +1,7 @@
name: oauth2-proxy
version: 4.4.0
version: 5.0.0
apiVersion: v1
appVersion: 5.1.0
appVersion: 7.0.1
home: https://oauth2-proxy.github.io/oauth2-proxy/
description: A reverse proxy that provides authentication with Google, Github or other providers
keywords:

View File

@@ -1,82 +1,180 @@
# oauth2-proxy
![Version: 4.4.0](https://img.shields.io/badge/Version-4.4.0-informational?style=flat-square) ![AppVersion: 5.1.0](https://img.shields.io/badge/AppVersion-5.1.0-informational?style=flat-square)
[oauth2-proxy](https://github.com/pusher/oauth2_proxy) is a reverse proxy and static file server that provides authentication using Providers (Google, GitHub, and others) to validate accounts by email, domain or group.
A reverse proxy that provides authentication with Google, Github or other providers
## TL;DR;
**Homepage:** <https://oauth2-proxy.github.io/oauth2-proxy/>
```console
$ helm install stable/oauth2-proxy
```
## Maintainers
## Introduction
| Name | Email | Url |
| ---- | ------ | --- |
| carpenike | ryan@ryanholt.net | |
This chart bootstraps an oauth2-proxy deployment on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.
## Source Code
## Installing the Chart
* <https://github.com/oauth2-proxy/oauth2-proxy>
To install the chart with the release name `my-release`:
## Requirements
```console
$ helm install stable/oauth2-proxy --name my-release
```
Kubernetes: `>=1.9.0-0`
The command deploys oauth2-proxy on the Kubernetes cluster in the default configuration. The [configuration](#configuration) section lists the parameters that can be configured during installation.
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| authenticatedEmailsFile.enabled | bool | `false` | |
| authenticatedEmailsFile.restricted_access | string | `""` | |
| authenticatedEmailsFile.template | string | `""` | |
| config.clientID | string | `"XXXXXXX"` | |
| config.clientSecret | string | `"XXXXXXXX"` | |
| config.configFile | string | `"email_domains = [ \"*\" ]\nupstreams = [ \"file:///dev/null\" ]"` | |
| config.cookieSecret | string | `"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"` | |
| config.google | object | `{}` | |
| extraArgs | object | `{}` | |
| extraEnv | list | `[]` | |
| extraVolumeMounts | list | `[]` | |
| extraVolumes | list | `[]` | |
| htpasswdFile.enabled | bool | `false` | |
| htpasswdFile.entries | object | `{}` | |
| htpasswdFile.existingSecret | string | `""` | |
| httpScheme | string | `"http"` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"quay.io/oauth2-proxy/oauth2-proxy"` | |
| image.tag | string | `"v6.1.1"` | |
| ingress.enabled | bool | `false` | |
| ingress.path | string | `"/"` | |
| initContainers | list | `[]` | |
| livenessProbe.enabled | bool | `true` | |
| livenessProbe.initialDelaySeconds | int | `0` | |
| livenessProbe.timeoutSeconds | int | `1` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| podDisruptionBudget.enabled | bool | `true` | |
| podDisruptionBudget.minAvailable | int | `1` | |
| podLabels | object | `{}` | |
| podSecurityContext | object | `{}` | |
| priorityClassName | string | `""` | |
| proxyVarsAsSecrets | bool | `true` | |
| readinessProbe.enabled | bool | `true` | |
| readinessProbe.initialDelaySeconds | int | `0` | |
| readinessProbe.periodSeconds | int | `10` | |
| readinessProbe.successThreshold | int | `1` | |
| readinessProbe.timeoutSeconds | int | `1` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext.enabled | bool | `false` | |
| securityContext.runAsNonRoot | bool | `true` | |
| service.annotations | object | `{}` | |
| service.port | int | `80` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.enabled | bool | `true` | |
| serviceAccount.name | string | `nil` | |
| tolerations | list | `[]` | |
| topologySpreadConstraints.enabled | bool | `false` | |
| topologySpreadConstraints.maxSkew | int | `1` | |
| topologySpreadConstraints.topologyKey | string | `"topology.kubernetes.io/zone"` | |
| topologySpreadConstraints.whenUnsatisfiable | string | `"DoNotSchedule"` | |
To uninstall/delete the `my-release` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
$ helm delete my-release
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Upgrading an existing Release to a new major version
A major chart version change (like v1.2.3 -> v2.0.0) indicates that there is an
incompatible breaking change needing manual actions.
### To 1.0.0
This version upgrade oauth2-proxy to v4.0.0. Please see the [changelog](https://github.com/pusher/oauth2_proxy/blob/v4.0.0/CHANGELOG.md#v400) in order to upgrade.
### To 2.0.0
Version 2.0.0 of this chart introduces support for Kubernetes v1.16.x by way of addressing the deprecation of the Deployment object apiVersion `apps/v1beta2`. See [the v1.16 API deprecations page](https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/) for more information.
Due to [this issue](https://github.com/helm/helm/issues/6583) there may be errors performing a `helm upgrade`of this chart from versions earlier than 2.0.0.
### To 3.0.0
Version 3.0.0 introduces support for [EKS IAM roles for service accounts](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html) by adding a managed service account to the chart. This is a breaking change since the service account is enabled by default. To disable this behaviour set `serviceAccount.enabled` to `false`
### To 4.0.0
This is a breaking change as the chart was moved to k8s-at-home. No other change on top of the 3.x.x branch.
## To 5.0.0
Not many breaking changes. See the [changelog](https://github.com/oauth2-proxy/oauth2-proxy/releases/tag/v7.0.0) for oauth2-proxy, specifically the section "Breaking Changes" for a few configuration changes, particularly to do with the Azure provider.
## Configuration
The following table lists the configurable parameters of the oauth2-proxy chart and their default values.
Parameter | Description | Default
--- | --- | ---
`affinity` | node/pod affinities | None
`authenticatedEmailsFile.enabled` | Enables authorize individual email addresses | `false`
`authenticatedEmailsFile.template` | Name of the configmap that is handled outside of that chart | `""`
`authenticatedEmailsFile.restricted_access` | [email addresses](https://github.com/pusher/oauth2_proxy#email-authentication) list config | `""`
`config.clientID` | oauth client ID | `""`
`config.clientSecret` | oauth client secret | `""`
`config.cookieSecret` | server specific cookie for the secret; create a new one with `openssl rand -base64 32 | head -c 32 | base64` | `""`
`config.existingSecret` | existing Kubernetes secret to use for OAuth2 credentials. See [secret template](https://github.com/helm/charts/blob/master/stable/oauth2-proxy/templates/secret.yaml) for the required values | `nil`
`config.configFile` | custom [oauth2_proxy.cfg](https://github.com/pusher/oauth2_proxy/blob/master/contrib/oauth2_proxy.cfg.example) contents for settings not overridable via environment nor command line | `""`
`config.existingConfig` | existing Kubernetes configmap to use for the configuration file. See [config template](https://github.com/helm/charts/blob/master/stable/oauth2-proxy/templates/configmap.yaml) for the required values | `nil`
`config.google.adminEmail` | user impersonated by the google service account | `""`
`config.google.serviceAccountJson` | google service account json contents | `""`
`config.google.existingConfig` | existing Kubernetes configmap to use for the service account file. See [google secret template](https://github.com/helm/charts/blob/master/stable/oauth2-proxy/templates/google-secret.yaml) for the required values | `nil`
`extraArgs` | key:value list of extra arguments to give the binary | `{}`
`extraEnv` | key:value list of extra environment variables to give the binary | `[]`
`extraVolumes` | list of extra volumes | `[]`
`extraVolumeMounts` | list of extra volumeMounts | `[]`
`htpasswdFile.enabled` | enable htpasswd-file option | `false`
`htpasswdFile.entries` | list of [SHA encrypted user:passwords](https://pusher.github.io/oauth2_proxy/configuration#command-line-options) | `{}`
`htpasswdFile.existingSecret` | existing Kubernetes secret to use for OAuth2 htpasswd file | `""`
`httpScheme` | `http` or `https`. `name` used for port on the deployment. `httpGet` port `name` and `scheme` used for `liveness`- and `readinessProbes`. `name` and `targetPort` used for the service. | `http`
`image.pullPolicy` | Image pull policy | `IfNotPresent`
`image.repository` | Image repository | `quay.io/pusher/oauth2_proxy`
`image.tag` | Image tag | `v5.1.0`
`imagePullSecrets` | Specify image pull secrets | `nil` (does not add image pull secrets to deployed pods)
`ingress.enabled` | Enable Ingress | `false`
`ingress.ingressClassName` | Set ingressClassName | `nil`
`ingress.path` | Ingress accepted path | `/`
`ingress.extraPaths` | Ingress extra paths to prepend to every host configuration. Useful when configuring [custom actions with AWS ALB Ingress Controller](https://kubernetes-sigs.github.io/aws-alb-ingress-controller/guide/ingress/annotation/#actions). | `[]`
`ingress.annotations` | Ingress annotations | `nil`
`ingress.hosts` | Ingress accepted hostnames | `nil`
`ingress.tls` | Ingress TLS configuration | `nil`
`initContainers` | pod init containers | `[]`
`livenessProbe.enabled` | enable Kubernetes livenessProbe. Disable to use oauth2-proxy with Istio mTLS. See [Istio FAQ](https://istio.io/help/faq/security/#k8s-health-checks) | `true`
`livenessProbe.initialDelaySeconds` | number of seconds | 0
`livenessProbe.timeoutSeconds` | number of seconds | 1
`nodeSelector` | node labels for pod assignment | `{}`
`podAnnotations` | annotations to add to each pod | `{}`
`podLabels` | additional labesl to add to each pod | `{}`
`podDisruptionBudget.enabled`| Enabled creation of PodDisruptionBudget (only if replicaCount > 1) | true
`podDisruptionBudget.minAvailable`| minAvailable parameter for PodDisruptionBudget | 1
`podSecurityContext` | Kubernetes security context to apply to pod | `{}`
`priorityClassName` | priorityClassName | `nil`
`readinessProbe.enabled` | enable Kubernetes readinessProbe. Disable to use oauth2-proxy with Istio mTLS. See [Istio FAQ](https://istio.io/help/faq/security/#k8s-health-checks) | `true`
`readinessProbe.initialDelaySeconds` | number of seconds | 0
`readinessProbe.timeoutSeconds` | number of seconds | 1
`readinessProbe.periodSeconds` | number of seconds | 10
`readinessProbe.successThreshold` | number of successes | 1
`replicaCount` | desired number of pods | `1`
`resources` | pod resource requests & limits | `{}`
`service.port` | port for the service | `80`
`service.type` | type of service | `ClusterIP`
`service.clusterIP` | cluster ip address | `nil`
`service.loadBalancerIP` | ip of load balancer | `nil`
`service.loadBalancerSourceRanges` | allowed source ranges in load balancer | `nil`
`serviceAccount.enabled` | create a service account | `true`
`serviceAccount.name` | the service account name | ``
`serviceAccount.annotations` | (optional) annotations for the service account | `{}`
`tolerations` | list of node taints to tolerate | `[]`
`topologySpreadConstraints.enabled` | enable Kubernetes [topologySpreadConstraints](https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/) | `false`
`topologySpreadConstraints.maxSkew` | the degree to which Pods may be unevenly distributed | `1`
`topologySpreadConstraints.topologyKey` | the key of node labels | `topology.kubernetes.io/zone`
`topologySpreadConstraints.whenUnsatisfiable` | how to deal with a Pod if it doesn't satisfy the spread constraint (`DoNotSchedule`, `ScheduleAnyway`) | `DoNotSchedule`
`securityContext.enabled` | enable Kubernetes security context on container | `false`
`securityContext.runAsNonRoot` | make sure that the container runs as a non-root user | `true`
`proxyVarsAsSecrets` | choose between environment values or secrets for setting up OAUTH2_PROXY variables. When set to false, remember to add the variables OAUTH2_PROXY_CLIENT_ID, OAUTH2_PROXY_CLIENT_SECRET, OAUTH2_PROXY_COOKIE_SECRET in extraEnv | `true`
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
$ helm install stable/oauth2-proxy --name my-release \
--set=image.tag=v0.0.2,resources.limits.cpu=200m
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
$ helm install stable/oauth2-proxy --name my-release -f values.yaml
```
> **Tip**: You can use the default [values.yaml](values.yaml)
## SSL Configuration
See: [SSL Configuration](https://pusher.github.io/oauth2_proxy/tls-configuration).
Use ```values.yaml``` like:
```yaml
...
extraArgs:
tls-cert: /path/to/cert.pem
tls-key: /path/to/cert.key
extraVolumes:
- name: ssl-cert
secret:
secretName: my-ssl-secret
extraVolumeMounts:
- mountPath: /path/to/
name: ssl-cert
...
```
With a secret called `my-ssl-secret`:
```yaml
...
data:
cert.pem: AB..==
cert.key: CD..==
```

View File

@@ -30,7 +30,7 @@ config:
image:
repository: "quay.io/oauth2-proxy/oauth2-proxy"
tag: "v6.1.1"
tag: "v7.0.1"
pullPolicy: "IfNotPresent"
# Optionally specify an array of imagePullSecrets.

View File

@@ -1,125 +1,48 @@
# plex
# Plex Media Server helm chart
![Version: 2.3.0](https://img.shields.io/badge/Version-2.3.0-informational?style=flat-square) ![AppVersion: 1.20.2.3402](https://img.shields.io/badge/AppVersion-1.20.2.3402-informational?style=flat-square)
This is an opinionated helm chart for Plex Media Center based on the [official container image](https://hub.docker.com/r/plexinc/pms-docker/).
Plex Media Server
This chart is 'forked' from the excellent [munnerz/kube-plex](https://github.com/munnerz/kube-plex) repo in order to allow for more timely updates and publishing to a helm registry. **NOTE:** This chart is not compatible as an upgrade from the `kube-plex` chart.
**Homepage:** <https://plex.tv/>
## TL;DR
## Maintainers
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/plex
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `plex`:
* <https://github.com/k8s-at-home/charts/tree/master/charts/plex>
* <https://hub.docker.com/r/plexinc/pms-docker/>
```console
helm install plex k8s-at-home/plex
```
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| certificate.pkcsMangler.certificateSecret.crtName | string | `"tls.crt"` | |
| certificate.pkcsMangler.certificateSecret.keyName | string | `"tls.key"` | |
| certificate.pkcsMangler.certificateSecret.name | string | `""` | |
| certificate.pkcsMangler.certificateSecret.volume.mountPath | string | `"/etc/plex-certs"` | |
| certificate.pkcsMangler.certificateSecret.volume.name | string | `"plex-certs"` | |
| certificate.pkcsMangler.configmap.annotations | object | `{}` | |
| certificate.pkcsMangler.configmap.labels | object | `{}` | |
| certificate.pkcsMangler.configmap.name | string | `"42-pkcs-mangler"` | |
| certificate.pkcsMangler.enabled | bool | `false` | |
| certificate.pkcsMangler.image.repository | string | `"tlsprint/openssl"` | |
| certificate.pkcsMangler.image.tag | string | `"1.1.1f"` | |
| certificate.pkcsMangler.pfxInContainerPath | string | `"/config/plex.pfx"` | |
| certificate.pkcsMangler.pfxPassword.annotations | object | `{}` | |
| certificate.pkcsMangler.pfxPassword.labels | object | `{}` | |
| certificate.pkcsMangler.pfxPassword.passwordKey | string | `"pfx-password"` | |
| certificate.pkcsMangler.pfxPassword.secretName | string | `"plex-media-server-pfx-password"` | |
| certificate.pkcsMangler.pfxPassword.value | string | `"setpassword"` | |
| certificate.pkcsMangler.setPlexPreferences.customCertificateDomain | string | `""` | |
| certificate.pkcsMangler.setPlexPreferences.enabled | bool | `true` | |
| certificate.pkcsMangler.volume.defaultMode | int | `493` | |
| certificate.pkcsMangler.volume.mountPath | string | `"/etc/cont-init.d/42-pkcs-mangler"` | |
| certificate.pkcsMangler.volume.name | string | `"42-pkcs-mangler"` | |
| certificate.pkcsMangler.volume.subPath | string | `"42-pkcs-mangler"` | |
| claimToken | string | `""` | |
| deploymentAnnotations | object | `{}` | |
| fullnameOverride | string | `""` | |
| hostNetwork | bool | `false` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"plexinc/pms-docker"` | |
| image.tag | string | `"1.20.2.3402-0fec14d92"` | |
| imagePullSecrets | list | `[]` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0] | string | `"chart-example.local"` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| logging.promtail.enabled | bool | `false` | |
| logging.promtail.image.pullPolicy | string | `"IfNotPresent"` | |
| logging.promtail.image.repository | string | `"grafana/promtail"` | |
| logging.promtail.image.tag | string | `"1.6.0"` | |
| logging.promtail.loki.url | string | `"http://loki.logs.svc.cluster.local:3100/loki/api/v1/push"` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.config.accessMode | string | `"ReadWriteOnce"` | |
| persistence.config.size | string | `"20Gi"` | |
| persistence.config.storageClass | string | `""` | |
| persistence.data.accessMode | string | `"ReadWriteOnce"` | |
| persistence.data.enabled | bool | `true` | |
| persistence.data.size | string | `"40Gi"` | |
| persistence.data.storageClass | string | `""` | |
| persistence.extraData | list | `[]` | |
| persistence.extraMounts | list | `[]` | |
| persistence.transcode.accessMode | string | `"ReadWriteOnce"` | |
| persistence.transcode.emptyDir.medium | string | `""` | |
| persistence.transcode.enabled | bool | `false` | |
| persistence.transcode.size | string | `"20Gi"` | |
| persistence.transcode.storageClass | string | `""` | |
| plexPreferences.configmap.annotations | object | `{}` | |
| plexPreferences.configmap.labels | object | `{}` | |
| plexPreferences.configmap.name | string | `"41-plex-preferences"` | |
| plexPreferences.enabled | bool | `false` | |
| plexPreferences.volume.defaultMode | int | `493` | |
| plexPreferences.volume.mountPath | string | `"/etc/cont-init.d/41-plex-preferences"` | |
| plexPreferences.volume.name | string | `"41-plex-preferences"` | |
| plexPreferences.volume.subPath | string | `"41-plex-preferences"` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| probes.liveness.enabled | bool | `true` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.httpGet.path | string | `"/identity"` | |
| probes.liveness.httpGet.port | int | `32400` | |
| probes.liveness.periodSeconds | int | `10` | |
| probes.readiness.enabled | bool | `true` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.httpGet.path | string | `"/identity"` | |
| probes.readiness.httpGet.port | int | `32400` | |
| probes.readiness.periodSeconds | int | `10` | |
| probes.startup.enabled | bool | `true` | |
| probes.startup.failureThreshold | int | `30` | |
| probes.startup.httpGet.path | string | `"/identity"` | |
| probes.startup.httpGet.port | int | `32400` | |
| probes.startup.initialDelaySeconds | int | `5` | |
| probes.startup.periodSeconds | int | `10` | |
| proxy.enabled | bool | `false` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| serviceTCP.annotations | object | `{}` | |
| serviceTCP.labels | object | `{}` | |
| serviceTCP.loadBalancerIP | string | `nil` | |
| serviceTCP.port | int | `32400` | |
| serviceTCP.type | string | `"ClusterIP"` | |
| serviceUDP.annotations | object | `{}` | |
| serviceUDP.labels | object | `{}` | |
| serviceUDP.loadBalancerIP | string | `nil` | |
| serviceUDP.type | string | `"ClusterIP"` | |
| strategyType | string | `"Recreate"` | |
| timezone | string | `"UTC"` | |
| tolerations | list | `[]` | |
To uninstall/delete the `plex` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
helm delete plex
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/plex/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install plex \
--set timezone="America/New York" \
k8s-at-home/plex
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install plex -f values.yaml k8s-at-home/plex
```

View File

@@ -1,84 +0,0 @@
# powerdns
![Version: 3.0.3](https://img.shields.io/badge/Version-3.0.3-informational?style=flat-square) ![AppVersion: v4.3.1](https://img.shields.io/badge/AppVersion-v4.3.1-informational?style=flat-square)
PowerDNS is a DNS server, written in C++ and licensed under the GPL. It runs on most Unix derivatives. PowerDNS features a large number of different backends ranging from simple BIND style zonefiles to relational databases and load balancing/failover algorithms. A DNS recursor is provided as a separate program.
**Homepage:** <https://www.powerdns.com/>
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| carpenike | ryan@ryanholt.net | |
## Source Code
* <http://www.github.com/PowerDNS/>
## Requirements
| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | mariadb | 9.2.5 |
| https://charts.bitnami.com/bitnami | postgresql | 10.2.7 |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"Always"` | |
| image.repository | string | `"naps/powerdns"` | |
| image.tag | string | `"4.3.1"` | |
| imagePullSecrets | list | `[]` | |
| mariadb.architecture | string | `"standalone"` | |
| mariadb.auth.database | string | `"pdns"` | |
| mariadb.auth.password | string | `"pdns-pass"` | |
| mariadb.auth.rootPassword | string | `"pdnsrootpass"` | |
| mariadb.auth.username | string | `"pdns"` | |
| mariadb.enabled | bool | `false` | |
| mariadb.primary.persistence.enabled | bool | `false` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| podSecurityContext | object | `{}` | |
| postgresql.enabled | bool | `true` | |
| postgresql.persistence.enabled | bool | `false` | |
| postgresql.postgresqlDatabase | string | `"pdns"` | |
| postgresql.postgresqlPassword | string | `"pdnspass"` | |
| postgresql.postgresqlPostgresPassword | string | `"pdnsadminpass"` | |
| postgresql.postgresqlUsername | string | `"pdns"` | |
| powerdns.config | object | `{}` | |
| powerdns.dnssec | bool | `true` | |
| powerdns.domain | string | `"mydomain.local"` | |
| powerdns.mysql.database | string | `"pdns"` | |
| powerdns.mysql.password | string | `"pdnspass"` | |
| powerdns.mysql.username | string | `"pdns"` | |
| powerdns.postgres.database | string | `"pdns"` | |
| powerdns.postgres.password | string | `"pdnspass"` | |
| powerdns.postgres.username | string | `"pdns"` | |
| probes.liveness.enabled | bool | `true` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `30` | |
| probes.liveness.timeoutSeconds | int | `10` | |
| probes.readiness.enabled | bool | `true` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `30` | |
| probes.readiness.timeoutSeconds | int | `10` | |
| probes.startup.enabled | bool | `false` | |
| probes.startup.failureThreshold | int | `30` | |
| probes.startup.periodSeconds | int | `10` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.externalTrafficPolicy | string | `""` | |
| service.port | int | `53` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `nil` | |
| strategyType | string | `"Recreate"` | |
| tolerations | list | `[]` | |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -1,53 +1,50 @@
# prometheus-nut-exporter
# Prometheus NUT Exporter
![Version: 1.0.1](https://img.shields.io/badge/Version-1.0.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.0.1](https://img.shields.io/badge/AppVersion-1.0.1-informational?style=flat-square)
This is a helm chart provides a service monitor to send NUT server metrics to a Prometheus instance. Based on [Prometheus NUT Exporter](https://github.com/HON95/prometheus-nut-exporter).
A Helm chart for Kubernetes
## TL;DR;
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/prometheus-nut-exporter>
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/prometheus-nut-exporter
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
To install the chart with the release name `prometheus-nut-exporter`:
## Source Code
```console
helm install --name prometheus-nut-exporter k8s-at-home/prometheus-nut-exporter
```
* <https://github.com/HON95/prometheus-nut-exporter>
## Uninstalling the Chart
## Values
To uninstall/delete the `prometheus-nut-exporter` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| env | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"hon95/prometheus-nut-exporter"` | |
| image.tag | string | `"1.0.1"` | |
| imagePullSecrets | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `30` | |
| probes.liveness.timeoutSeconds | int | `10` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `30` | |
| probes.readiness.timeoutSeconds | int | `10` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.port | int | `9995` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| serviceMonitor.enabled | bool | `false` | |
| serviceMonitor.targets | list | `[]` | |
| tolerations | list | `[]` | |
```console
helm delete prometheus-nut-exporter
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/prometheus-nut-exporter/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name prometheus-nut-exporter \
--set serviceMonitor.enabled=true \
k8s-at-home/prometheus-nut-exporter
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name prometheus-nut-exporter -f values.yaml k8s-at-home/prometheus-nut-exporter
```
## Metrics
You can find the exported metrics here: [metrics](https://github.com/HON95/prometheus-nut-exporter/blob/master/metrics.md).

View File

@@ -1,8 +1,8 @@
apiVersion: v2
appVersion: 3.0.0.3989
appVersion: 3.0.2.4552
description: A fork of Sonarr to work with movies à la Couchpotato
name: radarr
version: 9.1.0
version: 9.1.1
kubeVersion: ">=1.16.0-0"
keywords:
- radarr

View File

@@ -8,7 +8,7 @@
image:
repository: linuxserver/radarr
pullPolicy: IfNotPresent
tag: version-3.0.0.3989
tag: version-3.0.2.4552
strategy:
type: Recreate

View File

@@ -1,74 +1,27 @@
# rtorrent-flood
# rTorrent/flood BitTorrent client
![Version: 5.0.0](https://img.shields.io/badge/Version-5.0.0-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
## Setup
rtorrent and flood co-located in the same deployment
NB: This chart will start 2 containers in a single pod, when both containers are started, you will be able to configure flood.
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/rtorrent-flood>
1. Install the chart `helm install rtorrent k8s-at-home/rtorrent-flood`
## Maintainers
2. Port-forward to the container `kubectl port-forward $(kubectl get pods -A -o json | jq '.items[] | select(.metadata.labels."app.kubernetes.io/name"=="rtorrent-flood")' | jq .metadata.name -r) 3000:3000`
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
3. To connect flood to rtorrent, provide the socket path : `/tmp/rtorrent.sock`
## Source Code
4. When connected with flood to rtorrent, go to the settings and change the download path to `/data` which is set by default by the chart
* <https://hub.docker.com/r/looselyrigorous/rtorrent>
* <https://github.com/looselyrigorous/docker-rtorrent>
* <https://github.com/Flood-UI/flood>
5. You should be able to start downloading torrents now :)
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| btService.annotations | object | `{}` | |
| btService.labels | object | `{}` | |
| btService.loadBalancerIP | string | `nil` | |
| btService.port | int | `49161` | |
| btService.type | string | `"NodePort"` | |
| flood.enabled | bool | `true` | |
| flood.image.pullPolicy | string | `"Always"` | |
| flood.image.repository | string | `"jfurrow/flood-ui"` | |
| flood.image.tag | string | `"latest"` | |
| flood.resources.limits.memory | string | `"250Mi"` | |
| flood.resources.requests.cpu | string | `"10m"` | |
| flood.resources.requests.memory | string | `"100Mi"` | |
| floodSecret | string | `"supersecret"` | |
| fullnameOverride | string | `""` | |
| gid | int | `1001` | |
| guiService.annotations | object | `{}` | |
| guiService.labels | object | `{}` | |
| guiService.loadBalancerIP | string | `nil` | |
| guiService.port | int | `3000` | |
| guiService.type | string | `"ClusterIP"` | |
| 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 | `"1Gi"` | |
| persistence.config.skipuninstall | bool | `false` | |
| persistence.data.accessMode | string | `"ReadWriteOnce"` | |
| persistence.data.enabled | bool | `true` | |
| persistence.data.size | string | `"10Gi"` | |
| persistence.data.skipuninstall | bool | `false` | |
| podAnnotations | object | `{}` | |
| rtorrent.enabled | bool | `true` | |
| rtorrent.image.pullPolicy | string | `"Always"` | |
| rtorrent.image.repository | string | `"billimek/rtorrent"` | |
| rtorrent.image.tag | string | `"latest"` | |
| rtorrent.resources.limits.memory | string | `"1Gi"` | |
| rtorrent.resources.requests.cpu | string | `"50m"` | |
| rtorrent.resources.requests.memory | string | `"50Mi"` | |
| strategyType | string | `"Recreate"` | |
| tolerations | list | `[]` | |
| uid | int | `1001` | |
## Custom parameters
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
Like any other chart, you can provide a file with your own values (check `./values.yaml` for reference) :
`helm install rtorrent k8s-at-home/rtorrent-flood -f my-values.yaml`
## Pitfalls
You may need to change the StorageClass depending on your kubernetes setup or the containers won't start, use a custom `values.yaml` file to do so.

View File

@@ -1,46 +1,86 @@
# ser2sock
# ser2sock: Serial to Socket Redirector
![Version: 2.0.1](https://img.shields.io/badge/Version-2.0.1-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
This is a helm chart for [ser2sock](https://github.com/nutechsoftware/ser2sock)
Serial to Socket Redirector
## TL;DR;
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/ser2sock>
```shell
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/ser2sock
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
To install the chart with the release name `my-release`:
## Source Code
```console
helm install --name my-release k8s-at-home/ser2sock
```
* <https://github.com/nutechsoftware/ser2sock>
* <https://github.com/tenstartups/ser2sock>
**IMPORTANT NOTE:** the USB device must be accessible on the node where this pod runs, in order for this chart to function properly.
## Values
A way to achieve this can be with nodeAffinity rules, for example:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| baudRate | int | `115200` | |
| device | string | `"/dev/ttyUSB0"` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"tenstartups/ser2sock"` | |
| image.tag | string | `"latest"` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| pgid | string | `"1001"` | |
| podAnnotations | object | `{}` | |
| puid | string | `"1001"` | |
| resources | object | `{}` | |
| service.annotations | object | `{}` | |
| service.labels | object | `{}` | |
| service.loadBalancerIP | string | `nil` | |
| service.port | int | `10000` | |
| service.type | string | `"ClusterIP"` | |
| strategyType | string | `"Recreate"` | |
| tolerations | list | `[]` | |
```yaml
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: usb
operator: In
values:
- alarmdecoder
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
... where a node with an attached Coral USB device is labeled with `usb: alarmdecoder`
## Uninstalling the Chart
To uninstall/delete the `my-release` deployment:
```console
helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
|----------------------------|-------------------------------------|---------------------------------------------------------|
| `image.repository` | Image repository | `tenstartups/ser2sock` |
| `image.tag` | Image tag. Possible values listed [here](https://hub.docker.com/r/tenstartups/ser2sock/tags).| `latest`|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `timezone` | Timezone the ser2sock instance should run as, e.g. 'America/New_York' | `` |
| `device` | USB Device to use | `/dev/ttyUSB0` |
| `puid` | UID to run as | `1001` |
| `pgid` | GID to run as | `1001` |
| `Service.type` | Kubernetes service type for the ser2sock GUI | `ClusterIP` |
| `Service.port` | Kubernetes port where the ser2sock GUI is exposed| `5000` |
| `Service.annotations` | Service annotations for the ser2sock GUI | `{}` |
| `Service.labels` | Custom labels | `{}` |
| `Service.loadBalancerIP` | Loadbalance IP for the ser2sock GUI | `{}` |
| `Service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | None
| `resources` | CPU/Memory resource requests/limits | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `tolerations` | Toleration labels for pod assignment | `[]` |
| `affinity` | Affinity settings for pod assignment | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name my-release \
k8s-at-home/ser2sock
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name my-release -f values.yaml k8s-at-home/ser2sock
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/ser2sock/values.yaml) file. It has several commented out suggested values.

View File

@@ -1,45 +1,52 @@
# speedtest-prometheus
# Prometheus Exporter using the Speedtest CLI
![Version: 2.1.0](https://img.shields.io/badge/Version-2.1.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.1.0](https://img.shields.io/badge/AppVersion-1.1.0-informational?style=flat-square)
![Screenshot](https://i.imgur.com/iIzWUre.png)
Prometheus Exporter for the official Speedtest CLI
This is a helm chart provising a prometheus exporter (with optional ServiceMontor) to conduct speedtests using the official speedtest CLI. Based on the [prometheus-speedtest-exporter](https://github.com/billimek/prometheus-speedtest-exporter) multi-arch container image.
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/speedtest-prometheus>
## TL;DR;
## Maintainers
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/speedtest-prometheus
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `speedtest-prometheus`:
* <https://github.com/billimek/prometheus-speedtest-exporter>
```console
helm install --name speedtest-prometheus k8s-at-home/speedtest-prometheus
```
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"billimek/prometheus-speedtest-exporter"` | |
| image.tag | string | `"1.1.0"` | |
| imagePullSecrets | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.port | int | `9469` | |
| service.type | string | `"ClusterIP"` | |
| serviceMonitor.additionalLabels | object | `{}` | |
| serviceMonitor.enabled | bool | `false` | |
| serviceMonitor.interval | string | `"60m"` | |
| serviceMonitor.scrapeTimeout | string | `"90s"` | |
| tolerations | list | `[]` | |
To uninstall/delete the `speedtest-prometheus` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
helm delete speedtest-prometheus
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/speedtest-prometheus/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name speedtest-prometheus \
--set serviceMonitor.enabled=true \
k8s-at-home/speedtest-prometheus
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name speedtest-prometheus -f values.yaml k8s-at-home/speedtest-prometheus
```
## Grafana Dashboard
You can find an [example grafana dashboard](https://github.com/billimek/prometheus-speedtest-exporter/blob/master/speedtest-exporter.json) as shown in the screenshot above.

View File

@@ -1,40 +1,71 @@
# speedtest
# Speedtest.net Collector For InfluxDB and Grafana
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
![Screenshot](https://camo.githubusercontent.com/c652a6685bcb5a8cec6a47c92e57d159b28e47e7/68747470733a2f2f7075752e73682f746d664f412f623535373665383864652e706e67)
periodic speedtest and save the results to InfluxDB
This tool is a wrapper for speedtest-cli which allows you to run periodic speedtets and save the results to Influxdb
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/speedtest>
## TL;DR;
## Maintainers
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/speedtest
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `my-release`:
* <https://github.com/k8s-at-home/Speedtest-for-InfluxDB-and-Grafana>
* <https://github.com/k8s-at-home/charts>
```console
$ helm install --name my-release k8s-at-home/speedtest
```
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| config.delay | int | `3600` | |
| config.influxdb.database | string | `"speedtests"` | |
| config.influxdb.host | string | `"influxdb-influxdb"` | |
| config.influxdb.port | int | `8086` | |
| config.influxdb.ssl | bool | `false` | |
| config.speedtest.server | string | `nil` | |
| debug | bool | `false` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"atribe/speedtest-for-influxdb-and-grafana"` | |
| image.tag | string | `"latest"` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
To uninstall/delete the `my-release` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
$ helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The configuration is set as a block of text through a configmap and mounted as a file in /src/config.ini Any value in this text block should match the defined speedtest configuration. There are several values here that will have to match our kubernetes configuration.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
| ------------------------------- | ------------------------------- | ---------------------------------------------------------- |
| `image.repository` | speedtest image | `k8s-at-home/speedtestusage-for-influxdb` |
| `image.tag` | speedtest image tag | `latest` |
| `image.pullPolicy` | speedtest image pull policy | `IfNotPresent` |
| `debug` | Display debugging output | `false` |
| `config.delay` | how many seconds to wait between checks | `3600` |
| `config.influxdb.host` | InfluxDB hostname | `influxdb-influxdb` |
| `config.influxdb.port` | InfluxDB port | `8086` |
| `config.influxdb.database` | InfluxDB database | `speedtests` |
| `config.influxdb.username` | InfluxDB username | `` |
| `config.influxdb.password` | InfluxDB password | `` |
| `config.influxdb.ssl` | InfluxDB connection using SSL | `false` |
| `config.speedtest.server` | server to use for speedtest - leave blank to auto-pick | `` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
$ helm install --name my-release \
--set config.influxdb.host=some-influx-host \
k8s-at-home/speedtest
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
$ helm install --name my-release -f values.yaml k8s-at-home/speedtest
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/speedtest/values.yaml) file. It has several commented out suggested values.

View File

@@ -1,100 +1,36 @@
# statping
# statping | Status page for monitoring your websites and applications
![Version: 1.5.1](https://img.shields.io/badge/Version-1.5.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v0.90.65](https://img.shields.io/badge/AppVersion-v0.90.65-informational?style=flat-square)
## TL;DR
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/statping
```
Status page for monitoring your websites and applications
## Installing the Chart
To install the chart with the release name `statping`:
```console
helm install statping k8s-at-home/statping
```
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/statping>
## Uninstalling the Chart
To uninstall the `statping` deployment:
```console
helm uninstall statping
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Maintainers
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/statping/values.yaml)
file. It has several commented out suggested values.
| Name | Email | Url |
| ---- | ------ | --- |
| DirtyCajunRice | nick@cajun.pro | |
## Source Code
* <https://github.com/statping/statping>
## Requirements
| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | postgresql | 10.2.6 |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| additionalVolumeMounts | list | `[]` | |
| additionalVolumes | list | `[]` | |
| affinity | object | `{}` | |
| autoscaling.enabled | bool | `false` | |
| autoscaling.maxReplicas | int | `3` | |
| autoscaling.minReplicas | int | `1` | |
| autoscaling.targetCPUUtilizationPercentage | int | `80` | |
| env | list | `[]` | |
| externalSecret.enabled | bool | `false` | |
| externalSecret.kubernetesExternalSecrets.data | list | `[]` | |
| externalSecret.kubernetesExternalSecrets.spec | object | `{}` | |
| externalSecret.type | string | `"kubernetes-external-secrets"` | |
| fullnameOverride | string | `""` | |
| global.postgresql.postgresqlDatabase | string | `"postgres"` | |
| global.postgresql.postgresqlUsername | string | `"postgres"` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"statping/statping"` | |
| image.tag | string | `""` | |
| imagePullSecrets | list | `[]` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0].host | string | `"chart-example.local"` | |
| ingress.hosts[0].paths[0] | string | `"/"` | |
| ingress.labels | object | `{}` | |
| ingress.tls | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `true` | |
| persistence.size | string | `"1Gi"` | |
| persistence.skipuninstall | bool | `false` | |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | |
| postgres.kubedb.enabled | bool | `false` | |
| postgres.kubedb.storage.accessModes[0] | string | `"ReadWriteOnce"` | |
| postgres.kubedb.storage.resources.requests.storage | string | `"1Gi"` | |
| postgres.kubedb.storageType | string | `"Durable"` | |
| postgres.kubedb.version | float | `11.1` | |
| postgres.posgresql.enabled | bool | `true` | |
| postgres.type | string | `"postgresql"` | |
| probes.liveness.failureThreshold | int | `5` | |
| probes.liveness.initialDelaySeconds | int | `60` | |
| probes.liveness.timeoutSeconds | int | `10` | |
| probes.readiness.failureThreshold | int | `5` | |
| probes.readiness.initialDelaySeconds | int | `60` | |
| probes.readiness.timeoutSeconds | int | `10` | |
| replication.enabled | bool | `false` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.additionalSpec | object | `{}` | |
| service.annotations | object | `{}` | |
| service.labels | object | `{}` | |
| service.port | int | `8080` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| statping.admin.email | string | `""` | |
| statping.admin.existingSecret.emailKey | string | `""` | |
| statping.admin.existingSecret.enabled | bool | `false` | |
| statping.admin.existingSecret.name | string | `""` | |
| statping.admin.existingSecret.passwordKey | string | `""` | |
| statping.admin.existingSecret.userKey | string | `""` | |
| statping.admin.password | string | `""` | |
| statping.admin.user | string | `""` | |
| statping.description | string | `""` | |
| statping.domain | string | `""` | |
| statping.name | string | `""` | |
| tolerations | list | `[]` | |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install statping \
--set statping.env.TZ="America/New York" \
k8s-at-home/statping
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the
chart. For example,
```console
helm install statping k8s-at-home/statping --values values.yaml
```

View File

@@ -1,77 +1,48 @@
# teslamate
# A self-hosted data logger for your Tesla 🚘
![Version: 3.5.1](https://img.shields.io/badge/Version-3.5.1-informational?style=flat-square) ![AppVersion: v1.20.0](https://img.shields.io/badge/AppVersion-v1.20.0-informational?style=flat-square)
This is an opinionated helm chart for [Teslamate](https://github.com/adriankumpf/teslamate) installed with a standalone postgresql database.
A self-hosted data logger for your Tesla 🚘
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/teslamate>
## TL;DR;
## Maintainers
```shell
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/teslamate
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `my-release`:
* <https://github.com/adriankumpf/teslamate>
```console
helm install --name teslamate k8s-at-home/teslamate
```
## Requirements
## Uninstalling the Chart
| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | postgresql | 10.2.7 |
To uninstall/delete the `teslamate` deployment:
## Values
```console
helm delete teslamate --purge
```
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| checkOrigin | bool | `false` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"teslamate/teslamate"` | |
| image.tag | string | `"1.20.0"` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0] | string | `"chart-example.local"` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| locale | string | `"en"` | |
| mqtt.enabled | bool | `false` | |
| mqtt.host | string | `nil` | |
| mqtt.password | string | `nil` | |
| mqtt.tls | string | `nil` | |
| mqtt.tlsAcceptInvalid | string | `nil` | |
| mqtt.username | string | `nil` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| postgresql.enabled | bool | `true` | |
| postgresql.image.repository | string | `"postgres"` | |
| postgresql.image.tag | float | `12.1` | |
| postgresql.persistence.accessModes[0] | string | `"ReadWriteOnce"` | |
| postgresql.persistence.enabled | bool | `true` | |
| postgresql.persistence.mountPath | string | `"/data/"` | |
| postgresql.persistence.size | string | `"8Gi"` | |
| postgresql.persistence.storageClass | string | `nil` | |
| postgresql.postgresqlDataDir | string | `"/data/pgdata"` | |
| postgresql.postgresqlDatabase | string | `"teslamate"` | |
| postgresql.postgresqlPassword | string | `"teslamate"` | |
| postgresql.postgresqlUsername | string | `"teslamate"` | |
| probes.liveness.failureThreshold | int | `15` | |
| probes.liveness.periodSeconds | int | `10` | |
| probes.readiness.failureThreshold | int | `15` | |
| probes.readiness.periodSeconds | int | `10` | |
| probes.startup.failureThreshold | int | `30` | |
| probes.startup.initialDelaySeconds | int | `15` | |
| probes.startup.periodSeconds | int | `10` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| service.port | int | `4000` | |
| service.type | string | `"ClusterIP"` | |
| timeZone | string | `"UTC"` | |
| tolerations | list | `[]` | |
| virtualHost | string | `nil` | |
The command removes all the Kubernetes components associated with the chart and deletes the release.
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/teslamate/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name teslamate \
--set timeZone="America/New York" \
k8s-at-home/teslamate
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name teslamate -f values.yaml stable/teslamate
```

View File

@@ -1,21 +1,51 @@
# traefik-forward-auth
![Version: 1.0.5](https://img.shields.io/badge/Version-1.0.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.2.0](https://img.shields.io/badge/AppVersion-2.2.0-informational?style=flat-square)
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 1.0.5](https://img.shields.io/badge/Version-1.0.5-informational?style=flat-square) ![AppVersion: 2.2.0](https://img.shields.io/badge/AppVersion-2.2.0-informational?style=flat-square) [![ArtifactHub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/traefik-forward-auth)](https://artifacthub.io/packages/helm/k8s-at-home/traefik-forward-auth)
A minimal forward authentication service that provides OAuth/SSO login and authentication for the traefik reverse proxy/load balancer
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/traefik-forward-auth>
The default values and container images used in this chart will allow for running in a multi-arch cluster (amd64, arm, arm64)
## Maintainers
Chart that
* Adds docker image information leveraging the [official image](https://github.com/thomseddon/traefik-forward-auth)
* Deploys [traefik-forward-auth](https://github.com/thomseddon/traefik-forward-auth)
| Name | Email | Url |
| ---- | ------ | --- |
| DirtyCajunRice | nick@cajun.pro | |
## TL;DR
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/traefik-forward-auth
```
## Source Code
## Installing the Chart
To install the chart with the release name `traefik-forward-auth`:
```console
helm install traefik-forward-auth k8s-at-home/traefik-forward-auth
```
* <https://github.com/thomseddon/traefik-forward-auth>
* <https://hub.docker.com/r/thomseddon/traefik-forward-auth>
## Uninstalling the Chart
To uninstall the `traefik-forward-auth` deployment:
```console
helm uninstall traefik-forward-auth
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/traefik-forward-auth/values.yaml)
file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install traefik-forward-auth \
--set env.TZ="America/New York" \
k8s-at-home/traefik-forward-auth
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
For example,
```console
helm install traefik-forward-auth k8s-at-home/traefik-forward-auth --values values.yaml
```
## Values
@@ -94,6 +124,3 @@ A minimal forward authentication service that provides OAuth/SSO login and authe
| serviceAccount.name | string | `""` | |
| tolerations | list | `[]` | |
| urlPath | string | `""` | Callback URL Path (default: /_oauth) |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

26
charts/tt-rss/.helmignore Normal file
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

23
charts/tt-rss/Chart.yaml Normal file
View File

@@ -0,0 +1,23 @@
apiVersion: v2
appVersion: 1.0.0
description: Tiny Tiny RSS is a free and open source web-based news feed (RSS/Atom) reader and aggregator
name: tt-rss
version: 1.0.6
kubeVersion: ">=1.16.0-0"
keywords:
- tt-rss
home: https://github.com/k8s-at-home/charts/tree/master/charts/tt-rss
icon: https://git.tt-rss.org/fox/tt-rss/raw/branch/master/images/favicon-72px.png
sources:
- https://git.tt-rss.org/fox/tt-rss
maintainers:
- name: angelnu
email: git@angelnu.com
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1
- name: postgresql
version: 10.2.7
repository: https://charts.bitnami.com/bitnami
condition: postgresql.enabled

130
charts/tt-rss/README.md Normal file
View File

@@ -0,0 +1,130 @@
# tt-rss
![Version: 1.0.5](https://img.shields.io/badge/Version-1.0.5-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)
Tiny Tiny RSS is a free and open source web-based news feed (RSS/Atom) reader and aggregator
**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://git.tt-rss.org/fox/tt-rss>
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | postgresql | 10.2.7 |
| https://k8s-at-home.com/charts/ | common | 3.0.1 |
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install tt-rss k8s-at-home/tt-rss
```
## Installing the Chart
To install the chart with the release name `tt-rss`
```console
helm install tt-rss k8s-at-home/tt-rss
```
## Uninstalling the Chart
To uninstall the `tt-rss` deployment
```console
helm uninstall tt-rss
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install tt-rss \
--set env.TZ="America/New York" \
k8s-at-home/tt-rss
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install tt-rss k8s-at-home/tt-rss -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/charts/tree/master/charts/common/)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| env.TTRSS_DB_HOST | string | internal postgresql URL | Postgres database hostname |
| env.TTRSS_DB_NAME | string | postgresql.postgresqlDatabase value | Postgres database password |
| env.TTRSS_DB_PASS | string | postgresql.postgresqlPassword value | Postgres database password |
| env.TTRSS_DB_PORT | string | `"5432"` | Postgres database port. |
| env.TTRSS_DB_USER | string | postgresql.postgresqlUsername value | Postgres database user name |
| env.TTRSS_SELF_URL_PATH | string | `""` | External URL you use to connect to the RSS (the one you enter in your browser) |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"ghcr.io/k8s-at-home/tt-rss"` | |
| image.tag | string | `"v1.8723.0"` | |
| ingress.enabled | bool | `false` | |
| postgresql | object | see bellow | Bitnami postgres chart. For more options see https://github.com/bitnami/charts/tree/master/bitnami/postgresql |
| postgresql.enabled | bool | `true` | By default uses an internal postgress. Dissable if you use your own Postgres. |
| postgresql.persistence.enabled | bool | `false` | if database is stored to a PVC. Set to true when you are done testing. |
| postgresql.postgresqlDatabase | string | `"tt-rss"` | Postgres database password |
| postgresql.postgresqlPassword | string | `"changeme"` | Postgres database password |
| postgresql.postgresqlUsername | string | `"postgres"` | Postgres database user name |
| probes.startup.enabled | bool | `true` | |
| service.port.port | int | `8080` | |
| 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/charts/tree/master/charts/common/README.md#Changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.5]
#### Added
- N/A
#### Changed
- Use generated template
- Use k8s-at-home repository
#### Removed
- N/A
[1.0.5]: #1.0.5
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

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

View File

@@ -0,0 +1,29 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.6]
#### Added
- N/A
#### Changed
- Use generated template
- Use k8s-at-home repository
- Generate helm-docs
#### Removed
- N/A
[1.0.6]: #1.0.6
{{- 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 @@
{{- include "common.notes.defaultNotes" . -}}

View File

@@ -0,0 +1,22 @@
{{/* Make sure all variables are set properly */}}
{{- include "common.values.setup" . }}
{{/* if TTRSS_DB_HOST is not set use internal postgres chart */}}
{{- if eq .Values.env.TTRSS_DB_HOST "" -}}
{{- $_ := set .Values.env "TTRSS_DB_HOST" (printf "%s-postgresql" .Release.Name) -}}
{{- end -}}
{{/* if TTRSS_DB_USER is not set use internal postgres chart */}}
{{- if eq .Values.env.TTRSS_DB_USER "" -}}
{{- $_ := set .Values.env "TTRSS_DB_USER" .Values.postgresql.postgresqlUsername -}}
{{- end -}}
{{/* if TTRSS_DB_USER is not set use internal postgres chart */}}
{{- if eq .Values.env.TTRSS_DB_PASS "" -}}
{{- $_ := set .Values.env "TTRSS_DB_PASS" .Values.postgresql.postgresqlPassword -}}
{{- end -}}
{{/* if TTRSS_DB_USER is not set use internal postgres chart */}}
{{- if eq .Values.env.TTRSS_DB_NAME "" -}}
{{- $_ := set .Values.env "TTRSS_DB_NAME" .Values.postgresql.postgresqlDatabase -}}
{{- end -}}
{{/* Render the templates */}}
{{ include "common.all" . }}

61
charts/tt-rss/values.yaml Normal file
View File

@@ -0,0 +1,61 @@
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: ghcr.io/k8s-at-home/tt-rss
pullPolicy: IfNotPresent
tag: v1.8723.0
strategy:
type: Recreate
# See more environment variables in the tt-rss documentation
# https://git.tt-rss.org/fox/tt-rss/src/branch/master/classes/config.php#L9
env:
# -- External URL you use to connect to the RSS (the one you enter in your browser)
TTRSS_SELF_URL_PATH: ""
# -- Postgres database hostname
# @default -- internal postgresql URL
TTRSS_DB_HOST: ""
# -- Postgres database port.
TTRSS_DB_PORT: "5432"
# -- Postgres database user name
# @default -- postgresql.postgresqlUsername value
TTRSS_DB_USER: ""
# -- Postgres database password
# @default -- postgresql.postgresqlPassword value
TTRSS_DB_PASS: ""
# -- Postgres database password
# @default -- postgresql.postgresqlDatabase value
TTRSS_DB_NAME: ""
service:
port:
port: 8080
ingress:
enabled: false
probes:
startup:
enabled: true
# -- Bitnami postgres chart. For more options see https://github.com/bitnami/charts/tree/master/bitnami/postgresql
# @default -- see bellow
postgresql:
# -- By default uses an internal postgress. Dissable if you use your own Postgres.
enabled: true
# -- Postgres database user name
postgresqlUsername: postgres
# -- Postgres database password
postgresqlPassword: "changeme"
# -- Postgres database password
postgresqlDatabase: tt-rss
persistence:
# -- if database is stored to a PVC. Set to true when you are done testing.
enabled: false
# storageClass: ""

View File

@@ -1,131 +1,225 @@
# unifi
# Ubiquiti Network's Unifi Controller
![Version: 1.5.1](https://img.shields.io/badge/Version-1.5.1-informational?style=flat-square) ![AppVersion: 5.14.23](https://img.shields.io/badge/AppVersion-5.14.23-informational?style=flat-square)
This is a helm chart for [Ubiquiti Network's][ubnt] [Unifi Controller][ubnt 2].
Ubiquiti Network's Unifi Controller
## TL;DR;
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/unifi>
```shell
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/unifi
```
## Maintainers
## Installing the Chart
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
| mcronce | mike@quadra-tec.net | |
To install the chart with the release name `my-release`:
## Source Code
```console
helm install --name my-release stable/unifi
```
* <https://github.com/jacobalberty/unifi-docker>
## Uninstalling the Chart
## Values
To uninstall/delete the `my-release` deployment:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| GID | int | `999` | |
| UID | int | `999` | |
| affinity | object | `{}` | |
| captivePortalService.annotations | object | `{}` | |
| captivePortalService.enabled | bool | `false` | |
| captivePortalService.http | int | `8880` | |
| captivePortalService.https | int | `8843` | |
| captivePortalService.ingress.annotations | object | `{}` | |
| captivePortalService.ingress.enabled | bool | `false` | |
| captivePortalService.ingress.hosts[0] | string | `"chart-example.local"` | |
| captivePortalService.ingress.path | string | `"/"` | |
| captivePortalService.ingress.tls | list | `[]` | |
| captivePortalService.labels | object | `{}` | |
| captivePortalService.loadBalancerIP | string | `nil` | |
| captivePortalService.type | string | `"ClusterIP"` | |
| controllerService.annotations | object | `{}` | |
| controllerService.ingress.annotations | object | `{}` | |
| controllerService.ingress.enabled | bool | `false` | |
| controllerService.ingress.hosts[0] | string | `"chart-example.local"` | |
| controllerService.ingress.path | string | `"/"` | |
| controllerService.ingress.tls | list | `[]` | |
| controllerService.labels | object | `{}` | |
| controllerService.loadBalancerIP | string | `nil` | |
| controllerService.port | int | `8080` | |
| controllerService.type | string | `"NodePort"` | |
| customCert.certName | string | `"tls.crt"` | |
| customCert.enabled | bool | `false` | |
| customCert.isChain | bool | `false` | |
| customCert.keyName | string | `"tls.key"` | |
| deploymentAnnotations | object | `{}` | |
| discoveryService.annotations | object | `{}` | |
| discoveryService.labels | object | `{}` | |
| discoveryService.loadBalancerIP | string | `nil` | |
| discoveryService.port | int | `10001` | |
| discoveryService.type | string | `"NodePort"` | |
| extraConfigFiles | object | `{}` | |
| extraJvmOpts | list | `[]` | |
| extraVolumeMounts | list | `[]` | |
| extraVolumes | list | `[]` | |
| guiService.annotations | object | `{}` | |
| guiService.labels | object | `{}` | |
| guiService.loadBalancerIP | string | `nil` | |
| guiService.port | int | `8443` | |
| guiService.type | string | `"ClusterIP"` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"jacobalberty/unifi"` | |
| image.tag | string | `"5.14.23"` | |
| ingress.annotations | object | `{}` | |
| ingress.enabled | bool | `false` | |
| ingress.hosts[0] | string | `"chart-example.local"` | |
| ingress.path | string | `"/"` | |
| ingress.tls | list | `[]` | |
| jvmInitHeapSize | string | `nil` | |
| jvmMaxHeapSize | string | `"1024M"` | |
| livenessProbe.enabled | bool | `true` | |
| livenessProbe.failureThreshold | int | `3` | |
| livenessProbe.initialDelaySeconds | int | `30` | |
| livenessProbe.periodSeconds | int | `10` | |
| livenessProbe.successThreshold | int | `1` | |
| livenessProbe.timeoutSeconds | int | `1` | |
| logging.promtail.enabled | bool | `false` | |
| logging.promtail.image.pullPolicy | string | `"IfNotPresent"` | |
| logging.promtail.image.repository | string | `"grafana/promtail"` | |
| logging.promtail.image.tag | string | `"1.6.0"` | |
| logging.promtail.loki.url | string | `"http://loki.logs.svc.cluster.local:3100/loki/api/v1/push"` | |
| mongodb.databaseName | string | `"unifi"` | |
| mongodb.dbUri | string | `"mongodb://mongo/unifi"` | |
| mongodb.enabled | bool | `false` | |
| mongodb.statDbUri | string | `"mongodb://mongo/unifi_stat"` | |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `true` | |
| persistence.size | string | `"5Gi"` | |
| podAnnotations | object | `{}` | |
| readinessProbe.enabled | bool | `true` | |
| readinessProbe.failureThreshold | int | `3` | |
| readinessProbe.initialDelaySeconds | int | `15` | |
| readinessProbe.periodSeconds | int | `10` | |
| readinessProbe.successThreshold | int | `1` | |
| readinessProbe.timeoutSeconds | int | `1` | |
| resources | object | `{}` | |
| runAsRoot | bool | `false` | |
| speedtestService.annotations | object | `{}` | |
| speedtestService.labels | object | `{}` | |
| speedtestService.loadBalancerIP | string | `nil` | |
| speedtestService.port | int | `6789` | |
| speedtestService.type | string | `"ClusterIP"` | |
| strategyType | string | `"Recreate"` | |
| stunService.annotations | object | `{}` | |
| stunService.labels | object | `{}` | |
| stunService.loadBalancerIP | string | `nil` | |
| stunService.port | int | `3478` | |
| stunService.type | string | `"NodePort"` | |
| syslogService.annotations | object | `{}` | |
| syslogService.labels | object | `{}` | |
| syslogService.loadBalancerIP | string | `nil` | |
| syslogService.port | int | `5514` | |
| syslogService.type | string | `"NodePort"` | |
| timezone | string | `"UTC"` | |
| tolerations | list | `[]` | |
| unifiedService.annotations | object | `{}` | |
| unifiedService.enabled | bool | `false` | |
| unifiedService.labels | object | `{}` | |
| unifiedService.loadBalancerIP | string | `nil` | |
| unifiedService.type | string | `"ClusterIP"` | |
```console
helm delete my-release --purge
```
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The following tables lists the configurable parameters of the Unifi chart and their default values.
| Parameter | Default | Description |
|-------------------------------------------------|------------------------------|------------------------------------------------------------------------------------------------------------------------|
| `image.repository` | `jacobalberty/unifi` | Image repository |
| `image.tag` | `5.14.23` | Image tag. Possible values listed [here][docker]. |
| `image.pullPolicy` | `IfNotPresent` | Image pull policy |
| `strategyType` | `Recreate` | Specifies the strategy used to replace old Pods by new ones |
| `guiService.type` | `ClusterIP` | Kubernetes service type for the Unifi GUI |
| `guiService.port` | `8443` | Kubernetes port where the Unifi GUI is exposed |
| `guiService.annotations` | `{}` | Service annotations for the Unifi GUI |
| `guiService.labels` | `{}` | Custom labels |
| `guiService.loadBalancerIP` | `{}` | Loadbalance IP for the Unifi GUI |
| `guiService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `guiService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `captivePortalService.enabled` | `false` | Install the captive portal service (needed if you want guest captive portal) |
| `captivePortalService.type` | `ClusterIP` | Kubernetes service type for the captive portal |
| `captivePortalService.http` | `8880` | Kubernetes port where the captive portal is exposed |
| `captivePortalService.https` | `8843` | Kubernetes port where the captive portal is exposed (with SSL) |
| `captivePortalService.annotations` | `{}` | Service annotations for the captive portal |
| `captivePortalService.labels` | `{}` | Custom labels |
| `captivePortalService.loadBalancerIP` | `{}` | Loadbalance IP for the Unifi GUI |
| `captivePortalService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `captivePortalService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `captivePortalService.ingress.enabled` | `false` | Enables Ingress (for the captive portal, the main ingress needs to be enabled for the controller to be accessible) |
| `captivePortalService.ingress.annotations` | `{}` | Ingress annotations for the captive portal |
| `captivePortalService.ingress.labels` | `{}` | Custom labels for the captive portal |
| `captivePortalService.ingress.path` | `/` | Ingress path for the captive portal |
| `captivePortalService.ingress.hosts` | `chart-example.local` | Ingress accepted hostnames for the captive portal |
| `captivePortalService.ingress.tls` | `[]` | Ingress TLS configuration for the captive portal |
| `controllerService.type` | `NodePort` | Kubernetes service type for the Unifi Controller communication |
| `controllerService.port` | `8080` | Kubernetes port where the Unifi Controller is exposed - this needs to be reachable by the unifi devices on the network |
| `controllerService.annotations` | `{}` | Service annotations for the Unifi Controller |
| `controllerService.labels` | `{}` | Custom labels |
| `controllerService.loadBalancerIP` | `{}` | Loadbalance IP for the Unifi Controller |
| `controllerService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `controllerService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `controllerService.ingress.enabled` | `false` | Enables Ingress for the controller |
| `controllerService.ingress.annotations` | `{}` | Ingress annotations for the controller |
| `controllerService.ingress.labels` | `{}` | Custom labels for the controller |
| `controllerService.ingress.path` | `/` | Ingress path for the controller |
| `controllerService.ingress.hosts` | `chart-example.local` | Ingress accepted hostnames for the controller |
| `controllerService.ingress.tls` | `[]` | Ingress TLS configuration for the controller |
| `stunService.type` | `NodePort` | Kubernetes service type for the Unifi STUN |
| `stunService.port` | `3478` | Kubernetes UDP port where the Unifi STUN is exposed |
| `stunService.annotations` | `{}` | Service annotations for the Unifi STUN |
| `stunService.labels` | `{}` | Custom labels |
| `stunService.loadBalancerIP` | `{}` | Loadbalance IP for the Unifi STUN |
| `stunService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `stunService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `discoveryService.type` | `NodePort` | Kubernetes service type for AP discovery |
| `discoveryService.port` | `10001` | Kubernetes UDP port for AP discovery |
| `discoveryService.annotations` | `{}` | Service annotations for AP discovery |
| `discoveryService.labels` | `{}` | Custom labels |
| `discoveryService.loadBalancerIP` | `{}` | Loadbalance IP for AP discovery |
| `discoveryService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `discoveryService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `syslogService.type` | `NodePort` | Kubernetes service type for remote syslog capture |
| `syslogService.port` | `5514` | Kubernetes UDP port for remote syslog capture |
| `syslogService.annotations` | `{}` | Service annotations for remote syslog capture |
| `syslogService.labels` | `{}` | Custom labels |
| `syslogService.loadBalancerIP` | `{}` | Loadbalancer IP for remote syslog capture |
| `syslogService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `syslogService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `speedtestService.type` | `ClusterIP` | Kubernetes service type for mobile speedtest |
| `speedtestService.port` | `6789` | Kubernetes UDP port for mobile speedtest |
| `speedtestService.annotations` | `{}` | Service annotations for mobile speedtest |
| `speedtestService.labels` | `{}` | Custom labels |
| `speedtestService.loadBalancerIP` | `{}` | Loadbalancer IP for mobile speedtest |
| `speedtestService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to load balancer (if supported) |
| `speedtestService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| `unifiedService.enabled` | `false` | Use a single service for GUI, controller, STUN, discovery, syslog and speedtest |
| `unifiedService.type` | `ClusterIP` | Kubernetes service type for the unified service |
| `unifiedService.annotations` | `{}` | Annotations for the unified service |
| `unifiedService.labels` | `{}` | Custom labels for the unified service |
| `unifiedService.loadBalancerIP` | None | Load balancer IP for the unified service |
| `unifiedService.loadBalancerSourceRanges` | None | List of IP CIDRs allowed access to the load balancer (if supported) |
| `unifiedService.externalTrafficPolicy` | `Cluster` | Set the externalTrafficPolicy in the service to either Cluster or Local |
| `ingress.enabled` | `false` | Enables Ingress |
| `ingress.annotations` | `{}` | Ingress annotations |
| `ingress.labels` | `{}` | Custom labels |
| `ingress.path` | `/` | Ingress path |
| `ingress.hosts` | `chart-example.local` | Ingress accepted hostnames |
| `ingress.tls` | `[]` | Ingress TLS configuration |
| `timezone` | `UTC` | Timezone the Unifi controller should run as, e.g. 'America/New York' |
| `runAsRoot` | `false` | Run the controller as UID0 (root user); if set to false, will give container SETFCAP instead |
| `UID` | `999` | Run the controller as user UID |
| `GID` | `999` | Run the controller as group GID |
| `customCert.enabled` | `false` | Define whether you are using s custom certificate |
| `customCert.isChain` | `false` | If you are using a Let's Encrypt certificate which already includes the full chain set this to `true` |
| `customCert.certName` | `tls.crt` | Name of the the certificate file in `<unifi-data>/cert` |
| `customCert.keyName` | `tls.key` | Name of the the private key file in `<unifi-data>/cert` |
| `customCert.certSecret` | `nil` | Name of the the k8s tls secret where the certificate and its key are stored. |
| `logging.promtail.enabled` | `false` | Enable a Promtail sidecar to collect controller logs |
| `logging.promtail.image.repository` | `grafana/promtail` | Promtail image repository |
| `logging.promtail.image.tag` | `1.6.0` | Promtail image tag |
| `logging.promtail.image.pullPolicy` | `IfNotPresent` | Promtail image pull policy |
| `logging.promtail.loki.url` | `http://loki.logs.svc.cluster.local:3100/loki/api/v1/push` | URL of the Loki push API |
| `mongodb.enabled` | `false` | Use external MongoDB for data storage |
| `mongodb.dbUri` | `mongodb://mongo/unifi` | external MongoDB URI |
| `mongodb.statDbUri` | `mongodb://mongo/unifi_stat` | external MongoDB statdb URI |
| `mongodb.databaseName` | `unifi` | external MongoDB database name |
| `persistence.enabled` | `true` | Use persistent volume to store data |
| `persistence.size` | `5Gi` | Size of persistent volume claim |
| `persistence.existingClaim` | `nil` | Use an existing PVC to persist data |
| `persistence.subPath` | `` | Store data in a subdirectory of PV instead of at the root directory |
| `persistence.storageClass` | `-` | Type of persistent volume claim |
| `extraVolumes` | `[]` | Additional volumes to be used by extraVolumeMounts |
| `extraVolumeMounts` | `[]` | Additional volume mounts to be mounted in unifi container |
| `persistence.accessModes` | `[]` | Persistence access modes |
| `extraConfigFiles` | `{}` | Dictionary containing files mounted to `/configmap` inside the pod (See [values.yaml](values.yaml) for examples) |
| `extraJvmOpts` | `[]` | List of additional JVM options, e.g. `["-Dlog4j.configurationFile=file:/configmap/log4j2.xml"]` |
| `jvmInitHeapSize` | `` | Java Virtual Machine (JVM) initial, and minimum, heap size. |
| `jvmMaxHeapSize` | `1024M` | Java Virtual Machine (JVM) maximum heap size. |
| `resources` | `{}` | CPU/Memory resource requests/limits |
| `livenessProbe.enabled` | `true` | Turn on and off liveness probe |
| `livenessProbe.initialDelaySeconds` | `30` | Delay before liveness probe is initiated |
| `livenessProbe.periodSeconds` | `15` | How often to perform the probe |
| `livenessProbe.timeoutSeconds` | `5` | When the probe times out |
| `livenessProbe.failureThreshold` | `3` | Minimum consecutive failures for the probe |
| `livenessProbe.successThreshold` | `1` | Minimum consecutive successes for the probe |
| `readinessProbe.enabled` | `true` | Turn on and off readiness probe |
| `readinessProbe.initialDelaySeconds` | `30` | Delay before readiness probe is initiated |
| `readinessProbe.periodSeconds` | `15` | How often to perform the probe |
| `readinessProbe.timeoutSeconds` | `5` | When the probe times out |
| `readinessProbe.failureThreshold` | `3` | Minimum consecutive failures for the probe |
| `readinessProbe.successThreshold` | `1` | Minimum consecutive successes for the probe |
| `nodeSelector` | `{}` | Node labels for pod assignment |
| `tolerations` | `[]` | Toleration labels for pod assignment |
| `affinity` | `{}` | Affinity settings for pod assignment |
| `podAnnotations` | `{}` | Key-value pairs to add as pod annotations |
| `deploymentAnnotations` | `{}` | Key-value pairs to add as deployment annotations |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name my-release \
--set timezone="America/New York" \
stable/unifi
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name my-release -f values.yaml stable/unifi
```
Read through the [values.yaml](values.yaml) file. It has several commented out suggested values.
## Regarding the services
- `guiService`: Represents the main web UI and is what one would normally point
the ingress to.
- `captivePortalService`: This service is used to allow the captive portal webpage
to be accessible. It needs to be reachable by the clients connecting to your guest
network.
- `controllerService`: This is needed in order for the unifi devices to talk to
the controller and must be otherwise exposed to the network where the unifi
devices run. If you run this as a `NodePort` (the default setting), make sure
that there is an external load balancer that is directing traffic from port
8080 to the `NodePort` for this service.
- `discoveryService`: This needs to be reachable by the unifi devices on the
network similar to the controller `Service` but only during the discovery
phase. This is a UDP service.
- `stunService`: Also used periodically by the unifi devices to communicate
with the controller using UDP. See [this article][ubnt 3] and [this other
article][ubnt 4] for more information.
- `syslogService`: Used to capture syslog from Unifi devices if the feature is
enabled in the site configuration. This needs to be reachable by Unifi devices
on port 5514/UDP.
- `speedtestService`: Used for mobile speedtest inside the UniFi Mobile app.
This needs to be reachable by clients connecting to port 6789/TCP.
## Ingress and HTTPS
Unifi does [not support HTTP][unifi] so if you wish to use the guiService, you
need to ensure that you use a backend transport of HTTPS.
An example entry in `values.yaml` to achieve this is as follows:
```
ingress:
enabled: true
annotations:
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
```
[docker]: https://hub.docker.com/r/jacobalberty/unifi/tags/
[github]: https://github.com/jacobalberty/unifi-docker
[ubnt]: https://www.ubnt.com/
[ubnt 2]: https://unifi-sdn.ubnt.com/
[ubnt 3]: https://help.ubnt.com/hc/en-us/articles/204976094-UniFi-What-protocol-does-the-controller-use-to-communicate-with-the-UAP-
[ubnt 4]: https://help.ubnt.com/hc/en-us/articles/115015457668-UniFi-Troubleshooting-STUN-Communication-Errors
[unifi]: https://community.ui.com/questions/Controller-how-to-deactivate-http-to-https/c5e247d8-b5b9-4c84-a3bb-28a90fd65668

View File

@@ -1,46 +1,52 @@
# uptimerobot-prometheus
# Prometheus Exporter using the Uptimerobot API
![Version: 2.0.1](https://img.shields.io/badge/Version-2.0.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.0.1](https://img.shields.io/badge/AppVersion-0.0.1-informational?style=flat-square)
![](https://raw.githubusercontent.com/lekpamartin/uptimerobot_exporter/master/dashboards/dashboard.PNG)
Prometheus Exporter for the official uptimerobot CLI
This is a helm chart providing a prometheus exporter to query the uptimerobot API. Based on the [uptimerobot_exporter](https://github.com/lekpamartin/uptimerobot_exporter) container image.
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/uptimerobot-prometheus>
## TL;DR;
## Maintainers
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm install k8s-at-home/uptimerobot-prometheus
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Installing the Chart
## Source Code
To install the chart with the release name `uptimerobot-prometheus`:
* <https://github.com/lekpamartin/uptimerobot_exporter>
* <https://github.com/k8s-at-home/charts/tree/master/charts/uptimerobot-prometheus>
```console
helm install --name uptimerobot-prometheus k8s-at-home/uptimerobot-prometheus
```
## Values
## Uninstalling the Chart
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| fullnameOverride | string | `""` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"billimek/prometheus-uptimerobot-exporter"` | |
| image.tag | string | `"0.0.1"` | |
| imagePullSecrets | list | `[]` | |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | |
| podSecurityContext | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| securityContext | object | `{}` | |
| service.port | int | `9705` | |
| service.type | string | `"ClusterIP"` | |
| serviceMonitor.additionalLabels | object | `{}` | |
| serviceMonitor.enabled | bool | `false` | |
| serviceMonitor.interval | string | `"5m"` | |
| serviceMonitor.scrapeTimeout | string | `"90s"` | |
| tolerations | list | `[]` | |
| uptimerobotApiKey | string | `""` | |
To uninstall/delete the `uptimerobot-prometheus` deployment:
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
```console
helm delete uptimerobot-prometheus
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/uptimerobot-prometheus/values.yaml) file. It has several commented out suggested values.
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
helm install --name uptimerobot-prometheus \
--set serviceMonitor.enabled=true \
k8s-at-home/uptimerobot-prometheus
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
helm install --name uptimerobot-prometheus -f values.yaml k8s-at-home/uptimerobot-prometheus
```
## Grafana Dashboard
You can find an [example grafana dashboard](https://github.com/lekpamartin/uptimerobot_exporter/blob/master/dashboards/grafana.json) as shown in the screenshot above.

View File

@@ -1,39 +1,73 @@
# uptimerobot
# A tool to get statistics from Uptime Robot and log it into InfluxDB
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 1.1.0](https://img.shields.io/badge/AppVersion-1.1.0-informational?style=flat-square)
![Screenshot](https://raw.githubusercontent.com/billimek/node-influx-uptimerobot/master/docs/dashboard.png)
A tool to get statistics from Uptime Robot and log it into InfluxDB
This tool allows you to run periodic uptimerobot data usage checks and save the results to Influxdb
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/uptimerobot>
## TL;DR;
## Maintainers
```console
$ helm repo add k8s-at-home https://k8s-at-home.com/charts/
$ helm install k8s-at-home/uptimerobot
```
| Name | Email | Url |
| ---- | ------ | --- |
| billimek | jeff@billimek.com | |
## Introduction
## Source Code
This code is adopted from [this original repo](https://github.com/trojanc/node-influx-uptimerobot)
* <https://github.com/trojanc/node-influx-uptimerobot>
* <https://github.com/k8s-at-home/charts>
## Installing the Chart
## Values
To install the chart with the release name `my-release`:
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| config.influxdb.database | string | `"uptimerobot"` | |
| config.influxdb.host | string | `"influxdb-influxdb"` | |
| config.influxdb.port | int | `8086` | |
| config.influxdb.protocol | string | `"http"` | |
| config.uptimerobot.apikey | string | `"someapikey"` | |
| delay | int | `300` | |
| image.pullPolicy | string | `"Always"` | |
| image.repository | string | `"billimek/node-influx-uptimerobot"` | |
| image.tag | string | `"latest"` | |
| nodeSelector | object | `{}` | |
| podAnnotations | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
```console
$ helm install --name my-release k8s-at-home/uptimerobot
```
## Uninstalling the Chart
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
To uninstall/delete the `my-release` deployment:
```console
$ helm delete my-release --purge
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
The configuration is set as a block of text through a configmap and mounted as a file in /src/config.ini Any value in this text block should match the defined uptimerobot configuration. There are several values here that will have to match our kubernetes configuration.
## Configuration
The following tables lists the configurable parameters of the Sentry chart and their default values.
| Parameter | Description | Default |
| ------------------------------- | ------------------------------- | ---------------------------------------------------------- |
| `image.repository` | uptimerobot image | `billimek/uptimerobotusage-for-influxdb` |
| `image.tag` | uptimerobot image tag | `latest` |
| `image.pullPolicy` | uptimerobot image pull policy | `IfNotPresent` |
| `delay` | number of seconds to wait between collections | `300` |
| `config.influxdb.host` | InfluxDB hostname | `influxdb-influxdb` |
| `config.influxdb.port` | InfluxDB port | `8086` |
| `config.influxdb.database` | InfluxDB database | `uptimerobot` |
| `config.influxdb.protocol` | InfluxDB protocol | `http` |
| `config.influxdb.username` | InfluxDB username | `` |
| `config.influxdb.password` | InfluxDB password | `` |
| `config.uptimerobot.apikey` | uptimerobot API key (REQUIRED) | `someapikey` |
| `podAnnotations` | Key-value pairs to add as pod annotations | `{}` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```console
$ helm install --name my-release \
--set config.uptimerobot.apikey=thisismyapikey \
k8s-at-home/uptimerobot
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
```console
$ helm install --name my-release -f values.yaml k8s-at-home/uptimerobot
```
Read through the [values.yaml](https://github.com/k8s-at-home/charts/blob/master/charts/uptimerobot/values.yaml) file. It has several commented out suggested values.

View File

@@ -0,0 +1,19 @@
apiVersion: v2
appVersion: 2.4.1
description: A self hostable application for saving web pages, freely.
name: wallabag
version: 1.0.0
kubeVersion: ">=1.16.0-0"
keywords:
- wallabag
home: https://github.com/k8s-at-home/charts/tree/master/charts/wallabag
sources:
- https://github.com/wallabag/docker
- https://hub.docker.com/wallabag/wallabag
maintainers:
- name: Patricol
url: https://patricol.co/
dependencies:
- name: common
repository: https://k8s-at-home.com/charts/
version: 3.0.1

122
charts/wallabag/README.md Normal file
View File

@@ -0,0 +1,122 @@
# wallabag
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 2.4.1](https://img.shields.io/badge/AppVersion-2.4.1-informational?style=flat-square)
A self hostable application for saving web pages, freely.
**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/wallabag/docker>
* <https://hub.docker.com/wallabag/wallabag>
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://k8s-at-home.com/charts/ | common | 3.0.1 |
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install wallabag k8s-at-home/wallabag
```
## Installing the Chart
To install the chart with the release name `wallabag`
```console
helm install wallabag k8s-at-home/wallabag
```
## Uninstalling the Chart
To uninstall the `wallabag` deployment
```console
helm uninstall wallabag
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](../common/values.yaml) from the [common library](../common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install wallabag \
--set env.TZ="America/New York" \
k8s-at-home/wallabag
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install wallabag k8s-at-home/wallabag -f values.yaml
```
## Custom configuration
Default login is `wallabag:wallabag`.
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| controllerType | string | `"statefulset"` | |
| env | object | `{}` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"wallabag/wallabag"` | |
| image.tag | string | `"2.4.1"` | |
| ingress.enabled | bool | `false` | |
| persistence.cache.emptyDir | bool | `false` | |
| persistence.cache.enabled | bool | `false` | |
| persistence.cache.mountPath | string | `"/var/www/wallabag/var/cache"` | |
| persistence.images.emptyDir | bool | `false` | |
| persistence.images.enabled | bool | `false` | |
| persistence.images.mountPath | string | `"/var/www/wallabag/web/assets/images"` | |
| service.port.port | int | `80` | |
| strategy.type | string | `"RollingUpdate"` | |
## Changelog
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.0]
#### Added
- Initial version of the chart
#### Changed
- N/A
#### Removed
- N/A
[1.0.0]: #1.0.0
## Support
- See the [Wiki](https://github.com/k8s-at-home/charts/wiki)
- Open a [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/charts/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community

View File

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

View File

@@ -0,0 +1,27 @@
{{- define "custom.changelog.header" -}}
## Changelog
{{- end -}}
{{- define "custom.changelog" -}}
{{ template "custom.changelog.header" . }}
All notable changes to this application Helm chart will be documented in this file but does not include changes from our common library. To read those click [here](https://github.com/k8s-at-home/charts/tree/master/charts/common/README.md#Changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.0]
#### Added
- Initial version of the chart
#### 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" . }}
Default login is `wallabag:wallabag`.
{{- end -}}

View File

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

View File

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

View File

@@ -0,0 +1,84 @@
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/charts/tree/master/charts/common/values.yaml
#
image:
repository: wallabag/wallabag
pullPolicy: IfNotPresent
# Upgrading the wallabag version generally requires a migration. https://doc.wallabag.org/en/admin/upgrade.html
tag: 2.4.1
controllerType: "statefulset"
strategy:
type: RollingUpdate
# See more environment variables in the wallabag documentation
# https://github.com/wallabag/docker
env: {}
# MYSQL_ROOT_PASSWORD:
# POSTGRES_PASSWORD:
# POSTGRES_USER:
# POPULATE_DATABASE:
## For SYMFONY__ENV__ parameters' documentation, visit https://doc.wallabag.org/en/admin/parameters.html
## redis, rabbitmq, and mailer are optional. database is not optional.
# SYMFONY__ENV__DATABASE_DRIVER:
# SYMFONY__ENV__DATABASE_DRIVER_CLASS:
# SYMFONY__ENV__DATABASE_HOST:
# SYMFONY__ENV__DATABASE_PORT:
# SYMFONY__ENV__DATABASE_NAME:
# SYMFONY__ENV__DATABASE_USER:
# SYMFONY__ENV__DATABASE_PASSWORD:
# SYMFONY__ENV__DATABASE_PATH:
# SYMFONY__ENV__DATABASE_TABLE_PREFIX:
# SYMFONY__ENV__DATABASE_SOCKET:
# SYMFONY__ENV__DATABASE_CHARSET:
# SYMFONY__ENV__DOMAIN_NAME:
# SYMFONY__ENV__MAILER_TRANSPORT:
# SYMFONY__ENV__MAILER_USER:
# SYMFONY__ENV__MAILER_PASSWORD:
# SYMFONY__ENV__MAILER_HOST:
# SYMFONY__ENV__MAILER_PORT:
# SYMFONY__ENV__MAILER_ENCRYPTION:
# SYMFONY__ENV__MAILER_AUTH_MODE:
# SYMFONY__ENV__LOCALE:
# SYMFONY__ENV__SECRET:
# SYMFONY__ENV__TWOFACTOR_AUTH:
# SYMFONY__ENV__TWOFACTOR_SENDER:
# SYMFONY__ENV__FOSUSER_REGISTRATION:
# SYMFONY__ENV__FOSUSER_CONFIRMATION:
# SYMFONY__ENV__FOS_OAUTH_SERVER_ACCESS_TOKEN_LIFETIME:
# SYMFONY__ENV__FOS_OAUTH_SERVER_REFRESH_TOKEN_LIFETIME:
# SYMFONY__ENV__FROM_EMAIL:
# SYMFONY__ENV__RSS_LIMIT:
# SYMFONY__ENV__RABBITMQ_HOST:
# SYMFONY__ENV__RABBITMQ_PORT:
# SYMFONY__ENV__RABBITMQ_USER:
# SYMFONY__ENV__RABBITMQ_PASSWORD:
# SYMFONY__ENV__REDIS_SCHEME:
# SYMFONY__ENV__REDIS_HOST:
# SYMFONY__ENV__REDIS_PORT:
# SYMFONY__ENV__REDIS_PATH:
# SYMFONY__ENV__REDIS_PASSWORD:
# SYMFONY__ENV__SENTRY_DSN:
# SYMFONY__ENV__SERVER_NAME:
service:
port:
port: 80
ingress:
enabled: false
persistence:
images:
enabled: false
emptyDir: false
mountPath: /var/www/wallabag/web/assets/images
cache:
## Note that if you make cache persistent, you may need to clear it (with `bin/console cache:clear --env=prod`) to apply any changes you make to wallabag's parameters.
enabled: false
emptyDir: false
mountPath: /var/www/wallabag/var/cache

View File

@@ -10,7 +10,6 @@ home: https://github.com/k8s-at-home/charts/tree/master/charts/${CHARTNAME}
icon: https://${CHARTNAME}.org/icon
sources:
- https://github.com/${CHARTNAME}/${CHARTNAME}-docker
- https://github.com/k8s-at-home/charts/tree/master/charts/${CHARTNAME}
maintainers:
- name: ${CHARTNAME}
email: ${CHARTNAME}@${CHARTNAME}.com