Compare commits

...

8 Commits

Author SHA1 Message Date
Morten Olsen
f550acd68b Remove apps (#50) 2025-09-25 20:56:08 +02:00
renovate[bot]
b3416b84fa chore(deps): update eslint monorepo to v9.36.0 (#33)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [@eslint/js](https://eslint.org)
([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js))
| [`9.32.0` ->
`9.36.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.32.0/9.36.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@eslint%2fjs/9.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@eslint%2fjs/9.32.0/9.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [eslint](https://eslint.org)
([source](https://redirect.github.com/eslint/eslint)) | [`9.32.0` ->
`9.36.0`](https://renovatebot.com/diffs/npm/eslint/9.32.0/9.36.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint/9.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint/9.32.0/9.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>eslint/eslint (@&#8203;eslint/js)</summary>

###
[`v9.36.0`](https://redirect.github.com/eslint/eslint/releases/tag/v9.36.0)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.35.0...v9.36.0)

#### Features

-
[`47afcf6`](47afcf668d)
feat: correct `preserve-caught-error` edge cases
([#&#8203;20109](https://redirect.github.com/eslint/eslint/issues/20109))
(Francesco Trotta)

#### Bug Fixes

-
[`75b74d8`](75b74d865d)
fix: add missing rule option types
([#&#8203;20127](https://redirect.github.com/eslint/eslint/issues/20127))
(ntnyq)
-
[`1c0d850`](1c0d85049e)
fix: update `eslint-all.js` to use `Object.freeze` for `rules` object
([#&#8203;20116](https://redirect.github.com/eslint/eslint/issues/20116))
(루밀LuMir)
-
[`7d61b7f`](7d61b7fadc)
fix: add missing scope types to `Scope.type`
([#&#8203;20110](https://redirect.github.com/eslint/eslint/issues/20110))
(Pixel998)
-
[`7a670c3`](7a670c301b)
fix: correct rule option typings in `rules.d.ts`
([#&#8203;20084](https://redirect.github.com/eslint/eslint/issues/20084))
(Pixel998)

#### Documentation

-
[`b73ab12`](b73ab12acd)
docs: update examples to use `defineConfig`
([#&#8203;20131](https://redirect.github.com/eslint/eslint/issues/20131))
(sethamus)
-
[`31d9392`](31d9392699)
docs: fix typos
([#&#8203;20118](https://redirect.github.com/eslint/eslint/issues/20118))
(Pixel998)
-
[`c7f861b`](c7f861b3f8)
docs: Update README (GitHub Actions Bot)
-
[`6b0c08b`](6b0c08b106)
docs: Update README (GitHub Actions Bot)
-
[`91f97c5`](91f97c5046)
docs: Update README (GitHub Actions Bot)

#### Chores

-
[`12411e8`](12411e8d45)
chore: upgrade
[@&#8203;eslint/js](https://redirect.github.com/eslint/js)@&#8203;9.36.0
([#&#8203;20139](https://redirect.github.com/eslint/eslint/issues/20139))
(Milos Djermanovic)
-
[`488cba6`](488cba6b39)
chore: package.json update for
[@&#8203;eslint/js](https://redirect.github.com/eslint/js) release
(Jenkins)
-
[`bac82a2`](bac82a2a9c)
ci: simplify renovate configuration
([#&#8203;19907](https://redirect.github.com/eslint/eslint/issues/19907))
(唯然)
-
[`c00bb37`](c00bb37d62)
ci: bump actions/labeler from 5 to 6
([#&#8203;20090](https://redirect.github.com/eslint/eslint/issues/20090))
(dependabot\[bot])
-
[`fee751d`](fee751dc8a)
refactor: use `defaultOptions` in rules
([#&#8203;20121](https://redirect.github.com/eslint/eslint/issues/20121))
(Pixel998)
-
[`1ace67d`](1ace67d9f7)
chore: update example to use `defineConfig`
([#&#8203;20111](https://redirect.github.com/eslint/eslint/issues/20111))
(루밀LuMir)
-
[`4821963`](4821963bf7)
test: add missing loc information to error objects in rule tests
([#&#8203;20112](https://redirect.github.com/eslint/eslint/issues/20112))
(루밀LuMir)
-
[`b42c42e`](b42c42e7cd)
chore: disallow use of deprecated `type` property in core rule tests
([#&#8203;20094](https://redirect.github.com/eslint/eslint/issues/20094))
(Milos Djermanovic)
-
[`7bb498d`](7bb498d720)
test: remove deprecated `type` property from core rule tests
([#&#8203;20093](https://redirect.github.com/eslint/eslint/issues/20093))
(Pixel998)
-
[`e10cf2a`](e10cf2ab42)
ci: bump actions/setup-node from 4 to 5
([#&#8203;20089](https://redirect.github.com/eslint/eslint/issues/20089))
(dependabot\[bot])
-
[`5cb0ce4`](5cb0ce48ef)
refactor: use `meta.defaultOptions` in `preserve-caught-error`
([#&#8203;20080](https://redirect.github.com/eslint/eslint/issues/20080))
(Pixel998)
-
[`f9f7cb5`](f9f7cb578d)
chore: package.json update for eslint-config-eslint release (Jenkins)
-
[`81764b2`](81764b2980)
chore: update `eslint` peer dependency in `eslint-config-eslint`
([#&#8203;20079](https://redirect.github.com/eslint/eslint/issues/20079))
(Milos Djermanovic)

###
[`v9.35.0`](https://redirect.github.com/eslint/eslint/compare/v9.34.0...af2a0870fdc646091d027516601888923e5bc202)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.34.0...v9.35.0)

###
[`v9.34.0`](https://redirect.github.com/eslint/eslint/compare/v9.33.0...b48fa20034e53bc65d1a58f3d834705e3087b00c)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.33.0...v9.34.0)

###
[`v9.33.0`](https://redirect.github.com/eslint/eslint/compare/v9.32.0...ad283717ed4764a171120ca7c6cba82a78fa024c)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.32.0...v9.33.0)

</details>

<details>
<summary>eslint/eslint (eslint)</summary>

###
[`v9.36.0`](https://redirect.github.com/eslint/eslint/compare/v9.35.0...b4857e54e54b5dba96d156cd8d8b4d42dc5a3bf4)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.35.0...v9.36.0)

###
[`v9.35.0`](https://redirect.github.com/eslint/eslint/compare/v9.34.0...8401101d1e3e3e4e1edc2a9e59cafc9956bf2610)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.34.0...v9.35.0)

###
[`v9.34.0`](https://redirect.github.com/eslint/eslint/compare/v9.33.0...b8875f67a7bc99824f19147f4a669be7e98f3eee)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.33.0...v9.34.0)

###
[`v9.33.0`](https://redirect.github.com/eslint/eslint/compare/v9.32.0...a90d7c4fe5ef83054e29d21d7ffb442103429d03)

[Compare
Source](https://redirect.github.com/eslint/eslint/compare/v9.32.0...v9.33.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 becomes conflicted, or you tick the
rebase/retry checkbox.

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:52:06 +02:00
renovate[bot]
1f5e5d57cb chore(deps): update renovatebot/github-action action to v43 (#41)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[renovatebot/github-action](https://redirect.github.com/renovatebot/github-action)
| action | major | `v40.3.6` -> `v43.0.13` |

---

### Release Notes

<details>
<summary>renovatebot/github-action (renovatebot/github-action)</summary>

###
[`v43.0.13`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.13)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.12...v43.0.13)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.122.3
([e77f32f](e77f32f947))
- update references to renovatebot/github-action to v43.0.12
([653e4da](653e4da64c))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v11.0.6
([ea536ec](ea536ec7f8))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.19.14
([ed55387](ed55387191))
- **deps:** update dependency globals to v16.4.0
([ba12fc4](ba12fc491e))
- **deps:** update dependency semantic-release to v24.2.8
([bdb84f9](bdb84f9d76))
- **deps:** update dependency typescript-eslint to v8.43.0
([616a01b](616a01b57f))
- **deps:** update pnpm to v10.16.0
([08a05ea](08a05eac75))
- **deps:** update pnpm to v10.16.1
([bcc5fe0](bcc5fe06a7))

##### Build System

- **deps:** lock file maintenance
([1278ad3](1278ad3a00))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.113.5
([8107f7d](8107f7d58d))
- **deps:** update renovate docker tag to v41.113.6
([c25039a](c25039a976))
- **deps:** update renovate docker tag to v41.113.7
([547c0f0](547c0f00ee))
- **deps:** update renovate docker tag to v41.114.0
([9b1f431](9b1f431640))
- **deps:** update renovate docker tag to v41.115.0
([f757c34](f757c349b5))
- **deps:** update renovate docker tag to v41.115.1
([d585b00](d585b000d6))
- **deps:** update renovate docker tag to v41.115.2
([8c011ca](8c011caef2))
- **deps:** update renovate docker tag to v41.115.4
([52f66bb](52f66bb6c6))
- **deps:** update renovate docker tag to v41.115.5
([7390745](7390745d95))
- **deps:** update renovate docker tag to v41.115.6
([498edef](498edef6c8))
- **deps:** update renovate docker tag to v41.116.1
([4f9581d](4f9581d96e))
- **deps:** update renovate docker tag to v41.116.10
([c9a9c99](c9a9c99cd3))
- **deps:** update renovate docker tag to v41.116.2
([ed4d0bb](ed4d0bb582))
- **deps:** update renovate docker tag to v41.116.3
([1b30889](1b308896cd))
- **deps:** update renovate docker tag to v41.116.5
([b96fb41](b96fb41d00))
- **deps:** update renovate docker tag to v41.116.6
([9bcf08c](9bcf08ccd6))
- **deps:** update renovate docker tag to v41.116.7
([b89adc7](b89adc7566))
- **deps:** update renovate docker tag to v41.116.8
([abee5ff](abee5ff462))
- **deps:** update renovate docker tag to v41.117.0
([4a4709f](4a4709fd5f))
- **deps:** update renovate docker tag to v41.118.0
([ecbe520](ecbe5207c6))
- **deps:** update renovate docker tag to v41.118.1
([051f97e](051f97e2de))
- **deps:** update renovate docker tag to v41.119.0
([28e7e1d](28e7e1de34))
- **deps:** update renovate docker tag to v41.119.4
([a1ffb8d](a1ffb8d2bc))
- **deps:** update renovate docker tag to v41.119.5
([49be121](49be121dc6))
- **deps:** update renovate docker tag to v41.119.6
([8f6f258](8f6f258c3b))
- **deps:** update renovate docker tag to v41.121.1
([3e88114](3e8811483b))
- **deps:** update renovate docker tag to v41.121.3
([db50bb4](db50bb46f8))
- **deps:** update renovate docker tag to v41.121.4
([47f54ca](47f54ca0cc))
- **deps:** update renovate docker tag to v41.122.0
([0d90aa6](0d90aa6bd2))
- **deps:** update renovate docker tag to v41.122.1
([41ba176](41ba1762f4))
- **deps:** update renovate docker tag to v41.122.2
([18ca40b](18ca40b978))
- **deps:** update renovate docker tag to v41.122.3
([8462f7c](8462f7c19a))

###
[`v43.0.12`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.12)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.11...v43.0.12)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.113.3
([6ff1007](6ff1007d74))
- update references to renovatebot/github-action to v43.0.11
([b1f4d3e](b1f4d3ed95))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.19.12
([9e39ec0](9e39ec0dc7))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.19.13
([c45925e](c45925e00e))
- **deps:** update dependency typescript-eslint to v8.42.0
([0065091](00650917d4))
- **deps:** update linters to v9.35.0
([da1ea10](da1ea10570))
- **deps:** update pnpm to v10.15.1
([19bd80c](19bd80c31d))

##### Build System

- **deps:** lock file maintenance
([983234a](983234a432))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.100.0
([f3ac028](f3ac028ebf))
- **deps:** update renovate docker tag to v41.103.0
([bc2b208](bc2b208750))
- **deps:** update renovate docker tag to v41.105.0
([c64558a](c64558a9bb))
- **deps:** update renovate docker tag to v41.107.0
([8891399](88913997e2))
- **deps:** update renovate docker tag to v41.109.0
([71ce752](71ce7526fe))
- **deps:** update renovate docker tag to v41.111.0
([3e4fb61](3e4fb61c5c))
- **deps:** update renovate docker tag to v41.112.0
([4833cda](4833cdabd0))
- **deps:** update renovate docker tag to v41.113.0
([23d00ec](23d00ec246))
- **deps:** update renovate docker tag to v41.113.2
([94eed51](94eed51595))
- **deps:** update renovate docker tag to v41.113.3
([1bdfd59](1bdfd59d24))
- **deps:** update renovate docker tag to v41.97.10
([dc222e4](dc222e45f0))
- **deps:** update renovate docker tag to v41.98.0
([6675bb6](6675bb6606))
- **deps:** update renovate docker tag to v41.98.1
([e8c62d0](e8c62d0737))
- **deps:** update renovate docker tag to v41.98.2
([b33786c](b33786c6c9))
- **deps:** update renovate docker tag to v41.98.3
([ad18df2](ad18df2834))
- **deps:** update renovate docker tag to v41.98.4
([3194766](3194766ef4))
- **deps:** update renovate docker tag to v41.99.1
([04f5a7f](04f5a7fc7a))
- **deps:** update renovate docker tag to v41.99.11
([c4dc84e](c4dc84e7e1))
- **deps:** update renovate docker tag to v41.99.2
([f8e1197](f8e1197a5b))
- **deps:** update renovate docker tag to v41.99.5
([ff05f9e](ff05f9e5cd))
- **deps:** update renovate docker tag to v41.99.6
([e66f3a5](e66f3a5292))
- **deps:** update renovate docker tag to v41.99.7
([ace35a1](ace35a1cc7))
- **deps:** update renovate docker tag to v41.99.8
([be9ee49](be9ee49b4f))
- **deps:** update renovate docker tag to v41.99.9
([ab4314a](ab4314a776))

###
[`v43.0.11`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.11)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.10...v43.0.11)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.97.9
([6393760](639376097c))
- update references to renovatebot/github-action to v43.0.10
([f6c87b9](f6c87b9ba0))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v11.0.5
([358d227](358d227da9))
- **deps:** update dependency typescript-eslint to v8.41.0
([8107f53](8107f530db))
- **deps:** update node.js to v20.19.5
([017ff1e](017ff1ea6f))

##### Build System

- **deps:** lock file maintenance
([2cf635b](2cf635b3cd))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.91.4
([e2dc787](e2dc78789d))
- **deps:** update renovate docker tag to v41.92.0
([28726c5](28726c5c9b))
- **deps:** update renovate docker tag to v41.92.1
([c8b6f32](c8b6f3235f))
- **deps:** update renovate docker tag to v41.93.2
([37b57c5](37b57c59ba))
- **deps:** update renovate docker tag to v41.93.3
([d547e06](d547e06b71))
- **deps:** update renovate docker tag to v41.95.0
([d4b451d](d4b451dddc))
- **deps:** update renovate docker tag to v41.95.2
([6ddecaa](6ddecaad6d))
- **deps:** update renovate docker tag to v41.96.0
([a99d64b](a99d64bd4c))
- **deps:** update renovate docker tag to v41.96.1
([43d7691](43d7691f81))
- **deps:** update renovate docker tag to v41.96.2
([36ab9e6](36ab9e6077))
- **deps:** update renovate docker tag to v41.97.2
([1bd590d](1bd590d6bc))
- **deps:** update renovate docker tag to v41.97.4
([3902134](3902134132))
- **deps:** update renovate docker tag to v41.97.5
([70b1fce](70b1fcef0a))
- **deps:** update renovate docker tag to v41.97.7
([df7fd2e](df7fd2eac1))
- **deps:** update renovate docker tag to v41.97.9
([e74772d](e74772da24))

###
[`v43.0.10`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.10)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.9...v43.0.10)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.91.3
([2421bf0](2421bf05c4))
- update references to renovatebot/github-action to v43.0.9
([dce1fd0](dce1fd0df0))

##### Miscellaneous Chores

- **deps:** update dependency typescript-eslint to v8.40.0
([2cc3b36](2cc3b362ea))
- **deps:** update linters to v9.34.0
([b091292](b0912928a7))
- **deps:** update pnpm to v10.15.0
([0f19013](0f190130d2))

##### Build System

- **deps:** lock file maintenance
([b818791](b818791eb8))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.83.1
([d3ec2f4](d3ec2f4b9a))
- **deps:** update renovate docker tag to v41.83.2
([e996eb9](e996eb91ce))
- **deps:** update renovate docker tag to v41.84.0
([8ad79b0](8ad79b0a6a))
- **deps:** update renovate docker tag to v41.85.0
([08e121c](08e121c3b9))
- **deps:** update renovate docker tag to v41.86.0
([fa48644](fa48644f2e))
- **deps:** update renovate docker tag to v41.87.0
([ce54d02](ce54d02fda))
- **deps:** update renovate docker tag to v41.87.1
([55e08ff](55e08ff622))
- **deps:** update renovate docker tag to v41.87.3
([9d099f0](9d099f0774))
- **deps:** update renovate docker tag to v41.87.4
([ba0ae33](ba0ae33a3b))
- **deps:** update renovate docker tag to v41.88.0
([a8d1405](a8d1405861))
- **deps:** update renovate docker tag to v41.88.1
([4584b1f](4584b1fdcb))
- **deps:** update renovate docker tag to v41.88.2
([53dc6d0](53dc6d09c2))
- **deps:** update renovate docker tag to v41.89.1
([d8007b4](d8007b4214))
- **deps:** update renovate docker tag to v41.90.0
([6398f00](6398f00d52))
- **deps:** update renovate docker tag to v41.91.0
([f379948](f37994859b))
- **deps:** update renovate docker tag to v41.91.1
([369fe18](369fe18820))
- **deps:** update renovate docker tag to v41.91.2
([eb52b67](eb52b67292))
- **deps:** update renovate docker tag to v41.91.3
([79f3f97](79f3f978ab))

###
[`v43.0.9`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.9)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.8...v43.0.9)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.82.10
([b051c54](b051c54164))
- update references to renovatebot/github-action to v43.0.8
([1975fdd](1975fdd1e0))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.19.11
([db24234](db24234d76))
- **deps:** update dependency esbuild to v0.25.9
([03070ea](03070ea35a))
- **deps:** update dependency typescript-eslint to v8.39.1
([f87ec92](f87ec927eb))

##### Build System

- **deps:** lock file maintenance
([7fba116](7fba116efd))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.77.0
([0dadd22](0dadd22546))
- **deps:** update renovate docker tag to v41.78.1
([80ca251](80ca251c36))
- **deps:** update renovate docker tag to v41.79.0
([5f906d3](5f906d3765))
- **deps:** update renovate docker tag to v41.80.0
([74d8d43](74d8d43f0b))
- **deps:** update renovate docker tag to v41.81.0
([0fdafb0](0fdafb07ca))
- **deps:** update renovate docker tag to v41.81.1
([8a0a452](8a0a452089))
- **deps:** update renovate docker tag to v41.81.2
([36c5210](36c5210215))
- **deps:** update renovate docker tag to v41.81.4
([c779f49](c779f493c5))
- **deps:** update renovate docker tag to v41.81.5
([85fd9ac](85fd9ac3d5))
- **deps:** update renovate docker tag to v41.81.6
([9993804](99938042ba))
- **deps:** update renovate docker tag to v41.82.1
([dd2f675](dd2f675ddd))
- **deps:** update renovate docker tag to v41.82.10
([f34823e](f34823e3a3))
- **deps:** update renovate docker tag to v41.82.3
([f920e5a](f920e5a83d))
- **deps:** update renovate docker tag to v41.82.4
([c715863](c7158638af))
- **deps:** update renovate docker tag to v41.82.5
([8116e7d](8116e7d10b))
- **deps:** update renovate docker tag to v41.82.6
([6a5439d](6a5439db7c))
- **deps:** update renovate docker tag to v41.82.9
([0c87c2d](0c87c2dfc9))

###
[`v43.0.8`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.8)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.7...v43.0.8)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.76.0
([03f5409](03f54097a8))
- update references to renovatebot/github-action to v43.0.7
([3481be4](3481be4d37))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v11.0.4
([ac62f3b](ac62f3bb46))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.19.10
([c6850c5](c6850c5279))
- **deps:** update dependency typescript-eslint to v8.39.0
([cdd6478](cdd647815f))
- **deps:** update linters to v9.33.0
([c9eb89b](c9eb89b063))

##### Build System

- **deps:** lock file maintenance
([24ab2b0](24ab2b0351))

##### Continuous Integration

- **deps:** update actions/checkout action to v4.3.0
([3829454](38294546f7))
- **deps:** update renovate docker tag to v41.62.1
([a85412b](a85412bc78))
- **deps:** update renovate docker tag to v41.62.3
([3e97d68](3e97d68dfd))
- **deps:** update renovate docker tag to v41.62.4
([7e836da](7e836dad6e))
- **deps:** update renovate docker tag to v41.63.0
([169ad71](169ad71fde))
- **deps:** update renovate docker tag to v41.64.2
([54725d8](54725d82ce))
- **deps:** update renovate docker tag to v41.65.1
([948aa51](948aa51a0a))
- **deps:** update renovate docker tag to v41.66.1
([cdcd0eb](cdcd0eb690))
- **deps:** update renovate docker tag to v41.66.2
([537077b](537077bdda))
- **deps:** update renovate docker tag to v41.67.0
([071bd60](071bd60714))
- **deps:** update renovate docker tag to v41.69.1
([695ae37](695ae37dff))
- **deps:** update renovate docker tag to v41.70.0
([4863736](48637365ba))
- **deps:** update renovate docker tag to v41.70.2
([5637275](563727593a))
- **deps:** update renovate docker tag to v41.70.3
([e7203d7](e7203d7c12))
- **deps:** update renovate docker tag to v41.71.0
([08298cd](08298cd19c))
- **deps:** update renovate docker tag to v41.71.1
([7703e2a](7703e2a57d))
- **deps:** update renovate docker tag to v41.72.0
([e4cc9c1](e4cc9c11ed))
- **deps:** update renovate docker tag to v41.72.1
([0f819de](0f819de561))
- **deps:** update renovate docker tag to v41.73.0
([2d06c86](2d06c8696f))
- **deps:** update renovate docker tag to v41.73.2
([e4af55d](e4af55d5b6))
- **deps:** update renovate docker tag to v41.74.0
([12bcbe7](12bcbe72e8))
- **deps:** update renovate docker tag to v41.74.1
([5c6501f](5c6501ff43))
- **deps:** update renovate docker tag to v41.74.2
([8144346](81443463ad))
- **deps:** update renovate docker tag to v41.74.3
([748c10b](748c10b208))
- **deps:** update renovate docker tag to v41.75.0
([0487302](04873024ee))
- **deps:** update renovate docker tag to v41.76.0
([8823e9c](8823e9ced0))

###
[`v43.0.7`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.7)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.6...v43.0.7)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.61.1
([95f368a](95f368a7a3))
- update references to renovatebot/github-action to v43.0.6
([b7cf923](b7cf9238b9))

##### Build System

- **deps:** lock file maintenance
([4d96b3f](4d96b3f6d7))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.58.1
([aa067a1](aa067a115f))
- **deps:** update renovate docker tag to v41.58.2
([10e5a16](10e5a16cda))
- **deps:** update renovate docker tag to v41.59.0
([12a24fb](12a24fba20))
- **deps:** update renovate docker tag to v41.59.1
([a73f200](a73f2004fa))
- **deps:** update renovate docker tag to v41.59.2
([bbc2a0c](bbc2a0c8dd))
- **deps:** update renovate docker tag to v41.60.0
([c7f19cc](c7f19cc747))
- **deps:** update renovate docker tag to v41.60.1
([f853f18](f853f18a46))
- **deps:** update renovate docker tag to v41.60.2
([9c7fec5](9c7fec5dc5))
- **deps:** update renovate docker tag to v41.60.3
([76c3031](76c3031e42))
- **deps:** update renovate docker tag to v41.60.4
([7d15670](7d15670f8b))
- **deps:** update renovate docker tag to v41.61.0
([9d148c6](9d148c60c5))
- **deps:** update renovate docker tag to v41.61.1
([64de403](64de403420))

###
[`v43.0.6`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.6)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.5...v43.0.6)

##### Documentation

- update references to renovatebot/github-action to v43.0.5
([9d38d60](9d38d60caf))

##### Miscellaneous Chores

- **deps:** update actions/cache action to v4.2.4
([cc05524](cc055242a4))
- **deps:** update dependency typescript-eslint to v8.38.0
([8754a30](8754a307cd))
- **deps:** update linters to v9.32.0
([a4d46be](a4d46bed14))
- **deps:** update pnpm to v10.14.0
([6afa04b](6afa04b149))

##### Build System

- **deps:** update dependency typescript to v5.9.2
([dba2ce6](dba2ce621e))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.55.2
([f548d3b](f548d3b85f))
- **deps:** update renovate docker tag to v41.55.3
([33274ad](33274ad078))
- **deps:** update renovate docker tag to v41.56.1
([ab69233](ab692339af))
- **deps:** update renovate docker tag to v41.57.1
([18abe0f](18abe0f2a3))

###
[`v43.0.5`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.5)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.4...v43.0.5)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.43.5
([4ad9ffe](4ad9ffee08))
- update references to renovatebot/github-action to v43.0.4
([dece3de](dece3de84c))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.19.8
([d5ef9da](d5ef9dafd1))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.19.9
([92c9c01](92c9c011a8))
- **deps:** update dependency esbuild to v0.25.7
([b17b134](b17b13479b))
- **deps:** update dependency esbuild to v0.25.8
([bc7164b](bc7164bacd))
- **deps:** update dependency eslint-config-prettier to v10.1.8
([7c30522](7c30522e13))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.19
([c575bac](c575bac545))
- **deps:** update dependency typescript-eslint to v8.37.0
([e1880ed](e1880ed408))

##### Build System

- **deps:** lock file maintenance
([dbecb71](dbecb71499))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.42.0
([5a652eb](5a652eb2c3))
- **deps:** update renovate docker tag to v41.42.1
([426b9fb](426b9fb1e3))
- **deps:** update renovate docker tag to v41.42.10
([8fb57da](8fb57da6de))
- **deps:** update renovate docker tag to v41.42.11
([d110957](d1109576cf))
- **deps:** update renovate docker tag to v41.42.12
([2cfb1d5](2cfb1d5a0c))
- **deps:** update renovate docker tag to v41.42.2
([782dc42](782dc423db))
- **deps:** update renovate docker tag to v41.42.3
([21038ac](21038acb7b))
- **deps:** update renovate docker tag to v41.42.6
([2684bae](2684bae751))
- **deps:** update renovate docker tag to v41.42.8
([5cbc6ab](5cbc6ab617))
- **deps:** update renovate docker tag to v41.42.9
([eee1a9c](eee1a9cf7b))
- **deps:** update renovate docker tag to v41.43.0
([946e1e6](946e1e64ad))
- **deps:** update renovate docker tag to v41.43.1
([ba5e92b](ba5e92be41))
- **deps:** update renovate docker tag to v41.43.2
([fd74a16](fd74a1658c))
- **deps:** update renovate docker tag to v41.43.3
([516fa29](516fa291b2))
- **deps:** update renovate docker tag to v41.43.4
([13a309d](13a309d1dd))
- **deps:** update renovate docker tag to v41.43.5
([6ce8cbf](6ce8cbfc76))

###
[`v43.0.4`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.4)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.3...v43.0.4)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.40.0
([f6b47f9](f6b47f9f9b))
- update references to renovatebot/github-action to v43.0.3
([bf65217](bf652174bf))

##### Miscellaneous Chores

- **config:** migrate renovate config
([#&#8203;936](https://redirect.github.com/renovatebot/github-action/issues/936))
([39633a9](39633a9695))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.19.5
([d64161e](d64161e18f))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.19.7
([eac9c05](eac9c05561))
- **deps:** update dependency esbuild to v0.25.6
([398b041](398b041df8))
- **deps:** update dependency semantic-release to v24.2.7
([0e82a2f](0e82a2f12b))
- **deps:** update dependency typescript-eslint to v8.36.0
([14ba7bd](14ba7bde78))
- **deps:** update linters to v9.31.0
([44c4924](44c49249db))
- **deps:** update node.js to v20.19.4
([0c87f01](0c87f017aa))
- **deps:** update pnpm to v10.13.1
([96af53d](96af53dc07))

##### Build System

- **deps:** lock file maintenance
([82e5b44](82e5b44a74))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.32.2
([3be7801](3be7801303))
- **deps:** update renovate docker tag to v41.32.3
([cb848a9](cb848a9bbe))
- **deps:** update renovate docker tag to v41.33.0
([c4c734c](c4c734c485))
- **deps:** update renovate docker tag to v41.34.1
([9e4d256](9e4d256200))
- **deps:** update renovate docker tag to v41.35.0
([ccc4bcc](ccc4bcc6f6))
- **deps:** update renovate docker tag to v41.35.1
([b39de05](b39de05f6a))
- **deps:** update renovate docker tag to v41.35.2
([642a8ed](642a8eda1c))
- **deps:** update renovate docker tag to v41.36.0
([c838e96](c838e96f4e))
- **deps:** update renovate docker tag to v41.37.10
([f1fdc44](f1fdc443b3))
- **deps:** update renovate docker tag to v41.37.11
([ba75ece](ba75ecefd3))
- **deps:** update renovate docker tag to v41.37.12
([3f7c77c](3f7c77c7ce))
- **deps:** update renovate docker tag to v41.37.2
([f27e4f4](f27e4f4e40))
- **deps:** update renovate docker tag to v41.37.3
([e14c6d6](e14c6d63c3))
- **deps:** update renovate docker tag to v41.37.7
([b36861c](b36861c478))
- **deps:** update renovate docker tag to v41.37.8
([51534af](51534af65a))
- **deps:** update renovate docker tag to v41.37.9
([86050b8](86050b8d95))
- **deps:** update renovate docker tag to v41.38.0
([3f1f51c](3f1f51c504))
- **deps:** update renovate docker tag to v41.38.1
([6132256](613225679d))
- **deps:** update renovate docker tag to v41.38.2
([0976ae7](0976ae7044))
- **deps:** update renovate docker tag to v41.39.0
([89978d4](89978d48fe))
- **deps:** update renovate docker tag to v41.40.0
([e7f4699](e7f4699adb))

###
[`v43.0.3`](https://redirect.github.com/renovatebot/github-action/releases/tag/v43.0.3)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v43.0.2...v43.0.3)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v41.23.2
([d1cb861](d1cb861578))
- update references to ghcr.io/renovatebot/renovate to v41.32.1
([d401f2e](d401f2e3d6))
- update references to renovatebot/github-action to v43.0.2
([862f35e](862f35e837))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/npm](https://redirect.github.com/semantic-release/npm)
to v12.0.2
([6f92e63](6f92e63c61))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.19.2
([7d61b87](7d61b874f3))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.19.4
([927b912](927b912d55))
- **deps:** update dependency globals to v16.3.0
([9672362](9672362f09))
- **deps:** update dependency prettier to v3.6.1
([4aa3491](4aa3491fca))
- **deps:** update dependency prettier to v3.6.2
([a13e505](a13e505be5))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.16
([60adc9e](60adc9e262))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.17
([5ef85b6](5ef85b6ab5))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.18
([4cc8d90](4cc8d90225))
- **deps:** update dependency semantic-release to v24.2.6
([0a4bea6](0a4bea67f9))
- **deps:** update dependency typescript-eslint to v8.35.0
([86dcfb8](86dcfb84fd))
- **deps:** update dependency typescript-eslint to v8.35.1
([04861f0](04861f0503))
- **deps:** update linters to v9.30.0
([541b625](541b625ecb))
- **deps:** update linters to v9.30.1
([bdf2756](bdf27560d6))
- **deps:** update pnpm to v10.12.3
([83ffe73](83ffe73df3))
- **deps:** update pnpm to v10.12.4
([e3103fc](e3103fcc8d))
- **deps:** update prettier packages
([#&#8203;938](https://redirect.github.com/renovatebot/github-action/issues/938))
([2454dfb](2454dfbdd8))

##### Build System

- **deps:** lock file maintenance
([3b940a9](3b940a9640))

##### Continuous Integration

- **deps:** update renovate docker tag to v41.18.0
([68c24e6](68c24e6cbf))
- **deps:** update renovate docker tag to v41.18.1
([f3e5485](f3e5485dc5))
- **deps:** update renovate docker tag to v41.18.2
([1934898](1934898c9c))
- **deps:** update renovate docker tag to v41.18.3
([cb0eb9d](cb0eb9d904))
- **deps:** update renovate docker tag to v41.19.0
([3e6f5ea](3e6f5eace3))
- **deps:** update renovate docker tag to v41.20.0
([8873e8f](8873e8fa7c))
- **deps:** update renovate docker tag to v41.20.1
([5b4de48](5b4de4858c))
- **deps:** update renovate docker tag to v41.20.2
([1e544fc](1e544fc492))
- **deps:** update renovate docker tag to v41.21.0
([2c759bd](2c759bdcfa))
- **deps:** update renovate docker tag to v41.21.1
([edd4d82](edd4d82ad2))
- **deps:** update renovate docker tag to v41.21.2
([38ad587](38ad58776e))
- **deps:** update renovate docker tag to v41.21.3
([2d166b6](2d166b6303))
- **deps:** update renovate docker tag to v41.23.0
([14c4d58](14c4d58a66))
- **deps:** update renovate docker tag to v41.23.1
([246a5e6](246a5e621a))
- **deps:** update renovate docker tag to v41.23.2
([872034d](872034d9a0))
- **deps:** update renovate docker tag to v41.23.4
([cb51849](cb518499d3))
- **deps:** update renovate docker tag to v41.23.5
([dc3d583](dc3d583abe))
- **deps:** update renovate docker tag to v41.24.0
([3ffd8e4](3ffd8e4cb5))
- **deps:** update renovate docker tag to v41.25.0
([9bb389b](9bb389b5d1))
- **deps:** update renovate docker tag to v41.26.0
([e37ae8e](e37ae8e406))
- **deps:** update renovate docker tag to v41.26.1
([fd2bf7f](fd2bf7f9b6))
- **deps:** update renovate docker tag to v41.27.0
([0d9e62e](0d9e62e198))
- **deps:** update renovate docker tag to v41.28.0
([74ab89a](74ab89a8c7))
- **deps:** update renovate docker tag to v41.28.1
([5603289](5603289db6))
- **deps:** update renovate docker tag to v41.28.2
([92ee76d](92ee76d2df))
- **deps:** update renovate docker tag to v41.29.1
([95fb061](95fb0614fa))
- **deps:** update renovate docker tag to v41.30.1
([0eb64ad](0eb64ad472))
- **deps:** update renovate docker tag to v41.30.2
([ee832f5](ee832f522b))
- **deps:** update renovate docker tag to v41.30.3
([1c82a36](1c82a36524))
- **deps:** update renovate docker tag to v41.30.4
([907e0b4](907e0b4f60))
- **deps:** update renovate docker tag to v41.30.5
([b011fc6](b011fc68c2))
- **deps:** update renovate docker tag to v41.31.0
([80ddf09](80ddf0986c))
- **deps:** update renovate docker tag to v41.31.1
([c445227](c445227826))
- **deps:** update renovate docker tag to v41.32.0
([8f317a4](8f317a4703))
- **deps:** update renovate docker tag to v41.32.1
([9c24760](9c2476021d))

### [`v43.0.2`](https://redirect.github.c

</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 becomes conflicted, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:51:54 +02:00
renovate[bot]
2c46062c4f fix(deps): update dependency cloudflare to v5 (#42)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[cloudflare](https://redirect.github.com/cloudflare/cloudflare-typescript)
| [`^4.5.0` ->
`^5.0.0`](https://renovatebot.com/diffs/npm/cloudflare/4.5.0/5.1.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/cloudflare/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cloudflare/4.5.0/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>cloudflare/cloudflare-typescript (cloudflare)</summary>

###
[`v5.1.0`](https://redirect.github.com/cloudflare/cloudflare-typescript/blob/HEAD/CHANGELOG.md#510-2025-09-12)

[Compare
Source](https://redirect.github.com/cloudflare/cloudflare-typescript/compare/v5.0.0...v5.1.0)

Full Changelog:
[v5.0.0...v5.1.0](https://redirect.github.com/cloudflare/cloudflare-typescript/compare/v5.0.0...v5.1.0)

##### Features

- Merge branch 'vaishak/skip-worker-test' into 'main'
([a556698](a5566983ae))

##### Bug Fixes

- coerce nullable values to undefined
([7847e84](7847e845eb))
- correctly handle sending multipart/form-data requests with JSON
([e9deab6](e9deab61fa))

##### Chores

- ci build action
([23d3577](23d3577a92))
- fix lint on the examples
([dd14379](dd143796d0))
- fix lint on the examples
([dd14379](dd143796d0))
- fix lint on the examples
([5b2f145](5b2f145f72))
- **internal:** codegen related update
([2860479](2860479dc7))

###
[`v5.0.0`](https://redirect.github.com/cloudflare/cloudflare-typescript/blob/HEAD/CHANGELOG.md#510-2025-09-12)

[Compare
Source](https://redirect.github.com/cloudflare/cloudflare-typescript/compare/v4.5.0...v5.0.0)

Full Changelog:
[v5.0.0...v5.1.0](https://redirect.github.com/cloudflare/cloudflare-typescript/compare/v5.0.0...v5.1.0)

##### Features

- Merge branch 'vaishak/skip-worker-test' into 'main'
([a556698](a5566983ae))

##### Bug Fixes

- coerce nullable values to undefined
([7847e84](7847e845eb))
- correctly handle sending multipart/form-data requests with JSON
([e9deab6](e9deab61fa))

##### Chores

- ci build action
([23d3577](23d3577a92))
- fix lint on the examples
([dd14379](dd143796d0))
- fix lint on the examples
([dd14379](dd143796d0))
- fix lint on the examples
([5b2f145](5b2f145f72))
- **internal:** codegen related update
([2860479](2860479dc7))

</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 becomes conflicted, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:51:40 +02:00
renovate[bot]
512d96a128 chore(deps): update actions/checkout action to v5 (#39)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | major | `v4` -> `v5` |

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

### [`v5`](https://redirect.github.com/actions/checkout/compare/v4...v5)

[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4...v5)

</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 becomes conflicted, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:51:25 +02:00
renovate[bot]
57e8349569 chore(deps): update ghcr.io/morten-olsen/homelab-operator:main docker digest to df20d7e (#48)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| ghcr.io/morten-olsen/homelab-operator | digest | `4fb3a40` ->
`df20d7e` |

---

### 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 becomes conflicted, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:51:12 +02:00
renovate[bot]
0b9bb40706 chore(deps): update docker images (#47)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| docker.n8n.io/n8nio/n8n | digest | `c5fe3ff` -> `4a15955` |
|
[ghcr.io/advplyr/audiobookshelf](https://redirect.github.com/advplyr/audiobookshelf)
| minor | `2.26.1` -> `2.29.0` |
| ghcr.io/esphome/esphome | digest | `393775c` -> `67f4df2` |
| ghcr.io/homarr-labs/homarr | digest | `7d58149` -> `9ba9831` |
| ghcr.io/linkwarden/linkwarden | pinDigest |  -> `c1c6f41` |
| ghcr.io/metatool-ai/metamcp | digest | `09e467e` -> `009c635` |
| ghcr.io/miniflux/miniflux | digest | `b435a1e` -> `fd6587a` |
| ghcr.io/morten-olsen/homelab-operator | digest | `d6f0884` ->
`4fb3a40` |
| ghcr.io/open-webui/open-webui | digest | `2e78a2f` -> `05aaa81` |
| nocodb/nocodb | pinDigest |  -> `71d5b23` |
| ollama/ollama | patch | `0.12.0` -> `0.12.1` |

---

### Release Notes

<details>
<summary>advplyr/audiobookshelf
(ghcr.io/advplyr/audiobookshelf)</summary>

###
[`v2.29.0`](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.29.0)

[Compare
Source](https://redirect.github.com/advplyr/audiobookshelf/compare/v2.28.0...v2.29.0)

##### Important: New authentication system was added in
[v2.26.0](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.0).
See
<https://redirect.github.com/advplyr/audiobookshelf/discussions/4460>
for details.

##### Added

- Chapter editor tools/enhancements including bulk chapter import & more
(see
[#&#8203;4384](https://redirect.github.com/advplyr/audiobookshelf/issues/4384))
by [@&#8203;josh-vin](https://redirect.github.com/josh-vin) in
[#&#8203;4384](https://redirect.github.com/advplyr/audiobookshelf/issues/4384)
- Book library sort options for `Progress: Started` and `Progress:
Finished`
[#&#8203;4540](https://redirect.github.com/advplyr/audiobookshelf/issues/4540)
by [@&#8203;tagmeh](https://redirect.github.com/tagmeh) in
[#&#8203;4575](https://redirect.github.com/advplyr/audiobookshelf/issues/4575)

##### Fixed

- Initial page load failing to load library (on token refreshes)
[#&#8203;4567](https://redirect.github.com/advplyr/audiobookshelf/issues/4567)
(in
[#&#8203;4590](https://redirect.github.com/advplyr/audiobookshelf/issues/4590))
- Library path folder browser not working on latest Windows 11 (replace
`wmic` with `powershell`)
[#&#8203;4531](https://redirect.github.com/advplyr/audiobookshelf/issues/4531)
by [@&#8203;sir-wilhelm](https://redirect.github.com/sir-wilhelm) in
[#&#8203;4533](https://redirect.github.com/advplyr/audiobookshelf/issues/4533)
- Podcast itunes id not set on podcasts created from search and podcast
matching
[#&#8203;4614](https://redirect.github.com/advplyr/audiobookshelf/issues/4614)
- Book match tab last used provider saved in local storage being
overriden by itunes when matching a podcast
[#&#8203;4615](https://redirect.github.com/advplyr/audiobookshelf/issues/4615)
- Server listening log for ipv6 host by
[@&#8203;renesat](https://redirect.github.com/renesat) in
[#&#8203;4595](https://redirect.github.com/advplyr/audiobookshelf/issues/4595)
- UI/UX: Podcast match author input not showing the current author value
[#&#8203;4617](https://redirect.github.com/advplyr/audiobookshelf/issues/4617)

##### Changed

- Podcast episode download requests pass `*/*` in `Accept` header by
[@&#8203;renesat](https://redirect.github.com/renesat) in
[#&#8203;4596](https://redirect.github.com/advplyr/audiobookshelf/issues/4596)
- Podcast episode downloads always embed meta tags (previously only mp3)
(in
[#&#8203;4598](https://redirect.github.com/advplyr/audiobookshelf/issues/4598))
- Remove unnecessary token from HLS playlist files by
[@&#8203;laxandrea](https://redirect.github.com/laxandrea) in
[#&#8203;4608](https://redirect.github.com/advplyr/audiobookshelf/issues/4608)
- UI/UX: Changed book library `Progress Updated` sort option label to
`Progress: Last Updated`
- UI/UX: Replace SVG icons with material-symbols icon equivalents by
[@&#8203;Toby222](https://redirect.github.com/Toby222) in
[#&#8203;4552](https://redirect.github.com/advplyr/audiobookshelf/issues/4552)
- UI/UX: Remove unnecessary success toast for podcast episode removed
[#&#8203;4606](https://redirect.github.com/advplyr/audiobookshelf/issues/4606)
- More strings translated
- Belarusian by
[@&#8203;i-Nosferatu-i](https://redirect.github.com/i-Nosferatu-i)
- Bulgarian by
[@&#8203;jeliozver](https://redirect.github.com/jeliozver)
- Chinese (Simplified Han script) by
[@&#8203;FiendFEARing](https://redirect.github.com/FiendFEARing)
  - Croatian by [@&#8203;biuklija](https://redirect.github.com/biuklija)
  - Czech by [@&#8203;kuci-JK](https://redirect.github.com/kuci-JK)
  - Dutch by [@&#8203;matieke](https://redirect.github.com/matieke)
- German by [@&#8203;Vito0912](https://redirect.github.com/Vito0912)
[@&#8203;Dalabad](https://redirect.github.com/Dalabad)
[@&#8203;Eragos](https://redirect.github.com/Eragos)
[@&#8203;B0rax](https://redirect.github.com/B0rax)
- Hungarian by [@&#8203;ugyes](https://redirect.github.com/ugyes)
[@&#8203;Kabika82](https://redirect.github.com/Kabika82)
- Italian by [@&#8203;paolor72](https://redirect.github.com/paolor72)
[@&#8203;laxandrea](https://redirect.github.com/laxandrea)
  - Russian by [@&#8203;renesat](https://redirect.github.com/renesat)
- Slovenian by
[@&#8203;thehijacker](https://redirect.github.com/thehijacker)
- Spanish by [@&#8203;idojius86](https://redirect.github.com/idojius86)
- Swedish by [@&#8203;Cotignac](https://redirect.github.com/Cotignac)
[@&#8203;MageSneaky](https://redirect.github.com/MageSneaky)
- Vietnamese by
[@&#8203;phamngocminhhang](https://redirect.github.com/phamngocminhhang)

#### New Contributors

- [@&#8203;laxandrea](https://redirect.github.com/laxandrea) made their
first contribution in
[#&#8203;4608](https://redirect.github.com/advplyr/audiobookshelf/pull/4608)
- [@&#8203;renesat](https://redirect.github.com/renesat) made their
first contribution in
[#&#8203;4596](https://redirect.github.com/advplyr/audiobookshelf/pull/4596)
- [@&#8203;sir-wilhelm](https://redirect.github.com/sir-wilhelm) made
their first contribution in
[#&#8203;4533](https://redirect.github.com/advplyr/audiobookshelf/pull/4533)
- [@&#8203;tagmeh](https://redirect.github.com/tagmeh) made their first
contribution in
[#&#8203;4575](https://redirect.github.com/advplyr/audiobookshelf/pull/4575)

**Full Changelog**:
<https://github.com/advplyr/audiobookshelf/compare/v2.28.0...v2.29.0>

###
[`v2.28.0`](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.28.0)

[Compare
Source](https://redirect.github.com/advplyr/audiobookshelf/compare/v2.27.0...v2.28.0)

##### Important: New authentication system was added in
[v2.26.0](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.0).
See
<https://redirect.github.com/advplyr/audiobookshelf/discussions/4460>
for details.

##### Added

- Server setting to allow a whitelist of CORS origins by
[@&#8203;Vito0912](https://redirect.github.com/Vito0912) in
[#&#8203;4557](https://redirect.github.com/advplyr/audiobookshelf/issues/4557)

##### Fixed

- Server crash when transcode requests are made to the direct play
endpoint
[#&#8203;4555](https://redirect.github.com/advplyr/audiobookshelf/issues/4555)
(in
[#&#8203;4565](https://redirect.github.com/advplyr/audiobookshelf/issues/4565))
- OIDC auto-register still creating a user when groupclaim is invalid
[#&#8203;4563](https://redirect.github.com/advplyr/audiobookshelf/issues/4563)
- OIDC callback URL validation

##### Changed

- More strings translated
- Belarusian by
[@&#8203;i-Nosferatu-i](https://redirect.github.com/i-Nosferatu-i)
- Chinese (Simplified Han script) by
[@&#8203;FiendFEARing](https://redirect.github.com/FiendFEARing)
  - Croatian by [@&#8203;biuklija](https://redirect.github.com/biuklija)
- Estonian by
[@&#8203;alehandro112](https://redirect.github.com/alehandro112)
  - French by [@&#8203;ThoDon](https://redirect.github.com/ThoDon)
- German by [@&#8203;Vito0912](https://redirect.github.com/Vito0912)
[@&#8203;numerfolt](https://redirect.github.com/numerfolt)
[@&#8203;LaurinSorgend](https://redirect.github.com/LaurinSorgend)
- Hindi by
[@&#8203;ashishwadekar](https://redirect.github.com/ashishwadekar)
- Norwegian Bokmål by
[@&#8203;Erbros](https://redirect.github.com/Erbros)
- Russian by [@&#8203;NickSkier](https://redirect.github.com/NickSkier)
- Ukrainian by
[@&#8203;Maksim2005UA2](https://redirect.github.com/Maksim2005UA2)

**Full Changelog**:
<https://github.com/advplyr/audiobookshelf/compare/v2.27.0...v2.28.0>

###
[`v2.27.0`](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.27.0)

[Compare
Source](https://redirect.github.com/advplyr/audiobookshelf/compare/v2.26.3...v2.27.0)

##### Important: New authentication system was added in
[v2.26.0](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.0).
See
<https://redirect.github.com/advplyr/audiobookshelf/discussions/4460>
for details.

##### Added

- Book library sort option for progress last updated
[#&#8203;1215](https://redirect.github.com/advplyr/audiobookshelf/issues/1215)
(in
[#&#8203;4542](https://redirect.github.com/advplyr/audiobookshelf/issues/4542))
- Sepia theme in epub e-reader
[#&#8203;4407](https://redirect.github.com/advplyr/audiobookshelf/issues/4407)
by [@&#8203;michaeldvinci](https://redirect.github.com/michaeldvinci) in
[#&#8203;4534](https://redirect.github.com/advplyr/audiobookshelf/issues/4534)

##### Fixed

- All e-reader devices visible to non-admin users
[#&#8203;4529](https://redirect.github.com/advplyr/audiobookshelf/issues/4529)
(in
[#&#8203;4530](https://redirect.github.com/advplyr/audiobookshelf/issues/4530))
- UI/UX: Edit chapter page lookup modal showing incorrect duration when
removing branding by
[@&#8203;chriscam85](https://redirect.github.com/chriscam85) in
[#&#8203;4551](https://redirect.github.com/advplyr/audiobookshelf/issues/4551)
- UI/UX: Cursor pointer for version in side rail by
[@&#8203;FelixSche](https://redirect.github.com/FelixSche) in
[#&#8203;4528](https://redirect.github.com/advplyr/audiobookshelf/issues/4528)
- UI/UX: Sessions table overflowing horizontally on mobile

##### Changed

- UI/UX: Localized user stats heatmap tooltip
[#&#8203;4550](https://redirect.github.com/advplyr/audiobookshelf/issues/4550)
- More strings translated
- Belarusian by
[@&#8203;i-Nosferatu-i](https://redirect.github.com/i-Nosferatu-i)
- Chinese (Simplified Han script) by
[@&#8203;FiendFEARing](https://redirect.github.com/FiendFEARing)
- Danish by
[@&#8203;MikkelOlesen](https://redirect.github.com/MikkelOlesen)
- Dutch by
[@&#8203;RemcoSchrijver](https://redirect.github.com/RemcoSchrijver)
[@&#8203;Pepsicola1995](https://redirect.github.com/Pepsicola1995)
- German by [@&#8203;B0rax](https://redirect.github.com/B0rax)
[@&#8203;Vito0912](https://redirect.github.com/Vito0912)
[@&#8203;networksecurityvodoo](https://redirect.github.com/networksecurityvodoo)
  - Hebrew by [@&#8203;enosh](https://redirect.github.com/enosh)
- Hungarian by [@&#8203;ugyes](https://redirect.github.com/ugyes)
[@&#8203;Kabika82](https://redirect.github.com/Kabika82)
  - Russian by [@&#8203;GrakovNe](https://redirect.github.com/GrakovNe)
- Slovenian by
[@&#8203;thehijacker](https://redirect.github.com/thehijacker)
  - Swedish by [@&#8203;Cotignac](https://redirect.github.com/Cotignac)
- Ukrainian by
[@&#8203;Maksim2005UA2](https://redirect.github.com/Maksim2005UA2)

#### New Contributors

- [@&#8203;FelixSche](https://redirect.github.com/FelixSche) made their
first contribution in
[#&#8203;4528](https://redirect.github.com/advplyr/audiobookshelf/pull/4528)
- [@&#8203;michaeldvinci](https://redirect.github.com/michaeldvinci)
made their first contribution in
[#&#8203;4534](https://redirect.github.com/advplyr/audiobookshelf/pull/4534)
- [@&#8203;chriscam85](https://redirect.github.com/chriscam85) made
their first contribution in
[#&#8203;4551](https://redirect.github.com/advplyr/audiobookshelf/pull/4551)

**Full Changelog**:
<https://github.com/advplyr/audiobookshelf/compare/v2.26.3...v2.27.0>

###
[`v2.26.3`](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.3)

[Compare
Source](https://redirect.github.com/advplyr/audiobookshelf/compare/v2.26.2...v2.26.3)

##### Important: New authentication system was added in
[v2.26.0](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.0).
See
<https://redirect.github.com/advplyr/audiobookshelf/discussions/4460>
for details.

##### Fixed

- Some podcast episodes always transcoding (in
[#&#8203;4520](https://redirect.github.com/advplyr/audiobookshelf/issues/4520))
- Unable to change root user password when not set
[#&#8203;4522](https://redirect.github.com/advplyr/audiobookshelf/issues/4522)
(in
[#&#8203;4523](https://redirect.github.com/advplyr/audiobookshelf/issues/4523))

##### Changed

- More strings translated
- Chinese (Simplified Han script) by
[@&#8203;FiendFEARing](https://redirect.github.com/FiendFEARing)
  - German by [@&#8203;Dalabad](https://redirect.github.com/Dalabad)
  - Russian by [@&#8203;Nab0y](https://redirect.github.com/Nab0y)
- Ukrainian by
[@&#8203;Maksim2005UA2](https://redirect.github.com/Maksim2005UA2)

**Full Changelog**:
<https://github.com/advplyr/audiobookshelf/compare/v2.26.2...v2.26.3>

###
[`v2.26.2`](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.2)

[Compare
Source](https://redirect.github.com/advplyr/audiobookshelf/compare/v2.26.1...v2.26.2)

##### Important: New authentication system was added in
[v2.26.0](https://redirect.github.com/advplyr/audiobookshelf/releases/tag/v2.26.0).
See
<https://redirect.github.com/advplyr/audiobookshelf/discussions/4460>
for details.

##### Fixed

- Web client page load causing a token refresh
[#&#8203;4509](https://redirect.github.com/advplyr/audiobookshelf/issues/4509)
(in
[#&#8203;4510](https://redirect.github.com/advplyr/audiobookshelf/issues/4510))

##### Changed

- Audible match results return match confidence score, shows in match
results by [@&#8203;mikiher](https://redirect.github.com/mikiher) in
[#&#8203;4319](https://redirect.github.com/advplyr/audiobookshelf/issues/4319)
- More strings translated
- Chinese (Simplified Han script) by
[@&#8203;springsunx](https://redirect.github.com/springsunx)
[@&#8203;FiendFEARing](https://redirect.github.com/FiendFEARing)
  - Croatian by [@&#8203;biuklija](https://redirect.github.com/biuklija)
  - Czech by [@&#8203;kuci-JK](https://redirect.github.com/kuci-JK)
- Italian by [@&#8203;Prangel85](https://redirect.github.com/Prangel85)
- Turkish by
[@&#8203;SerhatGulasti](https://redirect.github.com/SerhatGulasti)
- Ukrainian by
[@&#8203;Maksim2005UA2](https://redirect.github.com/Maksim2005UA2)

**Full Changelog**:
<https://github.com/advplyr/audiobookshelf/compare/v2.26.1...v2.26.2>

</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 becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:45:25 +02:00
renovate[bot]
1d8f10cc88 chore(deps): update renovatebot/github-action action to v40.3.6 (#36)
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs
from Renovate will soon appear from 'Mend'. Learn more
[here](https://redirect.github.com/renovatebot/renovate/discussions/37842).

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[renovatebot/github-action](https://redirect.github.com/renovatebot/github-action)
| action | minor | `v40.2.2` -> `v40.3.6` |

---

### Release Notes

<details>
<summary>renovatebot/github-action (renovatebot/github-action)</summary>

###
[`v40.3.6`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.6)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.3.5...v40.3.6)

##### Bug Fixes

- **refactor:** use named imports
([#&#8203;879](https://redirect.github.com/renovatebot/github-action/issues/879))
([4d91b7f](4d91b7f286))

##### Documentation

- Fix permissions for Renovate 39
([#&#8203;873](https://redirect.github.com/renovatebot/github-action/issues/873))
([80524aa](80524aad74))
- update references to ghcr.io/renovatebot/renovate to v39
([fa742b7](fa742b743c))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v11
([#&#8203;876](https://redirect.github.com/renovatebot/github-action/issues/876))
([03986b7](03986b7c6b))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.2
([9b8168b](9b8168b978))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.3
([62e9650](62e9650d02))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.4
([b274faf](b274faf2e8))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.5
([de0fb82](de0fb82dde))
- **deps:** update dependency eslint-plugin-json to v4
([#&#8203;874](https://redirect.github.com/renovatebot/github-action/issues/874))
([205c9ef](205c9ef954))
- **deps:** update dependency npm-run-all2 to v7
([#&#8203;877](https://redirect.github.com/renovatebot/github-action/issues/877))
([7b3e4ff](7b3e4ffc56))
- **deps:** update typescript-eslint monorepo to v8 (major)
([#&#8203;878](https://redirect.github.com/renovatebot/github-action/issues/878))
([5343762](5343762d53))
- husky migration
([#&#8203;875](https://redirect.github.com/renovatebot/github-action/issues/875))
([c884ed2](c884ed2ba3))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.142.7
([5bf87b6](5bf87b6eb9))

###
[`v40.3.5`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.5)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.3.4...v40.3.5)

##### Documentation

- update references to actions/checkout to v4.2.2
([2097f2d](2097f2d2e6))
- update references to ghcr.io/renovatebot/renovate to v38.128.6
([41edd45](41edd45fab))
- update references to ghcr.io/renovatebot/renovate to v38.133.0
([e3f297f](e3f297f860))
- update references to ghcr.io/renovatebot/renovate to v38.142.5
([f4c795d](f4c795df8f))
- update references to renovatebot/github-action to v40.3.4
([cf47d93](cf47d93d80))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.16.12
([2e9cb53](2e9cb53c91))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.16.13
([8232b6e](8232b6e373))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.16.14
([2aef521](2aef5215dc))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.16.15
([7916c56](7916c564b5))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.0
([a64d972](a64d972955))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.1
([f5083d0](f5083d0ec5))
- **deps:** update dependency npm-run-all2 to v6.2.4
([e788798](e7887981ef))
- **deps:** update dependency npm-run-all2 to v6.2.6
([ccced66](ccced66fcc))
- **deps:** update dependency semantic-release to v24.1.3
([d6beebf](d6beebf82a))
- **deps:** update dependency semantic-release to v24.2.0
([2b5b8b0](2b5b8b0616))
- **deps:** update pnpm to v9.12.2
([4b80937](4b8093706f))
- **deps:** update pnpm to v9.12.3
([550e7b3](550e7b3d66))

##### Build System

- **deps:** lock file maintenance
([f9b29f3](f9b29f3fb2))

##### Continuous Integration

- **deps:** update actions/checkout action to v4.2.2
([2bf9026](2bf9026999))
- **deps:** update actions/setup-node action to v4.1.0
([86ad664](86ad6647ad))
- **deps:** update renovate docker tag to v38.124.2
([695299e](695299e61b))
- **deps:** update renovate docker tag to v38.124.3
([314da6d](314da6dc23))
- **deps:** update renovate docker tag to v38.126.0
([85ae1f5](85ae1f5dbd))
- **deps:** update renovate docker tag to v38.127.0
([85e7f44](85e7f446e5))
- **deps:** update renovate docker tag to v38.127.3
([3edbc0c](3edbc0c27e))
- **deps:** update renovate docker tag to v38.128.1
([f8211ef](f8211efac0))
- **deps:** update renovate docker tag to v38.128.2
([d7b8776](d7b8776e44))
- **deps:** update renovate docker tag to v38.128.3
([2e30721](2e30721a59))
- **deps:** update renovate docker tag to v38.128.6
([a4b62ce](a4b62ce113))
- **deps:** update renovate docker tag to v38.129.1
([2262e7a](2262e7a3fc))
- **deps:** update renovate docker tag to v38.129.2
([c86af21](c86af211de))
- **deps:** update renovate docker tag to v38.130.0
([54af751](54af751146))
- **deps:** update renovate docker tag to v38.130.2
([000660f](000660fc56))
- **deps:** update renovate docker tag to v38.130.3
([b9dda2c](b9dda2cbfc))
- **deps:** update renovate docker tag to v38.130.4
([908a901](908a90193c))
- **deps:** update renovate docker tag to v38.131.0
([dd7bd92](dd7bd92f44))
- **deps:** update renovate docker tag to v38.131.1
([6a73efe](6a73efe88c))
- **deps:** update renovate docker tag to v38.131.2
([93861f0](93861f054d))
- **deps:** update renovate docker tag to v38.132.1
([c3afe48](c3afe48dc5))
- **deps:** update renovate docker tag to v38.132.3
([1973fce](1973fcea3c))
- **deps:** update renovate docker tag to v38.133.0
([4a07c50](4a07c50b27))
- **deps:** update renovate docker tag to v38.133.1
([0e8b35d](0e8b35d9d2))
- **deps:** update renovate docker tag to v38.133.2
([0b061eb](0b061eb768))
- **deps:** update renovate docker tag to v38.134.0
([67a9577](67a957720f))
- **deps:** update renovate docker tag to v38.135.2
([14382a8](14382a8885))
- **deps:** update renovate docker tag to v38.138.3
([1a12b39](1a12b39c17))
- **deps:** update renovate docker tag to v38.138.5
([bb832ea](bb832eac70))
- **deps:** update renovate docker tag to v38.140.0
([1cefad4](1cefad4178))
- **deps:** update renovate docker tag to v38.140.2
([2d32293](2d32293bd1))
- **deps:** update renovate docker tag to v38.141.1
([9143751](9143751e1c))
- **deps:** update renovate docker tag to v38.142.1
([4ed28cd](4ed28cd226))
- **deps:** update renovate docker tag to v38.142.2
([513f3e3](513f3e3eba))
- **deps:** update renovate docker tag to v38.142.3
([02bea1c](02bea1c601))
- **deps:** update renovate docker tag to v38.142.4
([7574fcb](7574fcb291))
- **deps:** update renovate docker tag to v38.142.5
([76eb5e4](76eb5e4295))

###
[`v40.3.4`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.4)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.3.3...v40.3.4)

##### Documentation

- update references to actions/checkout to v4.2.1
([11212af](11212aff7d))
- update references to renovatebot/github-action to v40.3.3
([7bdca51](7bdca51b4c))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.16.11
([85652f0](85652f02f4))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.3
([9347c05](9347c05b51))
- **deps:** update pnpm to v9.12.1
([49efd81](49efd814d8))

##### Build System

- **deps:** update dependency typescript to v5.6.3
([9c10032](9c100326f6))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.120.0
([d1179fe](d1179feff5))
- **deps:** update renovate docker tag to v38.120.1
([7eaca7d](7eaca7dbe1))
- **deps:** update renovate docker tag to v38.122.0
([5ebe74f](5ebe74f625))
- **deps:** update renovate docker tag to v38.123.0
([398baed](398baed47b))
- **deps:** update renovate docker tag to v38.124.1
([76a4553](76a45533dc))

###
[`v40.3.3`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.3)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.3.2...v40.3.3)

##### Bug Fixes

- **deps:** update dependency
[@&#8203;actions/core](https://redirect.github.com/actions/core) to
v1.11.1
([dd7f630](dd7f630a1d))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.115.0
([0168adb](0168adb92f))
- **deps:** update renovate docker tag to v38.115.1
([221a713](221a713171))
- **deps:** update renovate docker tag to v38.116.0
([56e961b](56e961b1f8))
- **deps:** update renovate docker tag to v38.119.0
([13076db](13076dbca1))

###
[`v40.3.2`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.2)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.3.1...v40.3.2)

##### Bug Fixes

- **deps:** update dependency
[@&#8203;actions/core](https://redirect.github.com/actions/core) to
v1.11.0
([6b22ac7](6b22ac7b23))

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v38.110.2
([8fcdc6e](8fcdc6e116))
- update references to renovatebot/github-action to v40.3.1
([593a1c0](593a1c0739))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.16.10
([659e9b1](659e9b1e70))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.6
([43cf848](43cf8481c5))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.7
([04140e8](04140e85d7))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.8
([ffa56df](ffa56df1d0))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.9
([04eaa9d](04eaa9dca6))
- **deps:** update dependency semantic-release to v24.1.2
([443c041](443c041d1b))
- **deps:** update pnpm to v9.12.0
([73c1f19](73c1f192f0))

##### Continuous Integration

- **deps:** update actions/checkout action to v4.2.1
([a89ddca](a89ddca451))
- **deps:** update renovate docker tag to v38.105.0
([6c8aefd](6c8aefd37f))
- **deps:** update renovate docker tag to v38.106.0
([c2fef14](c2fef14ab5))
- **deps:** update renovate docker tag to v38.106.2
([bdb5ad6](bdb5ad69d0))
- **deps:** update renovate docker tag to v38.106.3
([32149ad](32149adc64))
- **deps:** update renovate docker tag to v38.106.4
([8015943](8015943b52))
- **deps:** update renovate docker tag to v38.107.0
([6846c99](6846c99c9d))
- **deps:** update renovate docker tag to v38.107.1
([9da33e8](9da33e85bf))
- **deps:** update renovate docker tag to v38.109.0
([4c5ca41](4c5ca41499))
- **deps:** update renovate docker tag to v38.110.1
([59f331f](59f331fd5b))
- **deps:** update renovate docker tag to v38.110.2
([ccf2a06](ccf2a06a55))
- **deps:** update renovate docker tag to v38.110.4
([2fd7d6a](2fd7d6a4d9))
- **deps:** update renovate docker tag to v38.114.0
([1c16e18](1c16e18622))

###
[`v40.3.1`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.1)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.3.0...v40.3.1)

##### Build System

- **deps:** update dependency
[@&#8203;vercel/ncc](https://redirect.github.com/vercel/ncc) to v0.38.2
([336c9d5](336c9d5027))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.103.1
([2f7cf70](2f7cf7048f))

###
[`v40.3.0`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.3.0)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.11...v40.3.0)

##### Features

- add `docker-socket-host-path` input
([#&#8203;862](https://redirect.github.com/renovatebot/github-action/issues/862))
([c0afe86](c0afe86658))

###
[`v40.2.11`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.11)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.10...v40.2.11)

##### Documentation

- update references to actions/checkout to v4.2.0
([b0990c1](b0990c14ff))
- update references to ghcr.io/renovatebot/renovate to v38.101.1
([1ae1ac0](1ae1ac05cd))
- update references to renovatebot/github-action to v40.2.10
([86ff03b](86ff03bc78))

##### Miscellaneous Chores

- **deps:** update commitlint monorepo to v19.5.0
([7a0e06d](7a0e06dd88))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.3.4
([8b7ac01](8b7ac01658))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.3.5
([#&#8203;864](https://redirect.github.com/renovatebot/github-action/issues/864))
([f21eeef](f21eeef37c))
- **deps:** update dependency eslint to v8.57.1
([3a945ba](3a945ba488))
- **deps:** update dependency husky to v9.1.6
([d35a34a](d35a34a3cc))
- **deps:** update dependency npm-run-all2 to v6.2.3
([8aa7554](8aa7554cab))
- **deps:** update dependency semantic-release to v24.1.1
([f70fd7d](f70fd7d670))
- **deps:** update pnpm to v9.11.0
([871230b](871230b04d))

##### Build System

- **deps:** lock file maintenance
([669f02b](669f02b0b3))

##### Continuous Integration

- **deps:** update actions/checkout action to v4.2.0
([cea9e7c](cea9e7c1c3))
- **deps:** update actions/setup-node action to v4.0.4
([926bb29](926bb29469))
- **deps:** update renovate docker tag to v38.100.0
([00c426e](00c426e7fc))
- **deps:** update renovate docker tag to v38.100.1
([e9da8a6](e9da8a603f))
- **deps:** update renovate docker tag to v38.101.0
([af7815d](af7815d4cc))
- **deps:** update renovate docker tag to v38.101.1
([157d4d8](157d4d8218))
- **deps:** update renovate docker tag to v38.84.0
([6cc098a](6cc098a3ad))
- **deps:** update renovate docker tag to v38.84.1
([e1ef94d](e1ef94d00d))
- **deps:** update renovate docker tag to v38.85.1
([e89e3ea](e89e3ea559))
- **deps:** update renovate docker tag to v38.86.0
([9251f4a](9251f4a517))
- **deps:** update renovate docker tag to v38.88.1
([4d5a44a](4d5a44aba2))
- **deps:** update renovate docker tag to v38.88.2
([1caa178](1caa178a1d))
- **deps:** update renovate docker tag to v38.89.2
([7602472](7602472e18))
- **deps:** update renovate docker tag to v38.89.3
([f571b99](f571b99572))
- **deps:** update renovate docker tag to v38.91.0
([7b3db30](7b3db3074c))
- **deps:** update renovate docker tag to v38.91.2
([3607015](3607015834))
- **deps:** update renovate docker tag to v38.91.5
([063fac8](063fac841b))
- **deps:** update renovate docker tag to v38.92.0
([5663610](5663610ffc))
- **deps:** update renovate docker tag to v38.93.0
([2b64bb7](2b64bb799d))
- **deps:** update renovate docker tag to v38.93.1
([6e3d1f1](6e3d1f1901))
- **deps:** update renovate docker tag to v38.93.6
([bc2b6fa](bc2b6faabe))
- **deps:** update renovate docker tag to v38.94.2
([604f795](604f795024))
- **deps:** update renovate docker tag to v38.94.3
([92c7bc3](92c7bc3083))
- **deps:** update renovate docker tag to v38.95.4
([c939d62](c939d6211b))
- **deps:** update renovate docker tag to v38.97.0
([e16ec5f](e16ec5fc05))
- **deps:** update renovate docker tag to v38.97.1
([93190dc](93190dce09))
- **deps:** update renovate docker tag to v38.98.0
([d1ece14](d1ece14d2b))

###
[`v40.2.10`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.10)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.9...v40.2.10)

##### Miscellaneous Chores

- **deps:** update pnpm to v9.10.0
([4ecccc8](4ecccc80bf))

##### Build System

- **deps:** update dependency typescript to v5.6.2
([ccb9633](ccb9633c2c))

###
[`v40.2.9`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.9)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.8...v40.2.9)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v38.80.0
([54adf7f](54adf7f706))
- update references to renovatebot/github-action to v40.2.8
([f6f4de0](f6f4de0d1f))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.3.0
([39c0ed3](39c0ed39be))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.3.1
([d237b41](d237b41568))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.3.2
([2533c44](2533c44a78))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.3.3
([0e39ae0](0e39ae0292))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.4
([d9eb43e](d9eb43e3f8))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.5
([6d5784a](6d5784adf2))

##### Build System

- **deps:** lock file maintenance
([32073a4](32073a4660))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.73.3
([476a91f](476a91f280))
- **deps:** update renovate docker tag to v38.73.5
([1649e40](1649e40897))
- **deps:** update renovate docker tag to v38.74.1
([65f5c11](65f5c11989))
- **deps:** update renovate docker tag to v38.75.0
([fa73ff0](fa73ff0f99))
- **deps:** update renovate docker tag to v38.76.1
([438981f](438981f829))
- **deps:** update renovate docker tag to v38.77.0
([919ed13](919ed13ea2))
- **deps:** update renovate docker tag to v38.77.2
([2009e09](2009e0963c))
- **deps:** update renovate docker tag to v38.77.3
([8a0ce4d](8a0ce4d4cf))
- **deps:** update renovate docker tag to v38.77.5
([aeffa00](aeffa00d03))
- **deps:** update renovate docker tag to v38.77.8
([46076e2](46076e2b11))
- **deps:** update renovate docker tag to v38.79.0
([3f7fa1f](3f7fa1faeb))
- **deps:** update renovate docker tag to v38.80.0
([eb68a01](eb68a019af))

###
[`v40.2.8`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.8)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.7...v40.2.8)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v38.61.1
([5993be6](5993be6af6))
- update references to ghcr.io/renovatebot/renovate to v38.72.1
([a4cf16d](a4cf16da54))
- update references to renovatebot/github-action to v40.2.7
([511a7a7](511a7a7705))

##### Miscellaneous Chores

- **deps:** update commitlint monorepo to v19.4.1
([fe52de6](fe52de6e1b))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.1.7
([8d1974e](8d1974e5f5))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.1
([a5ef441](a5ef4418b4))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.2
([e2f34af](e2f34af24c))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.3
([edf82b7](edf82b7595))
- **deps:** update dependency husky to v9.1.5
([18b2dca](18b2dca0f2))
- **deps:** update dependency lint-staged to v15.2.10
([2089929](208992943a))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.2
([e3c4817](e3c48178c2))
- **deps:** update pnpm to v9.8.0
([527df8e](527df8e80c))
- **deps:** update pnpm to v9.9.0
([8f53e8e](8f53e8e1f1))

##### Build System

- **deps:** lock file maintenance
([00a9d0f](00a9d0fb6b))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.54.1
([9e15fe4](9e15fe4539))
- **deps:** update renovate docker tag to v38.55.1
([ebed852](ebed852c7d))
- **deps:** update renovate docker tag to v38.55.2
([ea137aa](ea137aa3de))
- **deps:** update renovate docker tag to v38.55.4
([47bb8fa](47bb8fa952))
- **deps:** update renovate docker tag to v38.55.5
([8721f4c](8721f4cdce))
- **deps:** update renovate docker tag to v38.57.0
([c8714d9](c8714d911d))
- **deps:** update renovate docker tag to v38.57.1
([3297675](3297675b87))
- **deps:** update renovate docker tag to v38.57.3
([7467495](7467495d42))
- **deps:** update renovate docker tag to v38.58.0
([44c8d6f](44c8d6f2b6))
- **deps:** update renovate docker tag to v38.58.1
([da00a9c](da00a9ca31))
- **deps:** update renovate docker tag to v38.58.2
([cda286d](cda286d20a))
- **deps:** update renovate docker tag to v38.59.1
([cf5432f](cf5432f6e0))
- **deps:** update renovate docker tag to v38.59.2
([282b8d8](282b8d81ba))
- **deps:** update renovate docker tag to v38.61.1
([749b819](749b8190af))
- **deps:** update renovate docker tag to v38.64.0
([71ee52a](71ee52a1c7))
- **deps:** update renovate docker tag to v38.64.1
([7337445](7337445827))
- **deps:** update renovate docker tag to v38.66.1
([5e5e62b](5e5e62bf1c))
- **deps:** update renovate docker tag to v38.67.1
([8639a3d](8639a3dc7c))
- **deps:** update renovate docker tag to v38.67.2
([e7fba3a](e7fba3a3fa))
- **deps:** update renovate docker tag to v38.67.4
([114ff35](114ff35888))
- **deps:** update renovate docker tag to v38.67.5
([a0ebccf](a0ebccfb1d))
- **deps:** update renovate docker tag to v38.68.0
([d76014f](d76014f2db))
- **deps:** update renovate docker tag to v38.68.1
([cd0419f](cd0419f33a))
- **deps:** update renovate docker tag to v38.70.0
([ab6e4ab](ab6e4ab3f7))
- **deps:** update renovate docker tag to v38.70.2
([3e30de3](3e30de3043))
- **deps:** update renovate docker tag to v38.71.0
([42c77e0](42c77e078b))
- **deps:** update renovate docker tag to v38.72.0
([46fcd07](46fcd07256))
- **deps:** update renovate docker tag to v38.72.1
([7e74a7b](7e74a7b8f9))
- **deps:** update wagoid/commitlint-github-action action to v6.1.2
([1c11596](1c1159609e))

###
[`v40.2.7`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.7)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.6...v40.2.7)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v38.25.1
([1569e23](1569e23502))
- update references to ghcr.io/renovatebot/renovate to v38.39.6
([5432799](543279956c))
- update references to ghcr.io/renovatebot/renovate to v38.52.3
([44dfa9a](44dfa9a23d))
- update references to renovatebot/github-action to v40.2.6
([0a5e4b7](0a5e4b7d88))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;commitlint/cli](https://redirect.github.com/commitlint/cli) to
v19.4.0
([32ed440](32ed440e77))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.1.4
([47f396c](47f396ccf1))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.14.15
([0b458d7](0b458d7b4e))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.0
([632cbd7](632cbd7442))
- **deps:** update dependency lint-staged to v15.2.9
([b90ad0d](b90ad0d5ef))
- **deps:** update pnpm to v9.7.0
([1f85a75](1f85a75eb2))
- **deps:** update pnpm to v9.7.1
([dd820f5](dd820f5e7b))
- **deps:** update semantic-release monorepo
([db01ed4](db01ed443d))

##### Build System

- **deps:** lock file maintenance
([9785636](9785636e49))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.25.1
([1681b12](1681b12e4e))
- **deps:** update renovate docker tag to v38.25.3
([f10e03d](f10e03d089))
- **deps:** update renovate docker tag to v38.26.1
([4dfd846](4dfd846975))
- **deps:** update renovate docker tag to v38.27.0
([b7e33e5](b7e33e5f3b))
- **deps:** update renovate docker tag to v38.29.0
([f4f639b](f4f639bf16))
- **deps:** update renovate docker tag to v38.32.0
([c2e88b3](c2e88b3301))
- **deps:** update renovate docker tag to v38.37.0
([150a5cf](150a5cf116))
- **deps:** update renovate docker tag to v38.37.1
([e6366ba](e6366ba56f))
- **deps:** update renovate docker tag to v38.39.0
([54dd4af](54dd4af438))
- **deps:** update renovate docker tag to v38.39.3
([7dc04fb](7dc04fbb11))
- **deps:** update renovate docker tag to v38.39.4
([7c6d9b3](7c6d9b3640))
- **deps:** update renovate docker tag to v38.39.6
([3b91d9f](3b91d9f7d9))
- **deps:** update renovate docker tag to v38.42.0
([d166171](d1661716d1))
- **deps:** update renovate docker tag to v38.44.2
([0056692](0056692c69))
- **deps:** update renovate docker tag to v38.44.3
([6bee7db](6bee7db58d))
- **deps:** update renovate docker tag to v38.45.0
([70d287a](70d287a6ab))
- **deps:** update renovate docker tag to v38.46.0
([6c814d9](6c814d9450))
- **deps:** update renovate docker tag to v38.52.3
([cc16365](cc16365636))
- **deps:** update wagoid/commitlint-github-action action to v6.1.0
([05d52cc](05d52ccd5b))
- **deps:** update wagoid/commitlint-github-action action to v6.1.1
([cd7cbcc](cd7cbccb34))

###
[`v40.2.6`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.6)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.5...v40.2.6)

##### Documentation

- update references to ghcr.io/renovatebot/renovate to v38
([fa0868b](fa0868b58a))
- update references to renovatebot/github-action to v40.2.5
([31bdd4f](31bdd4fd39))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.14.14
([6cf8087](6cf80874d4))
- **deps:** update dependency husky to v9.1.4
([27e26f7](27e26f7ce2))
- **deps:** update dependency lint-staged to v15.2.8
([a83b429](a83b429180))

##### Build System

- **deps:** lock file maintenance
([c36563b](c36563b1cd))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.18.14
([bb431e4](bb431e47f8))
- **deps:** update renovate docker tag to v38.18.17
([818eccd](818eccd0d5))
- **deps:** update renovate docker tag to v38.19.0
([5a5d5f9](5a5d5f922b))
- **deps:** update renovate docker tag to v38.20.1
([47e9fc8](47e9fc89d8))
- **deps:** update renovate docker tag to v38.21.2
([0094885](009488562f))
- **deps:** update renovate docker tag to v38.21.3
([ec4508c](ec4508ced1))
- **deps:** update renovate docker tag to v38.23.0
([e182cbd](e182cbdda2))
- **deps:** update renovate docker tag to v38.23.2
([d820e1a](d820e1ad5d))
- **deps:** update renovate docker tag to v38.24.0
([e8c5786](e8c5786a02))
- **deps:** update renovate docker tag to v38.24.1
([8c35547](8c35547471))
- **deps:** update renovate docker tag to v38.25.0
([b47958f](b47958fcca))
- **deps:** update wagoid/commitlint-github-action action to v6
([#&#8203;849](https://redirect.github.com/renovatebot/github-action/issues/849))
([a9144b2](a9144b27d1))

###
[`v40.2.5`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.5)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.4...v40.2.5)

##### Documentation

- update references to renovatebot/github-action to v40.2.4
([dd6134d](dd6134d9c7))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.1.2
([fd92454](fd92454e71))
- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.1.3
([f2b9a64](f2b9a648f1))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.14.12
([fe88a7e](fe88a7ed9f))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.14.13
([03ace83](03ace83f22))
- **deps:** update dependency husky to v9.1.2
([77e79d3](77e79d3ba3))
- **deps:** update dependency husky to v9.1.3
([0ff26fa](0ff26fa68c))

##### Build System

- **deps:** lock file maintenance
([8f47962](8f47962699))

##### Continuous Integration

- **deps:** update renovate docker tag to v38.11.0
([0736fb9](0736fb93c4))
- **deps:** update renovate docker tag to v38.12.0
([0cff0d5](0cff0d5c7f))
- **deps:** update renovate docker tag to v38.14.0
([83fcd08](83fcd0872d))
- **deps:** update renovate docker tag to v38.16.0
([6989153](6989153cea))
- **deps:** update renovate docker tag to v38.18.11
([f3071cd](f3071cd009))
- **deps:** update renovate docker tag to v38.18.12
([c87684f](c87684fc73))
- **deps:** update renovate docker tag to v38.18.4
([5384334](5384334d3f))
- **deps:** update renovate docker tag to v38.18.5
([f26f2f7](f26f2f7199))
- **deps:** update renovate docker tag to v38.18.8
([51f49c4](51f49c4125))
- **deps:** update renovate docker tag to v38.18.9
([e572ebd](e572ebdbb1))

###
[`v40.2.4`](https://redirect.github.com/renovatebot/github-action/releases/tag/v40.2.4)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v40.2.3...v40.2.4)

##### Documentation

- update references to renovatebot/github-action to v40.2.3
([7aa35ac](7aa35ac950))

##### Miscellaneous Chores

- **deps:** update dependency
[@&#8203;semantic-release/github](https://redirect.github.com/semantic-release/github)
to v10.1.1
([9687ff3](9687ff3e60))
- **deps:** update dependency
[@&#8203;types/node](https://redirect.github.com/types/node) to
v20.14.11
([0e299f5](0e299f5c41))
- **deps:** update dependency husky to v9.1.0
([56cb71f](56cb71f9ae))
- **deps:** update dependency husky to v9.1.1
([63c9526](63c952649a))
- **deps:** update dependency prettier-plugin-packagejson to v2.5.1
([87e9376](87e93769b6))
- **deps:** update dependency rimraf to v6
([#&#8203;856](https://redirect.github.com/renovatebot/github-action/issues/856))
([de0b07a](de0b07a4cd))
- **deps:** update pnpm to v9.6.0
([5b79649](5b79649160))

##### Build System

- **deps:** update dependency typescript to v5.5.4
([1ab20c1](1ab20c16da))

##### Continuous Integration

- **deps:** update renovate docker tag to v37.440.0
([907d816](907d816b18))
- **deps:** update renovate docker tag to v37.440.4
([d2d60a0](https://redirect.github.com/renovatebot/github-action/commit/d2d60a00ab986c6757ff

</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 becomes conflicted, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/morten-olsen/homelab-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-24 00:44:53 +02:00
240 changed files with 90 additions and 4604 deletions

View File

@@ -27,7 +27,7 @@ jobs:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
@@ -81,7 +81,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Upload Release Asset
id: upload-release-asset

View File

@@ -31,7 +31,7 @@ jobs:
name: Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
fetch-depth: 0

View File

@@ -31,7 +31,7 @@ jobs:
name: Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
fetch-depth: 0

View File

@@ -8,9 +8,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Self-hosted Renovate
uses: renovatebot/github-action@v40.2.2
uses: renovatebot/github-action@v43.0.13
with:
token: ${{ secrets.GITHUB_TOKEN }}
configurationFile: ./renovate.json5

View File

@@ -1,136 +0,0 @@
# Agent Documentation
This document describes how to create a new application chart for the homelab operator.
## Chart Structure
Each application has its own chart located in a directory under `charts/apps`. The chart should contain the following files:
- `Chart.yaml`: The chart metadata.
- `values.yaml`: The default values for the chart.
- `templates/`: A directory containing the Kubernetes resource templates.
## Custom Resources
The homelab operator uses several custom resources to manage applications. These resources are defined in the `templates` directory of the chart.
### `PostgresDatabase`
If the application requires a PostgreSQL database, you can create a `PostgresDatabase` resource. The operator will automatically create a database and a secret containing the connection details. The secret will have the same name as the release with a `-pg-connection` postfix.
Example:
```yaml
# templates/database.yaml
apiVersion: homelab.mortenolsen.pro/v1
kind: PostgresDatabase
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
```
The secret has the following values:
- `database`: name of the created database
- `host`: the hostname of the postgres server
- `port`: the port of the postgres server
- `url`: combined url in the format `postgresql://{user}:{password}@{host}:{port}/{database}`
### `OidcClient`
If the application requires OIDC authentication, you can create an `OidcClient` resource. The operator will automatically create an OIDC client and a secret containing the client ID and secret. The secret will have the same name as the release with a `-client` postfix.
You need to specify the redirect URIs for the OIDC client. The subdomain is taken from the `values.yaml` file.
Example:
```yaml
# templates/client.yaml
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
redirectUris:
- path: /user/oauth2/Authentik/callback
subdomain: "{{ .Values.subdomain }}"
matchingMode: strict
```
The secret has the following value:
- `authorization`: Authorization endpoint
- `clientId`
- `clientSecret`
- `configuration`: autodiscovery endpoint
- `configurationIssuer`: issuer url
- `endSession`: end session endpoint
- `jwks`: jwks endpoint
- `token`: token endpoint
- `userinfo`: user info endpoint
### `HttpService` and `ExternalHttpService`
To expose the application, you can use either an `HttpService` or an `ExternalHttpService` resource.
- `HttpService`: This will expose the application through the Istio gateway. This is for internal access only.
- `ExternalHttpService`: This will expose the application through a CloudFlare tunnel. This is for external access.
Both resources take a `subdomain` and a `destination` as parameters. The `destination` is the Kubernetes service to route traffic to.
Example of `HttpService`:
```yaml
# templates/http-service.yaml
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local"
port:
number: 80
```
Example of `ExternalHttpService`:
```yaml
# templates/external-http-service.yaml
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local"
port:
number: 80
```
## `values.yaml`
The `values.yaml` file should contain the following values:
- `globals.environment`: The environment the application is running in (e.g., `prod`, `dev`).
- `image.repository`: The Docker image repository.
- `image.tag`: The Docker image tag.
- `subdomain`: The subdomain for the application.
Example:
```yaml
# values.yaml
globals:
environment: prod
image:
repository: docker.gitea.com/gitea
tag: latest
subdomain: gitea
```

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: apprise

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /oauth/oidc/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,43 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
ports:
- name: http
containerPort: 8000
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
- name: BASE_URL
value: https://{{ .Values.subdomain }}.{{ .Values.globals.domain }}
volumeMounts:
- mountPath: /config
name: data
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}"
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 8000
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,9 +0,0 @@
globals:
environment: prod
timezone: Europe/Amsterdam
domain: olsen.cloud
image:
repository: docker.io/caronc/apprise
tag: latest@sha256:127b3834f0679502529397ead8ffeaadf5189019c4c863fa6652e9b942fdccf8
pullPolicy: IfNotPresent
subdomain: apprise

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: audiobookshelf

View File

@@ -1,13 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /audiobookshelf/auth/openid/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict
- path: /audiobookshelf/auth/openid/mobile-redirect
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,52 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: '{{ .Release.Name }}'
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: '{{ .Release.Name }}'
template:
metadata:
labels:
app: '{{ .Release.Name }}'
spec:
containers:
- name: '{{ .Release.Name }}'
image: '{{ .Values.image.repository }}:{{ .Values.image.tag }}'
imagePullPolicy: '{{ .Values.image.pullPolicy }}'
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
volumeMounts:
- mountPath: /config
name: config
- mountPath: /metadata
name: metadata
- mountPath: /audiobooks
name: audiobooks
- mountPath: /podcasts
name: podcasts
volumes:
- name: config
persistentVolumeClaim:
claimName: '{{ .Release.Name }}-config'
- name: metadata
persistentVolumeClaim:
claimName: '{{ .Release.Name }}-metadata'
- name: audiobooks
persistentVolumeClaim:
claimName: books
- name: podcasts
persistentVolumeClaim:
claimName: podcasts

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,24 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-config'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-metadata'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: '{{ .Release.Name }}'
labels:
app: '{{ .Release.Name }}'
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 80
protocol: TCP
name: http
selector:
app: '{{ .Release.Name }}'

View File

@@ -1,7 +0,0 @@
globals:
environment: prod
image:
repository: ghcr.io/advplyr/audiobookshelf
tag: 2.26.1@sha256:5901162ccdf4b44f563ff2012484d5e315d9a1ecd6af86f7fe605ec96bbc5039
pullPolicy: IfNotPresent
subdomain: audiobookshelf

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: esphome

View File

@@ -1,6 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: PostgresDatabase
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'

View File

@@ -1,46 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
volumeMounts:
- mountPath: /var/www/baikal/Specific
name: data
- mountPath: /var/www/baikal/config
name: config
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"
- name: config
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-config"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}"
port:
number: 80

View File

@@ -1,24 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: "{{ .Release.Name }}-data"
spec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: "1Gi"
storageClassName: "{{ .Values.globals.environment }}"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: "{{ .Release.Name }}-config"
spec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: "1Gi"
storageClassName: "{{ .Values.globals.environment }}"

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 80
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,9 +0,0 @@
globals:
environment: prod
timezone: Europe/Amsterdam
domain: olsen.cloud
image:
repository: docker.io/ckulka/baikal
tag: nginx@sha256:045918423df00a3f9ec793a819b9acdb055d338b75387926b7d93d753ac1e93a
pullPolicy: IfNotPresent
subdomain: baikal

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: ByteStash

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /api/auth/oidc/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,54 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
containers:
- name: "{{ .Release.Name }}"
image: ghcr.io/jordan-dalby/bytestash:latest
ports:
- containerPort: 5000
name: http
env:
- name: ALLOW_NEW_ACCOUNTS
value: "true"
- name: DISABLE_INTERNAL_ACCOUNTS
value: "true"
- name: OIDC_ENABLED
value: "true"
- name: OIDC_DISPLAY_NAME
value: OIDC
- name: OIDC_CLIENT_ID
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-client"
key: clientId
- name: OIDC_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-client"
key: clientSecret
- name: OIDC_ISSUER_URL
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-client"
key: configurationIssuer
volumeMounts:
- mountPath: /data/snippets
name: data
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}'
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: '{{ .Release.Name }}'
labels:
app: '{{ .Release.Name }}'
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 5000
protocol: TCP
name: http
selector:
app: '{{ .Release.Name }}'

View File

@@ -1,3 +0,0 @@
globals:
environment: prod
subdomain: bytestash

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: calibre-web

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /api/auth/oidc/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,42 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
ports:
- containerPort: 8083
name: http
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
- name: PUID
value: "1000"
- name: PGID
value: "1000"
volumeMounts:
- mountPath: /config
name: data
- mountPath: /books
name: books
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"
- name: books
persistentVolumeClaim:
claimName: books

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}"
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 8083
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,9 +0,0 @@
globals:
environment: prod
domain: olsen.cloud
timezone: Europe/Amsterdam
image:
repository: lscr.io/linuxserver/calibre-web
tag: latest@sha256:98a20064168ab284bbb8e048af48c89a5e25650f35a4b217705241af94c1debe
pullPolicy: IfNotPresent
subdomain: calibre-web

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: openwebui

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /api/v2/users/oidc/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,73 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: '{{ .Release.Name }}'
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: '{{ .Release.Name }}'
template:
metadata:
labels:
app: '{{ .Release.Name }}'
spec:
serviceAccountName: '{{ .Release.Name }}-serviceaccount'
containers:
- name: '{{ .Release.Name }}'
image: '{{ .Values.image.repository }}:{{ .Values.image.tag }}'
imagePullPolicy: '{{ .Values.image.pullPolicy }}'
ports:
- name: http
containerPort: 7080
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
volumeMounts:
- mountPath: /home/coder/.config
name: data
env:
- name: CODER_HTTP_ADDRESS
value: '0.0.0.0:7080'
- name: CODER_OIDC_ALLOWED_GROUPS
value: admin
- name: CODER_OIDC_GROUP_FIELD
value: groups
- name: CODER_ACCESS_URL
value: https://coder.olsen.cloud
- name: CODER_OIDC_ICON_URL
value: https://authentik.olsen.cloud/static/dist/assets/icons/icon.png
- name: CODER_DISABLE_PASSWORD_AUTH
value: 'true'
- name: CODER_OAUTH2_GITHUB_ALLOW_SIGNUPS
value: 'false'
- name: CODER_OIDC_SIGN_IN_TEXT
value: 'Sign in with OIDC'
- name: CODER_OIDC_SCOPES
value: openid,profile,email,offline_access
- name: CODER_OIDC_ISSUER_URL
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-client'
key: configurationIssuer
- name: CODER_OIDC_CLIENT_ID
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-client'
key: clientId
- name: CODER_OIDC_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-client'
key: clientSecret
volumes:
- name: data
persistentVolumeClaim:
claimName: '{{ .Release.Name }}-data'

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,21 +0,0 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: '{{ .Release.Name }}-workspace-creator'
rules:
- apiGroups: [''] # "" indicates the core API group (for Pods, PVCs, Services)
resources: ['pods', 'pods/exec', 'pods/log', 'persistentvolumeclaims', 'services']
verbs: ['get', 'list', 'watch', 'create', 'update', 'patch', 'delete']
- apiGroups: ['apps'] # For Deployments, StatefulSets
resources: ['deployments', 'statefulsets']
verbs: ['get', 'list', 'watch', 'create', 'update', 'patch', 'delete']
- apiGroups: ['networking.k8s.io'] # For Ingresses
resources: ['ingresses']
verbs: ['get', 'list', 'watch', 'create', 'update', 'patch', 'delete']
- apiGroups: ['events.k8s.io'] # For events related to workspace activity
resources: ['events']
verbs: ['create', 'patch', 'update'] # Coder might create events for workspace lifecycle
# Add any other resources that Coder workspace templates might create (e.g., secrets, configmaps)
# - apiGroups: [""]
# resources: ["secrets", "configmaps"]
# verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]

View File

@@ -1,13 +0,0 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: '{{ .Release.Name }}-workspace-creator-binding'
namespace: '{{ .Release.Namespace }}'
subjects:
- kind: ServiceAccount
name: '{{ .Release.Name }}-serviceaccount'
namespace: '{{ .Release.Namespace }}'
roleRef:
kind: ClusterRole
name: '{{ .Release.Name }}-workspace-creator'
apiGroup: rbac.authorization.k8s.io

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: '{{ .Release.Name }}'
labels:
app: '{{ .Release.Name }}'
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 7080
protocol: TCP
name: http
selector:
app: '{{ .Release.Name }}'

View File

@@ -1,5 +0,0 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: '{{ .Release.Name }}-serviceaccount'
namespace: '{{ .Release.Namespace }}'

View File

@@ -1,7 +0,0 @@
globals:
environment: prod
image:
repository: ghcr.io/coder/coder
tag: latest@sha256:73714e0685addde01bbff905cf5b647d6b677d77977c8009b6293d40fdf0f562
pullPolicy: IfNotPresent
subdomain: coder

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: data

View File

@@ -1,6 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: PostgresDatabase
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'

View File

@@ -1,2 +0,0 @@
globals:
environment: prod

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: esphome

View File

@@ -1,42 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
hostNetwork: true
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
ports:
- name: http
containerPort: 6052
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
volumeMounts:
- mountPath: /config
name: data
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}"
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 6052
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,9 +0,0 @@
globals:
environment: prod
timezone: Europe/Amsterdam
domain: olsen.cloud
image:
repository: ghcr.io/esphome/esphome
tag: latest@sha256:393775c4c02e0b09d086cd794815a723f90d4af7c3d871935e22be1a34c5d89a
pullPolicy: IfNotPresent
subdomain: esphome

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: gitea

View File

@@ -1,36 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: '{{ .Release.Name }}-runner'
labels:
app: '{{ .Release.Name }}-runner'
spec:
replicas: 1
selector:
matchLabels:
app: '{{ .Release.Name }}-runner'
template:
metadata:
labels:
app: '{{ .Release.Name }}-runner'
spec:
containers:
- name: '{{ .Release.Name }}-runner'
image: docker.io/gitea/act_runner:latest-dind-rootless
env:
- name: GITEA_INSTANCE_URL
value: '{{ .Release.Name }}'
- name: GITEA_RUNNER_NAME
- name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-runner'
key: registration_token
- name: DOCKER_HOST
value: tcp://localhost:2376
- name: DOCKER_CERT_PATH
value: /certs/client
- name: DOCKER_TLS_VERIFY
value: '1'
securityContext:
privileged: true

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /user/oauth2/Authentik/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,6 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: PostgresDatabase
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'

View File

@@ -1,103 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
ports:
- name: http
containerPort: 3000
protocol: TCP
- name: ssh
containerPort: 22
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
volumeMounts:
- mountPath: /data
name: data
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
- name: USER_UID
value: "1000"
- name: USER_GID
value: "1000"
- name: GITEA__server__SSH_DOMAIN
value: ssh-gitea.olsen.cloud
- name: GITEA__server__SSH_PORT
value: "2205"
- name: GITEA__service__REQUIRE_EXTERNAL_REGISTRATION_PASSWORD
value: "true"
#- name: GITEA__service__ENABLE_BASIC_AUTHENTICATION
# value: 'true'
- name: GITEA__service__ENABLE_PASSWORD_SIGNIN_FORM
value: "false"
- name: GITEA__service__DEFAULT_KEEP_EMAIL_PRIVATE
value: "true"
- name: GITEA__service__DEFAULT_USER_IS_RESTRICTED
value: "true"
- name: GITEA__service__DEFAULT_USER_VISIBILITY
value: "private"
- name: GITEA__service__DEFAULT_ORG_VISIBILITY
value: "private"
- name: GITEA__service__ALLOW_ONLY_EXTERNAL_REGISTRATION
value: "true"
- name: GITEA__other__SHOW_FOOTER_POWERED_BY
value: "false"
- name: GITEA__other__SHOW_FOOTER_TEMPLATE_LOAD_TIME
value: "false"
- name: GITEA__other__SHOW_FOOTER_VERSION
value: "false"
- name: GITEA__repository__ENABLE_PUSH_CREATE_USER
value: "true"
- name: GITEA__repository__ENABLE_PUSH_CREATE_ORG
value: "true"
- name: GITEA__openid__ENABLE_OPENID_SIGNIN
value: "false"
- name: GITEA__openid__ENABLE_OPENID_SIGNUP
value: "false"
- name: GITEA__database__DB_TYPE
value: postgres
- name: GITEA__database__NAME
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-pg-connection"
key: database
- name: GITEA__database__HOST
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-pg-connection"
key: host
- name: GITEA__database__USER
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-pg-connection"
key: user
- name: GITEA__database__PASSWD
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-pg-connection"
key: password
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,32 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 3000
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"
---
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}-ssh"
labels:
app: "{{ .Release.Name }}"
spec:
type: LoadBalancer
ports:
- port: 2205
targetPort: 22
protocol: TCP
name: ssh
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,8 +0,0 @@
globals:
environment: prod
timezone: Europe/Amsterdam
image:
repository: docker.gitea.com/gitea
tag: latest@sha256:2edc102cbb636ae1ddac5fa0c715aa5b03079dee13ac6800b2cef6d4e912e718
pullPolicy: IfNotPresent
subdomain: gitea

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: headscale

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
redirectUris:
- path: /oidc/callback
subdomain: '{{ .Values.subdomain }}'
matchingMode: strict

View File

@@ -1,70 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: '{{ .Release.Name }}-config-template'
data:
config.yaml.template: |
server_url: ${PUBLIC_URL}
listen_addr: 0.0.0.0:8080
metrics_listen_addr: 0.0.0.0:9090
grpc_listen_addr: 0.0.0.0:50443
private_key_path: /var/lib/headscale/private_key # Path inside the container
noise:
private_key_path: /var/lib/headscale/noise_private_key # Path inside the container
listen_routes: false
base_domain: "${PUBLIC_URL}" # For client routes and DNS push.
derp:
server:
enabled: false
region_id: 999
region_code: "headscale"
region_name: "Headscale Embedded DERP"
stun_listen_addr: "0.0.0.0:3478"
automatically_add_embedded_derp_region: true
urls:
- https://controlplane.tailscale.com/derpmap/default
auto_update_enabled: true
update_frequency: 24h
oidc:
enabled: true
only_start_if_oidc_is_available: true
issuer: "${OIDC_ISSUER_URL}"
client_id: "${OIDC_CLIENT_ID}"
client_secret: "${OIDC_CLIENT_SECRET}"
scopes: ["openid", "profile", "email"]
redirect_url: "${PUBLIC_URL}/oidc/callback"
pkce:
enabled: true
method: S256
# DNS configuration
dns:
magic_dns: false
override_local_dns: true # Push Headscale's DNS settings to clients
ttl: 60
nameservers:
global:
- 1.1.1.1 # Cloudflare DNS
#- 10.43.0.10 # Replace with your ClusterIP for kube-dns/CoreDNS
# Domains to search for (e.g., for Kubernetes services)
search_domains:
- svc.cluster.local
- cluster.local
auto_create_users: true
oidc_user_property: preferred_username # Or 'email' or 'sub'
prefixes:
v4: 10.20.20.0/24 # Example: A /24 subnet for your VPN clients
database:
type: sqlite
sqlite:
path: /var/lib/headscale/db.sqlite

View File

@@ -1,97 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: '{{ .Release.Name }}'
labels:
app: '{{ .Release.Name }}'
spec:
replicas: 1
selector:
matchLabels:
app: '{{ .Release.Name }}'
template:
metadata:
labels:
app: '{{ .Release.Name }}'
spec:
# To expose WireGuard UDP directly, we need a NodePort service.
# The Pod needs to be aware of the external port it's being exposed on.
# The easiest way to get WireGuard to listen on the correct port and make it
# externally accessible is to use `hostNetwork: true` for the UDP component,
# or by directly specifying the listen port in Headscale config if the NodePort is stable.
# OPTION 1: Best for simple homelab on bare metal where host network traffic isn't an issue
# hostNetwork: true # This makes the pod listen directly on the node's IPs
# dnsPolicy: ClusterFirstWithHostNet # Required if using hostNetwork
initContainers:
- name: generate-config
image: alpine/git # A small image with 'envsubst' available or easily installable
imagePullPolicy: IfNotPresent
command: ['sh', '-c']
args:
- |
# Install envsubst if it's not present (alpine/git may not have it by default)
apk update && apk add bash gettext
# Substitute environment variables into the template
# The vars are passed via `env` section below
envsubst < /config-template/config.yaml.template > /etc/headscale/config.yaml
mkdir -p /etc/headscale
# Optional: Verify the generated config
echo "--- Generated Headscale Configuration ---"
cat /etc/headscale/config.yaml
echo "---------------------------------------"
env:
# These are the variables that `envsubst` will look for and replace
- name: PUBLIC_URL
value: 'https://{{ .Values.subdomain }}.olsen.cloud'
- name: OIDC_ISSUER_URL
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-client'
key: configurationIssuer
- name: OIDC_CLIENT_ID
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-client'
key: clientId
- name: OIDC_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: '{{ .Release.Name }}-client'
key: clientSecret
# Add any other variables used in config.yaml.template here
volumeMounts:
- name: config-template
mountPath: /config-template # Mount the ConfigMap as a volume
readOnly: true
- name: headscale-config
mountPath: /etc/headscale # Destination for the generated config
containers:
- name: '{{ .Release.Name }}'
image: headscale/headscale:latest # Use the official image
command: ['headscale', 'serve']
ports:
- name: http-api
containerPort: 8080
protocol: TCP
- name: wireguard-udp
containerPort: 41641
protocol: UDP
volumeMounts:
- name: headscale-data
mountPath: /var/lib/headscale
- name: headscale-config
mountPath: /etc/headscale
volumes:
- name: config-template
configMap:
name: '{{ .Release.Name }}-config-template'
- name: headscale-config
emptyDir: {}
- name: headscale-data
persistentVolumeClaim:
claimName: '{{ .Release.Name }}-data'

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,32 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: '{{ .Release.Name }}'
labels:
app: '{{ .Release.Name }}'
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 8080
protocol: TCP
name: http
selector:
app: '{{ .Release.Name }}'
---
apiVersion: v1
kind: Service
metadata:
name: '{{ .Release.Name }}-headscale'
labels:
app: '{{ .Release.Name }}'
spec:
type: LoadBalancer
ports:
- port: 41641
targetPort: 41641
protocol: UDP
name: wireguard-udp
selector:
app: '{{ .Release.Name }}'

View File

@@ -1,7 +0,0 @@
globals:
environment: prod
image:
repository: headscale/headscale
tag: latest@sha256:ea9b5ee06274d757a4d52103de56cd11a9c393acb19d9a35f4b9fe52ada410de
pullPolicy: IfNotPresent
subdomain: headscale

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: openwebui

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
redirectUris:
- path: /api/auth/callback/oidc
subdomain: "{{ .Values.subdomain }}"
matchingMode: strict

View File

@@ -1,83 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
ports:
- name: http
containerPort: 7575
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
volumeMounts:
- mountPath: /appdata
name: data
env:
- name: BASE_URL
value: https://homarr.olsen.cloud # TODO
- name: NEXTAUTH_URL
value: https://homarr.olsen.cloud
- name: AUTH_PROVIDERS
value: oidc
- name: AUTH_OIDC_CLIENT_NAME
value: Authentik
- name: AUTH_OIDC_SCOPE_OVERWRITE
value: openid email profile
- name: AUTH_OIDC_GROUPS_ATTRIBUTE
value: groups
- name: AUTH_OIDC_AUTO_LOGIN
value: "true"
- name: SECRET_ENCRYPTION_KEY
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-secrets"
key: encryptionkey
- name: AUTH_OIDC_ISSUER
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-client"
key: configurationIssuer
- name: AUTH_OIDC_CLIENT_ID
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-client"
key: clientId
- name: AUTH_OIDC_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: "{{ .Release.Name }}-client"
key: clientSecret
volumes:
- name: data
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-data"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: '{{ .Release.Name }}'
spec:
environment: '{{ .Values.globals.environment }}'
subdomain: '{{ .Values.subdomain }}'
destination:
host: '{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local'
port:
number: 80

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local"
port:
number: 80

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: '{{ .Release.Name }}-data'
spec:
accessModes:
- 'ReadWriteOnce'
resources:
requests:
storage: '1Gi'
storageClassName: '{{ .Values.globals.environment }}'

View File

@@ -1,9 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: GenerateSecret
metadata:
name: "{{ .Release.Name }}-secrets"
spec:
fields:
- name: encryptionkey
encoding: hex
length: 64

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 7575
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,7 +0,0 @@
globals:
environment: prod
image:
repository: ghcr.io/homarr-labs/homarr
tag: latest@sha256:7d58149aa544037d173a48f41fbde86706068d2b8933a33a911dce26457ecf16
pullPolicy: IfNotPresent
subdomain: homarr

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: home-assistant

View File

@@ -1,10 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: OidcClient
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
redirectUris:
- path: /auth/openid/callback
subdomain: "{{ .Values.subdomain }}"
matchingMode: strict

View File

@@ -1,45 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}"
template:
metadata:
labels:
app: "{{ .Release.Name }}"
spec:
hostNetwork: true
dnsPolicy: ClusterFirstWithHostNet
containers:
- name: "{{ .Release.Name }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
ports:
- name: http
containerPort: 8123
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
volumeMounts:
- mountPath: /config
name: config
securityContext:
privileged: true
volumes:
- name: config
persistentVolumeClaim:
claimName: "{{ .Release.Name }}-config"

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: ExternalHttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local"
port:
number: 80

View File

@@ -1,11 +0,0 @@
apiVersion: homelab.mortenolsen.pro/v1
kind: HttpService
metadata:
name: "{{ .Release.Name }}"
spec:
environment: "{{ .Values.globals.environment }}"
subdomain: "{{ .Values.subdomain }}"
destination:
host: "{{ .Release.Name }}.{{ .Release.Namespace }}.svc.cluster.local"
port:
number: 80

View File

@@ -1,59 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}-piper"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}-piper"
template:
metadata:
labels:
app: "{{ .Release.Name }}-piper"
spec:
hostNetwork: true
containers:
- name: "{{ .Release.Name }}-piper"
image: "{{ .Values.piper.image.repository }}:{{ .Values.piper.image.tag }}"
imagePullPolicy: "{{ .Values.piper.image.pullPolicy }}"
args:
- --piper
- /usr/share/piper/piper
- --data-dir
- /usr/share/piper-voices
- --voice
- "{{ .Values.piper.model }}"
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
ports:
- name: http
containerPort: 10200
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
---
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}-piper"
labels:
app: "{{ .Release.Name }}-piper"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 10200
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}-piper"

View File

@@ -1,11 +0,0 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: "{{ .Release.Name }}-config"
spec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: "1Gi"
storageClassName: "{{ .Values.globals.environment }}"

View File

@@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}"
labels:
app: "{{ .Release.Name }}"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 8123
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}"

View File

@@ -1,57 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: "{{ .Release.Name }}-whisper"
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: "{{ .Release.Name }}-whisper"
template:
metadata:
labels:
app: "{{ .Release.Name }}-whisper"
spec:
hostNetwork: true
containers:
- name: "{{ .Release.Name }}-whisper"
image: "{{ .Values.whisper.image.repository }}:{{ .Values.whisper.image.tag }}"
imagePullPolicy: "{{ .Values.whisper.image.pullPolicy }}"
args:
- --model
- "{{ .Values.whisper.model }}"
- --language
- "{{ .Values.whisper.language }}"
env:
- name: TZ
value: "{{ .Values.globals.timezone }}"
ports:
- name: http
containerPort: 10300
protocol: TCP
livenessProbe:
tcpSocket:
port: http
readinessProbe:
tcpSocket:
port: http
---
apiVersion: v1
kind: Service
metadata:
name: "{{ .Release.Name }}-whisper"
labels:
app: "{{ .Release.Name }}-whisper"
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 10300
protocol: TCP
name: http
selector:
app: "{{ .Release.Name }}-whisper"

View File

@@ -1,21 +0,0 @@
globals:
environment: prod
timezone: Europe/Amsterdam
image:
repository: ghcr.io/home-assistant/home-assistant
tag: stable@sha256:89ec0583c7f47c8a150204f6b5ed48b5432026012bebe1226cf72775a795a5e1
pullPolicy: IfNotPresent
subdomain: home-assistant
piper:
image:
repository: ghcr.io/morten-olsen/glados-voice
tag: main@sha256:8fcc19bd9e7e846bdfd9e9e569c8c944dcfb1d0b47e3f479cbaa7f5587c7206c
pullPolicy: Always
model: en_US-glados-medium
whisper:
image:
repository: rhasspy/wyoming-whisper
tag: latest@sha256:f03456914affe8076fc7688c0890f4c708d93ebfac7340b0b2467f721412012d
pullPolicy: IfNotPresent
model: tiny-int8
language: us

View File

@@ -1,12 +0,0 @@
set -euo pipefail
find . -name "values.yaml" -type f -print0 | while IFS= read -r -d '' values_file; do
location=$(dirname "$values_file")
name=$(basename "$location")
name=$(echo "$name" | tr '[:upper:]' '[:lower:]' | tr -s '[:punct:][:space:]' '-' | sed -e 's/^-*//' -e 's/-*$//')
echo "✅ Chart found in: $location"
echo " - Generated release name: $name"
HELM_COMMAND="helm install --namespace prod \"$name\" \"$location\""
helm upgrade -i --namespace prod "$name" "$location"
done

View File

@@ -1,3 +0,0 @@
apiVersion: v2
version: 1.0.0
name: Jellyfin

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