64 Commits

Author SHA1 Message Date
076a9e6bc8 Update ghcr.io/linuxserver/bazarr:1.5.3 Docker digest to ec11e98 (#2183)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
render-manifests / render-manifests (push) Successful in 33s
renovate / renovate (push) Successful in 1m40s
2025-12-02 22:01:57 +00:00
c64894d6e7 Update slskd/slskd Docker tag to v0.24.1 (#2182)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 9s
render-manifests / render-manifests (push) Successful in 36s
renovate / renovate (push) Successful in 1m44s
2025-12-02 20:02:29 +00:00
4ed5745e90 Update searxng/searxng:latest Docker digest to 277cb4b (#2180)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 12s
render-manifests / render-manifests (push) Successful in 26s
renovate / renovate (push) Successful in 2m22s
2025-12-02 11:01:41 +00:00
5dd015875f fix list
All checks were successful
renovate / renovate (push) Successful in 1m28s
2025-12-01 23:18:56 -06:00
4960f15ead quote 2025-12-01 23:16:33 -06:00
9f6469dd73 add repos
All checks were successful
renovate / renovate (push) Successful in 1m28s
2025-12-01 23:14:35 -06:00
4371c53508 update description
Some checks failed
lint-test-helm / helm-lint (push) Successful in 11s
renovate / renovate (push) Successful in 2m16s
render-manifests / render-manifests (push) Failing after 1m4s
2025-12-01 23:11:55 -06:00
10c638bfe8 remove subchart linting
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 23:11:35 -06:00
b9030396c7 update description
Some checks failed
lint-test-helm / helm-lint (push) Successful in 10s
render-manifests / render-manifests (push) Failing after 25s
renovate / renovate (push) Successful in 54s
2025-12-01 23:00:12 -06:00
27ab96a003 filter for path
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 22:59:59 -06:00
b01be4abe4 update description
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
render-manifests / render-manifests (push) Successful in 16s
renovate / renovate (push) Successful in 1m10s
2025-12-01 22:56:17 -06:00
5fa6567f2a use event sha 2025-12-01 22:55:57 -06:00
63afc77197 update description
Some checks failed
lint-test-helm / helm-lint (push) Successful in 11s
render-manifests / render-manifests (push) Failing after 20s
renovate / renovate (push) Successful in 56s
2025-12-01 22:48:26 -06:00
b398373485 update to use shorthand
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 22:47:40 -06:00
a87fd358dc Update Helm release speedtest-exporter to v0.1.2 (#2178)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
renovate / renovate (push) Successful in 1m7s
render-manifests / render-manifests (push) Successful in 32s
2025-12-02 04:37:17 +00:00
b0b3106692 add
Some checks failed
lint-test-helm / helm-lint (push) Successful in 11s
render-manifests / render-manifests (push) Successful in 19s
renovate / renovate (push) Has been cancelled
2025-12-01 22:35:00 -06:00
fc530795fe migrate 2025-12-01 22:34:41 -06:00
937c79ab91 remove 2025-12-01 22:34:17 -06:00
f30b7e47c2 fix for argocd
All checks were successful
lint-test-helm / helm-lint (push) Successful in 12s
renovate / renovate (push) Successful in 1m44s
2025-12-01 22:14:17 -06:00
73ed84431f update description
All checks were successful
lint-test-helm / helm-lint (push) Successful in 9s
render-manifests / render-manifests (push) Successful in 34s
renovate / renovate (push) Successful in 57s
2025-12-01 22:11:19 -06:00
00238c2f88 fix quote 2025-12-01 22:11:06 -06:00
0a732bee0c update description
Some checks failed
render-manifests / render-manifests (push) Failing after 25s
lint-test-helm / helm-lint (push) Successful in 14s
renovate / renovate (push) Successful in 58s
2025-12-01 22:07:35 -06:00
5e3328aad3 fix command
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 22:07:20 -06:00
3ad532c982 update description
Some checks failed
render-manifests / render-manifests (push) Failing after 24s
lint-test-helm / helm-lint (push) Successful in 8s
renovate / renovate (push) Has been cancelled
2025-12-01 22:05:55 -06:00
8fabd3612a fix
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 22:05:39 -06:00
a9d902a87a update description
All checks were successful
lint-test-helm / helm-lint (push) Successful in 15s
render-manifests / render-manifests (push) Successful in 15s
renovate / renovate (push) Successful in 1m44s
2025-12-01 22:03:15 -06:00
f05e966c53 add description 2025-12-01 22:02:58 -06:00
3bb2e3c2c0 add fetch depth
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 22:00:59 -06:00
08cf7f58c3 update description
Some checks failed
lint-test-helm / helm-lint (push) Successful in 9s
renovate / renovate (push) Successful in 1m13s
render-manifests / render-manifests (push) Failing after 23s
2025-12-01 21:59:39 -06:00
86f102142e remove old app sets 2025-12-01 21:58:44 -06:00
b15772f700 use diff
All checks were successful
renovate / renovate (push) Successful in 1m5s
2025-12-01 21:56:50 -06:00
c53716e5f5 add logging
All checks were successful
renovate / renovate (push) Successful in 57s
2025-12-01 21:51:36 -06:00
0be89f97f4 fix check
All checks were successful
renovate / renovate (push) Successful in 1m27s
2025-12-01 21:48:41 -06:00
f77653ef13 migrate
Some checks failed
lint-test-helm / helm-lint (push) Successful in 9s
renovate / renovate (push) Has been cancelled
render-manifests / render-manifests (push) Successful in 14s
2025-12-01 21:46:49 -06:00
3ca37402c4 add deletion handling
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 21:46:16 -06:00
57d67c12cf check for changes to render 2025-12-01 21:40:41 -06:00
d9e9a97395 move out
All checks were successful
lint-test-helm / helm-lint (push) Successful in 9s
renovate / renovate (push) Successful in 1m14s
render-manifests / render-manifests-helm (push) Successful in 10m25s
2025-12-01 21:03:10 -06:00
accbfa0a6d move out
Some checks failed
lint-test-helm / helm-lint (push) Successful in 9s
renovate / renovate (push) Successful in 1m19s
render-manifests / render-manifests-helm (push) Failing after 8m37s
2025-12-01 20:53:44 -06:00
b52d76cc58 migrate
Some checks failed
lint-test-helm / helm-lint (push) Successful in 11s
renovate / renovate (push) Successful in 1m18s
render-manifests / render-manifests-helm (push) Failing after 2m22s
2025-12-01 20:50:19 -06:00
6da426af29 migrate
All checks were successful
lint-test-helm / helm-lint (push) Successful in 12s
renovate / renovate (push) Successful in 1m13s
render-manifests / render-manifests-helm (push) Successful in 6m53s
2025-12-01 20:14:09 -06:00
3e90af0eb5 migrate
All checks were successful
lint-test-helm / helm-lint (push) Successful in 10s
render-manifests / render-manifests-helm (push) Successful in 1m18s
renovate / renovate (push) Successful in 1m19s
2025-12-01 19:47:11 -06:00
9b3615a0cf pin workflow
All checks were successful
renovate / renovate (push) Successful in 1m43s
2025-12-01 19:44:54 -06:00
cc90faad93 Update searxng/searxng:latest Docker digest to faa7118 (#2171)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
render-manifests / render-manifests-helm (push) Successful in 45s
renovate / renovate (push) Successful in 1m30s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| searxng/searxng | digest | `0124d32` -> `faa7118` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled because a matching PR was automerged previously.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi41LjAiLCJ1cGRhdGVkSW5WZXIiOiI0Mi41LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImF1dG9tZXJnZSIsImltYWdlIl19-->

Reviewed-on: #2171
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-02 01:39:08 +00:00
ae2a9bcd9d update pull
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-01 19:38:52 -06:00
72989730c7 migrate
All checks were successful
lint-test-helm / helm-lint (push) Successful in 11s
render-manifests / render-manifests-helm (push) Successful in 40s
renovate / renovate (push) Successful in 1m50s
2025-12-01 19:33:40 -06:00
e72427c734 add assigne
All checks were successful
renovate / renovate (push) Successful in 1m8s
2025-12-01 18:35:00 -06:00
4c82749916 migrate
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
render-manifests / render-manifests-helm (push) Successful in 34s
renovate / renovate (push) Successful in 1m18s
2025-12-01 18:33:17 -06:00
a68e3f8967 don't use error hanndling
All checks were successful
renovate / renovate (push) Successful in 1m0s
2025-12-01 18:20:47 -06:00
ef96e0fc71 add set e
All checks were successful
renovate / renovate (push) Successful in 1m1s
2025-12-01 18:18:19 -06:00
b6551ef375 fix
All checks were successful
renovate / renovate (push) Successful in 1m13s
2025-12-01 18:16:12 -06:00
7dd1446d5a change logging
All checks were successful
renovate / renovate (push) Successful in 1m33s
2025-12-01 18:05:46 -06:00
dd2b93b64f add explicit dir switching
All checks were successful
renovate / renovate (push) Successful in 2m50s
2025-12-01 17:58:49 -06:00
876ef10477 prepare manifest branch step
All checks were successful
renovate / renovate (push) Successful in 1m8s
2025-12-01 17:56:50 -06:00
a4f5472bc4 fix check
All checks were successful
renovate / renovate (push) Successful in 1m26s
2025-12-01 17:27:33 -06:00
73a7615dd1 use single pr pattern
All checks were successful
renovate / renovate (push) Successful in 1m22s
2025-12-01 16:57:16 -06:00
aaa2a7a606 Update rmcrackan/libation Docker tag to v12.7.5 (#2168)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 13s
render-manifests / render-manifests-helm (push) Successful in 27s
renovate / renovate (push) Successful in 1m41s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [rmcrackan/libation](https://github.com/rmcrackan/Libation) | patch | `12.7.4` -> `12.7.5` |

---

### Release Notes

<details>
<summary>rmcrackan/Libation (rmcrackan/libation)</summary>

### [`v12.7.5`](https://github.com/rmcrackan/Libation/releases/tag/v12.7.5): Libation 12.7.5

[Compare Source](https://github.com/rmcrackan/Libation/compare/v12.7.4...v12.7.5)

- Bug fix [#&#8203;1464](https://github.com/rmcrackan/Libation/issues/1464) , [#&#8203;1457](https://github.com/rmcrackan/Libation/issues/1457) : Fix MessageBox launch error on macOS

Thanks to [@&#8203;Mbucari](https://github.com/Mbucari)

[Libation](https://github.com/rmcrackan/Libation) is a free, open source audible library manager. Decrypt, backup, organize, and search your audible library

I intend to keep Libation free and open source, but if you want to [leave a tip](https://paypal.me/mcrackan?locale.x=en_us), who am I to argue?

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled because a matching PR was automerged previously.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi41LjEiLCJ1cGRhdGVkSW5WZXIiOiI0Mi41LjEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImF1dG9tZXJnZSIsImltYWdlIl19-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2168
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-01 22:05:06 +00:00
468c07fa8c migrate
All checks were successful
lint-test-helm / helm-lint (push) Successful in 10s
render-manifests / render-manifests-helm (push) Successful in 23s
renovate / renovate (push) Successful in 1m39s
2025-12-01 15:59:21 -06:00
67478f0845 downgrade
All checks were successful
lint-test-helm / helm-lint (push) Successful in 9s
renovate / renovate (push) Successful in 59s
2025-12-01 15:41:50 -06:00
cb8d7fdf1c remove reference to helm
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
render-manifests / render-manifests-helm (push) Successful in 18s
renovate / renovate (push) Successful in 54s
2025-12-01 15:36:06 -06:00
995d61a6a0 fix path
All checks were successful
lint-test-helm / helm-lint (push) Successful in 10s
render-manifests / render-manifests-helm (push) Successful in 17s
renovate / renovate (push) Successful in 1m9s
2025-12-01 15:33:33 -06:00
a20354992a remove actual from old set
All checks were successful
lint-test-helm / helm-lint (push) Successful in 9s
renovate / renovate (push) Successful in 51s
2025-12-01 15:25:11 -06:00
a6427aa56c Update php Docker tag to v8.5.0 (#2119)
All checks were successful
lint-test-helm / helm-lint (push) Successful in 7s
renovate / renovate (push) Successful in 1m14s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| php | minor | `8.4.15-apache-bookworm` -> `8.5.0-apache-bookworm` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi41LjAiLCJ1cGRhdGVkSW5WZXIiOiI0Mi41LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImltYWdlIl19-->

Reviewed-on: #2119
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-01 21:21:37 +00:00
a9272358fd change path
All checks were successful
renovate / renovate (push) Successful in 1m15s
2025-12-01 15:18:57 -06:00
35acd8f602 change revision
All checks were successful
lint-test-helm / helm-lint (push) Successful in 8s
renovate / renovate (push) Successful in 57s
2025-12-01 15:17:55 -06:00
621 changed files with 990 additions and 345 deletions

View File

@@ -31,7 +31,7 @@ jobs:
uses: azure/setup-helm@v4 uses: azure/setup-helm@v4
with: with:
token: ${{ secrets.GITEA_TOKEN }} token: ${{ secrets.GITEA_TOKEN }}
version: latest version: v3.19.2
- name: Lint Helm Chart - name: Lint Helm Chart
if: steps.check-branch-exists.outputs.exists == 'true' if: steps.check-branch-exists.outputs.exists == 'true'
@@ -67,6 +67,11 @@ jobs:
echo "$CHANGED_CHARTS" echo "$CHANGED_CHARTS"
echo "$CHANGED_CHARTS" | while read -r chart; do echo "$CHANGED_CHARTS" | while read -r chart; do
helm dependency list --max-col-width 120 $chart 2> /dev/null \
| tail +2 | head -n -1 \
| awk '{ print "helm repo add " $1 " " $3 }' \
| while read cmd; do echo "$cmd" | sh; done || true
echo ">> Building dependency for "$chart" ..." echo ">> Building dependency for "$chart" ..."
helm dependency build "$chart" helm dependency build "$chart"
echo ">> Linting $chart..." echo ">> Linting $chart..."

View File

@@ -20,12 +20,10 @@ jobs:
uses: azure/setup-helm@v4 uses: azure/setup-helm@v4
with: with:
token: ${{ secrets.GITEA_TOKEN }} token: ${{ secrets.GITEA_TOKEN }}
version: latest version: v3.19.2
- name: Lint Helm Chart - name: Lint Helm Chart
run: | run: |
set -e # Exit immediately if a command exits with a non-zero status.
TARGET_BRANCH="origin/main" TARGET_BRANCH="origin/main"
echo ">> Target branch for diff is: $TARGET_BRANCH" echo ">> Target branch for diff is: $TARGET_BRANCH"
@@ -55,6 +53,11 @@ jobs:
echo "$CHANGED_CHARTS" echo "$CHANGED_CHARTS"
echo "$CHANGED_CHARTS" | while read -r chart; do echo "$CHANGED_CHARTS" | while read -r chart; do
helm dependency list --max-col-width 120 $chart 2> /dev/null \
| tail +2 | head -n -1 \
| awk '{ print "helm repo add " $1 " " $3 }' \
| while read cmd; do echo "$cmd" | sh; done || true
echo ">> Building dependency for "$chart" ..." echo ">> Building dependency for "$chart" ..."
helm dependency build "$chart" helm dependency build "$chart"
echo ">> Linting $chart..." echo ">> Linting $chart..."

View File

@@ -5,24 +5,27 @@ on:
branches: branches:
- main - main
paths: paths:
- 'clusters/**/helm/*' - 'clusters/cl01tl/helm/**'
workflow_dispatch: workflow_dispatch:
env: env:
CLUSTERS: cl01tl CLUSTER: cl01tl
BASE_BRANCH: manifests BASE_BRANCH: manifests
BRANCH_NAME: auto/update-manifests
ASSIGNEE: alexlebens
MAIN_DIR: /workspace/alexlebens/infrastructure/infrastructure MAIN_DIR: /workspace/alexlebens/infrastructure/infrastructure
MANIFEST_DIR: /workspace/alexlebens/infrastructure/infrastructure-manifests MANIFEST_DIR: /workspace/alexlebens/infrastructure/infrastructure-manifests
jobs: jobs:
render-manifests-helm: render-manifests:
runs-on: ubuntu-js runs-on: ubuntu-js
steps: steps:
- name: Checkout - name: Checkout Main
uses: actions/checkout@v6 uses: actions/checkout@v6
with: with:
path: infrastructure path: infrastructure
fetch-depth: 0
- name: Checkout Manifests - name: Checkout Manifests
uses: actions/checkout@v6 uses: actions/checkout@v6
@@ -36,61 +39,133 @@ jobs:
token: ${{ secrets.GITEA_TOKEN }} token: ${{ secrets.GITEA_TOKEN }}
version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743 version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743
- name: Remove Prior Manifests - name: Prepare Manifest Branch
run: | run: |
cd ${MANIFEST_DIR}/clusters cd ${MANIFEST_DIR}
rm -rf ./*
echo ">> Configure git to use gitea-bot as user ..."
git config user.name "gitea-bot"
git config user.email "gitea-bot@alexlebens.net"
echo ">> Checking if PR branch exists ..."
if [[ $(git ls-remote --heads origin "${BRANCH_NAME}" | wc -l) -gt 0 ]]; then
echo ">> Branch '${BRANCH_NAME}' exists, pulling changes ..."
git fetch origin "${BRANCH_NAME}"
git checkout "${BRANCH_NAME}"
git pull --rebase
else
echo ">> Branch '${BRANCH_NAME}' does not exist, creating ..."
git checkout -b $BRANCH_NAME
fi
- name: Check which Directories have Changes
id: check-dir-changes
run: |
cd ${MAIN_DIR}
GIT_DIFF=$(git diff --name-only ${{ gitea.event.before }}..HEAD | xargs -I {} dirname {} | sort -u | grep "clusters/cl01tl/helm/")
CHANGED_DIR=()
echo ">> Checking for changes .."
echo "$GIT_DIFF"
if [ -n $GIT_DIFF ]; then
echo ">> Changes detected"
for path in $GIT_DIFF; do
CHANGED_DIR+=$(echo "$path" | awk -F '/' '{print $4}')
done
echo ">> Changes Directories:"
echo "$(printf "%s\n" "$CHANGED_DIR" | sort -u)"
echo "changes-detected=true" >> $GITEA_OUTPUT
echo "changed-dir=$(printf "%s\n" "$CHANGED_DIR" | sort -u)" >> $GITEA_OUTPUT
else
echo ">> No changes detected, skipping rendering"
exit 0
fi
- name: Add Repositories - name: Add Repositories
if: steps.check-dir-changes.outputs.changes-detected == 'true'
env:
CHANGED_DIR: ${{ steps.check-dir-changes.outputs.changed-dir }}
run: | run: |
for cluster in ${CLUSTERS}; do cd ${MAIN_DIR}
echo ">> Adding repositories for chart dependencies of cluster $cluster ..."
for chart_path in ${MAIN_DIR}/clusters/$cluster/helm/*; do echo ">> Adding repositories for chart dependencies ..."
helm dependency list --max-col-width 120 $chart_path 2> /dev/null \ for dir in ${CHANGED_DIR}; do
| tail +2 | head -n -1 \ helm dependency list --max-col-width 120 ${MAIN_DIR}/clusters/${CLUSTER}/helm/$dir 2> /dev/null \
| awk '{ print "helm repo add " $1 " " $3 }' \ | tail +2 | head -n -1 \
| while read cmd; do echo "$cmd" | sh; done || true | awk '{ print "helm repo add " $1 " " $3 }' \
done | while read cmd; do echo "$cmd" | sh; done || true
done
- name: Remove Changed Manifest Files
if: steps.check-dir-changes.outputs.changes-detected == 'true'
env:
CHANGED_DIR: ${{ steps.check-dir-changes.outputs.changed-dir }}
run: |
cd ${MANIFEST_DIR}
echo ">> Remove manfiest files and rebuild from source ..."
for dir in ${CHANGED_DIR}; do
chart_path=${MANIFEST_DIR}/clusters/${CLUSTER}/manifests/$dir
echo ">> Removing from $chart_path ..."
rm -rf $chart_path/*
done done
- name: Render Helm Manifests - name: Render Helm Manifests
id: render-manifests
if: steps.check-dir-changes.outputs.changes-detected == 'true'
env:
CHANGED_DIR: ${{ steps.check-dir-changes.outputs.changed-dir }}
run: | run: |
for cluster in ${CLUSTERS}; do cd ${MAIN_DIR}
for chart_path in ${MAIN_DIR}/clusters/$cluster/helm/*; do
chart_name=$(basename "$chart_path")
echo ">> Rendering chart: $chart_name"
if [ -f "$chart_path/Chart.yaml" ]; then echo ">> Rendering Manifests ..."
mkdir -p ${MANIFEST_DIR}/clusters/$cluster/manifests/$chart_name
OUTPUT_FILE="${MANIFEST_DIR}/clusters/$cluster/manifests/$chart_name/$chart_name.yaml"
cd $chart_path for dir in ${CHANGED_DIR}; do
chart_path=${MAIN_DIR}/clusters/${CLUSTER}/helm/$dir
chart_name=$(basename "$chart_path")
echo "" echo ">> Rendering chart: $chart_name"
echo ">> Building helm dependency ..." echo ">> Chart path $chart_path"
helm dependency build
echo "" if [ -f "$chart_path/Chart.yaml" ]; then
echo ">> Linting helm ..." mkdir -p ${MANIFEST_DIR}/clusters/${CLUSTER}/manifests/$chart_name
helm lint --namespace "$chart_name" --with-subcharts OUTPUT_FILE="${MANIFEST_DIR}/clusters/${CLUSTER}/manifests/$chart_name/$chart_name.yaml"
echo "" cd $chart_path
echo ">> Rendering templates ..."
helm template "$chart_name" ./ --namespace "$chart_name" --include-crds > "$OUTPUT_FILE"
echo "" echo ""
echo ">> Manifests for $chart_name rendered to $OUTPUT_FILE" echo ">> Building helm dependency ..."
echo "" helm dependency build
else
echo "" echo ""
echo ">> Directory $chart_path does not contain a Chart.yaml. Skipping ..." echo ">> Linting helm ..."
echo "" helm lint --namespace "$chart_name"
fi
done echo ""
echo ">> Rendering templates ..."
helm template "$chart_name" ./ --namespace "$chart_name" --include-crds > "$OUTPUT_FILE"
echo ""
echo ">> Manifests for $chart_name rendered to $OUTPUT_FILE"
echo ""
else
echo ""
echo ">> Directory $chart_path does not contain a Chart.yaml. Skipping ..."
echo ""
fi
done done
- name: Check for Changes - name: Check for Changes
id: check-changes id: check-changes
if: steps.check-dir-changes.outputs.changes-detected == 'true'
run: | run: |
cd ${MANIFEST_DIR} cd ${MANIFEST_DIR}
@@ -109,30 +184,68 @@ jobs:
run: | run: |
cd ${MANIFEST_DIR} cd ${MANIFEST_DIR}
BRANCH_NAME="auto/update-manifests-$(date +%s)" echo ">> Commiting changes to ${BRANCH_NAME} ..."
# Configure Git
echo ">> Configure git to use gitea-bot as user ..."
git config user.name "gitea-bot"
git config user.email "gitea-bot@alexlebens.net"
# Create a new branch and stage all changes
echo ">> Creating and commiting to $BRANCH_NAME ..."
git checkout -b $BRANCH_NAME
git add . git add .
git commit -m "chore: Update manifests after change" git commit -m "chore: Update manifests after change"
# Push the new branch to the remote repository
REPO_URL="${{ secrets.REPO_URL }}/${{ gitea.repository }}"
echo ">> Pushing changes to $REPO_URL ..." echo ">> Pushing changes to $REPO_URL ..."
git push -u "https://oauth2:${{ secrets.BOT_TOKEN }}@$(echo $REPO_URL | sed -e 's|https://||')" $BRANCH_NAME REPO_URL="${{ secrets.REPO_URL }}/${{ gitea.repository }}"
git push -u "https://oauth2:${{ secrets.BOT_TOKEN }}@$(echo $REPO_URL | sed -e 's|https://||')" ${BRANCH_NAME}
echo "HEAD_BRANCH=$BRANCH_NAME" >> $GITEA_OUTPUT echo "HEAD_BRANCH=${BRANCH_NAME}" >> $GITEA_OUTPUT
echo "push=true" >> $GITEA_OUTPUT echo "push=true" >> $GITEA_OUTPUT
- name: Check for Pull Request
id: check-for-pull-requst
if: steps.commit-push.outputs.push == 'true'
env:
GITEA_TOKEN: ${{ secrets.BOT_TOKEN }}
GITEA_URL: ${{ secrets.REPO_URL }}
HEAD_BRANCH: ${{ steps.commit-push.outputs.HEAD_BRANCH }}
run: |
cd ${MANIFEST_DIR}
API_ENDPOINT="${GITEA_URL}/api/v1/repos/${{ gitea.repository }}/pulls/${BASE_BRANCH}/${HEAD_BRANCH}"
echo ">> Checking if PR from branch ${HEAD_BRANCH} into ${BASE_BRANCH}"
echo ">> With Endpoint of:"
echo "$API_ENDPOINT"
HTTP_STATUS=$(
curl -X GET \
--silent \
--write-out '%{http_code}' \
--output response_body.json \
--dump-header response_headers.txt \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: application/json" \
"$API_ENDPOINT" 2> response_errors.txt
)
echo ">> HTTP Status Code: $HTTP_STATUS"
echo ">> Response Output ..."
echo "----"
cat response_body.json
echo "----"
cat response_headers.txt
echo "----"
cat response_errors.txt
echo "----"
if [ "$HTTP_STATUS" == "200" ] && [ "$(cat response_body.json | jq -r .state)" == "open" ]; then
echo ">> Pull Request has been found open, will update"
PR_INDEX=$(cat response_body.json | jq -r .number)
echo "pull-request-exists=${PR_INDEX}" >> $GITEA_OUTPUT
echo "pull-request-index=true" >> $GITEA_OUTPUT
else
echo ">> Pull Request not found"
echo "pull-request-exists=false" >> $GITEA_OUTPUT
fi
- name: Create Pull Request - name: Create Pull Request
id: create-pull-request id: create-pull-request
if: steps.commit-push.outputs.push == 'true' if: steps.commit-push.outputs.push == 'true' && steps.check-for-pull-requst.outputs.pull-request-exists == 'false'
env: env:
GITEA_TOKEN: ${{ secrets.BOT_TOKEN }} GITEA_TOKEN: ${{ secrets.BOT_TOKEN }}
GITEA_URL: ${{ secrets.REPO_URL }} GITEA_URL: ${{ secrets.REPO_URL }}
@@ -145,9 +258,10 @@ jobs:
PAYLOAD=$( jq -n \ PAYLOAD=$( jq -n \
--arg head "${HEAD_BRANCH}" \ --arg head "${HEAD_BRANCH}" \
--arg base "${BASE_BRANCH}" \ --arg base "${BASE_BRANCH}" \
--arg title "Automated Manifest Update: $(date +%F)" \ --arg assignee "${ASSIGNEE}" \
--arg title "Automated Manifest Update" \
--arg body "This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow." \ --arg body "This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow." \
'{head: $head, base: $base, title: $title, body: $body'} ) '{head: $head, base: $base, assignee: $assignee, title: $title, body: $body'} )
echo ">> Creating PR from branch ${HEAD_BRANCH} into ${BASE_BRANCH}" echo ">> Creating PR from branch ${HEAD_BRANCH} into ${BASE_BRANCH}"
echo ">> With Endpoint of:" echo ">> With Endpoint of:"
@@ -179,13 +293,13 @@ jobs:
if [ "$HTTP_STATUS" == "201" ]; then if [ "$HTTP_STATUS" == "201" ]; then
echo ">> Pull Request created successfully!" echo ">> Pull Request created successfully!"
PR_URL=$(cat response_body.json | jq -r .html_url) PR_URL=$(cat response_body.json | jq -r .html_url)
echo "pull-request-url=${PR_URL}" >> $GITEA_OUTPUT echo "pull-request-url=${PR_URL}" >> $GITEA_OUTPUT
echo "pull-request-operation=created" >> $GITEA_OUTPUT echo "pull-request-operation=created" >> $GITEA_OUTPUT
elif [ "$HTTP_STATUS" == "422" ]; then elif [ "$HTTP_STATUS" == "422" ]; then
echo ">> Failed to create PR (HTTP 422: Unprocessable Entity), PR may already exist" echo ">> Failed to create PR (HTTP 422: Unprocessable Entity), PR may already exist"
else else
echo ">> Failed to create PR, HTTP status code: $HTTP_STATUS" echo ">> Failed to create PR, HTTP status code: $HTTP_STATUS"
exit 1 exit 1

View File

@@ -1,21 +0,0 @@
apiVersion: v2
name: actual
version: 1.0.0
description: Actual
keywords:
- actual
- budget
home: https://wiki.alexlebens.dev/s/86192f45-94b7-45de-872c-6ef3fec7df5e
sources:
- https://github.com/actualbudget/actual
- https://github.com/actualbudget/actual/pkgs/container/actual
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
maintainers:
- name: alexlebens
dependencies:
- name: app-template
alias: actual
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/actual-budget.png
appVersion: v25.5.0

View File

@@ -1,55 +0,0 @@
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: actual-data-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: actual-data-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
target:
template:
mergePolicy: Merge
engineVersion: v2
data:
RESTIC_REPOSITORY: "{{ `{{ .BUCKET_ENDPOINT }}` }}/actual/actual-data"
data:
- secretKey: BUCKET_ENDPOINT
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/volsync/restic/config
metadataPolicy: None
property: S3_BUCKET_ENDPOINT
- secretKey: RESTIC_PASSWORD
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/volsync/restic/config
metadataPolicy: None
property: RESTIC_PASSWORD
- secretKey: AWS_DEFAULT_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/volsync/restic/config
metadataPolicy: None
property: AWS_DEFAULT_REGION
- secretKey: AWS_ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/volsync-backups
metadataPolicy: None
property: access_key
- secretKey: AWS_SECRET_ACCESS_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/volsync-backups
metadataPolicy: None
property: secret_key

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-actual
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-actual
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- actual.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: actual
port: 80
weight: 100

View File

@@ -1,25 +0,0 @@
apiVersion: volsync.backube/v1alpha1
kind: ReplicationSource
metadata:
name: actual-data-backup-source
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: actual-data-backup-source
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
sourcePVC: actual-data
trigger:
schedule: 0 4 * * *
restic:
pruneIntervalDays: 7
repository: actual-data-backup-secret
retain:
hourly: 1
daily: 3
weekly: 2
monthly: 2
yearly: 4
copyMethod: Snapshot
storageClassName: ceph-block
volumeSnapshotClassName: ceph-blockpool-snapshot

View File

@@ -1,56 +0,0 @@
actual:
controllers:
main:
type: deployment
replicas: 1
strategy: Recreate
revisionHistoryLimit: 3
containers:
main:
image:
repository: ghcr.io/actualbudget/actual
tag: 25.11.0
pullPolicy: IfNotPresent
env:
- name: TZ
value: US/Central
resources:
requests:
cpu: 10m
memory: 128Mi
probes:
liveness:
enabled: true
custom: true
spec:
exec:
command:
- /usr/bin/env
- bash
- -c
- node src/scripts/health-check.js
failureThreshold: 5
initialDelaySeconds: 60
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10
service:
main:
controller: main
ports:
http:
port: 80
targetPort: 5006
protocol: HTTP
persistence:
data:
forceRename: actual-data
storageClass: ceph-block
accessMode: ReadWriteOnce
size: 2Gi
retain: true
advancedMounts:
main:
main:
- path: /data
readOnly: false

View File

@@ -7,17 +7,6 @@ git:
# repo: ssh://git@gitea-ssh.gitea/alexlebens/infrastructure # repo: ssh://git@gitea-ssh.gitea/alexlebens/infrastructure
revision: HEAD revision: HEAD
applicationSet: applicationSet:
- name: applications
ignoreDifferences:
- group: ""
kind: Service
jqPathExpressions:
- .spec.externalName
syncPolicy:
automated:
prune: true
syncOptions:
serverSideApply: true
- name: deployment - name: deployment
namespace: argocd namespace: argocd
syncPolicy: syncPolicy:
@@ -25,80 +14,6 @@ applicationSet:
prune: true prune: true
syncOptions: syncOptions:
serverSideApply: true serverSideApply: true
- name: management
ignoreDifferences:
- group: ""
kind: Service
jqPathExpressions:
- .spec.externalName
syncPolicy:
automated:
prune: true
syncOptions:
serverSideApply: true
- name: monitoring
ignoreDifferences:
- group: ""
kind: Service
jqPathExpressions:
- .spec.externalName
- group: "apps"
kind: StatefulSet
jqPathExpressions:
- .spec.volumeClaimTemplates[]?.apiVersion
- .spec.volumeClaimTemplates[]?.kind
- .spec.volumeClaimTemplates[]?.metadata.creationTimestamp
syncPolicy:
automated:
prune: true
syncOptions:
serverSideApply: true
- name: platform
ignoreDifferences:
- group: ""
kind: Service
jqPathExpressions:
- .spec.externalName
- group: "apps"
kind: StatefulSet
jqPathExpressions:
- .spec.volumeClaimTemplates[]?.apiVersion
- .spec.volumeClaimTemplates[]?.kind
- .spec.volumeClaimTemplates[]?.metadata.creationTimestamp
syncPolicy:
automated:
prune: true
syncOptions:
serverSideApply: true
- name: services
ignoreDifferences:
- group: ""
kind: GpuDevicePlugin
jqPathExpressions:
- .metadata.annotations[]
- group: "apps"
kind: "Deployment"
jsonPointers:
- /spec/template/metadata/annotations/checksum~1secret
- /spec/template/metadata/annotations/checksum~1secret-core
- /spec/template/metadata/annotations/checksum~1secret-jobservice
- /spec/template/metadata/annotations/checksum~1tls
- group: "apps"
kind: "StatefulSet"
jsonPointers:
- /spec/template/metadata/annotations/checksum~1secret
- /spec/template/metadata/annotations/checksum~1tls
- group: "apps"
kind: StatefulSet
jqPathExpressions:
- .spec.volumeClaimTemplates[]?.apiVersion
- .spec.volumeClaimTemplates[]?.kind
- .spec.volumeClaimTemplates[]?.metadata.creationTimestamp
syncPolicy:
automated:
prune: true
syncOptions:
serverSideApply: true
- name: storage - name: storage
ignoreDifferences: ignoreDifferences:
- group: "" - group: ""

View File

@@ -0,0 +1,12 @@
dependencies:
- name: argo-workflows
repository: https://argoproj.github.io/argo-helm
version: 0.45.28
- name: argo-events
repository: https://argoproj.github.io/argo-helm
version: 2.4.17
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 6.16.0
digest: sha256:b00fd479a9d9e606661b3799182c8e24395b4f531f8d2bda87bdc5db16a8d66c
generated: "2025-12-01T19:55:40.18149-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
digest: sha256:f3a9990542f24965fadad0b5493059b78cdc3fae91c8214577fa6f41ca5f7de3
generated: "2025-11-30T21:05:21.317114-06:00"

View File

@@ -0,0 +1,12 @@
dependencies:
- name: authentik
repository: https://charts.goauthentik.io/
version: 2025.10.2
- name: cloudflared
repository: oci://harbor.alexlebens.net/helm-charts
version: 1.23.0
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 6.16.0
digest: sha256:ad51c94c1125890ef60d179205d14c55eb9fdbc2702e3455e233042a48d00146
generated: "2025-12-01T20:25:07.016724-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
digest: sha256:aa797b99d6d8b7aafe142811938408b7f234df6d429a7e076196337cc63876cb
generated: "2025-12-01T20:25:09.888407-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
digest: sha256:c6f6d1f2fb9fedf54094920737a6f0bd1a2ab89f0a4122966ca98f6c9d3f11fa
generated: "2025-11-30T21:05:22.694344-06:00"

View File

@@ -15,7 +15,7 @@ bazarr:
main: main:
image: image:
repository: ghcr.io/linuxserver/bazarr repository: ghcr.io/linuxserver/bazarr
tag: 1.5.3@sha256:2be164c02c0bb311b6c32e57d3d0ddc2813d524e89ab51a3408c1bf6fafecda5 tag: 1.5.3@sha256:ec11e988e8e13411c994a4d9f43ed9b97409aa92c1da54d9f23926c3da7c2032
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
env: env:
- name: TZ - name: TZ

View File

@@ -0,0 +1,6 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
digest: sha256:0009729bcf7f1941401b767fd4ae952b7a8d44f80053090b4a9224de912a14ef
generated: "2025-12-01T20:25:13.511406-06:00"

View File

@@ -0,0 +1,9 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
- name: mariadb-cluster
repository: https://helm.mariadb.com/mariadb-operator
version: 25.10.2
digest: sha256:264725306c1d1f38140293c0820abdc7e8aa4f39764b4d91e20200705ce2ec91
generated: "2025-11-30T21:05:24.649316-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: cert-manager
repository: https://charts.jetstack.io
version: v1.19.1
digest: sha256:0b1238a5552bc6d457d4b1a2a1f387a3e7f2c19f820ecb64e14d20481a1ed1ce
generated: "2025-12-01T20:25:17.762628-06:00"

View File

@@ -0,0 +1,9 @@
dependencies:
- name: cloudnative-pg
repository: https://cloudnative-pg.io/charts/
version: 0.26.1
- name: plugin-barman-cloud
repository: https://cloudnative-pg.io/charts/
version: 0.3.1
digest: sha256:b38e5104d77ab1737a27a2542eda958e82038443940f07b7c2cbe3b0a477e1e6
generated: "2025-12-01T20:25:20.341325-06:00"

View File

@@ -0,0 +1,9 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
- name: cloudflared
repository: oci://harbor.alexlebens.net/helm-charts
version: 1.23.0
digest: sha256:99eb4f940077dc916f5425d196232fcd363223fa7b7b5d3889f5965aa59e26f5
generated: "2025-11-30T21:05:26.699161-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: democratic-csi
repository: https://democratic-csi.github.io/charts/
version: 0.15.0
digest: sha256:6fe3d8ad7b990b07ed80a31c75a0a49db8da497c46a956c632615a2093d29d58
generated: "2025-12-01T20:25:24.972076-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: descheduler
repository: https://kubernetes-sigs.github.io/descheduler/
version: 0.34.0
digest: sha256:1020c1fc8c179744f308e9b79f010dcaf59a05019f7d007157974be97063e12b
generated: "2025-12-01T20:25:26.970808-06:00"

View File

@@ -0,0 +1,12 @@
dependencies:
- name: app-template
repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.4.0
- name: cloudflared
repository: oci://harbor.alexlebens.net/helm-charts
version: 1.23.0
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 6.16.0
digest: sha256:2f3d9f7a8d8d71b19ff3292993647d22a89aa6c444a6f0819b82cd0a577f1ebc
generated: "2025-11-30T21:05:28.43692-06:00"

View File

@@ -0,0 +1,6 @@
dependencies:
- name: eck-operator
repository: https://helm.elastic.co
version: 3.2.0
digest: sha256:b27ba092ddfa078f763e409dd5db1144a269eff0f45af04f180d844f13466a34
generated: "2025-12-01T20:25:30.722424-06:00"

View File

@@ -0,0 +1,9 @@
dependencies:
- name: element-web
repository: https://ananace.gitlab.io/charts
version: 1.4.24
- name: cloudflared
repository: oci://harbor.alexlebens.net/helm-charts
version: 1.23.0
digest: sha256:05aa032adca6d808215d6dcd5d7e38b821a740a53868238f79adaa606444b3ae
generated: "2025-11-30T21:05:30.356497-06:00"

Some files were not shown because too many files have changed in this diff Show More