More changes and chart bump

This commit is contained in:
Skyler Mäntysaari 2023-03-02 04:00:25 +02:00
parent 189865090c
commit ae88860742
6 changed files with 194 additions and 5 deletions

47
.github/scripts/gen-helm-docs.sh vendored Normal file
View File

@ -0,0 +1,47 @@
#!/usr/bin/env bash
set -eu
# Generate helm-docs for Helm charts
# Usage ./gen-helm-docs.sh [stable/incubator] [chart]
# require helm-docs
command -v helm-docs >/dev/null 2>&1 || {
echo >&2 "helm-docs (https://github.com/k8s-at-home/helm-docs) is not installed. Aborting."
exit 1
}
# Absolute path of repository
repository=$(git rev-parse --show-toplevel)
# Templates to copy into each chart directory
readme_template="${repository}/hack/templates/README.md.gotmpl"
readme_config_template="${repository}/hack/templates/README_CONFIG.md.gotmpl"
# Gather all charts using the common library, excluding common-test
charts=$(find "${repository}" -name "Chart.yaml")
# Allow for a specific chart to be passed in as a argument
if [ $# -ge 1 ] && [ -n "$1" ] && [ -n "$2" ]; then
charts="${repository}/charts/$1/$2/Chart.yaml"
root="$(dirname "${charts}")"
if [ ! -f "$charts" ]; then
echo "File ${charts} does not exist."
exit 1
fi
else
root="${repository}/charts/"
fi
for chart in ${charts}; do
chart_directory="$(dirname "${chart}")"
echo "-] Copying templates to ${chart_directory}"
# Copy CONFIG template to each Chart directory, do not overwrite if exists
cp -n "${readme_config_template}" "${chart_directory}" || true
done
# Run helm-docs for charts using the common library and the common library itself
helm-docs \
--ignore-file="${repository}/.helmdocsignore" \
--template-files="${readme_template}" \
--template-files="$(basename "${readme_config_template}")" \
--chart-search-root="${root}"

View File

@ -23,6 +23,20 @@ tasks:
- docker run --rm -it --workdir=/data --volume $(pwd):/data {{.CT_IMAGE}} ct lint --config {{.CT_CONFIG_FILE}} --all --excluded-charts "{{.CHARTS_EXCLUDED_FROM_LINT}}" - docker run --rm -it --workdir=/data --volume $(pwd):/data {{.CT_IMAGE}} ct lint --config {{.CT_CONFIG_FILE}} --all --excluded-charts "{{.CHARTS_EXCLUDED_FROM_LINT}}"
silent: true silent: true
helm-docs:
desc: generate helm-docs
dir: "{{.GIT_ROOT}}/.github/scripts"
cmds:
- ./gen-helm-docs.sh "{{.CHART_TYPE}}" "{{.CHART}}"
deps:
- check-chart
check-chart:
cmds:
- test ! -z "{{.CHART_TYPE}}" || (echo "Please define CHART_TYPE parameter"; exit 1)
- test ! -z "{{.CHART}}" || (echo "Please define CHART parameter"; exit 1)
silent: true
dependency-cleanup: dependency-cleanup:
desc: clean up chart dependencies desc: clean up chart dependencies
dir: "{{.PROJECT_DIR}}/charts" dir: "{{.PROJECT_DIR}}/charts"

View File

@ -9,7 +9,7 @@ sources:
- https://github.com/TeamPiped/piped-proxy - https://github.com/TeamPiped/piped-proxy
keywords: keywords:
- streaming - streaming
version: 0.0.2 version: 0.0.3
appVersion: latest appVersion: latest
maintainers: maintainers:
- name: Skyler Mäntysaari - name: Skyler Mäntysaari

128
charts/apps/piped/README.md Normal file
View File

@ -0,0 +1,128 @@
# piped
![Version: 0.0.3](https://img.shields.io/badge/Version-0.0.3-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square)
Piped is an alternative privacy-friendly YouTube frontend which is efficient by design.
**Homepage:** <https://github.com/TeamPiped/Piped-Kubernetes>
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| Skyler Mäntysaari | samip5@users.noreply.github.com | |
## Source Code
* <https://github.com/TeamPiped/Piped>
* <https://github.com/TeamPiped/Piped-Backend>
* <https://github.com/TeamPiped/piped-proxy>
## Requirements
| Repository | Name | Version |
|------------|------|---------|
| https://bjw-s.github.io/helm-charts | common | 0.1.0 |
| https://charts.bitnami.com/bitnami | postgresql | 12.2.0 |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| backend.args[0] | string | `"-server"` | |
| backend.args[10] | string | `"-Xtune:virtualized"` | |
| backend.args[11] | string | `"-jar"` | |
| backend.args[12] | string | `"/app/piped.jar"` | |
| backend.args[1] | string | `"-Xmx1G"` | |
| backend.args[2] | string | `"-Xaggressive"` | |
| backend.args[3] | string | `"-XX:+UnlockExperimentalVMOptions"` | |
| backend.args[4] | string | `"-XX:+OptimizeStringConcat"` | |
| backend.args[5] | string | `"-XX:+UseStringDeduplication"` | |
| backend.args[6] | string | `"-XX:+UseCompressedOops"` | |
| backend.args[7] | string | `"-XX:+UseNUMA"` | |
| backend.args[8] | string | `"-Xgcpolicy:gencon"` | |
| backend.args[9] | string | `"-Xshareclasses:allowClasspaths"` | |
| backend.command | string | `"/opt/java/openjdk/bin/java"` | |
| backend.enabled | bool | `true` | |
| backend.image | object | `{"pullPolicy":"IfNotPresent","repository":"1337kavin/piped","tag":null}` | Outgoing HTTP Proxy - eg: 127.0.0.1:8118 Captcha Parameters Enable haveibeenpwned compromised password API Disable Registration Feed Retention Time in Days connection_url: jdbc:postgresql://postgres:5432/piped driver_class: org.postgresql.Driver dialect: org.hibernate.dialect.PostgreSQLDialect username: piped password: changeme |
| backend.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
| backend.image.repository | string | `"1337kavin/piped"` | image repository |
| backend.image.tag | string | `nil` | image tag @chart.appVersion |
| backend.service.main.enabled | bool | `true` | |
| backend.service.main.ports.http.enabled | bool | `true` | |
| backend.service.main.ports.http.port | int | `8080` | |
| backend.service.main.ports.http.primary | bool | `true` | |
| backend.service.main.ports.http.protocol | string | `"HTTP"` | |
| backend.service.main.primary | bool | `true` | |
| backend.service.main.type | string | `"ClusterIP"` | |
| controller.enabled | bool | `false` | enable the controller. |
| frontend.args[0] | string | `"-c"` | |
| frontend.args[1] | string | `"sed -i s/pipedapi.kavin.rocks/$BACKEND_HOSTNAME/g /usr/share/nginx/html/assets/* && /docker-entrypoint.sh && nginx -g 'daemon off;'"` | |
| frontend.command | string | `"/bin/ash"` | BACKEND_HOSTNAME: pipedapi.example.org |
| frontend.enabled | bool | `true` | |
| frontend.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
| frontend.image.repository | string | `"1337kavin/piped-frontend"` | image repository |
| frontend.image.tag | string | `nil` | image tag @chart.appVersion |
| frontend.service.main.enabled | bool | `true` | |
| frontend.service.main.ports.http.enabled | bool | `true` | |
| frontend.service.main.ports.http.port | int | `80` | |
| frontend.service.main.ports.http.primary | bool | `true` | |
| frontend.service.main.ports.http.protocol | string | `"HTTP"` | |
| frontend.service.main.primary | bool | `true` | |
| frontend.service.main.type | string | `"ClusterIP"` | |
| global.annotations | object | `{}` | Set additional global annotations. Helm templates can be used. |
| global.fullnameOverride | string | `nil` | Set the entire name definition |
| global.labels | object | `{}` | Set additional global labels. Helm templates can be used. |
| global.nameOverride | string | `nil` | Set an override for the prefix of the fullname |
| ingress.backend.enabled | bool | `true` | |
| ingress.backend.hosts[0].host | string | `"pipedapi.piped.video"` | |
| ingress.backend.hosts[0].paths[0].path | string | `"/"` | |
| ingress.backend.ingressClassName | string | `"nginx"` | |
| ingress.backend.primary | bool | `false` | |
| ingress.backend.tls | list | `[]` | |
| ingress.main.enabled | bool | `true` | |
| ingress.main.hosts[0].host | string | `"piped.video"` | |
| ingress.main.hosts[0].paths[0].path | string | `"/"` | |
| ingress.main.primary | bool | `false` | |
| ingress.main.tls | list | `[]` | |
| ingress.ytproxy.enabled | bool | `true` | |
| ingress.ytproxy.hosts[0].host | string | `"ytproxy.piped.video"` | |
| ingress.ytproxy.hosts[0].paths[0].path | string | `"/"` | |
| ingress.ytproxy.ingressClassName | string | `"nginx"` | |
| ingress.ytproxy.primary | bool | `false` | |
| ingress.ytproxy.tls | list | `[]` | |
| postgresql.auth.database | string | `"piped"` | |
| postgresql.auth.password | string | `"changemepiped"` | |
| postgresql.auth.username | string | `"piped"` | |
| postgresql.enabled | bool | `true` | |
| postgresql.image.tag | string | `"11.19.0-debian-11-r4"` | |
| probes | object | See below | Probe configuration -- [[ref]](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) |
| probes.liveness | object | See below | Liveness probe configuration |
| probes.liveness.custom | bool | `false` | Set this to `true` if you wish to specify your own livenessProbe |
| probes.liveness.enabled | bool | `false` | Enable the liveness probe |
| probes.liveness.spec | object | See below | The spec field contains the values for the default livenessProbe. If you selected `custom: true`, this field holds the definition of the livenessProbe. |
| probes.readiness | object | See below | Redainess probe configuration |
| probes.readiness.custom | bool | `false` | Set this to `true` if you wish to specify your own readinessProbe |
| probes.readiness.enabled | bool | `false` | Enable the readiness probe |
| probes.readiness.spec | object | See below | The spec field contains the values for the default readinessProbe. If you selected `custom: true`, this field holds the definition of the readinessProbe. |
| probes.startup | object | See below | Startup probe configuration |
| probes.startup.custom | bool | `false` | Set this to `true` if you wish to specify your own startupProbe |
| probes.startup.enabled | bool | `false` | Enable the startup probe |
| probes.startup.spec | object | See below | The spec field contains the values for the default startupProbe. If you selected `custom: true`, this field holds the definition of the startupProbe. |
| serviceAccount.create | bool | `false` | |
| termination.gracePeriodSeconds | string | `nil` | |
| ytproxy.command | string | `"/app/piped-proxy"` | |
| ytproxy.enabled | bool | `true` | |
| ytproxy.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
| ytproxy.image.repository | string | `"1337kavin/piped-proxy"` | image repository |
| ytproxy.image.tag | string | `nil` | image tag @chart.appVersion |
| ytproxy.service.main.enabled | bool | `true` | |
| ytproxy.service.main.ports.http.enabled | bool | `true` | |
| ytproxy.service.main.ports.http.port | int | `8080` | |
| ytproxy.service.main.ports.http.primary | bool | `true` | |
| ytproxy.service.main.ports.http.protocol | string | `"HTTP"` | |
| ytproxy.service.main.primary | bool | `true` | |
| ytproxy.service.main.type | string | `"ClusterIP"` | |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)

View File

@ -11,8 +11,8 @@ metadata:
{{- end }} {{- end }}
data: data:
config.properties: | config.properties: |
PORT: {{ .Values.backend.config.PORT | default (8080) }} PORT: {{ .Values.backend.config.PORT | default 8080 }}
HTTP_WORKERS: {{ .Values.backend.config.HTTP_WORKERS | default (2) }} HTTP_WORKERS: {{ .Values.backend.config.HTTP_WORKERS | default 2 }}
{{- if .Values.backend.config.HTTP_PROXY }} {{- if .Values.backend.config.HTTP_PROXY }}
HTTP_PROXY: {{ .Values.backend.config.HTTP_PROXY }} HTTP_PROXY: {{ .Values.backend.config.HTTP_PROXY }}
{{ end }} {{ end }}

View File

@ -84,9 +84,9 @@ backend:
# - sleep infinity # - sleep infinity
# If the hostnames are not set for backend, proxy and API, they will be automatically fetched from their ingresses. # If the hostnames are not set for backend, proxy and API, they will be automatically fetched from their ingresses.
config: #config:
#PORT: 8080 #PORT: 8080
# HTTP_WORKERS: 2 #HTTP_WORKERS: 2
#PROXY_PART: https://PROXY_HOSTNAME #PROXY_PART: https://PROXY_HOSTNAME
# Outgoing HTTP Proxy - eg: 127.0.0.1:8118 # Outgoing HTTP Proxy - eg: 127.0.0.1:8118
#HTTP_PROXY: 127.0.0.1:8118 #HTTP_PROXY: 127.0.0.1:8118