chore(ci): chart-testing

This commit is contained in:
WrenIX 2024-01-13 01:18:16 +01:00
parent b82543a248
commit 0d2c9c0a44
Signed by: wrenix
GPG key ID: 7AFDB012974B1BB5
25 changed files with 149 additions and 120 deletions

View file

@ -4,6 +4,10 @@ description: Service for managing and receiving Alertmanager alerts on Matrix
type: application type: application
version: 0.1.4 version: 0.1.4
appVersion: "latest" appVersion: "latest"
maintainers:
- name: WrenIX
url: https://wrenix.eu
keywords: keywords:
- matrix - matrix
- alertmanager - alertmanager

View file

@ -3,5 +3,7 @@ name: alertmanager-ntfy
description: Receiver for alertmanager to forward to ntfy.sh description: Receiver for alertmanager to forward to ntfy.sh
type: application type: application
version: 0.1.2 version: 0.1.2
appVersion: "0.3.0" appVersion: "0.3.0"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -1,6 +1,8 @@
apiVersion: v2 apiVersion: v2
name: authentik-application name: authentik-application
type: application
version: 0.4.0
description: "A Chart to deploy a secret for the authentik blueprint-sidecar." description: "A Chart to deploy a secret for the authentik blueprint-sidecar."
type: application
version: 0.4.0
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -1,4 +1,3 @@
blueprint: blueprint:
groups: groups:
- slug: "app: grafana-admin" - slug: "app: grafana-admin"

View file

@ -1,8 +1,10 @@
apiVersion: v2 apiVersion: v2
name: conduit name: conduit
description: Conduit is a simple, fast and reliable chat server powered by Matrix. description: Conduit is a simple, fast and reliable chat server powered by Matrix.
icon: https://conduit.rs/conduit.svg
type: application type: application
version: 0.2.1 version: 0.2.1
appVersion: "0.6.0" appVersion: "0.6.0"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -32,7 +32,8 @@ conduit:
allowUnstableRoomVersions: true allowUnstableRoomVersions: true
trustedServers: trustedServers:
- "matrix.org" - "matrix.org"
maxRequestSize: "20000000" # in bytes, ~20 MB # -- in bytes default 20 MB
maxRequestSize: "20000000"
# maxConcurrentRequests: 100 # maxConcurrentRequests: 100
maxConcurrentRequests: maxConcurrentRequests:
# log: "warn,rocket=off,_=off,sled=off" # log: "warn,rocket=off,_=off,sled=off"
@ -132,27 +133,25 @@ tolerations: []
affinity: {} affinity: {}
## Enable persistence using Persistent Volume Claims # Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ # ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence: persistence:
enabled: true enabled: true
annotations: {} annotations: {}
## Persistent Volume Storage Class # -- Persistent Volume Storage Class
## If defined, storageClassName: <storageClass> # If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning # If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is # If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on # set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack) # GKE, AWS & OpenStack)
## storageClass:
# storageClass: "-"
## A manually managed Persistent Volume and Claim # -- A manually managed Persistent Volume and Claim
## Requires persistence.enabled: true # Requires persistence.enabled: true
## If defined, PVC must be created manually before volume will be bound # If defined, PVC must be created manually before volume will be bound
# existingClaim: existingClaim:
## Do not create an PVC, direct use hostPath in Pod # -- Do not create an PVC, direct use hostPath in Pod
# hostPath: hostPath:
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
size: 1Gi size: 1Gi

4
ct.yaml Normal file
View file

@ -0,0 +1,4 @@
target-branch: main
since: HEAD~2
chart-dirs:
- .

View file

@ -3,5 +3,7 @@ name: forgejo-runner
description: Deploy runner for an forgejo instance (default codeberg.org) description: Deploy runner for an forgejo instance (default codeberg.org)
type: application type: application
version: 0.1.4 version: 0.1.4
appVersion: "3.2.0" appVersion: "3.2.0"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -1,8 +1,10 @@
apiVersion: v2 apiVersion: v2
name: grampsweb name: grampsweb
description: A Helm chart for gramps web description: A Helm chart for gramps web
icon: https://raw.githubusercontent.com/gramps-project/Gramps.js/main/images/icon512.png
type: application type: application
version: 0.1.1 version: 0.1.1
appVersion: "23.11.0" appVersion: "23.11.0"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -1,8 +1,10 @@
apiVersion: v2 apiVersion: v2
name: headscale-ui name: headscale-ui
description: A simple Headscale web UI for small-scale deployments. description: A simple Headscale web UI for small-scale deployments.
icon: https://raw.githubusercontent.com/gurucomputing/headscale-ui/master/static/favicon.png
type: application type: application
version: 0.1.1 version: 0.1.1
appVersion: "2023.01.30-beta-1" appVersion: "2023.01.30-beta-1"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -5,6 +5,10 @@ icon: https://raw.githubusercontent.com/juanfont/headscale/56a7b1e34952c3e0306a1
type: application type: application
version: 0.2.2 version: 0.2.2
appVersion: "0.22.3" appVersion: "0.22.3"
maintainers:
- name: WrenIX
url: https://wrenix.eu
keywords: keywords:
- headscale - headscale
- tailscale - tailscale

