47 Commits

Author SHA1 Message Date
dependabot[bot]
a85bfdc10d build(deps): bump hotio/jackett
Bumps [hotio/jackett](https://github.com/hotio/jackett) from release-0.24.900 to release-0.24.955.
- [Commits](https://github.com/hotio/jackett/commits)

---
updated-dependencies:
- dependency-name: hotio/jackett
  dependency-version: release-0.24.955
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-28 00:45:06 +00:00
397e0f8f11 Merge pull request #294 from vhaudiquet/dependabot/docker_compose/docker/personal/media/films-series/jackett/hotio/jackett-release-0.24.900
build(deps): bump hotio/jackett from release-0.24.834 to release-0.24.900 in /docker/personal/media/films-series/jackett
2026-01-27 20:09:20 +01:00
8f56c5e273 Merge pull request #293 from vhaudiquet/dependabot/docker_compose/docker/home/n8n/n8nio/n8n-2.4.5
build(deps): bump n8nio/n8n from 2.3.4 to 2.4.5 in /docker/home/n8n
2026-01-27 20:09:13 +01:00
42d077daf5 Merge pull request #292 from vhaudiquet/dependabot/docker_compose/docker/home/esphome/esphome/esphome-2026.1.0
build(deps): bump esphome/esphome from 2025.12.6 to 2026.1.0 in /docker/home/esphome
2026-01-27 20:09:04 +01:00
ae3cb878ae Merge pull request #291 from vhaudiquet/dependabot/docker_compose/docker/personal/paperless/paperless-ngx/paperless-ngx-2.20.5
build(deps): bump paperless-ngx/paperless-ngx from 2.20.4 to 2.20.5 in /docker/personal/paperless
2026-01-27 20:08:53 +01:00
ec1f651cda Merge pull request #289 from vhaudiquet/dependabot/docker_compose/docker/infrastructure/mail/stalwart/stalwartlabs/stalwart-v0.15.4
build(deps): bump stalwartlabs/stalwart from v0.15.3 to v0.15.4 in /docker/infrastructure/mail/stalwart
2026-01-27 20:08:38 +01:00
2e0a75782e Merge pull request #287 from vhaudiquet/dependabot/docker_compose/docker/personal/radicale/tomsquest/docker-radicale-3.6.0.0
build(deps): bump tomsquest/docker-radicale from 3.5.10.0 to 3.6.0.0 in /docker/personal/radicale
2026-01-27 20:08:31 +01:00
8a9692dd8a buildpath: update to latest 2026-01-25 01:12:07 +01:00
e66bf36f01 buildpath: update to latest 2026-01-25 00:30:45 +01:00
28fc603f33 buildpath: update to latest 2026-01-23 23:34:05 +01:00
35772d5332 Merge branch 'main' of https://github.com/vhaudiquet/homeprod 2026-01-23 21:47:38 +01:00
dc49fe7375 buildpath: update to latest 2026-01-23 21:47:36 +01:00
dependabot[bot]
d8cea24c6d build(deps): bump hotio/jackett
Bumps [hotio/jackett](https://github.com/hotio/jackett) from release-0.24.834 to release-0.24.900.
- [Commits](https://github.com/hotio/jackett/commits)

---
updated-dependencies:
- dependency-name: hotio/jackett
  dependency-version: release-0.24.900
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 17:46:15 +00:00
dependabot[bot]
83b674f8b3 build(deps): bump n8nio/n8n from 2.3.4 to 2.4.5 in /docker/home/n8n
Bumps [n8nio/n8n](https://github.com/n8n-io/n8n) from 2.3.4 to 2.4.5.
- [Release notes](https://github.com/n8n-io/n8n/releases)
- [Commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.4...n8n@2.4.5)

---
updated-dependencies:
- dependency-name: n8nio/n8n
  dependency-version: 2.4.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 17:45:39 +00:00
dependabot[bot]
fd37f8bdff build(deps): bump esphome/esphome in /docker/home/esphome
Bumps [esphome/esphome](https://github.com/esphome/esphome) from 2025.12.6 to 2026.1.0.
- [Release notes](https://github.com/esphome/esphome/releases)
- [Commits](https://github.com/esphome/esphome/compare/2025.12.6...2026.1.0)

---
updated-dependencies:
- dependency-name: esphome/esphome
  dependency-version: 2026.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 17:45:24 +00:00
2469562492 act_runner: remove act runner
From now on, we will be using a dedicated runner machine (CI can use a lot of resources)
2026-01-22 18:44:29 +01:00
b4ddf3d2b5 Merge branch 'main' of https://github.com/vhaudiquet/homeprod
* 'main' of https://github.com/vhaudiquet/homeprod:
  buildpath: update to latest
  buildpath: update to latest
  dashy: deploy dashy
  build(deps): bump paperless-ngx/paperless-ngx
  build(deps): bump jellyfin/jellyfin
  build(deps): bump hotio/jackett
  build(deps): bump n8nio/n8n from 2.2.6 to 2.3.4 in /docker/home/n8n
  build(deps): bump esphome/esphome in /docker/home/esphome
  build(deps): bump hotio/jackett
  build(deps): bump n8nio/n8n from 2.1.4 to 2.2.6 in /docker/home/n8n
  build(deps): bump jellyfin/jellyfin
  build(deps): bump koenkk/zigbee2mqtt in /docker/home/zigbee2mqtt
  build(deps): bump esphome/esphome in /docker/home/esphome
2026-01-22 18:40:48 +01:00
05b967f517 infra/r740: docker infrastructure 2026-01-22 18:40:38 +01:00
dependabot[bot]
3465ae7798 build(deps): bump paperless-ngx/paperless-ngx
Bumps [paperless-ngx/paperless-ngx](https://github.com/paperless-ngx/paperless-ngx) from 2.20.4 to 2.20.5.
- [Release notes](https://github.com/paperless-ngx/paperless-ngx/releases)
- [Changelog](https://github.com/paperless-ngx/paperless-ngx/blob/dev/docs/changelog.md)
- [Commits](https://github.com/paperless-ngx/paperless-ngx/compare/v2.20.4...v2.20.5)

---
updated-dependencies:
- dependency-name: paperless-ngx/paperless-ngx
  dependency-version: 2.20.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-21 00:46:12 +00:00
dependabot[bot]
2664dae2ba build(deps): bump stalwartlabs/stalwart
Bumps stalwartlabs/stalwart from v0.15.3 to v0.15.4.

---
updated-dependencies:
- dependency-name: stalwartlabs/stalwart
  dependency-version: v0.15.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-21 00:44:46 +00:00
87b7d7f6ae buildpath: update to latest 2026-01-20 22:21:56 +01:00
dependabot[bot]
0167c4ff65 build(deps): bump tomsquest/docker-radicale in /docker/personal/radicale
Bumps tomsquest/docker-radicale from 3.5.10.0 to 3.6.0.0.

---
updated-dependencies:
- dependency-name: tomsquest/docker-radicale
  dependency-version: 3.6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-20 20:28:12 +00:00
bea0cfbfe3 buildpath: update to latest 2026-01-20 21:26:47 +01:00
6c8a270c7d dashy: deploy dashy 2026-01-18 01:28:20 +01:00
751e918e0a Merge pull request #279 from vhaudiquet/dependabot/docker_compose/docker/home/esphome/esphome/esphome-2025.12.6
build(deps): bump esphome/esphome from 2025.12.5 to 2025.12.6 in /docker/home/esphome
2026-01-14 18:12:16 +01:00
6faefd8942 Merge pull request #280 from vhaudiquet/dependabot/docker_compose/docker/home/n8n/n8nio/n8n-2.3.4
build(deps): bump n8nio/n8n from 2.2.6 to 2.3.4 in /docker/home/n8n
2026-01-14 18:12:10 +01:00
77f8357091 Merge pull request #281 from vhaudiquet/dependabot/docker_compose/docker/personal/media/films-series/jackett/hotio/jackett-release-0.24.834
build(deps): bump hotio/jackett from release-0.24.807 to release-0.24.834 in /docker/personal/media/films-series/jackett
2026-01-14 18:12:02 +01:00
844e599d1e Merge pull request #282 from vhaudiquet/dependabot/docker_compose/docker/personal/media/films-series/jellyfin/jellyfin/jellyfin-2026011205
build(deps): bump jellyfin/jellyfin from 2026010505 to 2026011205 in /docker/personal/media/films-series/jellyfin
2026-01-14 18:11:53 +01:00
159a22503d Merge pull request #283 from vhaudiquet/dependabot/docker_compose/docker/personal/paperless/paperless-ngx/paperless-ngx-2.20.4
build(deps): bump paperless-ngx/paperless-ngx from 2.20.3 to 2.20.4 in /docker/personal/paperless
2026-01-14 18:11:46 +01:00
dependabot[bot]
98149233fd build(deps): bump paperless-ngx/paperless-ngx
Bumps [paperless-ngx/paperless-ngx](https://github.com/paperless-ngx/paperless-ngx) from 2.20.3 to 2.20.4.
- [Release notes](https://github.com/paperless-ngx/paperless-ngx/releases)
- [Changelog](https://github.com/paperless-ngx/paperless-ngx/blob/dev/docs/changelog.md)
- [Commits](https://github.com/paperless-ngx/paperless-ngx/compare/v2.20.3...v2.20.4)

---
updated-dependencies:
- dependency-name: paperless-ngx/paperless-ngx
  dependency-version: 2.20.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 00:46:24 +00:00
dependabot[bot]
dc336dbf17 build(deps): bump jellyfin/jellyfin
Bumps jellyfin/jellyfin from 2026010505 to 2026011205.

---
updated-dependencies:
- dependency-name: jellyfin/jellyfin
  dependency-version: '2026011205'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 00:45:54 +00:00
dependabot[bot]
ff97f089b6 build(deps): bump hotio/jackett
Bumps [hotio/jackett](https://github.com/hotio/jackett) from release-0.24.807 to release-0.24.834.
- [Commits](https://github.com/hotio/jackett/commits)

---
updated-dependencies:
- dependency-name: hotio/jackett
  dependency-version: release-0.24.834
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 00:45:25 +00:00
dependabot[bot]
32fc76c9cc build(deps): bump n8nio/n8n from 2.2.6 to 2.3.4 in /docker/home/n8n
Bumps [n8nio/n8n](https://github.com/n8n-io/n8n) from 2.2.6 to 2.3.4.
- [Release notes](https://github.com/n8n-io/n8n/releases)
- [Commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.6...n8n@2.3.4)

---
updated-dependencies:
- dependency-name: n8nio/n8n
  dependency-version: 2.3.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 00:45:03 +00:00
dependabot[bot]
dd0dff747b build(deps): bump esphome/esphome in /docker/home/esphome
Bumps [esphome/esphome](https://github.com/esphome/esphome) from 2025.12.5 to 2025.12.6.
- [Release notes](https://github.com/esphome/esphome/releases)
- [Commits](https://github.com/esphome/esphome/compare/2025.12.5...2025.12.6)

---
updated-dependencies:
- dependency-name: esphome/esphome
  dependency-version: 2025.12.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 00:44:50 +00:00
76c2abdfc5 Merge pull request #271 from vhaudiquet/dependabot/docker_compose/docker/home/esphome/esphome/esphome-2025.12.5
build(deps): bump esphome/esphome from 2025.12.3 to 2025.12.5 in /docker/home/esphome
2026-01-10 21:21:15 +01:00
b2c9aae0bd Merge pull request #273 from vhaudiquet/dependabot/docker_compose/docker/home/zigbee2mqtt/koenkk/zigbee2mqtt-2.7.2
build(deps): bump koenkk/zigbee2mqtt from 2.7.1 to 2.7.2 in /docker/home/zigbee2mqtt
2026-01-10 21:20:59 +01:00
f183b1f37a Merge pull request #275 from vhaudiquet/dependabot/docker_compose/docker/personal/media/films-series/jellyfin/jellyfin/jellyfin-2026010505
build(deps): bump jellyfin/jellyfin from 2025122905 to 2026010505 in /docker/personal/media/films-series/jellyfin
2026-01-10 21:20:36 +01:00
e6813e91d9 Merge pull request #277 from vhaudiquet/dependabot/docker_compose/docker/home/n8n/n8nio/n8n-2.2.6
build(deps): bump n8nio/n8n from 2.1.4 to 2.2.6 in /docker/home/n8n
2026-01-10 21:20:21 +01:00
a255866074 Merge pull request #278 from vhaudiquet/dependabot/docker_compose/docker/personal/media/films-series/jackett/hotio/jackett-release-0.24.807
build(deps): bump hotio/jackett from release-0.24.622 to release-0.24.807 in /docker/personal/media/films-series/jackett
2026-01-10 21:19:54 +01:00
dependabot[bot]
6677fd065e build(deps): bump hotio/jackett
Bumps [hotio/jackett](https://github.com/hotio/jackett) from release-0.24.622 to release-0.24.807.
- [Commits](https://github.com/hotio/jackett/commits)

---
updated-dependencies:
- dependency-name: hotio/jackett
  dependency-version: release-0.24.807
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-10 11:49:14 +00:00
dependabot[bot]
458a9ac124 build(deps): bump n8nio/n8n from 2.1.4 to 2.2.6 in /docker/home/n8n
Bumps [n8nio/n8n](https://github.com/n8n-io/n8n) from 2.1.4 to 2.2.6.
- [Release notes](https://github.com/n8n-io/n8n/releases)
- [Commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.4...n8n@2.2.6)

---
updated-dependencies:
- dependency-name: n8nio/n8n
  dependency-version: 2.2.6
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-10 11:48:54 +00:00
583519cde9 infra: r740 updates 2026-01-10 12:47:56 +01:00
dependabot[bot]
751a23340b build(deps): bump jellyfin/jellyfin
Bumps jellyfin/jellyfin from 2025122905 to 2026010505.

---
updated-dependencies:
- dependency-name: jellyfin/jellyfin
  dependency-version: '2026010505'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 00:07:14 +00:00
dependabot[bot]
9f8de91285 build(deps): bump koenkk/zigbee2mqtt in /docker/home/zigbee2mqtt
Bumps koenkk/zigbee2mqtt from 2.7.1 to 2.7.2.

---
updated-dependencies:
- dependency-name: koenkk/zigbee2mqtt
  dependency-version: 2.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 00:06:15 +00:00
dependabot[bot]
ef6a07dd05 build(deps): bump esphome/esphome in /docker/home/esphome
Bumps [esphome/esphome](https://github.com/esphome/esphome) from 2025.12.3 to 2025.12.5.
- [Release notes](https://github.com/esphome/esphome/releases)
- [Commits](https://github.com/esphome/esphome/compare/2025.12.3...2025.12.5)

---
updated-dependencies:
- dependency-name: esphome/esphome
  dependency-version: 2025.12.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 00:05:56 +00:00
4339a9b1bb matter-server: fix image link 2026-01-03 18:29:42 +01:00
da1aa93afd matter-server: update to 8.1.2 2026-01-03 18:21:37 +01:00
25 changed files with 459 additions and 38 deletions

View File

@@ -5,7 +5,6 @@ updates:
schedule:
interval: weekly
directories:
- "/docker/gitea-actions"
- "/docker/home/esphome"
- "/docker/home/matter-server"
- "/docker/home/mosquitto-mqtt"
@@ -46,7 +45,6 @@ updates:
- "/kubernetes/code/gitea"
- "/kubernetes/code/harbor"
- "/kubernetes/home/home-assisant"
- "/kubernetes/home/zigbee2mqtt"
- "/kubernetes/infrastructure/authentik"
- "/kubernetes/personal/linkwarden"
- "/kubernetes/personal/notesnook"
@@ -55,4 +53,5 @@ updates:
- "/kubernetes/system/csi-driver-nfs"
- "/kubernetes/system/external-dns"
- "/kubernetes/system/traefik"
- "/kubernetes/tools/dashy"
- "/kubernetes/tools/glance"

View File

@@ -1,10 +1,3 @@
gitea-actions:
repo: homeprod
branch: main
compose_file: docker/gitea-actions/docker-compose.yml
sops_files:
- docker/gitea-actions/.env
esphome:
repo: homeprod
branch: main

View File

@@ -1,11 +0,0 @@
GITEA_INSTANCE_URL=ENC[AES256_GCM,data:PYjmpgDEvPEC1S7MrN6d91IUBnGbFA9Xag==,iv:m7YQOMnuEoT5wDyy47aaTqjJG+dhqTJKf5i3hQs6GwY=,tag:2ldKTNRqdJEXTxr3uAyLLQ==,type:str]
GITEA_RUNNER_REGISTRATION_TOKEN=ENC[AES256_GCM,data:RDnENtxQw80C7SwmMZV2DTlEx4+uvzVMy95leGb/1RR6egc6S4xWnQ==,iv:wThZ2+qukJqC+ApvXC9GBdneXJ00jkkTyq+2VXSDG+w=,tag:KygPnxauOpaI1goZ4+uf3g==,type:str]
GITEA_RUNNER_NAME=ENC[AES256_GCM,data:HvNmmQyKxk16WQV8dRfPOfCO39w=,iv:z1YuNWvglBYaXQwZXjMzXD4ZN2d7c3eD9GdSaG1maNY=,tag:FtX6wG47uTGjTQ8UNvGfcg==,type:str]
GITEA_RUNNER_LABELS=
sops_lastmodified=2025-09-16T19:22:00Z
sops_mac=ENC[AES256_GCM,data:JIp7wyaIsy2Jg9p3ybHAljkDn8vpDRHtf7Zm2/M4exe6CbWCRn1jGMle+SnKBv2DKVciquQ9B9cKtKnVCpEAQOceZ1WakwS/mCmjYTIHqcvm8/vst1BYiL1Ovbw2dDstzWo8g+UTKAmVC7E0TJ01vAbsOab+fVacKLHF97pBqW8=,iv:5tcuJntPXrWCeNTGQbXzLaGZnCc8rr+gKG+UTRBNUaY=,tag:g7EYMAaOmwjKFYfz1ID5xQ==,type:str]
sops_pgp__list_0__map_created_at=2025-09-16T19:22:00Z
sops_pgp__list_0__map_enc=-----BEGIN PGP MESSAGE-----\n\nhQIMA7uy4qQr71wiAQ//c0J+b0XwnMbLlQku3tAEutXuEkQPMMrdOpPYwrua9nNu\nSVPBSiamnTeoaP2kM5lcaQ7HUaRLiS1qjXNVPsnAdkGPPID3SxUJzUo7Ca/JOq7e\n39ihqetWAcn9dNDofTxVKyvKXhXKGaDFy2LhaKugj4tkx6qdMA/XAldvRD6ik1jK\nAZjl2xGYTvZ+XgTGtFs6u3Z9ugD6Q3yPjKRSfeIO8NPT5OFFzY70wqlZflxcpupD\npnsvXQkAK1Rnz6F9+dh6jJYYijTdEe9Q0i+0Uy3q+wMsf8KRWs4ARD05DpgIOnUA\nG0s2kdOOlvqoJ/m2fSV7vkIcCvCwhEirn5kfrdUGi3ENazh0g3vpppAfE0ynZdSo\nDiXI7dzCwMxYi8edieOhK3RrOn8bx7B8F1WE+mHL6StQmD2G+xfvgtKlsEJGY2Ed\n1CpMZSQ0TwFx58fYiK+HsZrwAw/3YVzPWryaYvJ6P8QnY3oJOJihSYGRMmyH5WRo\nle1Rxd+Lrt1UnWyZQ7rpqMsYiIzihsNgNix/2wS1R9R1wRFXPdNDfzjrv1BGm/aJ\nOOqUFo6Hd3jEwYcSsG7mbe+hCAAXoJjZSU43dVzeZ0k5ls/lpOjqjQrZZLgz33uF\nNVNRAKTYD2y+/mQ4vpDUsHhu5rtjxh8u1CJf0++q1W/w+Z4ooq5hcNm3ud3DHYjS\nXgF1JA9ThTS+Hs1fV5SFzGMyFMFGeiTVJeww26R+1Vws7fFwbyAYugOqAgkiNkIf\nS2dsxlH1TRjBq1XD4GYk6P3VDUU5UyxG/5XiOexGEVSxBL/wg6TwpyL1hjvgc9k=\n=fmOe\n-----END PGP MESSAGE-----
sops_pgp__list_0__map_fp=DC6910268E657FF70BA7EC289974494E76938DDC
sops_unencrypted_suffix=_unencrypted
sops_version=3.10.2

View File

@@ -1,6 +0,0 @@
services:
runner:
image: docker.io/gitea/act_runner:nightly
env_file: .env
volumes:
- /var/run/docker.sock:/var/run/docker.sock

View File

@@ -1,6 +1,6 @@
services:
esphome:
image: ghcr.io/esphome/esphome:2025.12.3
image: ghcr.io/esphome/esphome:2026.1.0
ports:
- "6052"
networks:

View File

@@ -1,6 +1,6 @@
services:
matter-server:
image: ghcr.io/home-assistant-libs/python-matter-server:8.1.0
image: ghcr.io/matter-js/python-matter-server:8.1.2
container_name: matter-server
restart: unless-stopped
network_mode: host

View File

@@ -1,6 +1,6 @@
services:
n8n:
image: docker.n8n.io/n8nio/n8n:2.1.4
image: docker.n8n.io/n8nio/n8n:2.4.5
environment:
- TZ=Europe/Paris
- N8N_SECURE_COOKIE=false

View File

@@ -2,7 +2,7 @@ services:
zigbee2mqtt:
container_name: zigbee2mqtt
restart: unless-stopped
image: koenkk/zigbee2mqtt:2.7.1
image: koenkk/zigbee2mqtt:2.7.2
networks:
- default
- proxy

View File

@@ -1,6 +1,6 @@
services:
stalwart:
image: stalwartlabs/stalwart:v0.15.3
image: stalwartlabs/stalwart:v0.15.4
container_name: stalwart
networks:
- default

View File

@@ -1,7 +1,7 @@
services:
jackett:
container_name: jackett
image: ghcr.io/hotio/jackett:release-0.24.622
image: ghcr.io/hotio/jackett:release-0.24.955
ports:
- "9117"
networks:

View File

@@ -1,6 +1,6 @@
services:
jellyfin:
image: jellyfin/jellyfin:2025122905
image: jellyfin/jellyfin:2026011205
container_name: jellyfin
networks:
- default

View File

@@ -16,7 +16,7 @@ services:
POSTGRES_DB: paperless
paperless-webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:2.20.3
image: ghcr.io/paperless-ngx/paperless-ngx:2.20.5
restart: unless-stopped
networks:
- default

View File

@@ -1,6 +1,6 @@
services:
radicale:
image: tomsquest/docker-radicale:3.5.10.0
image: tomsquest/docker-radicale:3.6.0.0
container_name: radicale
ports:
- 5232

View File

@@ -10,7 +10,7 @@ services:
env_file: .env
patch_detector:
image: git.vhaudiquet.fr/vhaudiquet/lolstats-patch_detector:de9406a583835dc0840da8586a6d539abdfb603f
image: git.vhaudiquet.fr/vhaudiquet/lolstats-patch_detector:e0a39dab0a5130d8f98e956e3a1c5676410b2d25
build: ./patch_detector
restart: "no"
deploy:
@@ -22,7 +22,7 @@ services:
match_collector:
image: git.vhaudiquet.fr/vhaudiquet/lolstats-match_collector:de9406a583835dc0840da8586a6d539abdfb603f
image: git.vhaudiquet.fr/vhaudiquet/lolstats-match_collector:e0a39dab0a5130d8f98e956e3a1c5676410b2d25
build: ./match_collector
restart: "no"
deploy:
@@ -33,7 +33,7 @@ services:
env_file: .env
frontend:
image: git.vhaudiquet.fr/vhaudiquet/lolstats-frontend:de9406a583835dc0840da8586a6d539abdfb603f
image: git.vhaudiquet.fr/vhaudiquet/lolstats-frontend:e0a39dab0a5130d8f98e956e3a1c5676410b2d25
build: ./frontend
restart: always
networks:

49
infra/r740/docker/main.tf Normal file
View File

@@ -0,0 +1,49 @@
terraform {
required_providers {
docker = {
source = "kreuzwerker/docker"
version = "3.6.2"
}
}
}
# Docker configuration
provider "docker" {
host = "ssh://root@${var.docker_host}"
}
resource "docker_image" "swarm-cd" {
name = "swarm-cd:latest"
# For now, custom-built image based on custom development branch
# Once this reaches upstream, back to upstream tag, like:
# ghcr.io/m-adawi/swarm-cd:1.9.0
}
resource "docker_container" "swarm-cd" {
name = "swarm-cd"
image = docker_image.swarm-cd.image_id
volumes {
host_path = "/var/run/docker.sock"
container_path = "/var/run/docker.sock"
read_only = true
}
volumes {
host_path = "/root/homeprod/.swarmcd/repos.yaml"
container_path = "/app/repos.yaml"
read_only = true
}
volumes {
host_path = "/root/homeprod/.swarmcd/stacks.yaml"
container_path = "/app/stacks.yaml"
read_only = true
}
volumes {
host_path = "/app/swarm-cd/data"
container_path = "/data"
}
env = [
"SOPS_GPG_PRIVATE_KEY=${var.sops_private_key}"
]
depends_on = [ docker_image.swarm-cd ]
}

View File

@@ -0,0 +1,8 @@
variable "sops_private_key" {
description = "Private SOPS GPG key for SwarmCD to decrypt secrets"
type = string
}
variable "docker_host" {
description = "Docker machine hostname"
type = string
}

311
infra/r740/kube/main.tf Normal file
View File

@@ -0,0 +1,311 @@
terraform {
required_providers {
talos = {
source = "siderolabs/talos"
version = "0.9.0"
}
kubernetes = {
source = "hashicorp/kubernetes"
version = "2.36.0"
}
helm = {
source = "hashicorp/helm"
version = "2.17.0"
}
}
}
# Talos configuration
provider "talos" {}
# Kubernetes configuration
provider "kubernetes" {
config_path = "${path.module}/kubeconfig"
}
# Helm configuration
provider "helm" {
kubernetes {
config_path = "${path.module}/kubeconfig"
}
}
resource "talos_machine_secrets" "kube" {}
data "talos_machine_configuration" "kube" {
cluster_name = "kube-${var.physical_hostname}"
machine_type = "controlplane"
cluster_endpoint = "https://${var.kube_host}:6443"
machine_secrets = talos_machine_secrets.kube.machine_secrets
config_patches = [
yamlencode({
machine = {
install = {
image = "factory.talos.dev/installer/ce4c980550dd2ab1b17bbf2b08801c7eb59418eafe8f279833297925d67c7515:v1.11.5"
}
network = {
nameservers = [
"10.1.2.3"
]
}
certSANs = [
"${var.kube_host}", "${var.kube_hostname}"
]
}
cluster = {
clusterName = "kube-${var.physical_hostname}"
allowSchedulingOnControlPlanes = true
apiServer = {
certSANs = [
"${var.kube_host}", "${var.kube_hostname}"
]
}
network = {
dnsDomain = "cluster.local"
cni = {
name: "none"
}
}
proxy = {
disabled = true
}
}
})
]
}
data "talos_client_configuration" "kube" {
cluster_name = "kube-${var.physical_hostname}"
client_configuration = talos_machine_secrets.kube.client_configuration
nodes = ["${var.kube_host}"]
}
resource "talos_machine_configuration_apply" "kube" {
client_configuration = talos_machine_secrets.kube.client_configuration
machine_configuration_input = data.talos_machine_configuration.kube.machine_configuration
node = var.kube_host
depends_on = [ talos_machine_secrets.kube ]
}
resource "talos_machine_bootstrap" "kube" {
node = var.kube_host
client_configuration = talos_machine_secrets.kube.client_configuration
depends_on = [ talos_machine_configuration_apply.kube, talos_machine_secrets.kube ]
}
resource "talos_cluster_kubeconfig" "kube" {
node = var.kube_host
depends_on = [ talos_machine_bootstrap.kube ]
client_configuration = talos_machine_secrets.kube.client_configuration
}
output "kubeconfig" {
sensitive = true
value = talos_cluster_kubeconfig.kube.kubeconfig_raw
}
resource "local_file" "kubeconfig" {
content = "${talos_cluster_kubeconfig.kube.kubeconfig_raw}"
filename = "${path.module}/kubeconfig"
depends_on = [ talos_cluster_kubeconfig.kube ]
}
data "talos_client_configuration" "talosconfig" {
cluster_name = "kube-${var.physical_hostname}"
client_configuration = talos_machine_secrets.kube.client_configuration
nodes = [var.kube_host]
}
resource "local_file" "talosconfig" {
content = "${data.talos_client_configuration.talosconfig.talos_config}"
filename = "${path.module}/talosconfig"
depends_on = [ data.talos_client_configuration.talosconfig ]
}
# TODO : Wait for talos_cluster_kubeconfig...
resource "helm_release" "cilium" {
name = "cilium"
namespace = "kube-system"
repository = "https://helm.cilium.io/"
chart = "cilium"
wait = false
depends_on = [ local_file.kubeconfig, talos_cluster_kubeconfig.kube ]
set {
name = "ipam.mode"
value = "kubernetes"
}
set {
name = "kubeProxyReplacement"
value = true
}
set {
name = "securityContext.capabilities.ciliumAgent"
value = "{CHOWN,KILL,NET_ADMIN,NET_RAW,IPC_LOCK,SYS_ADMIN,SYS_RESOURCE,DAC_OVERRIDE,FOWNER,SETGID,SETUID}"
}
set {
name = "securityContext.capabilities.cleanCiliumState"
value = "{NET_ADMIN,SYS_ADMIN,SYS_RESOURCE}"
}
set {
name = "cgroup.autoMount.enabled"
value = false
}
set {
name = "cgroup.hostRoot"
value = "/sys/fs/cgroup"
}
set {
name = "k8sServiceHost"
value = "localhost"
}
set {
name = "k8sServicePort"
value = 7445
}
set {
name = "etcd.clusterDomain"
value = "cluster.local"
}
set {
name = "hubble.relay.enabled"
value = true
}
# Enable hubble ui
set {
name = "hubble.ui.enabled"
value = true
}
# Gateway API support
set {
name = "gatewayAPI.enabled"
value = true
}
set {
name = "gatewayAPI.enableAlpn"
value = true
}
set {
name = "gatewayAPI.enableAppProtocol"
value = true
}
# Gateway API trusted hops : for reverse proxy
set {
name = "gatewayAPI.xffNumTrustedHops"
value = 1
}
# Single-node cluster, so 1 operator only
set {
name = "operator.replicas"
value = 1
}
# L2 announcements
set {
name = "l2announcements.enabled"
value = true
}
set {
name = "externalIPs.enabled"
value = true
}
# Disable ingress controller (traefik will be used for now)
set {
name = "ingressController.enabled"
value = false
}
set {
name = "ingressController.loadbalancerMode"
value = "shared"
}
# Ingress controller for external : behind reverse proxy, trust 1 hop
set {
name = "envoy.xffNumTrustedHopsL7PolicyIngress"
value = 1
}
# Set cilium as default ingress controller
set {
name = "ingressController.default"
value = true
}
set {
name = "ingressController.service.externalTrafficPolicy"
value = "Local"
}
}
resource "kubernetes_namespace" "flux-system" {
metadata {
name = "flux-system"
}
lifecycle {
ignore_changes = [ metadata[0].annotations, metadata[0].labels ]
}
depends_on = [ talos_cluster_kubeconfig.kube, local_file.kubeconfig, helm_release.cilium ]
}
resource "kubernetes_secret" "flux-sops" {
metadata {
name = "flux-sops"
namespace = "flux-system"
}
type = "generic"
data = {
"sops.asc"=var.sops_private_key
}
depends_on = [ kubernetes_namespace.flux-system ]
}
resource "helm_release" "flux-operator" {
name = "flux-operator"
namespace = "flux-system"
repository = "oci://ghcr.io/controlplaneio-fluxcd/charts"
chart = "flux-operator"
wait = true
depends_on = [ kubernetes_secret.flux-sops ]
}
resource "helm_release" "flux-instance" {
name = "flux"
namespace = "flux-system"
repository = "oci://ghcr.io/controlplaneio-fluxcd/charts"
chart = "flux-instance"
values = [
file("values/components.yaml")
]
set {
name = "instance.distribution.version"
value = "2.x"
}
set {
name = "instance.distribution.registry"
value = "ghcr.io/fluxcd"
}
set {
name = "instance.sync.name"
value = "homeprod"
}
set {
name = "instance.sync.kind"
value = "GitRepository"
}
set {
name = "instance.sync.url"
value = "https://github.com/vhaudiquet/homeprod"
}
set {
name = "instance.sync.path"
value = "kubernetes/"
}
set {
name = "instance.sync.ref"
value = "refs/heads/main"
}
depends_on = [ helm_release.flux-operator ]
}

View File

@@ -0,0 +1,16 @@
variable "sops_private_key" {
description = "Private SOPS GPG key for flux/kubernetes to decrypt secrets"
type = string
}
variable "kube_hostname" {
description = "Kubernetes cluster hostname"
type = string
}
variable "kube_host" {
description = "Kubernetes cluster host"
type = string
}
variable "physical_hostname" {
description = "Host name of the physical host for the kubernetes VM"
type = string
}

View File

@@ -24,6 +24,7 @@ resource "proxmox_virtual_environment_file" "docker-machine-cloud-config" {
- qemu-guest-agent
- nfs-common
runcmd:
- systemctl mask tmp.mount
- systemctl enable --now qemu-guest-agent
- install -m 0755 -d /etc/apt/keyrings
- curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc

View File

@@ -0,0 +1,13 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: dashy
resources:
- namespace.yaml
- repository.yaml
- release.yaml
secretGenerator:
- name: dashy-values
files:
- values.yaml=values.yaml
configurations:
- kustomizeconfig.yaml

View File

@@ -0,0 +1,6 @@
nameReference:
- kind: Secret
version: v1
fieldSpecs:
- path: spec/valuesFrom/name
kind: HelmRelease

View File

@@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: dashy

View File

@@ -0,0 +1,19 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: dashy
namespace: dashy
spec:
interval: 1m
chart:
spec:
reconcileStrategy: Revision
sourceRef:
kind: HelmRepository
name: dashy
namespace: dashy
chart: dashy
interval: 1m
valuesFrom:
- kind: Secret
name: dashy-values

View File

@@ -0,0 +1,8 @@
apiVersion: source.toolkit.fluxcd.io/v1
kind: HelmRepository
metadata:
name: dashy
namespace: dashy
spec:
interval: 1m
url: https://ivanwongtf.github.io/nas-helm-charts/

View File

@@ -0,0 +1,11 @@
ingress:
main:
enabled: true
hosts:
- host: dashy.lan
paths:
- path: /
pathType: ImplementationSpecific
persistence:
data:
enabled: true