Compare commits

..

100 Commits

Author SHA1 Message Date
efd9c725aa update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 9s
render-manifests-push / render-manifests-push (push) Successful in 1m31s
renovate / renovate (push) Successful in 1m7s
2025-12-24 00:26:20 -06:00
b694333bd7 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 10s
render-manifests-push / render-manifests-push (push) Successful in 45s
renovate / renovate (push) Successful in 56s
2025-12-24 00:07:03 -06:00
7b00493594 fix name
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 24s
renovate / renovate (push) Successful in 54s
2025-12-23 23:51:10 -06:00
a205c8ae4f update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 23s
render-manifests-push / render-manifests-push (push) Successful in 1m17s
renovate / renovate (push) Successful in 1m26s
2025-12-23 23:43:51 -06:00
53962fb103 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 56s
render-manifests-push / render-manifests-push (push) Successful in 1m44s
2025-12-23 23:25:31 -06:00
d5205adaf5 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 52s
renovate / renovate (push) Successful in 1m2s
2025-12-23 23:03:52 -06:00
a33da28dcd update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 9s
render-manifests-push / render-manifests-push (push) Successful in 32s
renovate / renovate (push) Successful in 52s
2025-12-23 22:49:20 -06:00
85607aba1e update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
render-manifests-push / render-manifests-push (push) Successful in 40s
renovate / renovate (push) Successful in 54s
2025-12-23 22:43:35 -06:00
a3412e22c1 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 8s
renovate / renovate (push) Successful in 1m22s
render-manifests-push / render-manifests-push (push) Successful in 2m20s
2025-12-23 22:32:33 -06:00
3556d83755 add search
All checks were successful
lint-test-helm / lint-helm (push) Successful in 16s
render-manifests-push / render-manifests-push (push) Successful in 25s
renovate / renovate (push) Successful in 51s
2025-12-23 22:03:52 -06:00
37fdd5ad52 add recovery
All checks were successful
render-manifests-push / render-manifests-push (push) Successful in 20s
lint-test-helm / lint-helm (push) Successful in 9s
renovate / renovate (push) Successful in 1m4s
2025-12-23 21:29:17 -06:00
064d77af32 Update d3fk/s3cmd:latest Docker digest to 64a2390 (#2802)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 8s
renovate / renovate (push) Successful in 1m27s
2025-12-24 03:01:24 +00:00
2d8aecc650 Update Helm release generic-device-plugin to v0.20.9 (#2800)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 9s
renovate / renovate (push) Successful in 1m18s
2025-12-24 00:11:04 +00:00
8c4f02acf9 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 1m25s
renovate / renovate (push) Successful in 2m0s
2025-12-23 18:08:37 -06:00
a1efd69267 renovate update chart appVersion
All checks were successful
lint-test-helm / lint-helm (push) Successful in 10s
render-manifests-push / render-manifests-push (push) Successful in 56s
renovate / renovate (push) Successful in 2m17s
2025-12-23 17:54:30 -06:00
eb6ff2df76 renovate update chart appVersion
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
renovate / renovate (push) Successful in 1m10s
render-manifests-push / render-manifests-push (push) Successful in 5m54s
2025-12-23 17:37:47 -06:00
848e1ab72c Update Helm release argo-cd to v9.1.10 (#2795)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 12s
renovate / renovate (push) Successful in 51s
2025-12-23 23:20:22 +00:00
3845b4058d update chart
Some checks failed
lint-test-helm / lint-helm (push) Successful in 26s
renovate / renovate (push) Successful in 1m29s
render-manifests-push / render-manifests-push (push) Has been cancelled
2025-12-23 17:18:47 -06:00
4e1acebdbf update chart 2025-12-23 17:15:41 -06:00
a5f3b998ce update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 1m11s
render-manifests-push / render-manifests-push (push) Successful in 34s
2025-12-23 17:05:07 -06:00
f8aae46e00 remove plugin
All checks were successful
lint-test-helm / lint-helm (push) Successful in 19s
render-manifests-push / render-manifests-push (push) Successful in 1m21s
renovate / renovate (push) Successful in 1m20s
2025-12-23 16:51:27 -06:00
f20c4483e8 update chart 2025-12-23 16:51:27 -06:00
e027435815 Update ghcr.io/linuxserver/bazarr:1.5.3 Docker digest to 001875e (#2791)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 10s
renovate / renovate (push) Successful in 52s
2025-12-23 22:30:28 +00:00
7065714851 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 10s
render-manifests-push / render-manifests-push (push) Successful in 27s
renovate / renovate (push) Successful in 1m46s
2025-12-23 16:28:36 -06:00
bce5887f24 fix schema
All checks were successful
lint-test-helm / lint-helm (push) Successful in 18s
render-manifests-push / render-manifests-push (push) Successful in 42s
renovate / renovate (push) Successful in 1m25s
2025-12-23 16:10:20 -06:00
264bf37cff move resources to chart
Some checks failed
lint-test-helm / lint-helm (push) Successful in 16s
renovate / renovate (push) Successful in 55s
render-manifests-push / render-manifests-push (push) Failing after 46s
2025-12-23 16:07:05 -06:00
f65b0c08e3 move route to chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 13s
render-manifests-push / render-manifests-push (push) Successful in 59s
renovate / renovate (push) Successful in 1m35s
2025-12-23 15:55:24 -06:00
be4998504b fix api version
Some checks failed
renovate / renovate (push) Has been cancelled
2025-12-23 15:55:08 -06:00
43fa873c2d render manifests with api version
All checks were successful
renovate / renovate (push) Successful in 59s
2025-12-23 15:45:22 -06:00
8d1207f835 Update stalwartlabs/stalwart Docker tag to v0.15.2 (#2786)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 13s
renovate / renovate (push) Successful in 1m26s
2025-12-23 13:01:27 +00:00
36d60520c8 move back to template
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 33s
renovate / renovate (push) Successful in 1m21s
2025-12-22 23:24:20 -06:00
eb6206697f organize
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 37s
renovate / renovate (push) Successful in 57s
2025-12-22 23:18:02 -06:00
453cde5f31 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 19s
renovate / renovate (push) Successful in 1m9s
render-manifests-push / render-manifests-push (push) Successful in 1m18s
2025-12-22 23:10:12 -06:00
52af4993f7 move route to chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 16s
render-manifests-push / render-manifests-push (push) Successful in 33s
renovate / renovate (push) Successful in 1m6s
2025-12-22 23:04:58 -06:00
ef8a03f0b2 update chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
render-manifests-push / render-manifests-push (push) Successful in 45s
renovate / renovate (push) Successful in 1m40s
2025-12-22 22:58:25 -06:00
cf769ce5a0 Update ghcr.io/linuxserver/plex:1.42.2 Docker digest to 1720efa (#2780)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 14s
renovate / renovate (push) Successful in 1m17s
2025-12-22 10:01:49 +00:00
5495c30990 Update postgres-cluster Docker tag to v7.1.4 (#2778)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 10s
renovate / renovate (push) Successful in 1m38s
2025-12-21 19:08:40 +00:00
e5bb92e9ad Update cyfershepard/jellystat Docker tag to v1.1.7 (#2776)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 8m37s
2025-12-21 18:01:07 +00:00
3e1181f3d9 Update ghcr.io/linuxserver/qbittorrent:5.1.4 Docker digest to a68c4cf (#2774)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 31s
renovate / renovate (push) Successful in 1m2s
2025-12-21 08:01:27 +00:00
a2dbe6f120 consolidate all services to tailscale operator
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
render-manifests-push / render-manifests-push (push) Successful in 1m26s
renovate / renovate (push) Successful in 1m24s
2025-12-20 18:02:15 -06:00
cb5c13d0fc add error handling of check command 2025-12-20 17:58:07 -06:00
03bd504536 use remote endpoint
Some checks failed
lint-test-helm / lint-helm (push) Failing after 4s
render-manifests-push / render-manifests-push (push) Successful in 35s
renovate / renovate (push) Successful in 1m44s
2025-12-20 17:50:13 -06:00
88e266f9fa suspend remote backups 2025-12-20 17:40:49 -06:00
590a211da4 use service
All checks were successful
lint-test-helm / lint-helm (push) Successful in 17s
renovate / renovate (push) Successful in 1m11s
render-manifests-push / render-manifests-push (push) Successful in 57s
2025-12-20 17:38:28 -06:00
4119b3f91d add service
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
render-manifests-push / render-manifests-push (push) Successful in 38s
renovate / renovate (push) Successful in 1m15s
2025-12-20 17:29:28 -06:00
35733ebd9b remove vue
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
lint-test-docker / lint-docker-compose (push) Successful in 18s
render-manifests-push / render-manifests-push (push) Successful in 53s
renovate / renovate (push) Successful in 1m29s
2025-12-20 16:41:41 -06:00
323f57f74d fix
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 22s
renovate / renovate (push) Successful in 1m22s
2025-12-20 16:34:21 -06:00
c99c7affdd refactor logging
All checks were successful
lint-test-helm / lint-helm (push) Successful in 10s
render-manifests-push / render-manifests-push (push) Successful in 22s
renovate / renovate (push) Successful in 47s
2025-12-20 16:33:52 -06:00
fa4d55168d remove sort
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 26s
renovate / renovate (push) Successful in 52s
2025-12-20 16:32:15 -06:00
a4fde8db0e reuse files and handle error
All checks were successful
lint-test-helm / lint-helm (push) Successful in 16s
render-manifests-push / render-manifests-push (push) Successful in 24s
renovate / renovate (push) Successful in 1m3s
2025-12-20 16:29:22 -06:00
0465fa2a6d set path style
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
render-manifests-push / render-manifests-push (push) Successful in 34s
renovate / renovate (push) Successful in 1m10s
2025-12-20 15:58:27 -06:00
b88806462d adjust formatting
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
render-manifests-push / render-manifests-push (push) Successful in 27s
renovate / renovate (push) Successful in 1m10s
2025-12-20 15:52:26 -06:00
610cb0578a specify
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
render-manifests-push / render-manifests-push (push) Successful in 25s
renovate / renovate (push) Successful in 1m5s
2025-12-20 15:48:16 -06:00
fa3548740d add debug logging
All checks were successful
lint-test-helm / lint-helm (push) Successful in 10s
render-manifests-push / render-manifests-push (push) Successful in 25s
renovate / renovate (push) Successful in 1m28s
2025-12-20 15:36:22 -06:00
2fc7337e4c split into different controllers
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 25s
renovate / renovate (push) Successful in 1m2s
2025-12-20 14:50:24 -06:00
5161c69b5d fix mount
All checks were successful
lint-test-helm / lint-helm (push) Successful in 9s
render-manifests-push / render-manifests-push (push) Successful in 18s
renovate / renovate (push) Successful in 1m18s
2025-12-20 14:32:44 -06:00
a877a7f5dd fix mount
All checks were successful
lint-test-helm / lint-helm (push) Successful in 9s
render-manifests-push / render-manifests-push (push) Successful in 46s
renovate / renovate (push) Successful in 53s
2025-12-20 14:25:25 -06:00
ce091a38d4 fix script mount
Some checks failed
lint-test-helm / lint-helm (push) Successful in 17s
render-manifests-push / render-manifests-push (push) Failing after 26s
renovate / renovate (push) Successful in 46s
2025-12-20 14:24:04 -06:00
1552f48dc6 fix path
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
renovate / renovate (push) Successful in 57s
render-manifests-push / render-manifests-push (push) Successful in 1m14s
2025-12-20 14:04:07 -06:00
de535d14f0 fix name
Some checks failed
lint-test-helm / lint-helm (push) Successful in 23s
render-manifests-push / render-manifests-push (push) Successful in 23s
renovate / renovate (push) Has been cancelled
2025-12-20 14:01:16 -06:00
af800c427f expand backups to all 3 targets
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
render-manifests-push / render-manifests-push (push) Successful in 32s
renovate / renovate (push) Successful in 1m6s
2025-12-20 13:56:13 -06:00
e212e19020 improve spacing
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 24s
renovate / renovate (push) Successful in 1m3s
2025-12-20 00:38:16 -06:00
12a84f6cfc enable snapshots
Some checks failed
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 50s
renovate / renovate (push) Has been cancelled
2025-12-20 00:33:50 -06:00
0c8d733408 improve logging
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 37s
renovate / renovate (push) Successful in 48s
2025-12-20 00:30:20 -06:00
87d20e32e2 update script
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
render-manifests-push / render-manifests-push (push) Successful in 44s
renovate / renovate (push) Successful in 1m7s
2025-12-20 00:15:02 -06:00
388e864664 run as root
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
renovate / renovate (push) Successful in 48s
render-manifests-push / render-manifests-push (push) Successful in 26s
2025-12-20 00:00:58 -06:00
10d659077c debug
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
render-manifests-push / render-manifests-push (push) Successful in 49s
renovate / renovate (push) Successful in 53s
2025-12-19 23:55:17 -06:00
5597d42030 debug
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 1m9s
render-manifests-push / render-manifests-push (push) Successful in 20s
2025-12-19 23:41:53 -06:00
ea61717174 fix
All checks were successful
lint-test-helm / lint-helm (push) Successful in 8s
render-manifests-push / render-manifests-push (push) Successful in 35s
renovate / renovate (push) Successful in 56s
2025-12-19 23:39:27 -06:00
fdd5ee823f fix script
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 24s
renovate / renovate (push) Successful in 1m8s
2025-12-19 23:08:20 -06:00
8f8537c31d fix loop
All checks were successful
lint-test-helm / lint-helm (push) Successful in 16s
render-manifests-push / render-manifests-push (push) Successful in 38s
renovate / renovate (push) Successful in 1m16s
2025-12-19 23:02:30 -06:00
766b2a3999 remove nfs drive
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 21s
renovate / renovate (push) Successful in 1m22s
2025-12-19 22:57:43 -06:00
679344d45e add ntfy to script
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 26s
renovate / renovate (push) Successful in 57s
2025-12-19 22:55:55 -06:00
88474b9887 scale
All checks were successful
lint-test-helm / lint-helm (push) Successful in 19s
render-manifests-push / render-manifests-push (push) Successful in 40s
renovate / renovate (push) Successful in 1m15s
2025-12-19 22:28:20 -06:00
759d3af09a change to sync
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 24s
renovate / renovate (push) Successful in 53s
2025-12-19 22:24:24 -06:00
57d0fa2357 add debug to move files
All checks were successful
lint-test-helm / lint-helm (push) Successful in 18s
render-manifests-push / render-manifests-push (push) Successful in 26s
renovate / renovate (push) Successful in 1m8s
2025-12-19 22:16:00 -06:00
6fcca27e0e fix mount
All checks were successful
lint-test-helm / lint-helm (push) Successful in 18s
render-manifests-push / render-manifests-push (push) Successful in 29s
renovate / renovate (push) Successful in 58s
2025-12-19 22:00:32 -06:00
9f239b6df6 change to ceph filesystem, add backups
All checks were successful
lint-test-helm / lint-helm (push) Successful in 14s
render-manifests-push / render-manifests-push (push) Successful in 44s
renovate / renovate (push) Successful in 1m12s
2025-12-19 21:56:52 -06:00
c0f792782f add retry on apk repo 2025-12-19 21:18:09 -06:00
e526072a88 update script to handle error in installation 2025-12-19 21:13:28 -06:00
ccbb6d290e allow encoding
All checks were successful
lint-test-helm / lint-helm (push) Successful in 19s
render-manifests-push / render-manifests-push (push) Successful in 27s
renovate / renovate (push) Successful in 1m5s
2025-12-19 20:58:07 -06:00
004dc62511 Update clidey/whodb Docker tag to v0.86.0 (#2732)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 12s
renovate / renovate (push) Successful in 1m45s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| clidey/whodb | minor | `0.85.0` -> `0.86.0` |

---

### Configuration

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

🚦 **Automerge**: Enabled.

♻ **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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiYXV0b21lcmdlIiwiaW1hZ2UiXX0=-->

Reviewed-on: #2732
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 01:19:57 +00:00
3e76f9c46a Update Helm release external-secrets to v1.2.0 (#2737)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 45s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [external-secrets](https://github.com/external-secrets/external-secrets) | minor | `1.1.1` -> `1.2.0` |

---

### Release Notes

<details>
<summary>external-secrets/external-secrets (external-secrets)</summary>

### [`v1.2.0`](https://github.com/external-secrets/external-secrets/releases/tag/v1.2.0)

[Compare Source](https://github.com/external-secrets/external-secrets/compare/v1.1.1...v1.2.0)

Image: `ghcr.io/external-secrets/external-secrets:v1.2.0`
Image: `ghcr.io/external-secrets/external-secrets:v1.2.0-ubi`
Image: `ghcr.io/external-secrets/external-secrets:v1.2.0-ubi-boringssl`

<!-- Release notes generated using configuration in .github/release.yml at main -->

#### What's Changed

##### General

- chore: bump 1.1.1 by [@&#8203;gusfcarvalho](https://github.com/gusfcarvalho) in [#&#8203;5687](https://github.com/external-secrets/external-secrets/pull/5687)
- chore: fix the argocd e2e test case by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5688](https://github.com/external-secrets/external-secrets/pull/5688)
- feat(provider): add Barbican provider support by [@&#8203;rkferreira](https://github.com/rkferreira) in [#&#8203;5398](https://github.com/external-secrets/external-secrets/pull/5398)
- docs(secretserver): promote secretserver provider to beta by [@&#8203;DelineaSahilWankhede](https://github.com/DelineaSahilWankhede) in [#&#8203;5668](https://github.com/external-secrets/external-secrets/pull/5668)
- feat(controller): add flag to enable/disable secretstore reconcile by [@&#8203;Ilhan-Personal](https://github.com/Ilhan-Personal) in [#&#8203;5653](https://github.com/external-secrets/external-secrets/pull/5653)
- fix(aws-secrets-manager): Apply filtering based on both name and tags if provided by [@&#8203;iypetrov](https://github.com/iypetrov) in [#&#8203;5685](https://github.com/external-secrets/external-secrets/pull/5685)
- fix(gcpsm): SecretExists should check for regional secrets when store location is specified by [@&#8203;tokiwong](https://github.com/tokiwong) in [#&#8203;5708](https://github.com/external-secrets/external-secrets/pull/5708)
- feat: introduce store deprecation by [@&#8203;gusfcarvalho](https://github.com/gusfcarvalho) in [#&#8203;5711](https://github.com/external-secrets/external-secrets/pull/5711)
- feat(charts): add global values for common deployment configurations by [@&#8203;Gabryel8818](https://github.com/Gabryel8818) in [#&#8203;5652](https://github.com/external-secrets/external-secrets/pull/5652)
- feat: add Doppler OIDC-based authentication by [@&#8203;mikesellitto](https://github.com/mikesellitto) in [#&#8203;5475](https://github.com/external-secrets/external-secrets/pull/5475)
- fix: make custom configuration available regardless of environment by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5713](https://github.com/external-secrets/external-secrets/pull/5713)
- chore(chart): update bitwarden dependency to v0.5.2 by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5719](https://github.com/external-secrets/external-secrets/pull/5719)
- docs(templating): update rbac for generic targets by [@&#8203;lostick](https://github.com/lostick) in [#&#8203;5736](https://github.com/external-secrets/external-secrets/pull/5736)
- fix(testing): Breaking changes should not break ci by [@&#8203;evrardjp](https://github.com/evrardjp) in [#&#8203;5739](https://github.com/external-secrets/external-secrets/pull/5739)
- fix(security): Get rid of getSecretKey by [@&#8203;evrardjp](https://github.com/evrardjp) in [#&#8203;5738](https://github.com/external-secrets/external-secrets/pull/5738)
- fix(aws): parse resource policies into canonical JSON (sorted) before comparing by [@&#8203;cmoscofian](https://github.com/cmoscofian) in [#&#8203;5622](https://github.com/external-secrets/external-secrets/pull/5622)
- docs: Fix example in GCP documentation by [@&#8203;headcr4sh](https://github.com/headcr4sh) in [#&#8203;5745](https://github.com/external-secrets/external-secrets/pull/5745)
- chore(secretserver): update dependencies to accept new DelineaXPM/tss-sdk-go by [@&#8203;DelineaSahilWankhede](https://github.com/DelineaSahilWankhede) in [#&#8203;5742](https://github.com/external-secrets/external-secrets/pull/5742)
- fix(gcpsm): Improve SecretExists method in GCP secret manager provider by [@&#8203;tosih](https://github.com/tosih) in [#&#8203;5610](https://github.com/external-secrets/external-secrets/pull/5610)
- chore(docs): add clarification to helm values being disabled by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5746](https://github.com/external-secrets/external-secrets/pull/5746)
- fix(release): apply [`64dc681`](64dc681c97) to release by [@&#8203;jakobmoellerdev](https://github.com/jakobmoellerdev) in [#&#8203;5749](https://github.com/external-secrets/external-secrets/pull/5749)
- docs(release): 1.2 stability-support.md by [@&#8203;jakobmoellerdev](https://github.com/jakobmoellerdev) in [#&#8203;5750](https://github.com/external-secrets/external-secrets/pull/5750)

##### Dependencies

- chore(deps): bump golang from 1.25.4 to 1.25.5 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5693](https://github.com/external-secrets/external-secrets/pull/5693)
- chore(deps): bump golang from 1.25.4-bookworm to 1.25.5-bookworm in /e2e by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5702](https://github.com/external-secrets/external-secrets/pull/5702)
- chore(deps): bump ubi9/ubi from `dcd8128` to `75937d9` by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5655](https://github.com/external-secrets/external-secrets/pull/5655)
- chore(deps): bump peter-evans/slash-command-dispatch from 5.0.0 to 5.0.1 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5695](https://github.com/external-secrets/external-secrets/pull/5695)
- chore(deps): bump github/codeql-action from 4.31.5 to 4.31.7 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5696](https://github.com/external-secrets/external-secrets/pull/5696)
- chore(deps): bump actions/stale from 10.1.0 to 10.1.1 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5697](https://github.com/external-secrets/external-secrets/pull/5697)
- chore(deps): bump actions/create-github-app-token from 2.2.0 to 2.2.1 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5700](https://github.com/external-secrets/external-secrets/pull/5700)
- chore(deps): bump step-security/harden-runner from 2.13.2 to 2.13.3 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5698](https://github.com/external-secrets/external-secrets/pull/5698)
- chore(deps): bump actions/checkout from 6.0.0 to 6.0.1 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5699](https://github.com/external-secrets/external-secrets/pull/5699)
- chore(deps): bump platformdirs from 4.5.0 to 4.5.1 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5705](https://github.com/external-secrets/external-secrets/pull/5705)
- chore(deps): bump distroless/static from `87bce11` to `4b2a093` by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5692](https://github.com/external-secrets/external-secrets/pull/5692)
- chore(deps): bump alpine from 3.22 to 3.23 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5703](https://github.com/external-secrets/external-secrets/pull/5703)
- chore(deps): bump urllib3 from 2.5.0 to 2.6.0 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5704](https://github.com/external-secrets/external-secrets/pull/5704)
- chore(deps): bump pymdown-extensions from 10.17.2 to 10.18 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5706](https://github.com/external-secrets/external-secrets/pull/5706)
- chore(deps): bump alpine from 3.22.2 to 3.23.0 in /e2e by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5701](https://github.com/external-secrets/external-secrets/pull/5701)
- chore(deps): bump golang from `2611181` to `2611181` by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5721](https://github.com/external-secrets/external-secrets/pull/5721)
- chore(deps): bump codecov/codecov-action from 5.5.1 to 5.5.2 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5725](https://github.com/external-secrets/external-secrets/pull/5725)
- chore(deps): bump urllib3 from 2.6.0 to 2.6.2 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5730](https://github.com/external-secrets/external-secrets/pull/5730)
- chore(deps): bump github/codeql-action from 4.31.7 to 4.31.8 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5726](https://github.com/external-secrets/external-secrets/pull/5726)
- chore(deps): bump anchore/sbom-action from 0.20.10 to 0.20.11 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5724](https://github.com/external-secrets/external-secrets/pull/5724)
- chore(deps): bump tornado from 6.5.2 to 6.5.3 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5732](https://github.com/external-secrets/external-secrets/pull/5732)
- chore(deps): bump ubi9/ubi from `75937d9` to `d4feb57` by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5722](https://github.com/external-secrets/external-secrets/pull/5722)
- chore(deps): bump golang from `5117d68` to `09f53de` in /e2e by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5729](https://github.com/external-secrets/external-secrets/pull/5729)
- chore(deps): bump alpine from `4b7ce07` to `51183f2` by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5694](https://github.com/external-secrets/external-secrets/pull/5694)
- chore(deps): bump hashicorp/setup-terraform from [`712b439`](712b43959e) to [`071811a`](071811a162) by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5727](https://github.com/external-secrets/external-secrets/pull/5727)
- chore(deps): bump pymdown-extensions from 10.18 to 10.19.1 in /hack/api-docs by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5731](https://github.com/external-secrets/external-secrets/pull/5731)
- chore(deps): bump step-security/harden-runner from 2.13.3 to 2.14.0 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5728](https://github.com/external-secrets/external-secrets/pull/5728)
- chore(deps): bump actions/cache from 4.3.0 to 5.0.1 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;5723](https://github.com/external-secrets/external-secrets/pull/5723)

#### New Contributors

- [@&#8203;iypetrov](https://github.com/iypetrov) made their first contribution in [#&#8203;5685](https://github.com/external-secrets/external-secrets/pull/5685)
- [@&#8203;tokiwong](https://github.com/tokiwong) made their first contribution in [#&#8203;5708](https://github.com/external-secrets/external-secrets/pull/5708)
- [@&#8203;Gabryel8818](https://github.com/Gabryel8818) made their first contribution in [#&#8203;5652](https://github.com/external-secrets/external-secrets/pull/5652)
- [@&#8203;mikesellitto](https://github.com/mikesellitto) made their first contribution in [#&#8203;5475](https://github.com/external-secrets/external-secrets/pull/5475)
- [@&#8203;lostick](https://github.com/lostick) made their first contribution in [#&#8203;5736](https://github.com/external-secrets/external-secrets/pull/5736)
- [@&#8203;cmoscofian](https://github.com/cmoscofian) made their first contribution in [#&#8203;5622](https://github.com/external-secrets/external-secrets/pull/5622)
- [@&#8203;headcr4sh](https://github.com/headcr4sh) made their first contribution in [#&#8203;5745](https://github.com/external-secrets/external-secrets/pull/5745)
- [@&#8203;tosih](https://github.com/tosih) made their first contribution in [#&#8203;5610](https://github.com/external-secrets/external-secrets/pull/5610)

**Full Changelog**: <https://github.com/external-secrets/external-secrets/compare/v1.1.1...v1.2.0>

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhcnQiXX0=-->

Reviewed-on: #2737
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 01:18:14 +00:00
348266d19e Update ghcr.io/immich-app/immich-server Docker tag to v2.4.1 (#2736)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 10s
renovate / renovate (push) Successful in 1m38s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/immich-app/immich-server](https://github.com/immich-app/immich) | minor | `v2.3.1` -> `v2.4.1` |

---

### Release Notes

<details>
<summary>immich-app/immich (ghcr.io/immich-app/immich-server)</summary>

### [`v2.4.1`](https://github.com/immich-app/immich/releases/tag/v2.4.1)

[Compare Source](https://github.com/immich-app/immich/compare/v2.4.0...v2.4.1)

### 2.4.1

#### What's Changed

##### 🐛 Bug fixes

- fix(web): shared link expiry does not save by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24569](https://github.com/immich-app/immich/pull/24569)
- fix(mobile): infinite loading screen when hiding UI in map viewer on iOS by [@&#8203;timonrieger](https://github.com/timonrieger) in [#&#8203;24563](https://github.com/immich-app/immich/pull/24563)
- fix(web): auto-start slideshow when confirming settings modal by [@&#8203;timonrieger](https://github.com/timonrieger) in [#&#8203;24629](https://github.com/immich-app/immich/pull/24629)
- fix(mobile): merged video in On This Device played with incorrect ratio by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24656](https://github.com/immich-app/immich/pull/24656)
- fix: dateTimeOriginal timezone updates by [@&#8203;danieldietzler](https://github.com/danieldietzler) in [#&#8203;24712](https://github.com/immich-app/immich/pull/24712)
- fix(web): timezone dropdown showing "No results" when seconds are set to 00 by [@&#8203;timonrieger](https://github.com/timonrieger) in [#&#8203;24662](https://github.com/immich-app/immich/pull/24662)
- fix(web): search-bar usability improvements  by [@&#8203;LeLunZ](https://github.com/LeLunZ) in [#&#8203;24705](https://github.com/immich-app/immich/pull/24705)

##### 📚 Documentation

- fix(docs): add & fix missing alt text to store badge images by [@&#8203;divulgacheur](https://github.com/divulgacheur) in [#&#8203;24637](https://github.com/immich-app/immich/pull/24637)

#### New Contributors

- [@&#8203;timonrieger](https://github.com/timonrieger) made their first contribution in [#&#8203;24563](https://github.com/immich-app/immich/pull/24563)
- [@&#8203;LeLunZ](https://github.com/LeLunZ) made their first contribution in [#&#8203;24705](https://github.com/immich-app/immich/pull/24705)
- [@&#8203;divulgacheur](https://github.com/divulgacheur) made their first contribution in [#&#8203;24637](https://github.com/immich-app/immich/pull/24637)

**Full Changelog**: <https://github.com/immich-app/immich/compare/v2.4.0...v2.4.1>

### [`v2.4.0`](https://github.com/immich-app/immich/releases/tag/v2.4.0)

[Compare Source](https://github.com/immich-app/immich/compare/v2.3.1...v2.4.0)

### v2.4.0

#### Highlights

Welcome to the release `v2.4.0` of Immich. This release focuses on bug fixes, QoL improvements, and polished UI components and animation across mobile and the web. Let’s dive right in.

- Show the owner's name in the shared album
- Command palette
- Change search type directly in the search bar
- Better action button placement in the mobile asset viewer
- Notable fix: fix an issue where metadata extraction could fail on high concurrency

##### Show the owner's name in the shared album.

On the web, in shared albums, you can now toggle an option to display the asset’s owner name at the bottom right corner of the thumbnail.

<img width="800" alt="asset owner name in album" src="https://github.com/user-attachments/assets/90f425b3-91d4-4ef3-9455-234b2c28b0f0" />

##### Command palette

The web app now has an integrated command palette, which can be opened  `ctrl + k` on Windows/Linux or `cmd + k` on macOS. This first iteration of this lets you quickly navigate between administration pages by typing the name of the page you want to go to. It also already supports some common actions when on the respective admin pages, many of which also support shortcuts. Have a look around and check them out!

<img width="800"  alt="command pallet" src="https://github.com/user-attachments/assets/e9fb1638-a926-4df2-92ce-3ddfd0b04e02" />

##### Change search type directly in the search bar

You can now click on the pill from the search bar to select a different search type without opening the search filter panel.

<img width="800" alt="search type" src="https://github.com/user-attachments/assets/493d0b74-8b6f-4581-b2ba-9f00da9bcc30" />

##### Better placement of action buttons in the mobile asset viewer

Previously, to perform a specific action on the asset, you needed first to swipe up to open the detail panel, then swipe all the way to the right and tap the action. It limits the discoverability of some actions. To help resolve that issue, all the action buttons in the detail panel are now moved to the drop-down menu when tapping on the vertical dot icon (or kebab menu), along with some buttons that used to be on the top bar, clearing up space to display more helpful information when viewing the asset.

 <img width="350" alt="kebab menu" src="https://github.com/user-attachments/assets/7b4610c4-d04b-4f5e-8b7b-02504a9ee531" />

#### Support Immich

<p align="center">

<img src="https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExbjY2eWc5Y2F0ZW56MmR4aWE0dDhzZXlidXRmYWZyajl1bWZidXZpcyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/87CKDqErVfMqY/giphy.gif" width="450" title="SUPPORT THE PROJECT!">

</p>

If you find the project helpful, you can support Immich by purchasing a product key at <https://buy.immich.app> or our merchandise at <https://immich.store>

#### What's Changed

##### 🫥 Deprecated Changes

- feat: queues by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24142](https://github.com/immich-app/immich/pull/24142)

##### 🚀 Features

- feat: improve performance: don't sort timeline buckets from server by [@&#8203;midzelis](https://github.com/midzelis) in [#&#8203;24032](https://github.com/immich-app/immich/pull/24032)
- feat: command palette by [@&#8203;danieldietzler](https://github.com/danieldietzler) in [#&#8203;23693](https://github.com/immich-app/immich/pull/23693)
- feat(web): Shared album owner labels by [@&#8203;xCJPECKOVERx](https://github.com/xCJPECKOVERx) in [#&#8203;21171](https://github.com/immich-app/immich/pull/21171)
- feat(mobile): persist album sorting & layout in settings by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;22133](https://github.com/immich-app/immich/pull/22133)
- feat: queue detail page by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24352](https://github.com/immich-app/immich/pull/24352)
- chore(mobile): add kebabu menu in asset viewer by [@&#8203;idubnori](https://github.com/idubnori) in [#&#8203;24387](https://github.com/immich-app/immich/pull/24387)
- feat(mobile): create new album from add to modal by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24431](https://github.com/immich-app/immich/pull/24431)
- feat(mobile): move buttons in the bottom sheet to the kebabu menu by [@&#8203;idubnori](https://github.com/idubnori) in [#&#8203;24175](https://github.com/immich-app/immich/pull/24175)

##### 🌟 Enhancements

- feat(web): allow navigating the map with arrow keys by [@&#8203;lukashass](https://github.com/lukashass) in [#&#8203;24080](https://github.com/immich-app/immich/pull/24080)
- feat: separate camera and lens info in detail panel by [@&#8203;fabianbees](https://github.com/fabianbees) in [#&#8203;23670](https://github.com/immich-app/immich/pull/23670)
- feat(web): shared link card tweaks by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24192](https://github.com/immich-app/immich/pull/24192)
- feat(server): exclude syncthing folders from external libraries by [@&#8203;SaphuA](https://github.com/SaphuA) in [#&#8203;24240](https://github.com/immich-app/immich/pull/24240)
- feat(web): search type selection dropdown by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24091](https://github.com/immich-app/immich/pull/24091)
- feat: header context menu by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24374](https://github.com/immich-app/immich/pull/24374)
- feat(mobile): move top bar buttons into kebabu menu in AssetViewer by [@&#8203;idubnori](https://github.com/idubnori) in [#&#8203;24461](https://github.com/immich-app/immich/pull/24461)
- feat(web): asset selection bar in tags view by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24522](https://github.com/immich-app/immich/pull/24522)
- feat(web): slideshow feature on shared albums by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24598](https://github.com/immich-app/immich/pull/24598)
- feat: replace heart icons to thumbs-up across activity by [@&#8203;idubnori](https://github.com/idubnori) in [#&#8203;24590](https://github.com/immich-app/immich/pull/24590)

##### 🐛 Bug fixes

- fix: effect loop by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24014](https://github.com/immich-app/immich/pull/24014)
- fix: do not clear hash on updated\_at change by [@&#8203;shenlong-tanwen](https://github.com/shenlong-tanwen) in [#&#8203;24039](https://github.com/immich-app/immich/pull/24039)
- fix: disable animation "add to" action menu by [@&#8203;bwees](https://github.com/bwees) in [#&#8203;24040](https://github.com/immich-app/immich/pull/24040)
- fix: Use correct app store link by [@&#8203;Mraedis](https://github.com/Mraedis) in [#&#8203;24062](https://github.com/immich-app/immich/pull/24062)
- fix: show archived assets in favorite page by [@&#8203;bwees](https://github.com/bwees) in [#&#8203;24052](https://github.com/immich-app/immich/pull/24052)
- fix(mobile): first video memory on page doesn't play by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;23906](https://github.com/immich-app/immich/pull/23906)
- feat(web): show detected faces in spherical photos by [@&#8203;meesfrensel](https://github.com/meesfrensel) in [#&#8203;23974](https://github.com/immich-app/immich/pull/23974)
- fix: add users to album by [@&#8203;danieldietzler](https://github.com/danieldietzler) in [#&#8203;24133](https://github.com/immich-app/immich/pull/24133)
- fix(server): sanitize DB\_URL for pg\_dumpall to remove unknown query params by [@&#8203;lutostag](https://github.com/lutostag) in [#&#8203;23333](https://github.com/immich-app/immich/pull/23333)
- fix: use proper updatedAt value in local assets by [@&#8203;shenlong-tanwen](https://github.com/shenlong-tanwen) in [#&#8203;24137](https://github.com/immich-app/immich/pull/24137)
- fix: albums page reactivity loops by [@&#8203;danieldietzler](https://github.com/danieldietzler) in [#&#8203;24046](https://github.com/immich-app/immich/pull/24046)
- fix: getAspectRatio fallback to db width and height by [@&#8203;shenlong-tanwen](https://github.com/shenlong-tanwen) in [#&#8203;24131](https://github.com/immich-app/immich/pull/24131)
- fix(web): fix support & feedback modal wrapping by [@&#8203;Snowknight26](https://github.com/Snowknight26) in [#&#8203;24018](https://github.com/immich-app/immich/pull/24018)
- fix: don't get OCR data in shared link by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24152](https://github.com/immich-app/immich/pull/24152)
- fix: duration extraction by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24178](https://github.com/immich-app/immich/pull/24178)
- fix(ml): Upgrade ONNX Runtime to v1.22.1 to fix ROCm build failures by [@&#8203;LukaPrebil](https://github.com/LukaPrebil) in [#&#8203;24045](https://github.com/immich-app/immich/pull/24045)
- fix: update timeline-manager after archive actions by [@&#8203;midzelis](https://github.com/midzelis) in [#&#8203;24010](https://github.com/immich-app/immich/pull/24010)
- fix: theme switcher by [@&#8203;jrasm91](https://github.com/jrasm91) in [#&#8203;24209](https://github.com/immich-app/immich/pull/24209)
- fix: label 'for' attributes in user-api-key-grid by [@&#8203;kimsey0](https://github.com/kimsey0) in [#&#8203;24232](https://github.com/immich-app/immich/pull/24232)
- fix(mobile): enable backup text overflows by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24227](https://github.com/immich-app/immich/pull/24227)
- fix(web): integrate zoom toggle button into panorama photo viewer by [@&#8203;meesfrensel](https://github.com/meesfrensel) in [#&#8203;24189](https://github.com/immich-app/immich/pull/24189)
- fix(web): use full tag path when creating nested subtags by [@&#8203;NiklasvonM](https://github.com/NiklasvonM) in [#&#8203;24249](https://github.com/immich-app/immich/pull/24249)
- fix: only generate memory based on users assets by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24151](https://github.com/immich-app/immich/pull/24151)
- fix(mobile): docs link by [@&#8203;mmomjian](https://github.com/mmomjian) in [#&#8203;24277](https://github.com/immich-app/immich/pull/24277)
- fix(server): use bigrams for cjk by [@&#8203;mertalev](https://github.com/mertalev) in [#&#8203;24285](https://github.com/immich-app/immich/pull/24285)
- fix(ml): do not upscale preview by [@&#8203;mertalev](https://github.com/mertalev) in [#&#8203;24322](https://github.com/immich-app/immich/pull/24322)
- fix(web): open onboarding documentation link in new tab by [@&#8203;carbonemys](https://github.com/carbonemys) in [#&#8203;24289](https://github.com/immich-app/immich/pull/24289)
- fix(mobile): use correct timezone displayed in the info sheet by [@&#8203;kao-byte](https://github.com/kao-byte) in [#&#8203;24310](https://github.com/immich-app/immich/pull/24310)
- fix(web): folder view sort oder by [@&#8203;etnoy](https://github.com/etnoy) in [#&#8203;24337](https://github.com/immich-app/immich/pull/24337)
- fix(server): do not delete offline assets by [@&#8203;mertalev](https://github.com/mertalev) in [#&#8203;24355](https://github.com/immich-app/immich/pull/24355)
- fix: exposure info and better readability by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24344](https://github.com/immich-app/immich/pull/24344)
- fix: Adjust the zoom level by [@&#8203;jforseth210](https://github.com/jforseth210) in [#&#8203;24353](https://github.com/immich-app/immich/pull/24353)
- fix: local full sync on Android on resume by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24348](https://github.com/immich-app/immich/pull/24348)
- fix(web): Add minimum content size to logo for consistent visual on small screens by [@&#8203;kiloomar](https://github.com/kiloomar) in [#&#8203;24372](https://github.com/immich-app/immich/pull/24372)
- fix: use adjustment time in iOS for hash reset by [@&#8203;shenlong-tanwen](https://github.com/shenlong-tanwen) in [#&#8203;24047](https://github.com/immich-app/immich/pull/24047)
- fix(server): update exiftool-vendored to v34 for more robust metadata extraction by [@&#8203;skatsubo](https://github.com/skatsubo) in [#&#8203;24424](https://github.com/immich-app/immich/pull/24424)
- fix(mobile): cannot create album while name field is focused by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24449](https://github.com/immich-app/immich/pull/24449)
- fix(web): \[album table view] long album title overflows table row by [@&#8203;simonkub](https://github.com/simonkub) in [#&#8203;24450](https://github.com/immich-app/immich/pull/24450)
- fix(mobile): fix overflow text in backup card by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24448](https://github.com/immich-app/immich/pull/24448)
- fix(mobile): timeline bottom padding on selection by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24480](https://github.com/immich-app/immich/pull/24480)
- feat(mobile): Localized backup upload details page by [@&#8203;ArnyminerZ](https://github.com/ArnyminerZ) in [#&#8203;21136](https://github.com/immich-app/immich/pull/21136)
- fix(mobile): iOS local permission dialog extra whitespace by [@&#8203;kurtmckee](https://github.com/kurtmckee) in [#&#8203;24491](https://github.com/immich-app/immich/pull/24491)
- fix(mobile): versionStatus.message text overflow by [@&#8203;idubnori](https://github.com/idubnori) in [#&#8203;24504](https://github.com/immich-app/immich/pull/24504)
- fix(server): prevent metadata extraction failures on large video files by [@&#8203;hubert-taieb](https://github.com/hubert-taieb) in [#&#8203;24094](https://github.com/immich-app/immich/pull/24094)
- fix(web): show inferred timezone in date editor by [@&#8203;skatsubo](https://github.com/skatsubo) in [#&#8203;24513](https://github.com/immich-app/immich/pull/24513)
- fix(mobile): local videos with '#' don't play on android by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24373](https://github.com/immich-app/immich/pull/24373)
- fix: refresh appear in list after asset is added to a current or new album by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24523](https://github.com/immich-app/immich/pull/24523)
- fix(mobile): birthday off by one day on remote by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24527](https://github.com/immich-app/immich/pull/24527)
- fix(web): download panel being hidden by admin sidebar by [@&#8203;diogotcorreia](https://github.com/diogotcorreia) in [#&#8203;24583](https://github.com/immich-app/immich/pull/24583)
- fix(web): recent search doesn't use search type by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24578](https://github.com/immich-app/immich/pull/24578)
- fix(server): only extract image's duration if format supports animation by [@&#8203;meesfrensel](https://github.com/meesfrensel) in [#&#8203;24587](https://github.com/immich-app/immich/pull/24587)
- fix(mobile): local delete missing from sheet on some routes  by [@&#8203;YarosMallorca](https://github.com/YarosMallorca) in [#&#8203;24505](https://github.com/immich-app/immich/pull/24505)
- fix(mobile): better UI for metadata panel by [@&#8203;kao-byte](https://github.com/kao-byte) in [#&#8203;24428](https://github.com/immich-app/immich/pull/24428)
- fix: shared link expiration and small styling by [@&#8203;alextran1502](https://github.com/alextran1502) in [#&#8203;24566](https://github.com/immich-app/immich/pull/24566)
- fix: asset update race condition by [@&#8203;danieldietzler](https://github.com/danieldietzler) in [#&#8203;24384](https://github.com/immich-app/immich/pull/24384)

##### 📚 Documentation

- docs: DB\_STORAGE\_TYPE is only used by the database container by [@&#8203;dionysius](https://github.com/dionysius) in [#&#8203;24215](https://github.com/immich-app/immich/pull/24215)
- fix(docs): build `cli` for e2e tests by [@&#8203;roschaefer](https://github.com/roschaefer) in [#&#8203;24184](https://github.com/immich-app/immich/pull/24184)
- docs(faq): add more info on archiving by [@&#8203;etnoy](https://github.com/etnoy) in [#&#8203;24326](https://github.com/immich-app/immich/pull/24326)
- fix(docs): server and machine-learning use IMMICH\_HOST and IMMICH\_PORT by [@&#8203;dionysius](https://github.com/dionysius) in [#&#8203;24335](https://github.com/immich-app/immich/pull/24335)
- fix: prevent OOM on nginx reverse proxy servers by [@&#8203;NicholasFlamy](https://github.com/NicholasFlamy) in [#&#8203;24351](https://github.com/immich-app/immich/pull/24351)
- fix(docs): obsolete docs about rootless docker by [@&#8203;roschaefer](https://github.com/roschaefer) in [#&#8203;24376](https://github.com/immich-app/immich/pull/24376)
- fix(docs): websockets in nginx example by [@&#8203;fourthwall](https://github.com/fourthwall) in [#&#8203;24411](https://github.com/immich-app/immich/pull/24411)
- fix(docs): slow upload speed with example nginx reverse proxy config by [@&#8203;goalie2002](https://github.com/goalie2002) in [#&#8203;24490](https://github.com/immich-app/immich/pull/24490)
- fix(docs): typo in maintenance mode command by [@&#8203;bartvanvelden](https://github.com/bartvanvelden) in [#&#8203;24518](https://github.com/immich-app/immich/pull/24518)

##### 🌐 Translations

- chore: add new language requests by [@&#8203;danieldietzler](https://github.com/danieldietzler) in [#&#8203;23991](https://github.com/immich-app/immich/pull/23991)
- chore(web): update translations by [@&#8203;weblate](https://github.com/weblate) in [#&#8203;24004](https://github.com/immich-app/immich/pull/24004)

#### New Contributors

- [@&#8203;ujjwal123123](https://github.com/ujjwal123123) made their first contribution in [#&#8203;24101](https://github.com/immich-app/immich/pull/24101)
- [@&#8203;lutostag](https://github.com/lutostag) made their first contribution in [#&#8203;23333](https://github.com/immich-app/immich/pull/23333)
- [@&#8203;LukaPrebil](https://github.com/LukaPrebil) made their first contribution in [#&#8203;24045](https://github.com/immich-app/immich/pull/24045)
- [@&#8203;kimsey0](https://github.com/kimsey0) made their first contribution in [#&#8203;24232](https://github.com/immich-app/immich/pull/24232)
- [@&#8203;SaphuA](https://github.com/SaphuA) made their first contribution in [#&#8203;24240](https://github.com/immich-app/immich/pull/24240)
- [@&#8203;dionysius](https://github.com/dionysius) made their first contribution in [#&#8203;24215](https://github.com/immich-app/immich/pull/24215)
- [@&#8203;NiklasvonM](https://github.com/NiklasvonM) made their first contribution in [#&#8203;24249](https://github.com/immich-app/immich/pull/24249)
- [@&#8203;kao-byte](https://github.com/kao-byte) made their first contribution in [#&#8203;24098](https://github.com/immich-app/immich/pull/24098)
- [@&#8203;carbonemys](https://github.com/carbonemys) made their first contribution in [#&#8203;24289](https://github.com/immich-app/immich/pull/24289)
- [@&#8203;kiloomar](https://github.com/kiloomar) made their first contribution in [#&#8203;24372](https://github.com/immich-app/immich/pull/24372)
- [@&#8203;fourthwall](https://github.com/fourthwall) made their first contribution in [#&#8203;24411](https://github.com/immich-app/immich/pull/24411)
- [@&#8203;simonkub](https://github.com/simonkub) made their first contribution in [#&#8203;24450](https://github.com/immich-app/immich/pull/24450)
- [@&#8203;ArnyminerZ](https://github.com/ArnyminerZ) made their first contribution in [#&#8203;21136](https://github.com/immich-app/immich/pull/21136)
- [@&#8203;kurtmckee](https://github.com/kurtmckee) made their first contribution in [#&#8203;24491](https://github.com/immich-app/immich/pull/24491)
- [@&#8203;hubert-taieb](https://github.com/hubert-taieb) made their first contribution in [#&#8203;24094](https://github.com/immich-app/immich/pull/24094)
- [@&#8203;bartvanvelden](https://github.com/bartvanvelden) made their first contribution in [#&#8203;24518](https://github.com/immich-app/immich/pull/24518)

**Full Changelog**: <https://github.com/immich-app/immich/compare/v2.3.1...v2.4.0>

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=-->

Reviewed-on: #2736
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 01:16:34 +00:00
8ca684f42c Update ghcr.io/booklore-app/booklore Docker tag to v1.15.0 (#2735)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 13s
renovate / renovate (push) Successful in 59s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/booklore-app/booklore](https://github.com/booklore-app/booklore) | minor | `v1.14.1` -> `v1.15.0` |

---

### Release Notes

<details>
<summary>booklore-app/booklore (ghcr.io/booklore-app/booklore)</summary>

### [`v1.15.0`](https://github.com/booklore-app/booklore/releases/tag/v1.15.0)

[Compare Source](https://github.com/booklore-app/booklore/compare/v1.14.1...v1.15.0)

#### 🌟 What's New in v1.15.0

#### 🚀 New Features

- feat: add additional cover art actions and settings ([#&#8203;1938](https://github.com/booklore-app/booklore/issues/1938)) by [@&#8203;CounterClops](https://github.com/CounterClops)
- feat(hardcover): sync Kobo reading progress to Hardcover ([#&#8203;1926](https://github.com/booklore-app/booklore/issues/1926)) by [@&#8203;boludo00](https://github.com/boludo00)
- Add sequential next/previous book navigation from library, filtered, and search views ([#&#8203;1931](https://github.com/booklore-app/booklore/issues/1931)) by [@&#8203;acx10](https://github.com/acx10)
- feat(api, ui): add bookdrop bulk edit and metadata pattern extraction ([#&#8203;1846](https://github.com/booklore-app/booklore/issues/1846)) by [@&#8203;CounterClops](https://github.com/CounterClops)
- Add support for fb2 books ([#&#8203;1757](https://github.com/booklore-app/booklore/issues/1757)) by [@&#8203;slonoed](https://github.com/slonoed)

####  Enhancements

- feat: add library sync URL generation in KoboUrlBuilder ([#&#8203;1937](https://github.com/booklore-app/booklore/issues/1937)) by [@&#8203;ripdog](https://github.com/ripdog)
- feat(opds): allow user to set sorting for opds feed in settings ([#&#8203;1824](https://github.com/booklore-app/booklore/issues/1824)) by [@&#8203;WorldTeacher](https://github.com/WorldTeacher)
- Feat/conversion CBX to EPUB compression configuration ([#&#8203;1844](https://github.com/booklore-app/booklore/issues/1844)) by [@&#8203;thvardhan](https://github.com/thvardhan)
- feat(opds): add series hierarchy ([#&#8203;1837](https://github.com/booklore-app/booklore/issues/1837)) by [@&#8203;WorldTeacher](https://github.com/WorldTeacher)

#### 🎨 UI Tweaks

- fix: Bookdrop UI mobile support ([#&#8203;1911](https://github.com/booklore-app/booklore/issues/1911)) by [@&#8203;Muppetteer](https://github.com/Muppetteer)
- fix: Consistent dialogs ([#&#8203;1842](https://github.com/booklore-app/booklore/issues/1842)) by [@&#8203;Muppetteer](https://github.com/Muppetteer)

#### 🐛 Bug Fixes

- fix: Library icon name bug ([#&#8203;1934](https://github.com/booklore-app/booklore/issues/1934)) by [@&#8203;Muppetteer](https://github.com/Muppetteer)
- fix: bookdrop bulk actions not applying to uncached pages ([#&#8203;1928](https://github.com/booklore-app/booklore/issues/1928)) by [@&#8203;CounterClops](https://github.com/CounterClops)
- fix: file renaming with wrong extension ([#&#8203;1929](https://github.com/booklore-app/booklore/issues/1929)) by [@&#8203;CounterClops](https://github.com/CounterClops)
- fix(FileService): update User-Agent header for ComicVine to let the Parser through ([#&#8203;1880](https://github.com/booklore-app/booklore/issues/1880)) by [@&#8203;balazs-szucs](https://github.com/balazs-szucs)
- fix(ui): Force page reload on logout ([#&#8203;1870](https://github.com/booklore-app/booklore/issues/1870)) by [@&#8203;Muppetteer](https://github.com/Muppetteer)

#### 🛠️ Refactoring & Maintenance

- refactor(fb2, misc): Improve code quality, update to modern Java patterns, add reasonable initial values for StringBuilders ([#&#8203;1932](https://github.com/booklore-app/booklore/issues/1932)) by [@&#8203;balazs-szucs](https://github.com/balazs-szucs)

#### 📦 Dependencies

- Upgrade Angular from v20 to v21 and update other dependencies ([#&#8203;1916](https://github.com/booklore-app/booklore/issues/1916)) by [@&#8203;acx10](https://github.com/acx10)
- chore(deps): bump docker/login-action from 2 to 3 ([#&#8203;1908](https://github.com/booklore-app/booklore/issues/1908)) by @&#8203;[dependabot\[bot\]](https://github.com/apps/dependabot)
- chore(deps): update actions/setup-java action to v5 ([#&#8203;1871](https://github.com/booklore-app/booklore/issues/1871)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update actions/upload-artifact action to v6 ([#&#8203;1872](https://github.com/booklore-app/booklore/issues/1872)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update actions/checkout action to v6 ([#&#8203;1869](https://github.com/booklore-app/booklore/issues/1869)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update dependency org.flywaydb:flyway-mysql to v11.19.0 ([#&#8203;1868](https://github.com/booklore-app/booklore/issues/1868)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update dependency org.apache.commons:commons-text to v1.15.0 ([#&#8203;1865](https://github.com/booklore-app/booklore/issues/1865)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update lscr.io/linuxserver/mariadb docker tag to v11.4.8 ([#&#8203;1862](https://github.com/booklore-app/booklore/issues/1862)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update dependency org.freemarker:freemarker to v2.3.34 ([#&#8203;1861](https://github.com/booklore-app/booklore/issues/1861)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update dependency org.assertj:assertj-core to v3.27.6 ([#&#8203;1859](https://github.com/booklore-app/booklore/issues/1859)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)
- chore(deps): update dependency gradle to v8.14.3 ([#&#8203;1858](https://github.com/booklore-app/booklore/issues/1858)) by @&#8203;[renovate\[bot\]](https://github.com/apps/renovate)

#### ⚙️ CI/CD

- Add Flyway migration conflict detection in CI ([#&#8203;1888](https://github.com/booklore-app/booklore/issues/1888)) by [@&#8203;acx10](https://github.com/acx10)
- Speed up CI builds by introducing dependency caching ([#&#8203;1874](https://github.com/booklore-app/booklore/issues/1874)) by [@&#8203;acx10](https://github.com/acx10)
- Add Flyway migration version conflict check in GitHub Actions ([#&#8203;1863](https://github.com/booklore-app/booklore/issues/1863)) by [@&#8203;acx10](https://github.com/acx10)

##### 🐳 Docker Images

- **Docker Hub:** `booklore/booklore:v1.15.0`
- **GitHub Container Registry:** `ghcr.io/booklore-app/booklore:v1.15.0`

**Full Changelog**: <https://github.com/booklore-app/booklore/compare/v1.14.1...v1.15.0>

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2735
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 01:14:41 +00:00
efa1ca2256 Update ghcr.io/autobrr/qui Docker tag to v1.11.0 (#2734)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 9s
renovate / renovate (push) Successful in 1m2s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/autobrr/qui](https://github.com/autobrr/qui) | minor | `v1.10.0` -> `v1.11.0` |

---

### Release Notes

<details>
<summary>autobrr/qui (ghcr.io/autobrr/qui)</summary>

### [`v1.11.0`](https://github.com/autobrr/qui/releases/tag/v1.11.0)

[Compare Source](https://github.com/autobrr/qui/compare/v1.10.0...v1.11.0)

#### Changelog

##### New Features

- [`6e65de4`](6e65de4d28): feat(torrents): add "não registrado" to unregistered status ([#&#8203;794](https://github.com/autobrr/qui/issues/794)) ([@&#8203;fabricionaweb](https://github.com/fabricionaweb))
- [`ac5f8f3`](ac5f8f3fc3): feat(torrents): add web seeds table ([#&#8203;808](https://github.com/autobrr/qui/issues/808)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`24559c9`](24559c9654): feat(web): add Size default sort option to Tracker Breakdown table settings ([#&#8203;786](https://github.com/autobrr/qui/issues/786)) ([@&#8203;thesecretlifeofabunny](https://github.com/thesecretlifeofabunny))

##### Bug Fixes

- [`69ed1a3`](69ed1a3a71): fix(api): respect baseURL for path autocompletion cap ([#&#8203;798](https://github.com/autobrr/qui/issues/798)) ([@&#8203;Ryu481](https://github.com/Ryu481))
- [`0a721d0`](0a721d04da): fix(crossseed): add verification and retry for async file renames ([#&#8203;789](https://github.com/autobrr/qui/issues/789)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`e9fcbda`](e9fcbda129): fix(crossseed): pass source filters through to FindCandidates ([#&#8203;802](https://github.com/autobrr/qui/issues/802)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`b4f1ffa`](b4f1ffa524): fix(crossseed): require strict HDR and Collection matching ([#&#8203;799](https://github.com/autobrr/qui/issues/799)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`4f3365b`](4f3365b908): fix(sync): edited trackers no longer appear under old domain in sidebar ([#&#8203;792](https://github.com/autobrr/qui/issues/792)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`fcb081e`](fcb081ef8b): fix(web): move global stats to bottom of torrents page ([#&#8203;800](https://github.com/autobrr/qui/issues/800)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`13b40b5`](13b40b5d3c): fix(web): prevent Edit Tracker Name dialog overflow ([#&#8203;797](https://github.com/autobrr/qui/issues/797)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`8e3b352`](8e3b35275c): fix(web): replace completion filter inputs with MultiSelect dropdowns ([#&#8203;791](https://github.com/autobrr/qui/issues/791)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`adfd5bb`](adfd5bb349): fix(web): restore piece size display in torrent details panel ([#&#8203;790](https://github.com/autobrr/qui/issues/790)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`5d97b49`](5d97b49fa8): fix(web): sort trackers by display name in filter sidebar ([#&#8203;810](https://github.com/autobrr/qui/issues/810)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`2fad4e8`](2fad4e880d): fix(web): use total counts for Seeds/Peers column filtering ([#&#8203;796](https://github.com/autobrr/qui/issues/796)) ([@&#8203;s0up4200](https://github.com/s0up4200))

##### Other Changes

- [`1bf1b6e`](1bf1b6e7c0): chore(crossseed): add debug logging for RSS and webhook source filters ([#&#8203;795](https://github.com/autobrr/qui/issues/795)) ([@&#8203;s0up4200](https://github.com/s0up4200))
- [`95e4bc0`](95e4bc0581): chore(deps): bump github.com/expr-lang/expr from 1.17.6 to 1.17.7 ([#&#8203;809](https://github.com/autobrr/qui/issues/809)) ([@&#8203;dependabot](https://github.com/dependabot)\[bot])

**Full Changelog**: <https://github.com/autobrr/qui/compare/v1.10.0...v1.11.0>

#### Docker images

- `docker pull ghcr.io/autobrr/qui:v1.11.0`
- `docker pull ghcr.io/autobrr/qui:latest`

#### What to do next?

- Join our [Discord server](https://discord.autobrr.com/qui)

Thank you for using qui!

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2734
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 01:11:12 +00:00
cecdf08723 Update kube-prometheus-stack Docker tag to v80.6.0 (#2738)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 13s
renovate / renovate (push) Successful in 1m2s
2025-12-20 01:05:11 +00:00
fa5df93973 Update ghcr.io/tailscale/tailscale Docker tag to v1.92.4 (#2731)
Some checks failed
lint-test-docker / lint-docker-compose (push) Successful in 38s
renovate / renovate (push) Has been cancelled
2025-12-20 01:03:45 +00:00
b382ff4f60 Update ghcr.io/home-assistant/home-assistant Docker tag to v2025.12.4 (#2730)
Some checks failed
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 15s
renovate / renovate (push) Has been cancelled
2025-12-20 01:03:27 +00:00
82819be442 Update registry.k8s.io/coredns/coredns Docker tag to v1.13.2 (#2658)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 1m7s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| registry.k8s.io/coredns/coredns | patch | `v1.13.1` -> `v1.13.2` |

---

### Configuration

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

🚦 **Automerge**: Enabled.

♻ **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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiYXV0b21lcmdlIiwiaW1hZ2UiXX0=-->

Reviewed-on: #2658
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 00:56:47 +00:00
9db38607b2 upgrade chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 11s
render-manifests-push / render-manifests-push (push) Successful in 27s
renovate / renovate (push) Successful in 1m7s
2025-12-19 18:46:28 -06:00
a4ffe84457 change crds
All checks were successful
lint-test-helm / lint-helm (push) Successful in 12s
render-manifests-push / render-manifests-push (push) Successful in 28s
renovate / renovate (push) Successful in 1m2s
2025-12-19 18:43:33 -06:00
228ee2affd downgrade
All checks were successful
lint-test-helm / lint-helm (push) Successful in 10s
render-manifests-push / render-manifests-push (push) Successful in 24s
renovate / renovate (push) Successful in 1m1s
2025-12-19 18:36:28 -06:00
9b2800ccad change crd chart
All checks were successful
lint-test-helm / lint-helm (push) Successful in 15s
render-manifests-push / render-manifests-push (push) Successful in 23s
renovate / renovate (push) Successful in 56s
2025-12-19 18:34:08 -06:00
7d5958d5ea Update php Docker tag to v8.5.1 (#2725)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 9s
renovate / renovate (push) Successful in 1m14s
2025-12-20 00:32:10 +00:00
c98d0bdba0 Update Helm release traefik to v38 (#2711)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 10s
renovate / renovate (push) Successful in 1m26s
This PR contains the following updates:

| Package | Update | Change | Pending |
|---|---|---|---|
| [traefik](https://traefik.io/) ([source](https://github.com/traefik/traefik-helm-chart)) | major | `37.4.0` -> `38.0.0` | `38.0.1` |

---

### Release Notes

<details>
<summary>traefik/traefik-helm-chart (traefik)</summary>

### [`v38.0.0`](https://github.com/traefik/traefik-helm-chart/releases/tag/v38.0.0)

[Compare Source](https://github.com/traefik/traefik-helm-chart/compare/v37.4.0...v38.0.0)

**Upgrades Notes**

> \[!IMPORTANT]
> CRDs has to be upgraded before the Chart. See [UPGRADING](https://github.com/traefik/traefik-helm-chart?tab=readme-ov-file#upgrading) instructions.

There are two breaking changes in this release:

1. Traefik Proxy v3.6.4+ contains a security fix that is also a breaking change. See [upstream documentation](https://doc.traefik.io/traefik/v3.6/migrate/v3/#v364) for more details.
2. PR [#&#8203;1596](https://github.com/traefik/traefik-helm-chart/pull/1596) align *kubernetesIngressNginx* provider setting with upstream. There is a *before* / *after* example in the PR description and PR [#&#8203;1587](https://github.com/traefik/traefik-helm-chart/pull/1587) align *labelSelector* syntax between providers

> \[!NOTE]
> If you need to restore Traefik behavior of v3.6.3 or inferior, it can be set with values.
>
> Here is an example on *websecure* entrypoint:
>
> ```yaml
> ports:
>   websecure:
>     http:
>       encodedCharacters:
>         allowEncodedSlash: true
>         allowEncodedBackSlash: true
>         allowEncodedNullCharacter: true
>         allowEncodedSemicolon: true
>         allowEncodedPercent: true
>         allowEncodedQuestionMark: true
>         allowEncodedHash: true
>       sanitizePath: false
> ```
>
> This is **not** recommended, it may expose you to [GHSA-gm3x-23wp-hc2c](https://github.com/traefik/traefik/security/advisories/GHSA-gm3x-23wp-hc2c).

#### 💥 BREAKING CHANGES

- fix(providers)!: align labelSelector for kubernetesGateway and knative [#&#8203;1587](https://github.com/traefik/traefik-helm-chart/issues/1587) by [@&#8203;shubhamch71](https://github.com/shubhamch71)
- fix(nginx)!: 🐛 align provider settings and provide required rbac [#&#8203;1596](https://github.com/traefik/traefik-helm-chart/issues/1596) by [@&#8203;mloiseleur](https://github.com/mloiseleur)

#### 🚀 Features

- feat(CRDs): update Traefik Hub to v1.24.1, with required RBACs [#&#8203;1571](https://github.com/traefik/traefik-helm-chart/issues/1571) by [@&#8203;jspdown](https://github.com/jspdown)
- feat(ports): enforce schema [#&#8203;1586](https://github.com/traefik/traefik-helm-chart/issues/1586) by [@&#8203;remyj38](https://github.com/remyj38)
- feat(CRDs): update Traefik Hub to v1.24.2 [#&#8203;1585](https://github.com/traefik/traefik-helm-chart/issues/1585) by [@&#8203;traefiker](https://github.com/traefiker)
- feat(providers):  enforce schema [#&#8203;1595](https://github.com/traefik/traefik-helm-chart/issues/1595) by [@&#8203;mloiseleur](https://github.com/mloiseleur)
- feat(security):  🔒️ add support for request path options of traefik 3.6.4+ [#&#8203;1594](https://github.com/traefik/traefik-helm-chart/issues/1594) by [@&#8203;mloiseleur](https://github.com/mloiseleur)
- feat(deps): update traefik docker tag to v3.6.4 [#&#8203;1590](https://github.com/traefik/traefik-helm-chart/issues/1590) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- feat(deps): update traefik docker tag to v3.6.5 [#&#8203;1599](https://github.com/traefik/traefik-helm-chart/issues/1599) by [@&#8203;renovate](https://github.com/renovate)\[bot]

#### 🐛 Bug fixes

- fix: update error message for maxUnavailable validation [#&#8203;1591](https://github.com/traefik/traefik-helm-chart/issues/1591) by [@&#8203;lucasra1](https://github.com/lucasra1)
- fix(notes): minor typo [#&#8203;1593](https://github.com/traefik/traefik-helm-chart/issues/1593) by [@&#8203;rndmh3ro](https://github.com/rndmh3ro)
- fix(pvc): allow empty storageClassName [#&#8203;1579](https://github.com/traefik/traefik-helm-chart/issues/1579) by [@&#8203;fopina](https://github.com/fopina)
- fix(providers):  enforce schema for all providers [#&#8203;1601](https://github.com/traefik/traefik-helm-chart/issues/1601) by [@&#8203;mloiseleur](https://github.com/mloiseleur)

#### 📦 Others

- chore(deps): update actions/checkout action to v6 [#&#8203;1573](https://github.com/traefik/traefik-helm-chart/issues/1573) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- docs: Update EXAMPLES.md with REGIONAL load balancer note for Digital Ocean [#&#8203;1574](https://github.com/traefik/traefik-helm-chart/issues/1574) by [@&#8203;kamikazechaser](https://github.com/kamikazechaser)
- chore(release): 🚀 publish traefik 38.0.0 and crds 1.13.0 [#&#8203;1600](https://github.com/traefik/traefik-helm-chart/issues/1600) by [@&#8203;mloiseleur](https://github.com/mloiseleur)

#### New Contributors

- [@&#8203;shubhamch71](https://github.com/shubhamch71) made their first contribution in [#&#8203;1587](https://github.com/traefik/traefik-helm-chart/pull/1587)
- [@&#8203;kamikazechaser](https://github.com/kamikazechaser) made their first contribution in [#&#8203;1574](https://github.com/traefik/traefik-helm-chart/pull/1574)
- [@&#8203;lucasra1](https://github.com/lucasra1) made their first contribution in [#&#8203;1591](https://github.com/traefik/traefik-helm-chart/pull/1591)
- [@&#8203;remyj38](https://github.com/remyj38) made their first contribution in [#&#8203;1586](https://github.com/traefik/traefik-helm-chart/pull/1586)
- [@&#8203;rndmh3ro](https://github.com/rndmh3ro) made their first contribution in [#&#8203;1593](https://github.com/traefik/traefik-helm-chart/pull/1593)
- [@&#8203;fopina](https://github.com/fopina) made their first contribution in [#&#8203;1579](https://github.com/traefik/traefik-helm-chart/pull/1579)

**Full Changelog**: <https://github.com/traefik/traefik-helm-chart/compare/v37.4.0...v38.0.0>

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhcnQiXX0=-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2711
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 00:30:37 +00:00
ff834b3198 Update Helm release tailscale-operator to v1.92.4 (#2703)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 11s
renovate / renovate (push) Successful in 1m53s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [tailscale-operator](https://github.com/tailscale/tailscale) | minor | `1.90.9` -> `1.92.4` |

---

### Release Notes

<details>
<summary>tailscale/tailscale (tailscale-operator)</summary>

### [`v1.92.4`](https://github.com/tailscale/tailscale/compare/v1.92.3...v1.92.4)

[Compare Source](https://github.com/tailscale/tailscale/compare/v1.92.3...v1.92.4)

### [`v1.92.3`](https://github.com/tailscale/tailscale/releases/tag/v1.92.3)

[Compare Source](https://github.com/tailscale/tailscale/compare/v1.90.9...v1.92.3)

Please refer to the changelog available at <https://tailscale.com/changelog>

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhcnQiXX0=-->

Reviewed-on: #2703
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 00:13:15 +00:00
10560876cc Update Helm release traefik-crds to v1.13.0 (#2710)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 9s
renovate / renovate (push) Successful in 1m46s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [traefik-crds](https://traefik.io/) ([source](https://github.com/traefik/traefik-helm-chart)) | minor | `1.12.0` -> `1.13.0` |

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhcnQiXX0=-->

Reviewed-on: #2710
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 00:10:44 +00:00
c1c32a34ab Update Helm release headlamp to v0.39.0 (#2714)
Some checks failed
renovate / renovate (push) Has been cancelled
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 16s
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [headlamp](https://headlamp.dev/) ([source](https://github.com/kubernetes-sigs/headlamp)) | minor | `0.38.0` -> `0.39.0` |

---

### Release Notes

<details>
<summary>kubernetes-sigs/headlamp (headlamp)</summary>

### [`v0.39.0`](https://github.com/kubernetes-sigs/headlamp/releases/tag/v0.39.0): 0.39.0

[Compare Source](https://github.com/kubernetes-sigs/headlamp/compare/v0.38.0...v0.39.0)

####  Enhancements:

- Add cluster column to CRD list. Thanks to [@&#8203;kahirokunn](https://github.com/kahirokunn)
- Add attach-based node debugger workflow that mirrors `kubectl debug-node`. Thanks to [@&#8203;dorser](https://github.com/dorser)
- Add count column to events list view
- Display Node and Loadbalancer ports in Service list view. Thanks to [@&#8203;jaehanbyun](https://github.com/jaehanbyun)
- Add missing details to Pod, ReplicaSet, NetworkPolicy, Namespace, Services and DaemonSets
- Open headlamp address in default browser when running in Headless mode
- Add support for adding custom header actions to project detail view

##### The CRD list view with cluster column

<img width="3644" height="2238" alt="Screenshot showing Custom Resource Instances table with highlighted Cluster column in Headlamp dashboard" src="https://github.com/user-attachments/assets/7c8a58f6-b2dc-4920-9a81-387cbe42c557" />

##### Attach-based node debugger in Node detail view

<img width="2924" height="642" alt="Screenshot showing Headlamp node details page with Debug Node button highlighted" src="https://github.com/user-attachments/assets/dc0cfcce-c103-45e8-9575-f422bf5e893f" />

##### The events list view with the event count column

<img width="3644" height="2238" alt="Screenshot showing Headlamp Events table with highlighted Count column displaying event occurrence numbers" src="https://github.com/user-attachments/assets/3a100d11-a205-4900-9500-7c142e74598e" />

#### 🐞 Bug fixes
- Deduplicate CRDs in sidebar items. Thanks to @&#8203;kahirokunn
- Deduplicate namespaces from multi-cluster list in autocomplete. Thanks to @&#8203;kahirokunn
- Allow templating in Helm chart pod labels. Thanks to @&#8203;rickliujh
- Fix tooltip jittering issue. Thanks to @&#8203;jaehanbyun
- Fix image digests in Dockerfiles
- Replace custom contains with slices.Contains in Backend. Thanks to @&#8203;jongwooo
- Fix wrong apiVersion used when CRUDing a CustomResource. Thanks to @&#8203;damsien
- Fix Custom CA not being used when refreshing token. Thanks to @&#8203;mlbiam
- Fix useKubeObject to use standard websocket connection instead of multiplexed
- Fix the runCommand to properly take into account user and static plugins
- Fix errors caused due to null resource in Header actions. Thanks to @&#8203;kahirokunn
- Fix ReplicaSetGlance props to include Statefulset
- Fix ID and kind clashes in Map component
- Fix plugin watch doing a loop on mac
- Fix uninstalling plugins to use user's plugin directory instead of default plugins directory

#### 🌍 Internationalization
- Update chinese translations. Thanks to @&#8203;lou-lan and @&#8203;hsiangjenli
- Add i18n helper tools for extracting and copying translations

#### 🧩 Shipped Plugins
- Update shipped plugin Prometheus
   - Update headlamp-plugin to 0.13.0
- Update shipped plugin Plugin Catalog (Desktop only)
   - Update headlamp-plugin to 0.13.0
- Update shipped plugin App catalog (Desktop only)
   - Fix artifacthub charts searching in App catalog plugin. Thanks to @&#8203;xqm32
   - Update headlamp-plugin to 0.13.0

#### 💻 Development
- Update dependencies on plugins examples, app, pluginctl and frontend
- Add verify-image-digests make recipe for verifying image digests
- Update releaser cli to handle triggering app builds
- Add e2e test for in-cluster deployment
- Remove unused deps from headlamp-plugin
- Add Activity to pluginLib

#### 📖 Documentation
- Fix typo and missing links in docs. Thanks to @&#8203;BublikTV, @&#8203;SinghaAnirban005, and @&#8203;SQLJames
- Add User Guides, Development Guides, Learn and Develop sections to docs
- Add documentation and example for Activitiy feature that allows devs to create resizeable popup windows
- Add example showcasing how to register header functions to projects

#### 🛡️ Security

- [CVE-2025-14269](https://github.com/kubernetes-sigs/headlamp/issues/4282): Credential caching in Headlamp with non-default enableHelm option is true in in-cluster version of Headlamp and not Headlamp Desktop. Thanks brndstrp and [@&#8203;cji](https://github.com/cji)

**Full Changelog**: <https://github.com/kubernetes-sigs/headlamp/compare/v0.38.0...v0.39.0>

<!-- end-release-notes -->

**Container image:** 🐳  [ghcr.io/headlamp-k8s/headlamp:v0.39.0](https://github.com/orgs/headlamp-k8s/packages/container/package/headlamp)
**Desktop Apps:**

🐧  [Flatpak / Linux (AMD64)](https://flathub.org/apps/details/io.kinvolk.Headlamp)
🐧  Linux AppImage [AMD64](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-linux-x64.AppImage), [ARM64](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-linux-arm64.AppImage),  [ARMv7l](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-linux-armv7l.AppImage)
🐧 Linux Tarball [AMD64](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-linux-x64.tar.gz), [ARM64](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-linux-arm64.tar.gz), [ARMv7l](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-linux-armv7l.tar.gz)
🐧 Debian / Linux [AMD64](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/headlamp_0.39.0-1_amd64.deb)
:green\_apple:  [Mac (AMD64)](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-mac-x64.dmg)
:green\_apple: [Mac (ARM/M1)](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-mac-arm64.dmg)
:blue\_square:  [Windows (AMD64)](https://github.com/kubernetes-sigs/headlamp/releases/download/v0.39.0/Headlamp-0.39.0-win-x64.exe)

</details>

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhcnQiXX0=-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2714
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
2025-12-20 00:09:34 +00:00
4b0bab7a06 Update ghcr.io/linuxserver/sonarr:4.0.16 Docker digest to 8b9f213 (#2721)
All checks were successful
render-manifests-push / render-manifests-push (push) Has been skipped
lint-test-helm / lint-helm (push) Successful in 25s
renovate / renovate (push) Successful in 2m24s
2025-12-20 00:02:15 +00:00
347 changed files with 3579 additions and 5517 deletions

View File

@@ -40,6 +40,12 @@ jobs:
version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743
cache: true
- name: Configure Kubeconfig
uses: azure/k8s-set-context@v4
with:
method: kubeconfig
kubeconfig: ${{ secrets.KUBECONFIG }}
- name: Prepare Manifest Branch
id: prepare-manifest-branch
run: |
@@ -186,17 +192,17 @@ jobs:
"stack")
echo ""
echo ">> Special Rendering for stack into argocd namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
"cilium" | "coredns" | "metrics-server" |"prometheus-operator-crds")
echo ""
echo ">> Special Rendering for $chart_name into kube-system namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
*)
echo ""
echo ">> Standard Rendering for $chart_name ..."
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run)
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
esac

View File

@@ -34,6 +34,12 @@ jobs:
version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743
cache: true
- name: Configure Kubeconfig
uses: azure/k8s-set-context@v4
with:
method: kubeconfig
kubeconfig: ${{ secrets.KUBECONFIG }}
- name: Prepare Manifest Branch
run: |
cd ${MANIFEST_DIR}
@@ -108,24 +114,6 @@ jobs:
echo "----"
- name: Remove Changed Manifest Files
if: steps.check-dir-changes.outputs.changes-detected == 'true'
env:
RENDER_DIR: ${{ steps.check-dir-changes.outputs.render-dir }}
run: |
cd ${MANIFEST_DIR}
echo ">> Remove manfiest files and rebuild from source ..."
for dir in ${RENDER_DIR}; do
chart_path=${MANIFEST_DIR}/clusters/${CLUSTER}/manifests/$dir
echo "$chart_path"
rm -rf $chart_path/*
done
echo "----"
- name: Render Helm Manifests
id: render-manifests
if: steps.check-dir-changes.outputs.changes-detected == 'true'
@@ -171,17 +159,17 @@ jobs:
"stack")
echo ""
echo ">> Special Rendering for stack into argocd namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
"cilium" | "coredns" | "metrics-server" |"prometheus-operator-crds")
echo ""
echo ">> Special Rendering for $chart_name into kube-system namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
*)
echo ""
echo ">> Standard Rendering for $chart_name ..."
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run)
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
esac

View File

@@ -41,6 +41,12 @@ jobs:
version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743
cache: true
- name: Configure Kubeconfig
uses: azure/k8s-set-context@v4
with:
method: kubeconfig
kubeconfig: ${{ secrets.KUBECONFIG }}
- name: Prepare Manifest Branch
run: |
cd ${MANIFEST_DIR}
@@ -191,17 +197,17 @@ jobs:
"stack")
echo ""
echo ">> Special Rendering for stack into argocd namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
"cilium" | "coredns" | "metrics-server" |"prometheus-operator-crds")
echo ""
echo ">> Special Rendering for $chart_name into kube-system namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
*)
echo ""
echo ">> Standard Rendering for $chart_name ..."
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run)
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
esac

View File

@@ -39,6 +39,12 @@ jobs:
version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743
cache: true
- name: Configure Kubeconfig
uses: azure/k8s-set-context@v4
with:
method: kubeconfig
kubeconfig: ${{ secrets.KUBECONFIG }}
- name: Prepare Manifest Branch
run: |
cd ${MANIFEST_DIR}
@@ -189,17 +195,17 @@ jobs:
"stack")
echo ""
echo ">> Special Rendering for stack into argocd namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace argocd --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
"cilium" | "coredns" | "metrics-server" |"prometheus-operator-crds")
echo ""
echo ">> Special Rendering for $chart_name into kube-system namespace ..."
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run)
TEMPLATE=$(helm template $chart_name ./ --namespace kube-system --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
*)
echo ""
echo ">> Standard Rendering for $chart_name ..."
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run)
TEMPLATE=$(helm template "$chart_name" ./ --namespace "$chart_name" --include-crds --dry-run=server --api-versions "gateway.networking.k8s.io/v1/HTTPRoute")
;;
esac

View File

@@ -22,4 +22,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/actual-budget.png
# renovate: github=actualbudget/actual
appVersion: 25.12.0

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

@@ -42,6 +42,27 @@ actual:
port: 80
targetPort: 5006
protocol: HTTP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- actual.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: actual
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
data:
forceRename: actual-data

View File

@@ -7,6 +7,6 @@ dependencies:
version: 2.4.19
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
digest: sha256:fb51f9312fd003df7f9beced8e3583eb66c74a57820effab510bd80ce3a91558
generated: "2025-12-17T16:08:51.370582257Z"
version: 7.4.3
digest: sha256:6de7da41d9317d7942a455226e5eae682f32f1bbb7d0287b9306de847bd56fdb
generated: "2025-12-22T23:17:37.4042-06:00"

View File

@@ -25,7 +25,8 @@ dependencies:
repository: https://argoproj.github.io/argo-helm
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/argo-cd.png
# renovate: github=argoproj/argo-workflows
appVersion: v3.7.6

View File

@@ -26,70 +26,3 @@ spec:
key: /authentik/oidc/argo-workflows
metadataPolicy: None
property: client
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: argo-workflows-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: argo-workflows-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: argo-workflows-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: argo-workflows-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-argo-workflows
name: argo-workflows
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-argo-workflows
app.kubernetes.io/name: argo-workflows
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

View File

@@ -77,55 +77,43 @@ argo-events:
memory: 128Mi
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/argo-workflows/argo-workflows-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: argo-workflows-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/argo-workflows/argo-workflows-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: argo-workflows-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/argo-workflows/argo-workflows-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/argo-workflows/argo-workflows-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: argo-workflows-postgresql-18-cluster-backup-secret-garage
# endpointCredentialsIncludeRegion: true
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external

View File

@@ -1,6 +1,6 @@
dependencies:
- name: argo-cd
repository: https://argoproj.github.io/argo-helm
version: 9.1.9
digest: sha256:20cb350f423b4a9352085a7f44aa832e9640120f10c4ea1899d0b341d482a761
generated: "2025-12-19T13:02:04.764462089Z"
version: 9.1.10
digest: sha256:4970c90a7ba115a91006f27161b7fbb2e197250a548ab49f0451aab6cbe12d53
generated: "2025-12-23T23:20:06.41177841Z"

View File

@@ -15,7 +15,8 @@ maintainers:
- name: alexlebens
dependencies:
- name: argo-cd
version: 9.1.9
version: 9.1.10
repository: https://argoproj.github.io/argo-helm
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/argo-cd.png
# renovate: github=argoproj/argo-cd
appVersion: v3.2.1

View File

@@ -50,39 +50,39 @@ spec:
metadataPolicy: None
property: token
# ---
# apiVersion: external-secrets.io/v1
# kind: ExternalSecret
# metadata:
# name: argocd-gitea-repo-infrastructure-secret
# namespace: {{ .Release.Namespace }}
# labels:
# app.kubernetes.io/name: argocd-gitea-repo-infrastructure-secret
# app.kubernetes.io/instance: {{ .Release.Name }}
# app.kubernetes.io/part-of: {{ .Release.Name }}
# spec:
# secretStoreRef:
# kind: ClusterSecretStore
# name: vault
# data:
# - secretKey: type
# remoteRef:
# conversionStrategy: Default
# decodingStrategy: None
# key: /cl01tl/argocd/credentials/repo/infrastructure
# metadataPolicy: None
# property: type
# - secretKey: url
# remoteRef:
# conversionStrategy: Default
# decodingStrategy: None
# key: /cl01tl/argocd/credentials/repo/infrastructure
# metadataPolicy: None
# property: url
# - secretKey: sshPrivateKey
# remoteRef:
# conversionStrategy: Default
# decodingStrategy: None
# key: /cl01tl/argocd/credentials/repo/infrastructure
# metadataPolicy: None
# property: sshPrivateKey
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: argocd-gitea-repo-infrastructure-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: argocd-gitea-repo-infrastructure-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: type
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/argocd/credentials/repo/infrastructure
metadataPolicy: None
property: type
- secretKey: url
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/argocd/credentials/repo/infrastructure
metadataPolicy: None
property: url
- secretKey: sshPrivateKey
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/argocd/credentials/repo/infrastructure
metadataPolicy: None
property: sshPrivateKey

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-argocd
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-argocd
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:
- argocd.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: argocd-server
port: 80
weight: 100

View File

@@ -29,18 +29,6 @@ argo-cd:
rbac:
policy.csv: |
g, ArgoCD Admins, role:admin
cmp:
create: true
plugins:
cdk8s:
init:
command: [cdk8s]
args: [import]
generate:
command: [cdk8s, synth]
args: [--stdout]
discover:
fileName: "*.go"
controller:
replicas: 1
metrics:
@@ -77,34 +65,22 @@ argo-cd:
enabled: true
serviceMonitor:
enabled: true
ingress:
enabled: false
httproute:
enabled: true
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- argocd.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
repoServer:
replicas: 2
extraContainers:
- name: cmp-cdk8s
command:
- /var/run/argocd/argocd-cmp-server
image: ghcr.io/akuity/cdk8s-cmp-typescript:1.0
securityContext:
runAsNonRoot: true
runAsUser: 999
volumeMounts:
- mountPath: /var/run/argocd
name: var-files
- mountPath: /home/argocd/cmp-server/plugins
name: plugins
- mountPath: /home/argocd/cmp-server/config/plugin.yaml
subPath: cdk8s.yaml
name: argocd-cmp-cm
- mountPath: /tmp
name: cmp-tmp
volumes:
- name: argocd-cmp-cm
configMap:
name: argocd-cmp-cm
- name: cmp-tmp
emptyDir: {}
metrics:
enabled: true
serviceMonitor:

View File

@@ -28,4 +28,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/audiobookshelf.png
# renovate: github=advplyr/audiobookshelf
appVersion: 2.31.0

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-audiobookshelf
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-audiobookshelf
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:
- audiobookshelf.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: audiobookshelf
port: 80
weight: 100

View File

@@ -1,19 +0,0 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: audiobookshelf-apprise
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: audiobookshelf-apprise
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
endpoints:
- port: apprise
interval: 30s
scrapeTimeout: 15s
path: /metrics
selector:
matchLabels:
app.kubernetes.io/name: audiobookshelf
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -57,6 +57,40 @@ audiobookshelf:
port: 8000
targetPort: 8000
protocol: HTTP
serviceMonitor:
main:
selector:
matchLabels:
app.kubernetes.io/name: audiobookshelf
app.kubernetes.io/instance: audiobookshelf
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
endpoints:
- port: apprise
scheme: http
path: /metrics
interval: 30s
scrapeTimeout: 15s
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- audiobookshelf.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: audiobookshelf
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
forceRename: audiobookshelf-config

View File

@@ -7,9 +7,9 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
version: 7.4.3
- name: redis-replication
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.5.0
digest: sha256:46b5b516beba0263c6434eb41f52e9628ae14022db5a6a62aae16db01388d57b
generated: "2025-12-17T19:05:21.540808-06:00"
digest: sha256:d250e40d77b3010d55c258e264e36de060a6dbdb78fe56bdbfbc427692cfdcc7
generated: "2025-12-23T16:28:00.416521-06:00"

View File

@@ -28,10 +28,11 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
- name: redis-replication
version: 0.5.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/authentik.png
# renovate: github=goauthentik/authentik
appVersion: 2025.10.2

View File

@@ -19,70 +19,3 @@ spec:
key: /cl01tl/authentik/key
metadataPolicy: None
property: key
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: authentik-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: authentik-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: authentik-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: authentik-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-authentik
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-authentik
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:
- authentik.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: authentik-server
port: 80
weight: 100

View File

@@ -36,8 +36,23 @@ authentik:
enabled: true
serviceMonitor:
enabled: true
ingress:
enabled: false
route:
main:
enabled: true
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
hostnames:
- authentik.alexlebens.net
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
httpsRedirect: false
matches:
- path:
type: PathPrefix
value: /
worker:
name: worker
replicas: 1
@@ -50,58 +65,46 @@ authentik:
enabled: false
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/authentik/authentik-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: authentik-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/authentik/authentik-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: authentik-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/authentik/authentik-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/authentik/authentik-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: authentik-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: false
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
redis-replication:
existingSecret:
enabled: false

View File

@@ -26,4 +26,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/backrest.png
# renovate: github=garethgeorge/backrest
appVersion: v1.10.1

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-backrest
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-backrest
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:
- backrest.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: backrest
port: 80
weight: 100

View File

@@ -1,14 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: garage-ps10rp
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: garage-ps10rp
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
annotations:
tailscale.com/tailnet-fqdn: garage-ps10rp.boreal-beaufort.ts.net
spec:
externalName: placeholder
type: ExternalName

View File

@@ -33,6 +33,27 @@ backrest:
port: 80
targetPort: 9898
protocol: TCP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- backrest.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: backrest
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
data:
forceRename: backrest-data

View File

@@ -24,4 +24,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/bazarr.png
# renovate: github=linuxserver/bazarr
appVersion: 1.5.3

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-bazarr
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-bazarr
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:
- bazarr.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: bazarr
port: 80
weight: 100

View File

@@ -15,7 +15,7 @@ bazarr:
main:
image:
repository: ghcr.io/linuxserver/bazarr
tag: 1.5.3@sha256:648f694532a3a53d8cf78bc888919ef538659bad41af4c680b0427ad1047d171
tag: 1.5.3@sha256:001875e61839c8a50743f0bc0fa4da2a55ed8a038b9b5ed0dd2c663dd3d0bfc7
pullPolicy: IfNotPresent
env:
- name: TZ
@@ -36,6 +36,27 @@ bazarr:
port: 80
targetPort: 6767
protocol: HTTP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- bazarr.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: bazarr
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
forceRename: bazarr-config

View File

@@ -21,4 +21,5 @@ dependencies:
version: 0.5.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/blocky.png
# renovate: github=0xerr0r/blocky
appVersion: v0.28.2

View File

@@ -1,19 +0,0 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: blocky
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: blocky
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
selector:
matchLabels:
app.kubernetes.io/name: blocky
app.kubernetes.io/instance: {{ .Release.Name }}
endpoints:
- port: metrics
interval: 30s
scrapeTimeout: 10s
path: /metrics

View File

@@ -129,7 +129,6 @@ blocky:
huntarr IN CNAME traefik-cl01tl
immich IN CNAME traefik-cl01tl
jellyfin IN CNAME traefik-cl01tl
jellyfin-vue IN CNAME traefik-cl01tl
jellystat IN CNAME traefik-cl01tl
kiwix IN CNAME traefik-cl01tl
komodo IN CNAME traefik-cl01tl
@@ -289,6 +288,19 @@ blocky:
port: 4000
targetPort: 4000
protocol: TCP
serviceMonitor:
main:
selector:
matchLabels:
app.kubernetes.io/name: blocky
app.kubernetes.io/instance: blocky
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
endpoints:
- port: metrics
scheme: http
path: /metrics
interval: 30s
scrapeTimeout: 10s
persistence:
config:
enabled: true

View File

@@ -29,4 +29,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/booklore.png
# renovate: github=booklore-app/BookLore
appVersion: v1.13.2

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-booklore
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-booklore
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:
- booklore.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: booklore
port: 80
weight: 100

View File

@@ -1,14 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: garage-ps10rp
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: garage-ps10rp
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
annotations:
tailscale.com/tailnet-fqdn: garage-ps10rp.boreal-beaufort.ts.net
spec:
externalName: placeholder
type: ExternalName

View File

@@ -9,7 +9,7 @@ booklore:
main:
image:
repository: ghcr.io/booklore-app/booklore
tag: v1.14.1
tag: v1.15.0
pullPolicy: IfNotPresent
env:
- name: TZ
@@ -39,6 +39,27 @@ booklore:
port: 80
targetPort: 6060
protocol: HTTP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- booklore.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: booklore
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
forceRename: booklore-config

View File

@@ -17,4 +17,5 @@ dependencies:
version: v1.19.2
repository: https://charts.jetstack.io
icon: https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/cert-manager.png
# renovate: github=cert-manager/cert-manager
appVersion: v1.19.2

View File

@@ -18,4 +18,5 @@ dependencies:
version: 1.18.5
repository: https://helm.cilium.io/
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/cilium.png
# renovate: github=cilium/cilium
appVersion: 1.18.4

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-hubble
name: hubble
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-hubble
app.kubernetes.io/name: hubble
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

View File

@@ -60,7 +60,7 @@ cilium:
method: cronJob
relay:
enabled: true
metrics:
prometheus:
serviceMonitor:
enabled: true
ui:

View File

@@ -22,4 +22,5 @@ dependencies:
version: 0.3.1
repository: https://cloudnative-pg.io/charts/
icon: https://avatars.githubusercontent.com/u/100373852?s=200&v=4
# renovate: github=cloudnative-pg/cloudnative-pg
appVersion: 1.28.0

View File

@@ -28,4 +28,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/visual-studio-code.png
# renovate: github=coder/code-server
appVersion: 4.106.3

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-code-server
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-code-server
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:
- code-server.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: code-server
port: 8443
weight: 100

View File

@@ -35,6 +35,27 @@ code-server:
port: 8443
targetPort: 8443
protocol: HTTP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- code-server.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: code-server
port: 8443
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
forceRename: code-server-config

View File

@@ -18,4 +18,5 @@ dependencies:
version: 1.45.0
repository: https://coredns.github.io/helm
icon: https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/coredns.png
# renovate: github=coredns/coredns
appVersion: v1.13.2

View File

@@ -1,7 +1,7 @@
coredns:
image:
repository: registry.k8s.io/coredns/coredns
tag: v1.13.1
tag: v1.13.2
replicaCount: 3
resources:
requests:

View File

@@ -17,4 +17,5 @@ dependencies:
repository: https://democratic-csi.github.io/charts/
version: 0.15.0
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
# renovate: github=democratic-csi/democratic-csi
appVersion: v1.9.4

View File

@@ -17,4 +17,5 @@ dependencies:
version: 0.34.0
repository: https://kubernetes-sigs.github.io/descheduler/
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
# renovate: github=kubernetes-sigs/descheduler
appVersion: 0.34.0

View File

@@ -7,9 +7,9 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
version: 7.4.3
- name: redis-replication
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.5.0
digest: sha256:a4edd6afdd831350f1d131192eed82da6673fd0f37b4bab7a139e51efb4b717a
generated: "2025-12-17T19:05:49.085243-06:00"
digest: sha256:d9c95b9a697ebe9fb98ebb2a5e2f7058c26b9207742eadcd56f278ff36d00855
generated: "2025-12-23T16:47:50.269275-06:00"

View File

@@ -26,10 +26,11 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
- name: redis-replication
version: 0.5.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/directus.png
# renovate: github=directus/directus
appVersion: 11.14.0

View File

@@ -123,70 +123,3 @@ spec:
key: /cl01tl/directus/redis
metadataPolicy: None
property: password
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: directus-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: directus-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: directus-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: directus-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -1,22 +0,0 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: directus
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: directus
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
selector:
matchLabels:
app.kubernetes.io/name: directus
app.kubernetes.io/instance: {{ .Release.Name }}
endpoints:
- port: http
interval: 30s
scrapeTimeout: 15s
path: /metrics
bearerTokenSecret:
name: directus-metric-token
key: metric-token

View File

@@ -153,60 +153,63 @@ directus:
port: 80
targetPort: 8055
protocol: TCP
serviceMonitor:
main:
selector:
matchLabels:
app.kubernetes.io/name: directus
app.kubernetes.io/instance: directus
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
endpoints:
- port: http
interval: 30s
scrapeTimeout: 15s
path: /metrics
bearerTokenSecret:
name: directus-metric-token
key: metric-token
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/directus/directus-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: directus-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/directus/directus-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: directus-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/directus/directus-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/directus/directus-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: directus-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: false
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
redis-replication:
existingSecret:
enabled: true

View File

@@ -18,4 +18,5 @@ dependencies:
version: 3.2.0
repository: https://helm.elastic.co
icon: https://helm.elastic.co/icons/eck.png
# renovate: github=elastic/cloud-on-k8s
appVersion: v3.2.0

View File

@@ -23,4 +23,5 @@ dependencies:
repository: oci://harbor.alexlebens.net/helm-charts
version: 2.1.4
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/element.png
# renovate: github=element-hq/element-web
appVersion: v1.12.6

View File

@@ -24,4 +24,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/ephemera.png
# renovate: github=OrwellianEpilogue/ephemera
appVersion: 1.3.1

View File

@@ -1,28 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-ephemera
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-ephemera
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:
- ephemera.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: ephemera
port: 80
weight: 100

View File

@@ -80,6 +80,27 @@ ephemera:
port: 80
targetPort: 8286
protocol: HTTP
route:
main:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- ephemera.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: ephemera
port: 80
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
forceRename: ephemera

View File

@@ -17,4 +17,5 @@ dependencies:
version: 1.4.1
repository: https://eraser-dev.github.io/eraser/charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
# renovate: github=eraser-dev/eraser
appVersion: v1.4.1

View File

@@ -19,4 +19,5 @@ dependencies:
version: 1.19.0
repository: https://kubernetes-sigs.github.io/external-dns/
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
# renovate: github=kubernetes-sigs/external-dns
appVersion: v0.20.0

View File

@@ -76,6 +76,12 @@ spec:
recordType: A
targets:
- 10.232.1.82
# Shelly Plug
- dnsName: it05sp.alexlebens.net
recordTTL: 180
recordType: A
targets:
- 10.230.0.100
---
apiVersion: externaldns.k8s.io/v1alpha1
@@ -145,7 +151,7 @@ spec:
targets:
- 10.232.1.22
# Treafik Proxy
- dnsName: plex.alexlebens.net
- dnsName: plex-lb.alexlebens.net
recordTTL: 180
recordType: A
targets:

View File

@@ -1,6 +1,6 @@
dependencies:
- name: external-secrets
repository: https://charts.external-secrets.io
version: 1.1.1
digest: sha256:d346563864c95c4ca3fe5f04f6b292e417069d171f5866b5af0fe84277481493
generated: "2025-12-06T18:01:23.564488208Z"
version: 1.2.0
digest: sha256:6e713c4b50c14d9daf1758d9f169d10a8c7274d2c42490846817b6fb1a3ce558
generated: "2025-12-20T01:04:35.136580598Z"

View File

@@ -12,7 +12,8 @@ sources:
- https://github.com/external-secrets/external-secrets/tree/main/deploy/charts/external-secrets
dependencies:
- name: external-secrets
version: 1.1.1
version: 1.2.0
repository: https://charts.external-secrets.io
icon: https://avatars.githubusercontent.com/u/68335991?s=48&v=4
# renovate: github=external-secrets/external-secrets
appVersion: v1.1.1

View File

@@ -7,9 +7,9 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
version: 7.4.3
- name: volsync-target
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.6.0
digest: sha256:e2f6634a8effedd8545a2973c421ddf0ab99dfe05af3e442d85a6af0327de90b
generated: "2025-12-18T02:44:21.564532423Z"
digest: sha256:a73351fc38c927eb7fef8c536069b21ca4d99e3ffb193ee64d9b93dbdc728ec4
generated: "2025-12-23T17:04:20.474187-06:00"

View File

@@ -26,11 +26,12 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
- name: volsync-target
alias: volsync-target-data
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/freshrss.png
# renovate: github=FreshRSS/FreshRSS
appVersion: 1.27.1

View File

@@ -70,70 +70,3 @@ spec:
key: /authentik/oidc/freshrss
metadataPolicy: None
property: crypto-key
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: freshrss-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: freshrss-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: freshrss-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: freshrss-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -194,58 +194,46 @@ freshrss:
readOnly: false
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/freshrss/freshrss-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: freshrss-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/freshrss/freshrss-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: freshrss-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/freshrss/freshrss-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/freshrss/freshrss-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: freshrss-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
volsync-target-data:
pvcTarget: freshrss-data
moverSecurityContext:

View File

@@ -23,4 +23,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
# renovate: github=deuxfleurs-org/garage
appVersion: v2.1.0

View File

@@ -1,58 +0,0 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-garage-webui
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-garage-webui
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:
- garage-webui.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: garage-webui
port: 3909
weight: 100
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-garage-s3
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-garage-s3
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:
- garage-s3.alexlebens.net
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- group: ''
kind: Service
name: garage-main
port: 3900
weight: 100

View File

@@ -1,22 +0,0 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
selector:
matchLabels:
app.kubernetes.io/name: garage
app.kubernetes.io/instance: {{ .Release.Name }}
endpoints:
- port: admin
interval: 1m
scrapeTimeout: 30s
path: /metrics
bearerTokenSecret:
name: garage-token-secret
key: GARAGE_METRICS_TOKEN

View File

@@ -104,6 +104,62 @@ garage:
port: 3909
targetPort: 3909
protocol: HTTP
serviceMonitor:
main:
selector:
matchLabels:
app.kubernetes.io/name: garage
app.kubernetes.io/instance: garage
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
endpoints:
- port: admin
interval: 1m
scrapeTimeout: 30s
path: /metrics
bearerTokenSecret:
name: garage-token-secret
key: GARAGE_METRICS_TOKEN
route:
webui:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- garage-webui.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: garage-webui
port: 3909
weight: 100
matches:
- path:
type: PathPrefix
value: /
s3:
kind: HTTPRoute
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: traefik-gateway
namespace: traefik
hostnames:
- garage-s3.alexlebens.net
rules:
- backendRefs:
- group: ''
kind: Service
name: garage-main
port: 3900
weight: 100
matches:
- path:
type: PathPrefix
value: /
persistence:
config:
enabled: true

View File

@@ -4,9 +4,9 @@ dependencies:
version: 1.4.4
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
version: 7.4.3
- name: volsync-target
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.6.0
digest: sha256:74d021b2678ebf78f49dd4b2c59e93a1ed48f316182051ced8d98a5918d811f7
generated: "2025-12-18T02:44:45.464671146Z"
digest: sha256:a4f701f64327062a92b491d97728f02367e09412aca46705c1cbd8c2c438d76a
generated: "2025-12-23T17:10:07.510553-06:00"

View File

@@ -22,11 +22,12 @@ dependencies:
version: 1.4.4
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
- name: volsync-target
alias: volsync-target-data
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/gatus.png
# renovate: github=TwiN/gatus
appVersion: v5.33.0

View File

@@ -49,70 +49,3 @@ spec:
key: /authentik/oidc/gatus
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: gatus-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: gatus-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: gatus-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: gatus-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-gatus
name: gatus
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-gatus
app.kubernetes.io/name: gatus
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

View File

@@ -122,9 +122,6 @@ gatus:
- name: jellyfin
url: https://jellyfin.alexlebens.net
<<: *defaults
- name: jellyfin-vue
url: https://jellyfin-vue.alexlebens.net
<<: *defaults
- name: overseerr
url: https://overseerr.alexlebens.net
<<: *defaults
@@ -375,57 +372,45 @@ gatus:
group: external
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/gatus/gatus-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: gatus-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/gatus/gatus-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: gatus-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/gatus/gatus-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/gatus/gatus-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: gatus-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
volsync-target-data:
pvcTarget: gatus

View File

@@ -1,6 +1,6 @@
dependencies:
- name: generic-device-plugin
repository: https://gitea.alexlebens.dev/api/packages/alexlebens/helm
version: 0.20.8
digest: sha256:166bd29d6e7c70d6a5ffae32b6a140535bc08211140b40cadd93596aa8f4be5f
generated: "2025-12-16T18:01:57.978660845Z"
version: 0.20.9
digest: sha256:bb46a35e02e0b430423cc47f9a44f3eff3c6075d379705e1f36ecd3e61468238
generated: "2025-12-24T00:10:27.950467391Z"

View File

@@ -15,6 +15,6 @@ maintainers:
dependencies:
- name: generic-device-plugin
repository: https://gitea.alexlebens.dev/api/packages/alexlebens/helm
version: 0.20.8
version: 0.20.9
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
appVersion: 1.0.0

View File

@@ -13,7 +13,7 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
version: 7.4.3
- name: redis-replication
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.5.0
@@ -23,5 +23,5 @@ dependencies:
- name: volsync-target
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.6.0
digest: sha256:f09550045ca1edf54682da6f55dfc596c1849c42244ee50bb797e6fe1148fc55
generated: "2025-12-18T02:44:58.69768Z"
digest: sha256:978756233cbc1b10dedb4bd60568809ab368b0023732dbfeefa81d3c3fa95459
generated: "2025-12-23T17:13:14.918887-06:00"

View File

@@ -39,7 +39,7 @@ dependencies:
version: 2.1.4
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
- name: redis-replication
alias: redis-replication-gitea
@@ -54,4 +54,5 @@ dependencies:
version: 0.6.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/gitea.png
# renovate: github=go-gitea/gitea
appVersion: 1.25.2

View File

@@ -196,70 +196,3 @@ spec:
key: /cl01tl/gitea/meilisearch
metadataPolicy: None
property: MEILI_MASTER_KEY
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: gitea-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: gitea-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: gitea-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: gitea-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-gitea
name: gitea
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-gitea
app.kubernetes.io/name: gitea
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: TCPRoute
metadata:
name: tcp-route-gitea-ssh
name: gitea-ssh
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: tcp-route-gitea-ssh
app.kubernetes.io/name: gitea-ssh
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

View File

@@ -188,10 +188,6 @@ meilisearch:
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
resources:
requests:
memory: 1Gi
@@ -199,50 +195,43 @@ postgres-18-cluster:
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/gitea/gitea-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: gitea-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/gitea/gitea-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: gitea-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/gitea/gitea-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/gitea/gitea-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: gitea-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
redis-replication-gitea:
replicationNameOverride: redis-replication-gitea
sentinelNameOverride: redis-sentinel-gitea

View File

@@ -4,12 +4,12 @@ dependencies:
version: 5.21.3
- name: postgres-cluster
repository: oci://harbor.alexlebens.net/helm-charts
version: 7.1.3
version: 7.4.3
- name: redis-replication
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.5.0
- name: redis-replication
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.5.0
digest: sha256:365d2278759e660dd77e390100d6836cc464a11fed69637aae0e6862b78430df
generated: "2025-12-18T02:40:54.026064824Z"
digest: sha256:cf38a5967c4da4236045746fcd619b4abd655feb4da970a398e282193ddb887e
generated: "2025-12-23T17:15:11.407801-06:00"

View File

@@ -21,7 +21,7 @@ dependencies:
repository: https://grafana.github.io/helm-charts
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: oci://harbor.alexlebens.net/helm-charts
- name: redis-replication
alias: redis-replication-unified-alerting
@@ -32,4 +32,5 @@ dependencies:
version: 0.5.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/grafana.png
# renovate: github=grafana/grafana-operator
appVersion: v5.20.0

View File

@@ -605,6 +605,25 @@ spec:
resyncPeriod: 1h
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/immich.json
---
apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard
metadata:
name: grafana-dashboard-jellyfin
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: grafana-dashboard-jellyfin
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
instanceSelector:
matchLabels:
app: grafana-main
contentCacheDuration: 1h
folderUID: grafana-folder-application
resyncPeriod: 1h
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/jellyfin.json
---
apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: http-route-grafana
name: grafana
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: http-route-grafana
app.kubernetes.io/name: grafana
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

View File

@@ -14,58 +14,46 @@ grafana-operator:
enabled: false
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/grafana-operator/grafana-operator-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: grafana-operator-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/grafana-operator/grafana-operator-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: grafana-operator-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/grafana-operator/grafana-operator-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/grafana-operator/grafana-operator-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: grafana-operator-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
redis-replication-unified-alerting:
replicationNameOverride: redis-replication-unified-alerting
sentinelNameOverride: redis-sentinel-unified-alerting

View File

@@ -4,9 +4,9 @@ dependencies:
version: 1.18.1
- name: postgres-cluster
repository: https://gitea.alexlebens.net/api/packages/alexlebens/helm
version: 7.1.3
version: 7.4.3
- name: redis-replication
repository: oci://harbor.alexlebens.net/helm-charts
version: 0.5.0
digest: sha256:8c13446e75a900ff8f217ce56dda82c0128fd7d08b6c2d4db17ed312d9ec367a
generated: "2025-12-16T22:02:00.490136294Z"
digest: sha256:8f27e668381e0ce960f2dfcb6bb5b33feb708497b088b6af2a72a5816bc3df6d
generated: "2025-12-23T17:17:55.749328-06:00"

View File

@@ -21,10 +21,11 @@ dependencies:
repository: https://helm.goharbor.io
- name: postgres-cluster
alias: postgres-18-cluster
version: 7.1.3
version: 7.4.3
repository: https://gitea.alexlebens.net/api/packages/alexlebens/helm
- name: redis-replication
version: 0.5.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/harbor.png
# renovate: github=goharbor/harbor
appVersion: v2.14.1

View File

@@ -96,70 +96,3 @@ spec:
key: /cl01tl/harbor/registry
metadataPolicy: None
property: REGISTRY_CREDENTIAL_PASSWORD
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: harbor-postgresql-18-cluster-backup-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: harbor-postgresql-18-cluster-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: access
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /digital-ocean/home-infra/postgres-backups
metadataPolicy: None
property: secret
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: harbor-postgresql-18-cluster-backup-secret-garage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: harbor-postgresql-18-cluster-backup-secret-garage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: ACCESS_KEY_ID
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_KEY_ID
- secretKey: ACCESS_SECRET_KEY
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_SECRET_KEY
- secretKey: ACCESS_REGION
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /garage/home-infra/postgres-backups
metadataPolicy: None
property: ACCESS_REGION

View File

@@ -98,58 +98,46 @@ harbor:
replicas: 2
postgres-18-cluster:
mode: recovery
cluster:
storage:
storageClass: local-path
walStorage:
storageClass: local-path
recovery:
method: objectStore
objectStore:
destinationPath: s3://postgres-backups/cl01tl/harbor/harbor-postgresql-18-cluster
endpointURL: http://garage-main.garage:3900
index: 1
endpointCredentials: harbor-postgresql-18-cluster-backup-secret-garage
backup:
objectStore:
- name: garage-local
destinationPath: s3://postgres-backups/cl01tl/harbor/harbor-postgresql-18-cluster
index: 1
endpointURL: http://garage-main.garage:3900
endpointCredentials: harbor-postgresql-18-cluster-backup-secret-garage
endpointCredentialsIncludeRegion: true
retentionPolicy: "3d"
destinationBucket: postgres-backups
externalSecretCredentialPath: /garage/home-infra/postgres-backups
isWALArchiver: true
# - name: external
# destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/harbor/harbor-postgresql-18-cluster
# index: 1
# retentionPolicy: "30d"
# isWALArchiver: false
# - name: garage-remote
# destinationPath: s3://postgres-backups/cl01tl/harbor/harbor-postgresql-18-cluster
# index: 1
# endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900
# endpointCredentials: harbor-postgresql-18-cluster-backup-secret-garage
# retentionPolicy: "30d"
# destinationBucket: postgres-backups
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# retentionPolicy: "90d"
# data:
# compression: bzip2
# jobs: 2
# - name: external
# index: 1
# endpointURL: https://nyc3.digitaloceanspaces.com
# destinationBucket: postgres-backups-ce540ddf106d186bbddca68a
# externalSecretCredentialPath: /garage/home-infra/postgres-backups
# isWALArchiver: false
scheduledBackups:
- name: live-backup
suspend: false
immediate: true
schedule: "0 0 0 * * *"
backupName: garage-local
# - name: daily-backup
# suspend: false
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
# - name: weekly-backup
# suspend: true
# immediate: true
# schedule: "0 0 4 * * SAT"
# backupName: garage-remote
# - name: daily-backup
# suspend: true
# immediate: true
# schedule: "0 0 0 * * *"
# backupName: external
redis-replication:
existingSecret:
enabled: false

View File

@@ -1,6 +1,6 @@
dependencies:
- name: headlamp
repository: https://kubernetes-sigs.github.io/headlamp/
version: 0.38.0
digest: sha256:3f4c6bb308a1e5e757368ea9eee902d5ade7d33881c0f6c8402d6ed41641e260
generated: "2025-12-01T19:55:48.64361-06:00"
version: 0.39.0
digest: sha256:870e456773199684c150585c12c2e18b3f0895ee8cc73481a53b23c8e94560b1
generated: "2025-12-20T00:03:40.10414707Z"

View File

@@ -14,7 +14,8 @@ maintainers:
- name: alexlebens
dependencies:
- name: headlamp
version: 0.38.0
version: 0.39.0
repository: https://kubernetes-sigs.github.io/headlamp/
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/headlamp.png
# renovate: github=headlamp-k8s/headlamp
appVersion: 0.38.0

View File

@@ -1,10 +1,10 @@
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: https-route-headlamp
name: headlamp
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: https-route-headlamp
app.kubernetes.io/name: headlamp
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:

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