View file

@ -84,28 +84,26 @@ prometheus:
## Enable persistence using Persistent Volume Claims ## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence: persistence:
# Upload (/var/lib/headscale) # Upload (/var/lib/headscale)
enabled: false enabled: false
annotations: {} annotations: {}
## mobilizon data Persistent Volume Storage Class # -- data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass> # If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning # If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is # If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on # set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack) # GKE, AWS & OpenStack)
## storageClass:
# storageClass: "-"
## A manually managed Persistent Volume and Claim # -- A manually managed Persistent Volume and Claim
## Requires persistence.enabled: true # Requires persistence.enabled: true
## If defined, PVC must be created manually before volume will be bound # If defined, PVC must be created manually before volume will be bound
# existingClaim: existingClaim:
## Create a PV on Node with given hostPath # -- Create a PV on Node with given hostPath
## storageClass has to be manual # storageClass has to be manual
# hostPath: hostPath:
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
size: 1Gi size: 1Gi

View file

@ -1,8 +1,10 @@
apiVersion: v2 apiVersion: v2
name: hydrogen-web name: hydrogen-web
description: A Helm Chart to install hydrogen-web (a nextgen Matrix Webclient) description: A Helm Chart to install hydrogen-web (a nextgen Matrix Webclient)
icon: https://raw.githubusercontent.com/element-hq/hydrogen-web/master/src/platform/web/assets/icon.svg
type: application type: application
version: 0.1.4 version: 0.1.4
appVersion: "0.4.1" appVersion: "0.4.1"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -1,7 +1,10 @@
apiVersion: v2 apiVersion: v2
name: jellyfin name: jellyfin
description: The Free Software Media System description: The Free Software Media System
icon: https://raw.githubusercontent.com/jellyfin/jellyfin-ux/master/branding/SVG/icon-transparent.svg
type: application type: application
version: 0.1.4 version: 0.1.4
appVersion: "10.8.13" appVersion: "10.8.13"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -1,11 +1,10 @@
apiVersion: v2 apiVersion: v2
name: miniserve name: miniserve
description: A Helm chart for Kubernetes description: A Helm chart for Kubernetes
icon: https://raw.githubusercontent.com/svenstaro/miniserve/master/data/logo.svg
type: application type: application
version: 0.3.3 version: 0.3.3
icon: https://raw.githubusercontent.com/svenstaro/miniserve/master/data/logo.svg appVersion: "0.25.0"
maintainers: maintainers:
- name: WrenIX - name: WrenIX
url: https://wrenix.eu url: https://wrenix.eu
appVersion: "0.25.0"

View file

@ -1,6 +1,9 @@
apiVersion: v2 apiVersion: v2
name: monitoring name: monitoring
description: Deploy helper for probes and scrapeconfig of prometheus-operator description: Deploy helper for probes and scrapeconfig of prometheus-operator
icon: https://prometheus.io/assets/favicons/android-chrome-192x192.png
type: application type: application
version: 0.1.0 version: 0.1.0
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -9,8 +9,8 @@ prometheus:
prometheus: "default" prometheus: "default"
scrapes: scrapes:
- # -- name of scrape # -- name of scrape
name: nodes - name: nodes
# -- groups with targets # -- groups with targets
groups: groups:
de: de:
@ -20,8 +20,8 @@ scrapes:
ie: ie:
- "dub.ie.local:9100" - "dub.ie.local:9100"
- "ork.ie.local:9100" - "ork.ie.local:9100"
- # -- name of scrape # -- name of scrape
name: minio - name: minio
# -- metric path on scrape # -- metric path on scrape
metricsPath: /minio/v2/metrics/node metricsPath: /minio/v2/metrics/node
# -- schema on scrape # -- schema on scrape
@ -43,16 +43,16 @@ scrapes:
# -- prober for each the following probes are created (multiside probes) # -- prober for each the following probes are created (multiside probes)
prober: prober:
- # -- name of prober # -- name of prober
name: "local" - name: "local"
# -- spec of prober (like url, path, scheme ...) # -- spec of prober (like url, path, scheme ...)
spec: spec:
url: "prometheus-blackbox-exporter:9115" url: "prometheus-blackbox-exporter:9115"
path: "/probe" path: "/probe"
probes: probes:
- # -- probe module (suffix with _ipv4 and ipv6 if enabled) # -- probe module (suffix with _ipv4 and ipv6 if enabled)
module: http_2xx - module: http_2xx
# -- name of probe # -- name of probe
name: http name: http
# -- setup one for ipv4 (see module and his suffix) # -- setup one for ipv4 (see module and his suffix)
@ -67,8 +67,8 @@ probes:
- framapiaf.org - framapiaf.org
- framatube.org - framatube.org
- # -- probe module (suffix with _ipv4 and ipv6 if enabled) # -- probe module (suffix with _ipv4 and ipv6 if enabled)
module: http_2xx - module: http_2xx
# -- name of probe # -- name of probe
name: http-ipv4 name: http-ipv4
# -- setup one for ipv4 (see module and his suffix) # -- setup one for ipv4 (see module and his suffix)

