Compare commits

..

7 Commits

Author SHA1 Message Date
ᗪєνιη ᗷυнʟ
a3ac7d6c76 [librespeed] migrate to common library (#772)
* fix: use common library

* fix: use common library
2021-04-08 07:26:36 -04:00
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs
05a59bd54d [calibre] additionalPorts -> additionalServices (#771)
Signed-off-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <me@bjw-s.dev>
2021-04-08 05:28:20 -04:00
allcontributors[bot]
433a1a5ea6 docs: add cbergmann as a contributor (#769)
* docs: update .all-contributorsrc [skip ci]

* docs: update README.md [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
2021-04-07 17:12:06 -04:00
Clemens Bergmann
2a687c360a [unifi] Rename port names for better traefik integration (#766)
* Rename port names for better traefik integration

Traefik automatically talks to backends via https when the port name starts with https. [1]
Otherwise you have to add the annotation traefik.ingress.kubernetes.io/service.serversscheme: https to the service.

[1] https://doc.traefik.io/traefik/routing/providers/kubernetes-ingress/#communication-between-traefik-and-pods

* Bump Version to 2.0.0

As this changes the port name it might be considered a breaking change. Therefore  @onedr0p suggested a major version bump.

Co-authored-by: Clemens Bergmann <clemens.bergmann@tu-darmstadt.de>
Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-04-07 17:09:14 -04:00
Dennis Zhang
516468ef58 add chart for owncast (#767)
Signed-off-by: Dennis Zhang <dennis.zhang.nrg@gmail.com>
2021-04-07 17:02:25 -04:00
Chris Golden
76641c9225 [bitwardenrs] Adjust if statement (#768)
* Update config logic

* update readme.md

Co-authored-by: ᗪєνιη ᗷυнʟ <onedr0p@users.noreply.github.com>
2021-04-07 16:59:28 -04:00
ᗪєνιη ᗷυнʟ
9d8c2a2487 Update PULL_REQUEST_TEMPLATE.md 2021-04-07 16:52:07 -04:00
38 changed files with 553 additions and 461 deletions

View File

@@ -157,6 +157,15 @@
"contributions": [
"code"
]
},
{
"login": "cbergmann",
"name": "Clemens Bergmann",
"avatar_url": "https://avatars.githubusercontent.com/u/112864?v=4",
"profile": "https://cbergmann.net",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7,

View File

@@ -34,7 +34,6 @@ Also don't be worried if the request is closed or not integrated sometimes our p
**Checklist** <!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->
- [ ] Chart version bumped in `Chart.yaml` according to [semver](http://semver.org/).
- [ ] Title of the PR starts with chart name (e.g. `[home-assistant]`)
- [ ] (optional) Chart is using our [common](https://github.com/k8s-at-home/charts/tree/master/charts/common) library as a dependency.
- [ ] (optional) Variables are documented in the README.md
- [ ] Variables are documented in the README.md (this can be done with using our helm-docs wrapper `./hack/gen-helm-docs.sh stable <chart>`)
<!-- Keep in mind that if you are submitting a new chart, try to use our [common](https://github.com/k8s-at-home/charts/tree/master/charts/common) library as a dependency. This will help maintaining charts here and keep them consistent between each other -->

View File

@@ -1,6 +1,6 @@
# Helm charts
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
[![All Contributors](https://img.shields.io/badge/all_contributors-17-orange.svg?style=flat-square)](#contributors-)
[![All Contributors](https://img.shields.io/badge/all_contributors-18-orange.svg?style=flat-square)](#contributors-)
<!-- ALL-CONTRIBUTORS-BADGE:END -->
[![docs](https://img.shields.io/badge/docs-rtfm-yellow?logo=gitbook&logoColor=white&style=for-the-badge)](https://docs.k8s-at-home.com/)
@@ -68,6 +68,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<td align="center"><a href="https://github.com/allenporter"><img src="https://avatars.githubusercontent.com/u/6026418?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allen Porter</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=allenporter" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/rasmustwh"><img src="https://avatars.githubusercontent.com/u/2485005?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Rasmus Hermansen</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=rasmustwh" title="Code">💻</a></td>
<td align="center"><a href="http://pleasenoddos.com"><img src="https://avatars.githubusercontent.com/u/7714381?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dennis Zhang</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=FlipEnergy" title="Code">💻</a></td>
<td align="center"><a href="https://cbergmann.net"><img src="https://avatars.githubusercontent.com/u/112864?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Clemens Bergmann</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=cbergmann" title="Code">💻</a></td>
</tr>
</table>

View File

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

View File

@@ -1,6 +1,6 @@
# bitwardenrs
![Version: 2.1.4](https://img.shields.io/badge/Version-2.1.4-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)
![Version: 2.1.5](https://img.shields.io/badge/Version-2.1.5-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)
Unofficial Bitwarden compatible server written in Rust
@@ -185,7 +185,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- N/A
[2.1.3]: #2.1.3
[2.1.5]: #2.1.5
## Support
@@ -195,4 +195,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -25,5 +25,5 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- N/A
[2.1.3]: #2.1.3
[2.1.5]: #2.1.5
{{- end -}}

View File

@@ -1,4 +1,4 @@
{{- if and (.Values.ldapSync.enabled) (not .Values.ldapSync.existingSecret) }}
{{- if .Values.ldapSync.enabled }}
apiVersion: apps/v1
kind: Deployment
metadata:

View File

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

View File

@@ -1,6 +1,6 @@
# calibre
![Version: 3.1.0](https://img.shields.io/badge/Version-3.1.0-informational?style=flat-square) ![AppVersion: 5.14.0](https://img.shields.io/badge/AppVersion-5.14.0-informational?style=flat-square)
![Version: 3.1.1](https://img.shields.io/badge/Version-3.1.1-informational?style=flat-square) ![AppVersion: 5.14.0](https://img.shields.io/badge/AppVersion-5.14.0-informational?style=flat-square)
Calibre is a powerful and easy to use e-book manager.
@@ -89,8 +89,13 @@ N/A
| ingress.enabled | bool | `false` | |
| persistence.config.emptyDir.enabled | bool | `false` | |
| persistence.config.enabled | bool | `false` | |
| service.additionalPorts[0].name | string | `"calibre-server"` | |
| service.additionalPorts[0].port | int | `8081` | |
| service.additionalServices[0].enabled | bool | `false` | |
| service.additionalServices[0].nameSuffix | string | `"webserver"` | |
| service.additionalServices[0].port.name | string | `"webserver"` | |
| service.additionalServices[0].port.port | int | `8081` | |
| service.additionalServices[0].port.protocol | string | `"TCP"` | |
| service.additionalServices[0].port.targetPort | int | `8081` | |
| service.additionalServices[0].type | string | `"ClusterIP"` | |
| service.port | object | `{"name":"gui","port":8080}` | The default port is 8080 |
| strategy.type | string | `"Recreate"` | |
@@ -100,6 +105,12 @@ All notable changes to this application Helm chart will be documented in this fi
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [3.1.1]
#### Fixed
- Change `additionalPorts` to `additionalServices`
### [3.0.0]
#### Added
@@ -122,7 +133,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Initial version
[3.0.0]: #2.0.0
[3.1.1]: #3.1.1
[3.0.0]: #3.0.0
[1.0.0]: #1.0.0
## Support

View File

@@ -9,6 +9,12 @@ All notable changes to this application Helm chart will be documented in this fi
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [3.1.1]
#### Fixed
- Change `additionalPorts` to `additionalServices`
### [3.0.0]
#### Added
@@ -32,6 +38,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Initial version
[3.0.0]: #2.0.0
[3.1.1]: #3.1.1
[3.0.0]: #3.0.0
[1.0.0]: #1.0.0
{{- end -}}

View File

@@ -37,9 +37,15 @@ service:
port:
port: 8080
name: gui
additionalPorts:
- name: calibre-server
port: 8081
additionalServices:
- enabled: false
nameSuffix: webserver
type: ClusterIP
port:
port: 8081
name: webserver
protocol: TCP
targetPort: 8081
ingress:
enabled: false

View File

@@ -19,5 +19,8 @@
.project
.idea/
*.tmproj
.vscode/
# OWNERS file for Kubernetes
OWNERS
# helm-docs templates
*.gotmpl

View File

@@ -1,16 +1,22 @@
apiVersion: v2
appVersion: 1.0.6-12
appVersion: 5.2.4
description: Librespeed is a HTML5 webpage to test upload and download speeds
name: librespeed
version: 2.0.3
version: 3.0.0
kubeVersion: ">=1.16.0-0"
keywords:
- librespeed
- librespeed
- speedtest
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/librespeed
icon: https://github.com/librespeed/speedtest/blob/master/.logo/logo3.png?raw=true
sources:
- https://github.com/librespeed/speedtest
- https://hub.docker.com/r/linuxserver/librespeed
- https://github.com/k8s-at-home/charts/tree/master/charts/librespeed
- https://github.com/librespeed/speedtest
- https://hub.docker.com/r/linuxserver/librespeed
- https://github.com/k8s-at-home/charts/tree/master/charts/librespeed
maintainers:
- name: billimek
email: jeff@billimek.com
- name: mcmarkj
email: mark@markmcw.uk
dependencies:
- name: common
repository: https://library-charts.k8s-at-home.com
version: 2.2.0

View File

@@ -1,6 +1,6 @@
# librespeed
![Version: 2.0.3](https://img.shields.io/badge/Version-2.0.3-informational?style=flat-square) ![AppVersion: 1.0.6-12](https://img.shields.io/badge/AppVersion-1.0.6--12-informational?style=flat-square)
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 5.2.4](https://img.shields.io/badge/AppVersion-5.2.4-informational?style=flat-square)
Librespeed is a HTML5 webpage to test upload and download speeds
@@ -14,10 +14,13 @@ Librespeed is a HTML5 webpage to test upload and download speeds
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
## TL;DR
@@ -74,50 +77,15 @@ N/A
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | Affinity settings for pod assignment or the homebridge GUI |
| deploymentAnnotations | object | `{}` | Key-value pairs to add as deployment annotations |
| distance | string | `"km"` | how the distance from the server is measured. Options `km`, `mi`, or `` |
| email | string | `nil` | Email address for GDPR requests. Must be specified when telemetry=true |
| fullnameOverride | string | `""` | |
| idObfuscation | bool | `false` | Test IDs are obfuscated, avoids exposing database internal sequential IDs |
| image.pullPolicy | string | `"IfNotPresent"` | Librespeed image pull policy |
| image.repository | string | `"adolfintel/speedtest"` | Librespeed image |
| image.tag | string | `"latest"` | Librespeed image tag |
| ingress.annotations | object | `{}` | Ingress annotations |
| ingress.enabled | bool | `false` | Enables Ingress |
| ingress.hosts | list | `["chart-example.local"]` | Ingress accepted hostnames |
| ingress.path | string | `"/"` | Ingress path |
| ingress.tls | list | `[]` | Ingress TLS configuration |
| livenessProbePath | string | `"/"` | Default livenessProbe path |
| nameOverride | string | `""` | |
| nodeSelector | object | `{}` | Node labels for pod assignment or the homebridge GUI |
| password | string | `"ChangeMe"` | password for stats page |
| persistence.accessMode | string | `"ReadWriteOnce"` | Persistence access modes |
| persistence.enabled | bool | `false` | Use persistent volume to store data |
| persistence.existingClaim | string | `nil` | Use an existing PVC to persist data |
| persistence.size | string | `"1Gi"` | Size of persistent volume claim |
| persistence.skipuninstall | bool | `false` | Do not delete the pvc upon helm uninstall |
| persistence.storageClass | string | `nil` | Type of persistent volume claim |
| persistence.subPath | string | `nil` | When mounting the data volume you may specify a subPath |
| pgid | string | `"1000"` | Default GID |
| podAnnotations | object | `{}` | Key-value pairs to add as pod annotations |
| puid | string | `"1000"` | Default UID |
| readinessProbePath | string | `"/"` | Default readinessProbe path |
| redactIPAddresses | bool | `false` | IP addresses/hostnames are redacted from the collected telemetry |
| resources | object | `{}` | CPU/Memory resource requests/limits or the homebridge GUI |
| service.annotations | object | `{}` | Service annotations for the GUI |
| service.externalTrafficPolicy | string | `nil` | Set the externalTrafficPolicy in the Service to either Cluster or Local |
| service.labels | object | `{}` | Custom labels |
| service.loadBalancerIP | string | `nil` | Loadbalance IP for the GUI |
| service.loadBalancerSourceRanges | list | `nil` | List of IP CIDRs allowed access to load balancer (if supported) |
| service.nodePort | int | `nil` | Kubernetes nodePort where the GUI is exposed |
| service.port | int | `80` | Kubernetes port where the GUI is exposed |
| service.type | string | `"ClusterIP"` | Kubernetes service type for the GUI |
| strategyType | string | `"Recreate"` | Specifies the strategy used to replace old Pods by new ones |
| telemetry | bool | `false` | Enable/Disable history |
| timezone | string | `"UTC"` | Default timezone |
| title | string | `"LibreSpeed"` | Title of your speedtest |
| tolerations | list | `[]` | Toleration labels for pod assignment or the homebridge GUI |
| env | object | `{}` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"linuxserver/librespeed"` | |
| image.tag | string | `"version-5.2.4"` | |
| ingress.enabled | bool | `false` | |
| persistence.config.emptyDir.enabled | bool | `false` | |
| persistence.config.enabled | bool | `false` | |
| service.port.port | int | `80` | |
| strategy.type | string | `"Recreate"` | |
## Changelog
@@ -125,7 +93,13 @@ All notable changes to this application Helm chart will be documented in this fi
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [2.0.1]
### [3.0.0]
#### Changed
- Migrated chart to use our common library
### [1.0.0]
#### Added
@@ -133,13 +107,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
#### Changed
- Use helm-docs
- N/A
#### Removed
- N/A
[2.0.1]: #2.0.1
[3.0.0]: #3.0.0
[1.0.0]: #1.0.0
## Support
@@ -149,4 +124,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

@@ -9,7 +9,13 @@ All notable changes to this application Helm chart will be documented in this fi
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [2.0.1]
### [3.0.0]
#### Changed
- Migrated chart to use our common library
### [1.0.0]
#### Added
@@ -17,11 +23,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
#### Changed
- Use helm-docs
- N/A
#### Removed
- N/A
[2.0.1]: #2.0.1
[3.0.0]: #3.0.0
[1.0.0]: #1.0.0
{{- end -}}

View File

@@ -0,0 +1,2 @@
env:
PASSWORD: "ChangeMe"

View File

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

View File

@@ -1,32 +0,0 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "librespeed.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 "librespeed.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 "librespeed.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

View File

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

View File

@@ -1,102 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "librespeed.fullname" . }}
{{- if .Values.deploymentAnnotations }}
annotations:
{{- range $key, $value := .Values.deploymentAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
labels:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
helm.sh/chart: {{ include "librespeed.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
replicas: 1
strategy:
type: {{ .Values.strategyType }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if .Values.podAnnotations }}
annotations:
{{- range $key, $value := .Values.podAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
httpGet:
path: {{ .Values.livenessProbePath }}
port: http
readinessProbe:
httpGet:
path: {{ .Values.readinessProbePath }}
port: http
env:
- name: TZ
value: "{{ .Values.timezone }}"
- name: PUID
value: "{{ .Values.puid }}"
- name: GUID
value: "{{ .Values.pgid }}"
{{ if .Values.telemetry }}
- name: TELEMETRY
value: "{{ .Values.telemetry }}"
- name: PASSWORD
value: "{{ .Values.password }}"
- name: ENABLE_ID_OBFUSCATION
value: "{{ .Values.idObfuscation }}"
- name: REDACT_IP_ADDRESSES
value: "{{ .Values.redactIPAddresses }}"
- name: EMAIL
value: "{{ .Values.email }}"
{{ end }}
- name: TITLE
value: "{{ .Values.title }}"
- name: DISTANCE
value: "{{ .Values.distance }}"
volumeMounts:
- name: config
mountPath: /config
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
{{- end }}
resources:
{{ toYaml .Values.resources | indent 12 }}
volumes:
- name: config
{{- if .Values.persistence.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.persistence.existingClaim }}{{ .Values.persistence.existingClaim }}{{- else }}{{ template "librespeed.fullname" . }}{{- end }}
{{- else }}
emptyDir: {}
{{ end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | indent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{ toYaml . | indent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{ toYaml . | indent 8 }}
{{- end }}

View File

@@ -1,38 +0,0 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "librespeed.fullname" . -}}
{{- $ingressPath := .Values.ingress.path -}}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ $fullName }}
labels:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
helm.sh/chart: {{ include "librespeed.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- with .Values.ingress.annotations }}
annotations:
{{ toYaml . | indent 4 }}
{{- end }}
spec:
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ . | quote }}
http:
paths:
- path: {{ $ingressPath }}
backend:
serviceName: {{ $fullName }}
servicePort: http
{{- end }}
{{- end }}

View File

@@ -1,24 +0,0 @@
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ template "librespeed.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
helm.sh/chart: {{ include "librespeed.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
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 }}"
{{- end }}
{{- end }}
{{- end -}}

View File

@@ -1,42 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "librespeed.fullname" . }}
{{- if .Values.service.annotations }}
annotations:
{{- toYaml .Values.service.annotations | nindent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
helm.sh/chart: {{ include "librespeed.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
{{- if (or (eq .Values.service.type "ClusterIP") (empty .Values.service.type)) }}
type: ClusterIP
{{- else if eq .Values.service.type "LoadBalancer" }}
type: {{ .Values.service.type }}
{{- if .Values.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}
{{- if .Values.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
{{- end -}}
{{- else }}
type: {{ .Values.service.type }}
{{- end }}
{{- if .Values.service.externalTrafficPolicy }}
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
{{- end }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
{{ if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort))) }}
nodePort: {{.Values.service.nodePort}}
{{ end }}
selector:
app.kubernetes.io/name: {{ include "librespeed.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -1,123 +1,42 @@
# Default values for librespeed
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
# -- Specifies the strategy used to replace old Pods by new ones
strategyType: Recreate
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
#
image:
# -- Librespeed image
repository: adolfintel/speedtest
# -- Librespeed image tag
tag: latest
# -- Librespeed image pull policy
repository: linuxserver/librespeed
pullPolicy: IfNotPresent
tag: version-5.2.4
nameOverride: ""
fullnameOverride: ""
# -- Default livenessProbe path
livenessProbePath: /
# -- Default readinessProbe path
readinessProbePath: /
# -- Default timezone
timezone: "UTC"
# -- Default UID
puid: "1000"
# -- Default GID
pgid: "1000"
# -- Enable/Disable history
telemetry: false
# -- password for stats page
password: "ChangeMe"
# -- (string) Email address for GDPR requests. Must be specified when telemetry=true
email:
# -- Title of your speedtest
title: LibreSpeed
# -- Test IDs are obfuscated, avoids exposing database internal sequential IDs
idObfuscation: false
# -- IP addresses/hostnames are redacted from the collected telemetry
redactIPAddresses: false
# -- how the distance from the server is measured. Options `km`, `mi`, or ``
distance: "km"
strategy:
type: Recreate
# See more environment variables in the librespeed documentation
# https://hub.docker.com/r/linuxserver/librespeed
env: {}
# TZ:
# PUID:
# PGID:
# PASSWORD:
# CUSTOM_RESULTS:
# DB_TYPE:
# DB_NAME:
# DB_HOSTNAME:
# DB_USERNAME:
# DB_PASSWORD:
# DB_PORT:
service:
# -- Kubernetes service type for the GUI
type: ClusterIP
# -- Kubernetes port where the GUI is exposed
port: 80
# -- (int) Kubernetes nodePort where the GUI is exposed
nodePort:
# -- Service annotations for the GUI
annotations: {}
# -- Custom labels
labels: {}
# -- (string) Loadbalance IP for the GUI
loadBalancerIP:
# -- (list) List of IP CIDRs allowed access to load balancer (if supported)
loadBalancerSourceRanges:
# -- Set the externalTrafficPolicy in the Service to either Cluster or Local
externalTrafficPolicy:
port:
port: 80
ingress:
# -- Enables Ingress
enabled: false
# -- Ingress annotations
annotations: {}
# -- Ingress path
path: /
# -- Ingress accepted hostnames
hosts:
- chart-example.local
# -- Ingress TLS configuration
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
persistence:
# -- Use persistent volume to store data
enabled: false
# -- (string) Type of persistent volume claim
storageClass:
# -- (string) Use an existing PVC to persist data
existingClaim:
# -- Persistence access modes
accessMode: ReadWriteOnce
# -- Size of persistent volume claim
size: 1Gi
# -- Do not delete the pvc upon helm uninstall
skipuninstall: false
# -- (string) When mounting the data volume you may specify a subPath
subPath:
# -- CPU/Memory resource requests/limits or the homebridge GUI
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
# -- Node labels for pod assignment or the homebridge GUI
nodeSelector: {}
# -- Toleration labels for pod assignment or the homebridge GUI
tolerations: []
# -- Affinity settings for pod assignment or the homebridge GUI
affinity: {}
# -- Key-value pairs to add as pod annotations
podAnnotations: {}
# -- Key-value pairs to add as deployment annotations
deploymentAnnotations: {}
config:
enabled: false
emptyDir:
enabled: false

View File

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

View File

@@ -0,0 +1,23 @@
apiVersion: v2
appVersion: 0.0.6
description: Take control over your live stream video by running it yourself. Streaming + chat out of the box.
name: owncast
version: 1.0.0
kubeVersion: ">=1.16.0-0"
keywords:
- owncast
- stream
- open source
- chat
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/owncast
icon: https://owncast.online/images/owncast-logo-1000x1000.png
sources:
- https://owncast.online/
- https://github.com/owncast/owncast
maintainers:
- name: FlipEnergy
email: dennis.zhang.nrg@gmail.com
dependencies:
- name: common
repository: https://library-charts.k8s-at-home.com
version: 2.2.0

View File

@@ -0,0 +1,127 @@
# owncast
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 0.0.6](https://img.shields.io/badge/AppVersion-0.0.6-informational?style=flat-square)
Take control over your live stream video by running it yourself. Streaming + chat out of the box.
**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://owncast.online/>
* <https://github.com/owncast/owncast>
## Requirements
Kubernetes: `>=1.16.0-0`
## Dependencies
| Repository | Name | Version |
|------------|------|---------|
| https://library-charts.k8s-at-home.com | common | 2.2.0 |
## TL;DR
```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install owncast k8s-at-home/owncast
```
## Installing the Chart
To install the chart with the release name `owncast`
```console
helm install owncast k8s-at-home/owncast
```
## Uninstalling the Chart
To uninstall the `owncast` deployment
```console
helm uninstall owncast
```
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
## Configuration
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
```console
helm install owncast \
--set env.TZ="America/New York" \
k8s-at-home/owncast
```
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
```console
helm install owncast k8s-at-home/owncast -f values.yaml
```
## Custom configuration
N/A
## Values
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"gabekangas/owncast"` | |
| image.tag | string | `"0.0.6"` | |
| ingress.enabled | bool | `false` | |
| persistence.config.emptyDir.enabled | bool | `false` | |
| persistence.config.enabled | bool | `false` | |
| persistence.config.mountPath | string | `"/app/data"` | |
| service.additionalServices[0].enabled | bool | `true` | |
| service.additionalServices[0].externalTrafficPolicy | string | `"Local"` | |
| service.additionalServices[0].nameSuffix | string | `"rtmp"` | |
| service.additionalServices[0].port.name | string | `"rtmp"` | |
| service.additionalServices[0].port.port | int | `1935` | |
| service.additionalServices[0].port.protocol | string | `"TCP"` | |
| service.additionalServices[0].port.targetPort | int | `1935` | |
| service.additionalServices[0].type | string | `"NodePort"` | |
| 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/library-charts/tree/main/charts/stable/common#changelog).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### [1.0.0]
#### Added
- First version of the helm chart for Owncast
#### Changed
- N/A
#### Removed
- N/A
[1.0.0]: #1.0.0
## Support
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0)

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,42 @@
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
#
image:
repository: gabekangas/owncast
pullPolicy: IfNotPresent
tag: 0.0.6
strategy:
type: Recreate
# Configuration docs
# https://owncast.online/docs/configuration/
service:
port:
port: 8080
additionalServices:
- enabled: true
nameSuffix: rtmp
type: NodePort
port:
port: 1935
name: rtmp
protocol: TCP
targetPort: 1935
externalTrafficPolicy: Local
ingress:
enabled: false
# Persistence is required for persistent configuration changes
persistence:
config:
enabled: false
emptyDir:
enabled: false
mountPath: /app/data

View File

@@ -2,7 +2,7 @@ apiVersion: v2
appVersion: 6.0.45
description: Ubiquiti Network's Unifi Controller
name: unifi
version: 1.5.6
version: 2.0.0
keywords:
- ubiquiti
- unifi

View File

@@ -48,16 +48,16 @@ spec:
name: {{ $fullName }}-captiveportalservice
port:
{{- if $captivePortalHttps }}
name: captive-https
name: https-captive
{{- else }}
name: captive-http
name: http-captive
{{- end }}
{{- else }}
serviceName: {{ $fullName }}-captiveportalservice
{{- if $captivePortalHttps }}
servicePort: captive-https
servicePort: https-captive
{{- else }}
servicePort: captive-http
servicePort: http-captive
{{- end }}
{{- end -}}
{{- end }}

View File

@@ -42,16 +42,16 @@ spec:
{{- end }}
ports:
- port: {{ .Values.captivePortalService.http }}
targetPort: captive-http
targetPort: http-captive
protocol: TCP
name: captive-http
name: http-captive
{{ if (and (eq .Values.captivePortalService.type "NodePort") (not (empty .Values.captivePortalService.http))) }}
nodePort: {{.Values.captivePortalService.http}}
{{ end }}
- port: {{ .Values.captivePortalService.https }}
targetPort: captive-https
targetPort: https-captive
protocol: TCP
name: captive-https
name: https-captive
{{ if (and (eq .Values.captivePortalService.type "NodePort") (not (empty .Values.captivePortalService.https))) }}
nodePort: {{.Values.captivePortalService.https}}
{{ end }}

View File

@@ -68,10 +68,10 @@ spec:
containerPort: 5514
protocol: UDP
{{- if .Values.captivePortalService.enabled }}
- name: captive-http
- name: http-captive
containerPort: {{ .Values.captivePortalService.http }}
protocol: TCP
- name: captive-https
- name: https-captive
containerPort: {{ .Values.captivePortalService.https }}
protocol: TCP
{{- end }}

View File

@@ -77,17 +77,17 @@ spec:
nodePort: {{.Values.guiService.nodePort}}
{{ end }}
{{ if .Values.captivePortalService.enabled }}
- name: captive-http
- name: http-captive
port: {{ .Values.captivePortalService.http }}
protocol: TCP
targetPort: captive-http
targetPort: http-captive
{{ if (and (eq .Values.unifiedService.type "NodePort") (not (empty .Values.captivePortalService.http))) }}
nodePort: {{.Values.captivePortalService.http}}
{{ end }}
- name: captive-https
- name: https-captive
port: {{ .Values.captivePortalService.https }}
protocol: TCP
targetPort: captive-https
targetPort: https-captive
{{ if (and (eq .Values.unifiedService.type "NodePort") (not (empty .Values.captivePortalService.https))) }}
nodePort: {{.Values.captivePortalService.https}}
{{ end }}