Compare commits

...

38 Commits

Author SHA1 Message Date
6e737c9401 chore(deps): update ghcr.io/oliver006/redis_exporter docker tag to v1.82.0
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 19s
lint-and-test / chart-testing (pull_request) Successful in 49s
2026-03-09 02:48:07 +00:00
853d5f231d feat: remove redis-replication
All checks were successful
lint-and-test / lint-helm (push) Successful in 13s
renovate / renovate (push) Successful in 44s
lint-and-test / chart-testing (push) Successful in 1m9s
2026-03-08 21:47:26 -05:00
0a6093e949 feat: add name override
All checks were successful
lint-and-test / lint-helm (push) Successful in 7s
release-charts-volsync-target / release (push) Successful in 13s
lint-and-test / chart-testing (push) Successful in 38s
release-charts-valkey / release (push) Successful in 1m6s
renovate / renovate (push) Successful in 1m31s
2026-03-06 00:14:03 -06:00
44ea8e44d3 Merge pull request 'chore(deps): update dependency backube/volsync to v0.15.0' (#176) from renovate/unified-backubevolsync into main
All checks were successful
lint-and-test / chart-testing (push) Successful in 24s
release-charts-volsync-target / release (push) Successful in 28s
lint-and-test / lint-helm (push) Successful in 1m6s
renovate / renovate (push) Successful in 1m15s
Reviewed-on: #176
2026-03-06 00:12:24 +00:00
ab7ca6fbcc chore(deps): update dependency backube/volsync to v0.15.0
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 36s
lint-and-test / chart-testing (pull_request) Successful in 2m2s
2026-03-06 00:02:40 +00:00
ade9ae2e44 Merge pull request 'chore(deps): update ghcr.io/oliver006/redis_exporter docker tag to v1.81.0' (#175) from renovate/unified-oliver006redis_exporter into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 9s
release-charts-valkey / release (push) Successful in 26s
lint-and-test / chart-testing (push) Successful in 1m23s
renovate / renovate (push) Successful in 1m56s
Reviewed-on: #175
2026-03-03 22:08:10 +00:00
e64d253486 chore(deps): update ghcr.io/oliver006/redis_exporter docker tag to v1.81.0
All checks were successful
lint-and-test / chart-testing (pull_request) Successful in 22s
lint-and-test / lint-helm (pull_request) Successful in 34s
2026-03-03 22:06:17 +00:00
6f9d24b6e7 feat: add valkey chart
All checks were successful
release-charts-generic-device-plugin / release (push) Successful in 24s
release-charts-postgres-cluster / release (push) Successful in 20s
release-charts-valkey / release (push) Successful in 22s
lint-and-test / lint-helm (push) Successful in 1m18s
lint-and-test / chart-testing (push) Successful in 1m40s
renovate / renovate (push) Successful in 1m3s
2026-03-03 16:04:57 -06:00
27c147cc3c feat: add release for valkey
Some checks failed
renovate / renovate (push) Has been cancelled
2026-03-03 16:04:42 -06:00
30c1ac44d6 feat: update images
Some checks failed
lint-and-test / chart-testing (push) Successful in 2m13s
release-charts-redis-replication / release (push) Successful in 27s
renovate / renovate (push) Successful in 1m55s
lint-and-test / lint-helm (push) Failing after 15m43s
2026-03-03 14:50:16 -06:00
8e27611035 Merge pull request 'chore(deps): update ghcr.io/squat/generic-device-plugin:latest docker digest to 7812762' (#174) from renovate/unified-squatgeneric-device-plugin into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 28s
lint-and-test / chart-testing (push) Successful in 46s
release-charts-generic-device-plugin / release (push) Successful in 53s
renovate / renovate (push) Successful in 1m35s
2026-03-03 00:01:54 +00:00
ab365a9761 chore(deps): update ghcr.io/squat/generic-device-plugin:latest docker digest to 7812762
Some checks failed
renovate/stability-days Updates have not met minimum release age requirement
lint-and-test / lint-helm (pull_request) Failing after 36s
lint-and-test / chart-testing (pull_request) Successful in 1m49s
2026-03-03 00:01:28 +00:00
0d7634fa97 Merge pull request 'chore(deps): update ghcr.io/squat/generic-device-plugin:latest docker digest to 8e0eb73' (#170) from renovate/unified-squatgeneric-device-plugin into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 37s
lint-and-test / chart-testing (push) Successful in 1m4s
release-charts-generic-device-plugin / release (push) Successful in 1m2s
renovate / renovate (push) Successful in 1m48s
2026-03-02 00:02:07 +00:00
3417914c73 chore(deps): update ghcr.io/squat/generic-device-plugin:latest docker digest to 8e0eb73
Some checks failed
renovate/stability-days Updates have not met minimum release age requirement
lint-and-test / lint-helm (pull_request) Failing after 1m9s
lint-and-test / chart-testing (pull_request) Successful in 1m27s
2026-03-02 00:01:41 +00:00
d1e102b9c7 Merge pull request 'chore(deps): update ghcr.io/cloudnative-pg/postgresql docker tag to v18.3' (#169) from renovate/unified-cloudnative-pgpostgresql into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 18s
release-charts-postgres-cluster / release (push) Successful in 28s
lint-and-test / chart-testing (push) Successful in 34s
renovate / renovate (push) Successful in 3m27s
Reviewed-on: #169
2026-02-27 03:03:29 +00:00
56845991ad chore(deps): update ghcr.io/cloudnative-pg/postgresql docker tag to v18.3
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 16s
lint-and-test / chart-testing (pull_request) Successful in 57s
2026-02-27 00:02:51 +00:00
a985a29512 Merge pull request 'chore(deps): update ghcr.io/squat/generic-device-plugin:latest docker digest to efa50af' (#168) from renovate/unified-squatgeneric-device-plugin into main
All checks were successful
lint-and-test / chart-testing (push) Successful in 3m35s
lint-and-test / lint-helm (push) Successful in 23s
release-charts-generic-device-plugin / release (push) Successful in 40s
renovate / renovate (push) Successful in 50s
2026-02-27 00:01:23 +00:00
c0c4bf1694 chore(deps): update ghcr.io/squat/generic-device-plugin:latest docker digest to efa50af
Some checks are pending
renovate/stability-days Updates have not met minimum release age requirement
lint-and-test / lint-helm (pull_request) Successful in 28s
lint-and-test / chart-testing (pull_request) Successful in 1m26s
2026-02-27 00:01:06 +00:00
78b3c7db76 Merge pull request 'chore(deps): update ghcr.io/cloudnative-pg/postgresql docker tag to v18.2' (#167) from renovate/unified-cloudnative-pgpostgresql into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 6s
release-charts-postgres-cluster / release (push) Successful in 1m33s
lint-and-test / chart-testing (push) Successful in 2m6s
renovate / renovate (push) Successful in 1m26s
Reviewed-on: #167
2026-02-21 03:42:11 +00:00
9e58e89470 chore(deps): update ghcr.io/cloudnative-pg/postgresql docker tag to v18.2
All checks were successful
lint-and-test / chart-testing (pull_request) Successful in 1m2s
lint-and-test / lint-helm (pull_request) Successful in 1m36s
2026-02-21 00:00:58 +00:00
327cd8bd54 fix: external clusters incorrect yaml
All checks were successful
lint-and-test / lint-helm (push) Successful in 13s
release-charts-postgres-cluster / release (push) Successful in 23s
release-charts-cloudflared / release (push) Successful in 35s
lint-and-test / chart-testing (push) Successful in 1m1s
renovate / renovate (push) Successful in 1m7s
2026-02-13 12:45:32 -06:00
a696a57f30 Merge pull request 'chore(deps): update dependency cloudflare/cloudflared to v2026.2.0' (#166) from renovate/unified-cloudflarecloudflared into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 13s
release-charts-cloudflared / release (push) Successful in 22s
lint-and-test / chart-testing (push) Successful in 27s
renovate / renovate (push) Successful in 1m54s
Reviewed-on: #166
2026-02-07 00:34:32 +00:00
ab709625c2 chore(deps): update dependency cloudflare/cloudflared to v2026.2.0
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 17s
lint-and-test / chart-testing (pull_request) Successful in 33s
2026-02-07 00:33:23 +00:00
5c06f17e1e Merge pull request 'chore(deps): update dependency cloudnative-pg/cloudnative-pg to v1.28.1' (#165) from renovate/unified-cloudnative-pgcloudnative-pg into main
All checks were successful
renovate / renovate (push) Successful in 37s
lint-and-test / lint-helm (push) Successful in 12s
lint-and-test / chart-testing (push) Successful in 25s
release-charts-postgres-cluster / release (push) Successful in 23s
Reviewed-on: #165
2026-02-07 00:32:53 +00:00
9591b3f478 chore(deps): update dependency cloudnative-pg/cloudnative-pg to v1.28.1
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 16s
lint-and-test / chart-testing (pull_request) Successful in 31s
2026-02-07 00:31:58 +00:00
ce0c5dc817 feat: remove manager
All checks were successful
lint-and-test / lint-helm (push) Successful in 11s
release-charts-gitea-actions / release (push) Successful in 24s
lint-and-test / chart-testing (push) Successful in 30s
renovate / renovate (push) Successful in 50s
2026-02-06 18:31:19 -06:00
20ecfbeec5 fix: add bumpVersion 2026-02-06 18:31:04 -06:00
487c275ee2 feat: add custom manager to renovate
All checks were successful
release-charts-postgres-cluster / release (push) Successful in 24s
lint-and-test / lint-helm (push) Successful in 40s
release-charts-generic-device-plugin / release (push) Successful in 44s
release-charts-cloudflared / release (push) Successful in 45s
release-charts-redis-replication / release (push) Successful in 23s
release-charts-gitea-actions / release (push) Successful in 48s
release-charts-volsync-target / release (push) Successful in 20s
renovate / renovate (push) Successful in 48s
lint-and-test / chart-testing (push) Successful in 1m40s
2026-02-06 18:15:25 -06:00
c8edea8785 chore(deps): update image 2026-02-02 21:16:52 -06:00
dc231cb3d1 fix: fix docs 2026-02-02 21:02:08 -06:00
50afd0dc65 revert: downgrade image 2026-02-02 21:01:34 -06:00
b0f275dd2f Merge pull request 'chore(deps): update quay.io/opstree/redis-exporter docker tag to v1.80.2' (#163) from renovate/quay.io-opstree-redis-exporter-1.x into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 17s
lint-and-test / chart-testing (push) Successful in 41s
release-charts-redis-replication / release (push) Successful in 29s
renovate / renovate (push) Successful in 1m28s
Reviewed-on: #163
2026-02-02 22:18:08 +00:00
2ee7073e5c chore(deps): update quay.io/opstree/redis-exporter docker tag to v1.80.2
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 24s
lint-and-test / chart-testing (pull_request) Successful in 3m27s
2026-02-02 00:01:38 +00:00
310eae35ee ci: update renovate image
All checks were successful
renovate / renovate (push) Successful in 1m42s
2026-01-29 12:13:18 -06:00
801fbac176 Merge pull request 'chore(deps): update cloudflare/cloudflared docker tag to v2026.1.2' (#162) from renovate/cloudflare-cloudflared-2026.x into main
All checks were successful
lint-and-test / lint-helm (push) Successful in 33s
release-charts-cloudflared / release (push) Successful in 59s
lint-and-test / chart-testing (push) Successful in 1m24s
renovate / renovate (push) Successful in 57s
Reviewed-on: #162
2026-01-28 01:21:56 +00:00
c59322ef8b chore(deps): update cloudflare/cloudflared docker tag to v2026.1.2
All checks were successful
lint-and-test / lint-helm (pull_request) Successful in 1m52s
lint-and-test / chart-testing (pull_request) Successful in 2m58s
2026-01-28 00:02:13 +00:00
2681c3d246 fix: add env for retention fix
All checks were successful
lint-and-test / lint-helm (push) Successful in 29s
lint-and-test / chart-testing (push) Successful in 50s
release-charts-postgres-cluster / release (push) Successful in 58s
renovate / renovate (push) Successful in 2m43s
2026-01-22 18:12:55 -06:00
dc6604bb4a Merge pull request 'Update cloudflare/cloudflared Docker tag to v2026' (#161) from renovate/cloudflare-cloudflared-2026.x into main
Reviewed-on: #161
2026-01-21 21:11:52 +00:00
34 changed files with 238 additions and 844 deletions

View File

@@ -1,128 +0,0 @@
name: release-charts-redis-replication
on:
push:
branches:
- main
paths:
- "charts/redis-replication/**"
workflow_dispatch:
env:
WORKFLOW_DIR: "charts/redis-replication"
jobs:
release:
runs-on: ubuntu-js
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Set up Helm
uses: azure/setup-helm@v4
with:
token: ${{ secrets.GITEA_TOKEN }}
version: v3.19.2
- name: Add Repositories
run: |
cd ${WORKFLOW_DIR}
echo ">> Adding repositories for chart dependencies ..."
helm dependency list --max-col-width 120 2> /dev/null \
| tail +2 | head -n -1 \
| awk '{ print "helm repo add " $1 " " $3 }' \
| while read cmd; do echo "$cmd" | sh; done || true
if helm repo list | tail +2 | read -r; then
echo ">> Update repository cache ..."
helm repo update
fi
echo "----"
- name: Package Helm Chart
run: |
cd ${WORKFLOW_DIR}
echo ">> Building helm dependency ..."
helm dependency build --skip-refresh --debug
echo "----"
echo "PACKAGE_PATH=$(helm package . | awk '{print $NF}')" >> $GITEA_ENV
- name: Publish Helm Chart to Harbor
run: |
echo ">> Logging into Harbor ..."
helm registry login ${{ vars.REGISTRY_HOST }} -u ${{ vars.REGISTRY_USER }} -p ${{ secrets.REGISTRY_SECRET }} --debug
echo ""
echo ">> Publishing chart to Harbor ..."
helm push ${{ env.PACKAGE_PATH }} oci://${{ vars.REGISTRY_HOST }}/helm-charts --debug
echo "----"
- name: Publish Helm Chart to Gitea
run: |
echo ">> Installing Chart Museum plugin ..."
helm plugin install https://github.com/chartmuseum/helm-push --debug
echo ""
echo ">> Adding Gitea repository ..."
helm repo add --username ${{ gitea.actor }} --password ${{ secrets.REPOSITORY_TOKEN }} helm-charts https://${{ vars.REPOSITORY_HOST }}/api/packages/alexlebens/helm --debug
echo ""
echo ">> Pushing chart to gitea"
helm cm-push ${{ env.PACKAGE_PATH }} helm-charts --debug
- name: Extract Chart Metadata
run: |
cd ${WORKFLOW_DIR}
echo ">> Adding Chart metadata to workflow ENV ..."
echo ""
echo ">> Chart Version: $(yq '.version' Chart.yaml)"
echo ">> Chart Name: $(yq '.name' Chart.yaml)"
echo "----"
echo "CHART_VERSION=$(yq '.version' Chart.yaml)" >> $GITEA_ENV
echo "CHART_NAME=$(yq '.name' Chart.yaml)" >> $GITEA_ENV
- name: Release Helm Chart
uses: akkuman/gitea-release-action@v1
with:
name: ${{ env.CHART_NAME }}-${{ env.CHART_VERSION }}
tag_name: ${{ env.CHART_NAME }}-${{ env.CHART_VERSION }}
files: |-
${{ env.PACKAGE_PATH }}
- name: ntfy Success
uses: niniyas/ntfy-action@master
if: success()
with:
url: '${{ secrets.NTFY_URL }}'
topic: '${{ secrets.NTFY_TOPIC }}'
title: 'Release Success - ${{ env.CHART_NAME }}'
priority: 3
headers: '{"Authorization": "Bearer ${{ secrets.NTFY_CRED }}"}'
tags: action,successfully,completed
details: 'Helm Chart ${{ env.CHART_NAME }}-${{ env.CHART_VERSION }} has been released!'
icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons/png/gitea.png'
- name: ntfy Failed
uses: niniyas/ntfy-action@master
if: failure()
with:
url: '${{ secrets.NTFY_URL }}'
topic: '${{ secrets.NTFY_TOPIC }}'
title: 'Release Failure - ${{ env.CHART_NAME }}'
priority: 4
headers: '{"Authorization": "Bearer ${{ secrets.NTFY_CRED }}"}'
tags: action,failed
details: 'Helm Chart ${{ env.CHART_NAME }}-${{ env.CHART_VERSION }} has failed to be released.'
icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons/png/gitea.png'
actions: '[{"action": "view", "label": "Open Gitea", "url": "https://gitea.alexlebens.dev/alexlebens/helm-charts/actions?workflow=release-charts-redis-replication.yml", "clear": true}]'
image: true

View File

@@ -1,16 +1,16 @@
name: release-charts-gitea-actions
name: release-charts-valkey
on:
push:
branches:
- main
paths:
- "charts/gitea-actions/**"
- "charts/valkey/**"
workflow_dispatch:
env:
WORKFLOW_DIR: "charts/gitea-actions"
WORKFLOW_DIR: "charts/valkey"
jobs:
release:
@@ -124,5 +124,5 @@ jobs:
tags: action,failed
details: 'Helm Chart ${{ env.CHART_NAME }}-${{ env.CHART_VERSION }} has failed to be released.'
icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons/png/gitea.png'
actions: '[{"action": "view", "label": "Open Gitea", "url": "https://gitea.alexlebens.dev/alexlebens/helm-charts/actions?workflow=release-charts-gitea-actions.yml", "clear": true}]'
actions: '[{"action": "view", "label": "Open Gitea", "url": "https://gitea.alexlebens.dev/alexlebens/helm-charts/actions?workflow=release-charts-volsync-target.yml", "clear": true}]'
image: true

View File

@@ -13,7 +13,7 @@ on:
jobs:
renovate:
runs-on: ubuntu-latest
container: ghcr.io/renovatebot/renovate:42
container: ghcr.io/renovatebot/renovate:43
steps:
- name: Checkout
uses: actions/checkout@v6

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: cloudflared
version: 2.2.0
version: 2.3.0
description: Cloudflared Tunnel
keywords:
- cloudflare
@@ -15,4 +15,5 @@ dependencies:
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.6.2
icon: https://avatars.githubusercontent.com/u/314135?s=48&v=4
appVersion: "2025.11.1"
# renovate: datasource=github-releases depName=cloudflare/cloudflared
appVersion: "2026.2.0"

View File

@@ -1,6 +1,6 @@
# cloudflared
![Version: 2.1.9](https://img.shields.io/badge/Version-2.1.9-informational?style=flat-square) ![AppVersion: 2025.11.1](https://img.shields.io/badge/AppVersion-2025.11.1-informational?style=flat-square)
![Version: 2.3.0](https://img.shields.io/badge/Version-2.3.0-informational?style=flat-square) ![AppVersion: 2026.2.0](https://img.shields.io/badge/AppVersion-2026.2.0-informational?style=flat-square)
Cloudflared Tunnel
@@ -25,7 +25,7 @@ Cloudflared Tunnel
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| image | object | `{"pullPolicy":"IfNotPresent","repository":"cloudflare/cloudflared","tag":"2025.11.1"}` | Default image |
| image | object | `{"pullPolicy":"IfNotPresent","repository":"cloudflare/cloudflared","tag":"2026.2.0"}` | Default image |
| name | string | `""` | Name override of release |
| resources | object | `{"requests":{"cpu":"10m","memory":"128Mi"}}` | Default resources |
| secret | object | `{"existingSecret":{"key":"cf-tunnel-token","name":"cloudflared-secret"},"externalSecret":{"additionalLabels":{},"enabled":true,"nameOverride":"","store":{"name":"vault","path":"/cloudflare/tunnels","property":"token"}}}` | Secret configuration |

View File

@@ -26,7 +26,7 @@ secret:
# -- Default image
image:
repository: cloudflare/cloudflared
tag: "2026.1.1"
tag: "2026.2.0"
pullPolicy: IfNotPresent
# -- Default resources

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: generic-device-plugin
version: 0.20.17
version: 0.20.20
description: Generic Device Plugin
keywords:
- generic-device-plugin
@@ -15,4 +15,4 @@ dependencies:
- name: common
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.6.2
appVersion: 0.20.16
appVersion: 0.20.17

View File

@@ -1,6 +1,6 @@
# generic-device-plugin
![Version: 0.20.17](https://img.shields.io/badge/Version-0.20.17-informational?style=flat-square) ![AppVersion: 0.20.16](https://img.shields.io/badge/AppVersion-0.20.16-informational?style=flat-square)
![Version: 0.20.20](https://img.shields.io/badge/Version-0.20.20-informational?style=flat-square) ![AppVersion: 0.20.17](https://img.shields.io/badge/AppVersion-0.20.17-informational?style=flat-square)
Generic Device Plugin
@@ -28,7 +28,7 @@ Generic Device Plugin
| config | object | `{"data":"devices:\n - name: serial\n groups:\n - paths:\n - path: /dev/ttyUSB*\n - paths:\n - path: /dev/ttyACM*\n - paths:\n - path: /dev/tty.usb*\n - paths:\n - path: /dev/cu.*\n - paths:\n - path: /dev/cuaU*\n - paths:\n - path: /dev/rfcomm*\n - name: video\n groups:\n - paths:\n - path: /dev/video0\n - name: fuse\n groups:\n - count: 10\n paths:\n - path: /dev/fuse\n - name: audio\n groups:\n - count: 10\n paths:\n - path: /dev/snd\n - name: capture\n groups:\n - paths:\n - path: /dev/snd/controlC0\n - path: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC1\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC1D0c\n mountPath: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC2\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC2D0c\n mountPath: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC3\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC3D0c\n mountPath: /dev/snd/pcmC0D0c\n","enabled":true}` | Config map |
| config.data | string | See [values.yaml](./values.yaml) | generic-device-plugin config file [[ref]](https://github.com/squat/generic-device-plugin#usage) |
| deviceDomain | string | `"devic.es"` | Domain used by devices for identifcation |
| image | object | `{"pullPolicy":"Always","repository":"ghcr.io/squat/generic-device-plugin","tag":"latest@sha256:8e74085edef446b02116d0e851a7a5576b4681e07fe5be75c4e5f6791a8ad0f7"}` | Default image |
| image | object | `{"pullPolicy":"Always","repository":"ghcr.io/squat/generic-device-plugin","tag":"latest@sha256:78127620563730680371e2915d48d69dc3ab513f12c742ca6bcacd156051fd4b"}` | Default image |
| name | string | `"generic-device-plugin"` | Name override of release |
| resources | object | `{"requests":{"cpu":"50m","memory":"10Mi"}}` | Default resources |
| service | object | `{"listenPort":8080}` | Service port |

View File

@@ -4,7 +4,7 @@ name: generic-device-plugin
# -- Default image
image:
repository: ghcr.io/squat/generic-device-plugin
tag: latest@sha256:8e74085edef446b02116d0e851a7a5576b4681e07fe5be75c4e5f6791a8ad0f7
tag: latest@sha256:78127620563730680371e2915d48d69dc3ab513f12c742ca6bcacd156051fd4b
pullPolicy: Always
# -- Domain used by devices for identifcation

View File

@@ -1,15 +0,0 @@
apiVersion: v2
name: gitea-actions
version: 0.2.1
description: Gitea Actions
keywords:
- cicd
- runner
- actions
sources:
- https://gitea.com/gitea/helm-actions
- https://gitea.com/gitea/act
maintainers:
- name: alexlebens
icon: https://avatars.githubusercontent.com/u/100373852?s=48&v=4
appVersion: 0.2.11

View File

@@ -1,18 +0,0 @@
MIT License
Copyright (c) 2025 gitea
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
associated documentation files (the "Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial
portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -1,54 +0,0 @@
# gitea-actions
![Version: 0.2.1](https://img.shields.io/badge/Version-0.2.1-informational?style=flat-square) ![AppVersion: 0.2.11](https://img.shields.io/badge/AppVersion-0.2.11-informational?style=flat-square)
Gitea Actions
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| alexlebens | | |
## Source Code
* <https://gitea.com/gitea/helm-actions>
* <https://gitea.com/gitea/act>
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| enabled | bool | `true` | |
| existingSecret | string | `""` | |
| existingSecretKey | string | `""` | |
| giteaRootURL | string | `""` | |
| global.fullnameOverride | string | `""` | |
| global.imageRegistry | string | `""` | |
| global.nameOverride | string | `""` | |
| global.storageClass | string | `""` | |
| init.image.repository | string | `"busybox"` | |
| init.image.tag | string | `"1.37.0"` | |
| statefulset.actRunner.config | string | `"log:\n level: debug\ncache:\n enabled: false\n"` | |
| statefulset.actRunner.extraVolumeMounts | list | `[]` | |
| statefulset.actRunner.pullPolicy | string | `"IfNotPresent"` | |
| statefulset.actRunner.repository | string | `"gitea/act_runner"` | |
| statefulset.actRunner.tag | string | `"0.2.11"` | |
| statefulset.affinity | object | `{}` | |
| statefulset.annotations | object | `{}` | |
| statefulset.dind.extraEnvs | list | `[]` | |
| statefulset.dind.extraVolumeMounts | list | `[]` | |
| statefulset.dind.pullPolicy | string | `"IfNotPresent"` | |
| statefulset.dind.repository | string | `"docker"` | |
| statefulset.dind.tag | string | `"25.0.2-dind"` | |
| statefulset.extraVolumes | list | `[]` | |
| statefulset.labels | object | `{}` | |
| statefulset.nodeSelector | object | `{}` | |
| statefulset.persistence.size | string | `"1Gi"` | |
| statefulset.persistence.storageClass | string | `""` | |
| statefulset.replicas | int | `1` | |
| statefulset.resources | object | `{}` | |
| statefulset.tolerations | list | `[]` | |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2)

View File

@@ -1,102 +0,0 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "gitea.actions.name" -}}
{{- default .Chart.Name .Values.global.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 "gitea.actions.fullname" -}}
{{- if .Values.global.fullnameOverride -}}
{{- .Values.global.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.global.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 "gitea.actions.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Storage Class
*/}}
{{- define "gitea.actions.persistence.storageClass" -}}
{{- $storageClass := (tpl ( default "" .Values.statefulset.persistence.storageClass) .) | default (tpl ( default "" .Values.global.storageClass) .) }}
{{- if $storageClass }}
storageClassName: {{ $storageClass | quote }}
{{- end }}
{{- end -}}
{{/*
Common labels
*/}}
{{- define "gitea.actions.labels" -}}
helm.sh/chart: {{ include "gitea.actions.chart" . }}
app: {{ include "gitea.actions.name" . }}
{{ include "gitea.actions.selectorLabels" . }}
app.kubernetes.io/version: {{ .Values.statefulset.actRunner.tag | default .Chart.AppVersion | quote }}
version: {{ .Values.statefulset.actRunner.tag | default .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}}
{{- define "gitea.actions.labels.actRunner" -}}
helm.sh/chart: {{ include "gitea.actions.chart" . }}
app: {{ include "gitea.actions.name" . }}-act-runner
{{ include "gitea.actions.selectorLabels.actRunner" . }}
app.kubernetes.io/version: {{ .Values.statefulset.actRunner.tag | default .Chart.AppVersion | quote }}
version: {{ .Values.statefulset.actRunner.tag | default .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}}
{{/*
Selector labels
*/}}
{{- define "gitea.actions.selectorLabels" -}}
app.kubernetes.io/name: {{ include "gitea.actions.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}}
{{- define "gitea.actions.selectorLabels.actRunner" -}}
app.kubernetes.io/name: {{ include "gitea.actions.name" . }}-act-runner
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}}
{{- define "gitea.actions.local_root_url" -}}
{{- .Values.giteaRootURL -}}
{{- end -}}
{{/*
Parse the http url to hostname + port separated by space for the nc command
*/}}
{{- define "gitea.actions.nc" -}}
{{- $url := include "gitea.actions.local_root_url" . | urlParse -}}
{{- $host := get $url "host" -}}
{{- $scheme := get $url "scheme" -}}
{{- $port := "80" -}}
{{- if contains ":" $host -}}
{{- $hostAndPort := regexSplit ":" $host 2 -}}
{{- $host = index $hostAndPort 0 -}}
{{- $port = index $hostAndPort 1 -}}
{{- else if eq $scheme "https" -}}
{{- $port = "443" -}}
{{- else if eq $scheme "http" -}}
{{- $port = "80" -}}
{{- end -}}
{{- printf "%s %s" $host $port -}}
{{- end -}}

View File

@@ -1,15 +0,0 @@
{{- if .Values.enabled }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "gitea.actions.fullname" . }}-act-runner-config
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.actions.labels" . | nindent 4 }}
data:
config.yaml: |
{{- with .Values.statefulset.actRunner.config -}}
{{ . | nindent 4}}
{{- end -}}
{{- end }}

View File

@@ -1,127 +0,0 @@
{{- if .Values.enabled }}
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels:
{{- include "gitea.actions.labels.actRunner" . | nindent 4 }}
{{- with .Values.statefulset.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
annotations:
{{- with .Values.statefulset.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
name: {{ include "gitea.actions.fullname" . }}-act-runner
namespace: {{ .Values.namespace | default .Release.Namespace }}
spec:
replicas: {{ .Values.statefulset.replicas }}
selector:
matchLabels:
{{- include "gitea.actions.selectorLabels.actRunner" . | nindent 6 }}
template:
metadata:
labels:
{{- include "gitea.actions.labels.actRunner" . | nindent 8 }}
{{- with .Values.statefulset.labels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
initContainers:
- name: init-gitea
image: "{{ .Values.init.image.repository }}:{{ .Values.init.image.tag }}"
command:
- sh
- -c
- |
while ! nc -z {{ include "gitea.actions.nc" . }}; do
sleep 5
done
containers:
- name: act-runner
image: "{{ .Values.statefulset.actRunner.repository }}:{{ .Values.statefulset.actRunner.tag }}"
imagePullPolicy: {{ .Values.statefulset.actRunner.pullPolicy }}
workingDir: /data
env:
- name: DOCKER_HOST
value: tcp://127.0.0.1:2376
- name: DOCKER_TLS_VERIFY
value: "1"
- name: DOCKER_CERT_PATH
value: /certs/server
- name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: "{{ .Values.existingSecret | default "gitea-actions-token" }}"
key: "{{ .Values.existingSecretKey | default "token" }}"
- name: GITEA_INSTANCE_URL
value: {{ include "gitea.actions.local_root_url" . }}
- name: CONFIG_FILE
value: /actrunner/config.yaml
resources:
{{- toYaml .Values.statefulset.resources | nindent 12 }}
volumeMounts:
- mountPath: /actrunner/config.yaml
name: act-runner-config
subPath: config.yaml
- mountPath: /certs/server
name: docker-certs
- mountPath: /data
name: data-act-runner
{{- with .Values.statefulset.actRunner.extraVolumeMounts }}
{{- toYaml . | nindent 12 }}
{{- end }}
- name: dind
image: "{{ .Values.statefulset.dind.repository }}:{{ .Values.statefulset.dind.tag }}"
imagePullPolicy: {{ .Values.statefulset.dind.pullPolicy }}
env:
- name: DOCKER_HOST
value: tcp://127.0.0.1:2376
- name: DOCKER_TLS_VERIFY
value: "1"
- name: DOCKER_CERT_PATH
value: /certs/server
{{- if .Values.statefulset.dind.extraEnvs }}
{{- toYaml .Values.statefulset.dind.extraEnvs | nindent 12 }}
{{- end }}
securityContext:
privileged: true
resources:
{{- toYaml .Values.statefulset.resources | nindent 12 }}
volumeMounts:
- mountPath: /certs/server
name: docker-certs
{{- with .Values.statefulset.dind.extraVolumeMounts }}
{{- toYaml . | nindent 12 }}
{{- end }}
{{- range $key, $value := .Values.statefulset.nodeSelector }}
nodeSelector:
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- with .Values.statefulset.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.statefulset.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- name: act-runner-config
configMap:
name: {{ include "gitea.actions.fullname" . }}-act-runner-config
- name: docker-certs
emptyDir: {}
{{- with .Values.statefulset.extraVolumes }}
{{- toYaml . | nindent 8 }}
{{- end }}
volumeClaimTemplates:
- metadata:
name: data-act-runner
spec:
accessModes: [ "ReadWriteOnce" ]
{{- include "gitea.actions.persistence.storageClass" . | nindent 8 }}
resources:
requests:
storage: {{ .Values.statefulset.persistence.size }}
{{- end }}

View File

@@ -1,102 +0,0 @@
# Configure Gitea Actions
# - must enable persistence if the job is enabled
## @section Gitea Actions
#
## @param enabled Create an act runner StatefulSet.
## @param init.image.repository The image used for the init containers
## @param init.image.tag The image tag used for the init containers
## @param statefulset.annotations Act runner annotations
## @param statefulset.labels Act runner labels
## @param statefulset.resources Act runner resources
## @param statefulset.nodeSelector NodeSelector for the statefulset
## @param statefulset.tolerations Tolerations for the statefulset
## @param statefulset.affinity Affinity for the statefulset
## @param statefulset.extraVolumes Extra volumes for the statefulset
## @param statefulset.actRunner.repository The Gitea act runner image
## @param statefulset.actRunner.tag The Gitea act runner tag
## @param statefulset.actRunner.pullPolicy The Gitea act runner pullPolicy
## @param statefulset.actRunner.extraVolumeMounts Allows mounting extra volumes in the act runner container
## @param statefulset.actRunner.config [default: Too complex. See values.yaml] Act runner custom configuration. See [Act Runner documentation](https://docs.gitea.com/usage/actions/act-runner#configuration) for details.
## @param statefulset.dind.repository The Docker-in-Docker image
## @param statefulset.dind.tag The Docker-in-Docker image tag
## @param statefulset.dind.pullPolicy The Docker-in-Docker pullPolicy
## @param statefulset.dind.extraVolumeMounts Allows mounting extra volumes in the Docker-in-Docker container
## @param statefulset.dind.extraEnvs Allows adding custom environment variables, such as `DOCKER_IPTABLES_LEGACY`
## @param statefulset.persistence.size Size for persistence to store act runner data
## @param provisioning.enabled Create a job that will create and save the token in a Kubernetes Secret
## @param provisioning.annotations Job's annotations
## @param provisioning.labels Job's labels
## @param provisioning.resources Job's resources
## @param provisioning.nodeSelector NodeSelector for the job
## @param provisioning.tolerations Tolerations for the job
## @param provisioning.affinity Affinity for the job
## @param provisioning.ttlSecondsAfterFinished ttl for the job after finished in order to allow helm to properly recognize that the job completed
## @param provisioning.publish.repository The image that can create the secret via kubectl
## @param provisioning.publish.tag The publish image tag that can create the secret
## @param provisioning.publish.pullPolicy The publish image pullPolicy that can create the secret
## @param existingSecret Secret that contains the token
## @param existingSecretKey Secret key
## @param giteaRootURL URL the act_runner registers and connect with
enabled: true
statefulset:
replicas: 1
annotations: {}
labels: {}
resources: {}
nodeSelector: {}
tolerations: []
affinity: {}
extraVolumes: []
actRunner:
repository: gitea/act_runner
tag: 0.2.11
pullPolicy: IfNotPresent
extraVolumeMounts: []
# See full example here: https://gitea.com/gitea/act_runner/src/branch/main/internal/pkg/config/config.example.yaml
config: |
log:
level: debug
cache:
enabled: false
dind:
repository: docker
tag: 25.0.2-dind
pullPolicy: IfNotPresent
extraVolumeMounts: []
# If the container keeps crashing in your environment, you might have to add the `DOCKER_IPTABLES_LEGACY` environment variable.
# See https://github.com/docker-library/docker/issues/463#issuecomment-1881909456
extraEnvs:
[]
# - name: "DOCKER_IPTABLES_LEGACY"
# value: "1"
persistence:
storageClass: ""
size: 1Gi
init:
image:
repository: busybox
tag: "1.37.0"
## Specify an existing token secret
##
existingSecret: ""
existingSecretKey: ""
## Specify the root URL of the Gitea instance
giteaRootURL: ""
## @section Global
#
## @param global.imageRegistry global image registry override
## @param global.storageClass global storage class override
global:
imageRegistry: ""
storageClass: ""
nameOverride: ""
fullnameOverride: ""

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: postgres-cluster
version: 7.4.5
version: 7.8.0
description: Cloudnative-pg Cluster
keywords:
- database
@@ -11,4 +11,5 @@ sources:
maintainers:
- name: alexlebens
icon: https://avatars.githubusercontent.com/u/100373852?s=48&v=4
appVersion: v1.28.0
# renovate: datasource=github-releases depName=cloudnative-pg/cloudnative-pg
appVersion: v1.28.1

View File

@@ -1,6 +1,6 @@
# postgres-cluster
![Version: 7.4.5](https://img.shields.io/badge/Version-7.4.5-informational?style=flat-square) ![AppVersion: v1.28.0](https://img.shields.io/badge/AppVersion-v1.28.0-informational?style=flat-square)
![Version: 7.8.0](https://img.shields.io/badge/Version-7.8.0-informational?style=flat-square) ![AppVersion: v1.28.1](https://img.shields.io/badge/AppVersion-v1.28.1-informational?style=flat-square)
Cloudnative-pg Cluster
@@ -24,12 +24,12 @@ Cloudnative-pg Cluster
| backup.method | string | `"objectStore"` | Method to create backups, options currently are only objectStore |
| backup.objectStore | string | `nil` | Options for object store backups |
| backup.scheduledBackups | list | `[]` | List of scheduled backups |
| cluster | object | `{"additionalLabels":{},"affinity":{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"},"annotations":{},"certificates":{},"enablePDB":true,"enableSuperuserAccess":false,"image":{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.1-standard-trixie"},"imagePullPolicy":"IfNotPresent","imagePullSecrets":[],"initdb":{"database":"app","owner":"app"},"instances":3,"logLevel":"info","monitoring":{"customQueries":[],"customQueriesSecret":[],"disableDefaultQueries":false,"enabled":true,"podMonitor":{"enabled":true,"metricRelabelings":[],"relabelings":[]},"prometheusRule":{"enabled":true,"excludeRules":["CNPGClusterLastFailedArchiveTimeWarning"]}},"postgresGID":-1,"postgresUID":-1,"postgresql":{"ldap":{},"parameters":{"hot_standby_feedback":"on","max_slot_wal_keep_size":"2000MB","shared_buffers":"128MB"},"pg_hba":[],"pg_ident":[],"shared_preload_libraries":[],"synchronous":{}},"primaryUpdateMethod":"switchover","primaryUpdateStrategy":"unsupervised","priorityClassName":"","resources":{"limits":{"hugepages-2Mi":"256Mi"},"requests":{"cpu":"100m","memory":"256Mi"}},"roles":[],"serviceAccountTemplate":{},"services":{},"storage":{"size":"10Gi","storageClass":"local-path"},"superuserSecret":"","walStorage":{"enabled":true,"size":"2Gi","storageClass":"local-path"}}` | Cluster settings |
| cluster | object | `{"additionalLabels":{},"affinity":{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"},"annotations":{},"certificates":{},"enablePDB":true,"enableSuperuserAccess":false,"image":{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.3-standard-trixie"},"imagePullPolicy":"IfNotPresent","imagePullSecrets":[],"initdb":{"database":"app","owner":"app"},"instances":3,"logLevel":"info","monitoring":{"customQueries":[],"customQueriesSecret":[],"disableDefaultQueries":false,"enabled":true,"podMonitor":{"enabled":true,"metricRelabelings":[],"relabelings":[]},"prometheusRule":{"enabled":true,"excludeRules":["CNPGClusterLastFailedArchiveTimeWarning"]}},"postgresGID":-1,"postgresUID":-1,"postgresql":{"ldap":{},"parameters":{"hot_standby_feedback":"on","max_slot_wal_keep_size":"2000MB","shared_buffers":"128MB"},"pg_hba":[],"pg_ident":[],"shared_preload_libraries":[],"synchronous":{}},"primaryUpdateMethod":"switchover","primaryUpdateStrategy":"unsupervised","priorityClassName":"","resources":{"limits":{"hugepages-2Mi":"256Mi"},"requests":{"cpu":"100m","memory":"256Mi"}},"roles":[],"serviceAccountTemplate":{},"services":{},"storage":{"size":"10Gi","storageClass":"local-path"},"superuserSecret":"","walStorage":{"enabled":true,"size":"2Gi","storageClass":"local-path"}}` | Cluster settings |
| cluster.affinity | object | `{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"}` | Affinity/Anti-affinity rules for Pods. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-AffinityConfiguration |
| cluster.certificates | object | `{}` | The configuration for the CA and related certificates. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-CertificatesConfiguration |
| cluster.enablePDB | bool | `true` | Allow to disable PDB, mainly useful for upgrade of single-instance clusters or development purposes See: https://cloudnative-pg.io/documentation/current/kubernetes_upgrade/#pod-disruption-budgets |
| cluster.enableSuperuserAccess | bool | `false` | When this option is enabled, the operator will use the SuperuserSecret to update the postgres user password. If the secret is not present, the operator will automatically create one. When this option is disabled, the operator will ignore the SuperuserSecret content, delete it when automatically created, and then blank the password of the postgres user by setting it to NULL. |
| cluster.image | object | `{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.1-standard-trixie"}` | Default image |
| cluster.image | object | `{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.3-standard-trixie"}` | Default image |
| cluster.imagePullPolicy | string | `"IfNotPresent"` | Image pull policy. One of Always, Never or IfNotPresent. If not defined, it defaults to IfNotPresent. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images |
| cluster.imagePullSecrets | list | `[]` | The list of pull secrets to be used to pull the images. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-LocalObjectReference |
| cluster.initdb | object | `{"database":"app","owner":"app"}` | Bootstrap is the configuration of the bootstrap process when initdb is used. See: https://cloudnative-pg.io/documentation/current/bootstrap/ See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-bootstrapinitdb |

View File

@@ -1,7 +1,7 @@
{{- define "cluster.externalClusters" -}}
externalClusters:
{{- if eq .Values.mode "standalone" }}
{{- else if eq .Values.mode "recovery" }}
externalClusters:
{{- if eq .Values.recovery.method "import" }}
- name: importSource
{{- include "cluster.externalSourceCluster" .Values.recovery.import.source | nindent 4 }}

View File

@@ -15,6 +15,14 @@ metadata:
{{- end }}
spec:
retentionPolicy: {{ .retentionPolicy | default "7d" }}
# Required when not using AWS S3
# https://github.com/cloudnative-pg/cloudnative-pg/issues/8599
instanceSidecarConfiguration:
env:
- name: AWS_REQUEST_CHECKSUM_CALCULATION
value: when_required
- name: AWS_RESPONSE_CHECKSUM_VALIDATION
value: when_required
configuration:
destinationPath: {{ include "cluster.backupDestinationPath" (dict "instance" . "global" $context) }}
endpointURL: {{ .endpointURL | default "http://garage-main.garage:3900" }}

View File

@@ -23,7 +23,7 @@ cluster:
# -- Default image
image:
repository: ghcr.io/cloudnative-pg/postgresql
tag: 18.1-standard-trixie
tag: 18.3-standard-trixie
# -- Image pull policy. One of Always, Never or IfNotPresent. If not defined, it defaults to IfNotPresent. Cannot be updated.
# More info: https://kubernetes.io/docs/concepts/containers/images#updating-images

View File

@@ -1,15 +0,0 @@
apiVersion: v2
name: redis-replication
version: 1.0.1
description: Redis Replication with Sentinel
keywords:
- redis-operator
- redis
- kubernetes
sources:
- https://github.com/OT-CONTAINER-KIT/redis-operator
- https://github.com/OT-CONTAINER-KIT/redis-operator/tree/main/charts/redis-operator
maintainers:
- name: alexlebens
icon: https://github.com/OT-CONTAINER-KIT/redis-operator/raw/main/static/redis-operator-logo.svg
appVersion: v0.23.0

View File

@@ -1,37 +0,0 @@
# redis-replication
![Version: 1.0.1](https://img.shields.io/badge/Version-1.0.1-informational?style=flat-square) ![AppVersion: v0.23.0](https://img.shields.io/badge/AppVersion-v0.23.0-informational?style=flat-square)
Redis Replication with Sentinel
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| alexlebens | | |
## Source Code
* <https://github.com/OT-CONTAINER-KIT/redis-operator>
* <https://github.com/OT-CONTAINER-KIT/redis-operator/tree/main/charts/redis-operator>
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| additionalLabels | object | `{}` | Add additional labels |
| existingSecret | object | `{"enabled":false,"key":"password","name":"secret-name"}` | Password |
| namespaceOverride | string | `""` | Override the namespace of the chart |
| redisReplication | object | `{"clusterSize":3,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis","tag":"v8.4.0"},"podSecurityContext":{"fsGroup":1000,"runAsUser":1000},"redisExporter":{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"sentinel":{"enabled":false,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"size":3},"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}},"storageClassName":"ceph-block"}}}` | Redis Replication settings |
| redisReplication.image | object | `{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis","tag":"v8.4.0"}` | Image |
| redisReplication.podSecurityContext | object | `{"fsGroup":1000,"runAsUser":1000}` | Security |
| redisReplication.redisExporter | object | `{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}}` | Metrics |
| redisReplication.resources | object | `{"requests":{"cpu":"10m","memory":"32Mi"}}` | Resources |
| redisReplication.sentinel | object | `{"enabled":false,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"size":3}` | Redis Sentinel settings |
| redisReplication.sentinel.image | object | `{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"}` | Image |
| redisReplication.sentinel.resources | object | `{"requests":{"cpu":"10m","memory":"32Mi"}}` | Resources |
| redisReplication.volumeClaimTemplate | object | `{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}},"storageClassName":"ceph-block"}}` | Storage |
| replicationNameOverride | string | `""` | Override the name of the resources |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2)

View File

@@ -1,51 +0,0 @@
{{/*
Expand the names
*/}}
{{- define "redis.replicationName" -}}
{{- if .Values.replicationNameOverride }}
{{- .Values.replicationNameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "redis-replication-%s" .Release.Name -}}
{{- end }}
{{- end }}
{{/*
Allow the release namespace to be overridden for multi-namespace deployments in combined charts
*/}}
{{- define "redis.namespace" -}}
{{- if .Values.namespaceOverride -}}
{{- .Values.namespaceOverride -}}
{{- else -}}
{{- .Release.Namespace -}}
{{- end -}}
{{- end -}}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "redis.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "redis.labels" -}}
helm.sh/chart: {{ include "redis.chart" $ }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.Version | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- with .Values.additionalLabels }}
{{ toYaml . }}
{{- end }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "redis.replicationSelectorLabels" -}}
app.kubernetes.io/name: {{ include "redis.replicationName" $ }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- end }}

View File

@@ -1,57 +0,0 @@
apiVersion: redis.redis.opstreelabs.in/v1beta2
kind: RedisReplication
metadata:
name: {{ include "redis.replicationName" . }}
namespace: {{ include "redis.namespace" . }}
labels:
{{- include "redis.labels" . | nindent 4 }}
{{- include "redis.replicationSelectorLabels" . | nindent 4 }}
spec:
clusterSize: {{ .Values.redisReplication.clusterSize }}
podSecurityContext:
{{- with .Values.redisReplication.podSecurityContext }}
{{- toYaml . | nindent 4 }}
{{- end }}
kubernetesConfig:
image: "{{ .Values.redisReplication.image.repository }}:{{ .Values.redisReplication.image.tag }}"
imagePullPolicy: {{ .Values.redisReplication.image.pullPolicy }}
resources:
{{- with .Values.redisReplication.resources }}
{{- toYaml . | nindent 6 }}
{{- end }}
{{- if .Values.existingSecret.enabled }}
redisSecret:
name: {{ .Values.existingSecret.name }}
key: {{ .Values.existingSecret.key }}
{{- end }}
storage:
volumeClaimTemplate:
{{- with .Values.redisReplication.volumeClaimTemplate }}
{{- toYaml . | nindent 6 }}
{{- end }}
redisExporter:
enabled: {{ .Values.redisReplication.redisExporter.enabled }}
image: "{{ .Values.redisReplication.redisExporter.image.repository }}:{{ .Values.redisReplication.redisExporter.image.tag }}"
{{ if .Values.redisReplication.sentinel.enabled -}}
sentinel:
image: "{{ .Values.redisReplication.sentinel.image.repository }}:{{ .Values.redisReplication.sentinel.image.tag }}"
imagePullPolicy: {{ .Values.redisReplication.sentinel.image.pullPolicy }}
{{- if .Values.existingSecret.enabled }}
redisSecret:
name: {{ .Values.existingSecret.name }}
key: {{ .Values.existingSecret.key }}
{{- end }}
resources:
{{- with .Values.redisReplication.sentinel.resources }}
{{- toYaml . | nindent 10 }}
{{- end }}
size: {{ .Values.redisReplication.sentinel.size }}
{{- end }}

View File

@@ -1,24 +0,0 @@
{{- if .Values.redisReplication.redisExporter.serviceMonitor.enabled }}
---
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ include "redis.replicationName" . }}
namespace: {{ include "redis.namespace" . }}
labels:
{{- include "redis.labels" . | nindent 4 }}
{{- include "redis.replicationSelectorLabels" . | nindent 4 }}
{{- with .Values.redisReplication.redisExporter.serviceMonitor.extraLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
selector:
matchLabels:
app: {{ include "redis.replicationName" . }}
redis_setup_type: replication
role: replication
endpoints:
- port: redis-exporter
interval: {{ .Values.redisReplication.redisExporter.serviceMonitor.interval }}
scrapeTimeout: {{ .Values.redisReplication.redisExporter.serviceMonitor.scrapeTimeout }}
{{- end }}

View File

@@ -1,74 +0,0 @@
# -- Override the name of the resources
replicationNameOverride: ""
# -- Override the namespace of the chart
namespaceOverride: ""
# -- Password
existingSecret:
enabled: false
name: secret-name
key: password
# -- Add additional labels
additionalLabels: {}
# -- Redis Replication settings
redisReplication:
clusterSize: 3
# -- Security
podSecurityContext:
fsGroup: 1000
runAsUser: 1000
# -- Image
image:
repository: quay.io/opstree/redis
tag: v8.4.0
pullPolicy: IfNotPresent
# -- Resources
resources:
requests:
cpu: 10m
memory: 32Mi
# -- Storage
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: ceph-block
# -- Metrics
redisExporter:
enabled: true
image:
repository: quay.io/opstree/redis-exporter
tag: v1.80.1
serviceMonitor:
enabled: true
interval: 30s
scrapeTimeout: 10s
extraLabels: {}
# -- Redis Sentinel settings
sentinel:
enabled: false
size: 3
# -- Image
image:
repository: quay.io/opstree/redis-sentinel
tag: v8.4.0
pullPolicy: IfNotPresent
# -- Resources
resources:
requests:
cpu: 10m
memory: 32Mi

6
charts/valkey/Chart.lock Normal file
View File

@@ -0,0 +1,6 @@
dependencies:
- name: valkey
repository: https://valkey.io/valkey-helm/
version: 0.9.3
digest: sha256:705fdaa1d456e55dd1a8aba698e17b2309a336f614cba8fd3cdb7e072b323b36
generated: "2026-03-03T16:02:43.407652-06:00"

21
charts/valkey/Chart.yaml Normal file
View File

@@ -0,0 +1,21 @@
apiVersion: v2
name: valkey
version: 0.4.0
description: Valkey chart with preconfigured settings
keywords:
- valkey
- redis
- storage
- kubernetes
sources:
- https://github.com/valkey-io/valkey
- https://github.com/valkey-io/valkey-helm
maintainers:
- name: alexlebens
dependencies:
- name: valkey
repository: https://valkey.io/valkey-helm/
version: 0.9.3
icon: https://dyltqmyl993wv.cloudfront.net/assets/stacks/valkey/img/valkey-stack-220x234.png
# renovate: datasource=github-releases depName=valkey-io/valkey
appVersion: 9.0.3

74
charts/valkey/README.md Normal file
View File

@@ -0,0 +1,74 @@
# valkey
![Version: 0.3.0](https://img.shields.io/badge/Version-0.3.0-informational?style=flat-square) ![AppVersion: 9.0.3](https://img.shields.io/badge/AppVersion-9.0.3-informational?style=flat-square)
Valkey chart with preconfigured settings
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| alexlebens | | |
## Source Code
* <https://github.com/valkey-io/valkey>
* <https://github.com/valkey-io/valkey-helm>
## Requirements
| Repository | Name | Version |
|------------|------|---------|
| https://valkey.io/valkey-helm/ | valkey | 0.9.3 |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| valkey.dataStorage.accessModes[0] | string | `"ReadWriteOnce"` | |
| valkey.dataStorage.className | string | `"ceph-block"` | |
| valkey.dataStorage.enabled | bool | `true` | |
| valkey.dataStorage.keepPvc | bool | `false` | |
| valkey.dataStorage.requestedSize | string | `"1Gi"` | |
| valkey.image.registry | string | `"docker.io"` | |
| valkey.image.repository | string | `"valkey/valkey"` | |
| valkey.image.tag | string | `"9.0.3"` | |
| valkey.metrics.enabled | bool | `true` | |
| valkey.metrics.exporter.image.registry | string | `"ghcr.io"` | |
| valkey.metrics.exporter.image.repository | string | `"oliver006/redis_exporter"` | |
| valkey.metrics.exporter.image.tag | string | `"v1.81.0"` | |
| valkey.metrics.exporter.resources.requests.cpu | string | `"10m"` | |
| valkey.metrics.exporter.resources.requests.memory | string | `"64M"` | |
| valkey.metrics.podMonitor.enabled | bool | `true` | |
| valkey.metrics.prometheusRule.enabled | bool | `true` | |
| valkey.metrics.prometheusRule.rules[0].alert | string | `"ValkeyDown"` | |
| valkey.metrics.prometheusRule.rules[0].annotations.description | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} is down."` | |
| valkey.metrics.prometheusRule.rules[0].annotations.summary | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} down"` | |
| valkey.metrics.prometheusRule.rules[0].expr | string | `"redis_up{service=\"{{ include \"valkey.fullname\" . }}-metrics\"} == 0\n"` | |
| valkey.metrics.prometheusRule.rules[0].for | string | `"2m"` | |
| valkey.metrics.prometheusRule.rules[0].labels.severity | string | `"error"` | |
| valkey.metrics.prometheusRule.rules[1].alert | string | `"ValkeyMemoryHigh"` | |
| valkey.metrics.prometheusRule.rules[1].annotations.description | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} is using {{ \"{{ $value }}\" }}% of its available memory.\n"` | |
| valkey.metrics.prometheusRule.rules[1].annotations.summary | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} is using too much memory"` | |
| valkey.metrics.prometheusRule.rules[1].expr | string | `"redis_memory_used_bytes{service=\"{{ include \"valkey.fullname\" . }}-metrics\"} * 100\n/\nredis_memory_max_bytes{service=\"{{ include \"valkey.fullname\" . }}-metrics\"}\n> 90 <= 100\n"` | |
| valkey.metrics.prometheusRule.rules[1].for | string | `"2m"` | |
| valkey.metrics.prometheusRule.rules[1].labels.severity | string | `"error"` | |
| valkey.metrics.prometheusRule.rules[2].alert | string | `"ValkeyKeyEviction"` | |
| valkey.metrics.prometheusRule.rules[2].annotations.description | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} has evicted {{ \"{{ $value }}\" }} keys in the last 5 minutes.\n"` | |
| valkey.metrics.prometheusRule.rules[2].annotations.summary | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} has evicted keys"` | |
| valkey.metrics.prometheusRule.rules[2].expr | string | `"increase(redis_evicted_keys_total{service=\"{{ include \"valkey.fullname\" . }}-metrics\"}[5m]) > 0\n"` | |
| valkey.metrics.prometheusRule.rules[2].for | string | `"1s"` | |
| valkey.metrics.prometheusRule.rules[2].labels.severity | string | `"error"` | |
| valkey.metrics.serviceMonitor.enabled | bool | `true` | |
| valkey.nameOverride | string | `""` | |
| valkey.replica.enabled | bool | `true` | |
| valkey.replica.persistence.accessModes[0] | string | `"ReadWriteOnce"` | |
| valkey.replica.persistence.size | string | `"1Gi"` | |
| valkey.replica.persistence.storageClass | string | `"ceph-block"` | |
| valkey.replica.replicas | int | `2` | |
| valkey.resources.requests.cpu | string | `"10m"` | |
| valkey.resources.requests.memory | string | `"128Mi"` | |
| valkey.serviceAccount.create | bool | `true` | |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2)

77
charts/valkey/values.yaml Normal file
View File

@@ -0,0 +1,77 @@
valkey:
nameOverride: ""
image:
registry: docker.io
repository: valkey/valkey
tag: 9.0.3
serviceAccount:
create: true
resources:
requests:
cpu: 10m
memory: 128Mi
dataStorage:
enabled: true
requestedSize: 1Gi
className: ceph-block
accessModes:
- ReadWriteOnce
keepPvc: false
replica:
enabled: true
replicas: 2
persistence:
size: 1Gi
storageClass: ceph-block
accessModes:
- ReadWriteOnce
metrics:
enabled: true
exporter:
image:
registry: ghcr.io
repository: oliver006/redis_exporter
tag: v1.82.0
resources:
requests:
cpu: 10m
memory: 64M
serviceMonitor:
enabled: true
podMonitor:
enabled: true
prometheusRule:
enabled: true
rules:
- alert: ValkeyDown
annotations:
summary: Valkey instance {{ "{{ $labels.instance }}" }} down
description: Valkey instance {{ "{{ $labels.instance }}" }} is down.
expr: |
redis_up{service="{{ include "valkey.fullname" . }}-metrics"} == 0
for: 2m
labels:
severity: error
- alert: ValkeyMemoryHigh
annotations:
summary: Valkey instance {{ "{{ $labels.instance }}" }} is using too much memory
description: |
Valkey instance {{ "{{ $labels.instance }}" }} is using {{ "{{ $value }}" }}% of its available memory.
expr: |
redis_memory_used_bytes{service="{{ include "valkey.fullname" . }}-metrics"} * 100
/
redis_memory_max_bytes{service="{{ include "valkey.fullname" . }}-metrics"}
> 90 <= 100
for: 2m
labels:
severity: error
- alert: ValkeyKeyEviction
annotations:
summary: Valkey instance {{ "{{ $labels.instance }}" }} has evicted keys
description: |
Valkey instance {{ "{{ $labels.instance }}" }} has evicted {{ "{{ $value }}" }} keys in the last 5 minutes.
expr: |
increase(redis_evicted_keys_total{service="{{ include "valkey.fullname" . }}-metrics"}[5m]) > 0
for: 1s
labels:
severity: error

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: volsync-target
version: 0.7.0
version: 0.8.0
description: Volsync Replication set to target specific PVC with preconfigured settings
keywords:
- volsync-target
@@ -13,4 +13,5 @@ sources:
maintainers:
- name: alexlebens
icon: https://raw.githubusercontent.com/backube/volsync/main/docs/media/volsync.svg?sanitize=true
appVersion: 0.14.0
# renovate: datasource=github-releases depName=backube/volsync
appVersion: 0.15.0

View File

@@ -1,6 +1,6 @@
# volsync-target
![Version: 0.7.0](https://img.shields.io/badge/Version-0.7.0-informational?style=flat-square) ![AppVersion: 0.14.0](https://img.shields.io/badge/AppVersion-0.14.0-informational?style=flat-square)
![Version: 0.8.0](https://img.shields.io/badge/Version-0.8.0-informational?style=flat-square) ![AppVersion: 0.15.0](https://img.shields.io/badge/AppVersion-0.15.0-informational?style=flat-square)
Volsync Replication set to target specific PVC with preconfigured settings

View File

@@ -5,6 +5,16 @@
"mergeConfidence:all-badges",
":rebaseStalePrs"
],
"customManagers": [
{
"customType": "regex",
"managerFilePatterns": ["/(^|/)Chart\\.yaml$/"],
"matchStrings": [
"#\\s*renovate:\\s*datasource=(?<datasource>.*?) depName=(?<depName>.*?)\\s+appVersion:\\s*[\"']?(?<currentValue>[^\"'\\s]+)[\"']?"
],
"datasourceTemplate": "github-releases"
}
],
"timezone": "US/Central",
"labels": [],
"prHourlyLimit": 0,
@@ -36,6 +46,20 @@
}
]
},
{
"description": "Label images, helm",
"matchManagers": ["custom.regex", "helm-values"],
"groupName": "{{#if packageName}}{{{replace 'ghcr.io/' '' (replace 'docker.io/' '' packageName)}}}{{else}}{{{replace 'ghcr.io/' '' (replace 'docker.io/' '' depName)}}}{{/if}}",
"groupSlug": "unified-{{{groupName}}}",
"addLabels": ["image"],
"bumpVersions": [
{
"filePatterns": ["{{packageFileDir}}/Chart.{yaml,yml}"],
"matchStrings": ["version:\\s(?<version>[^\\s]+)"],
"bumpType": "{{#if isPatch}}patch{{else}}minor{{/if}}"
}
]
},
{
"description": "Automerge generic-device-plugin image on digest",
"matchDatasources": ["docker"],