View file

@ -1,7 +1,10 @@
apiVersion: v2 apiVersion: v2
name: ntfy name: ntfy
description: A Helm chart for Kubernetes description: A Helm chart for Kubernetes
icon: https://github.com/binwiederhier/ntfy/raw/main/web/public/static/images/pwa-512x512.png
type: application type: application
version: 0.1.6 version: 0.1.6
appVersion: "2.8.0" appVersion: "2.8.0"
maintainers:
- name: WrenIX
url: https://wrenix.eu

View file

@ -5,16 +5,16 @@
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }}
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- else if contains "NodePort" .Values.service.type }} {{- else if contains "NodePort" .Values.service.http.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "ntfy.fullname" . }}) export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "ntfy.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }} {{- else if contains "LoadBalancer" .Values.service.http.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available. NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "ntfy.fullname" . }}' You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "ntfy.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "ntfy.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "ntfy.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.service.port }} echo http://$SERVICE_IP:{{ .Values.service.http.port }}
{{- else if contains "ClusterIP" .Values.service.type }} {{- else if contains "ClusterIP" .Values.service.http.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "ntfy.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "ntfy.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
echo "Visit http://127.0.0.1:8080 to use your application" echo "Visit http://127.0.0.1:8080 to use your application"

View file

@ -93,23 +93,22 @@ persistence:
# Upload (/var/www/html) # Upload (/var/www/html)
enabled: false enabled: false
annotations: {} annotations: {}
## mobilizon data Persistent Volume Storage Class # -- data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass> # If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning # If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is # If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on # set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack) # GKE, AWS & OpenStack)
## storageClass:
# storageClass: "-"
## A manually managed Persistent Volume and Claim # -- A manually managed Persistent Volume and Claim
## Requires persistence.enabled: true # Requires persistence.enabled: true
## If defined, PVC must be created manually before volume will be bound # If defined, PVC must be created manually before volume will be bound
# existingClaim: existingClaim:
## Create a PV on Node with given hostPath # -- Create a PV on Node with given hostPath
## storageClass has to be manual # storageClass has to be manual
# hostPath: hostPath:
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
size: 1Gi size: 1Gi

View file

@ -2,15 +2,14 @@
apiVersion: "v2" apiVersion: "v2"
name: "postgresql" name: "postgresql"
description: "A Helm chart for running PostgreSQL (Postgres) database" description: "A Helm chart for running PostgreSQL (Postgres) database"
icon: https://wiki.postgresql.org/images/a/a4/PostgreSQL_logo.3colors.svg
type: "application" type: "application"
version: "0.1.3" version: "0.1.3"
appVersion: "16.1-alpine3.18" appVersion: "16.1-alpine3.18"
icon: https://wiki.postgresql.org/images/a/a4/PostgreSQL_logo.3colors.svg
maintainers: maintainers:
- name: WrenIX - name: WrenIX
url: https://wrenix.eu url: https://wrenix.eu
keywords: keywords:
- "postgresql" - "postgresql"
- "postgres" - "postgres"

View file

@ -21,6 +21,7 @@ for p in * ; do
[ $p == "jellyfin" ] || \ [ $p == "jellyfin" ] || \
[ $p == "monitoring" ] || \ [ $p == "monitoring" ] || \
[ $p == "ntfy" ] || \ [ $p == "ntfy" ] || \
[ $p == "postgresql" ] || \
[ ! -d $p ] || \ [ ! -d $p ] || \
[ ! -f $p/Chart.yaml ] \ [ ! -f $p/Chart.yaml ] \
; then ; then