mirror of
https://github.com/vhaudiquet/homeprod.git
synced 2026-10-15 19:56:15 +00:00
rhema-claw(kube): deploy
This commit is contained in:
@@ -36,6 +36,7 @@ resources:
|
||||
# Personal (apps storing my own content, grouped by content type)
|
||||
- personal/paperless
|
||||
- personal/radicale
|
||||
- personal/rhema-claw
|
||||
- personal/syncthing
|
||||
- personal/media/photoprism
|
||||
- personal/notes/notesnook
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: rhema-claw
|
||||
resources:
|
||||
- namespace.yaml
|
||||
- repository.yaml
|
||||
- release.yaml
|
||||
secretGenerator:
|
||||
- name: rhema-claw-values
|
||||
files:
|
||||
- values.yaml=values.yaml
|
||||
configurations:
|
||||
- kustomizeconfig.yaml
|
||||
@@ -0,0 +1,6 @@
|
||||
nameReference:
|
||||
- kind: Secret
|
||||
version: v1
|
||||
fieldSpecs:
|
||||
- path: spec/valuesFrom/name
|
||||
kind: HelmRelease
|
||||
@@ -0,0 +1,7 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: rhema-claw
|
||||
labels:
|
||||
app.kubernetes.io/name: rhema-claw
|
||||
app.kubernetes.io/component: ai-agent
|
||||
@@ -0,0 +1,24 @@
|
||||
# Tracks the rhema-claw chart as CI publishes it on main: the timestamp
|
||||
# pre-releases (0.1.0-YYYYMMDD-HHMMSS) all sort above 0.1.0-0, and the
|
||||
# chart's appVersion carries the commit SHA the image was tagged with —
|
||||
# values.image.tag stays empty to ride it. Same rolling scheme as the
|
||||
# saggar release.
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: rhema-claw
|
||||
namespace: rhema-claw
|
||||
spec:
|
||||
interval: 1m
|
||||
chart:
|
||||
spec:
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: vhaudiquet
|
||||
namespace: rhema-claw
|
||||
chart: rhema-claw
|
||||
version: ">=0.1.0-0"
|
||||
interval: 1m
|
||||
valuesFrom:
|
||||
- kind: Secret
|
||||
name: rhema-claw-values
|
||||
@@ -0,0 +1,11 @@
|
||||
# The vhaudiquet package repository on the home Gitea — where the rhema
|
||||
# CI publishes the rhema-claw chart on every main push (base version +
|
||||
# timestamp, ordered by SemVer pre-release rules). Public: no auth.
|
||||
apiVersion: source.toolkit.fluxcd.io/v1
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: vhaudiquet
|
||||
namespace: rhema-claw
|
||||
spec:
|
||||
interval: 1m
|
||||
url: https://git.vhaudiquet.fr/api/packages/vhaudiquet/helm
|
||||
@@ -0,0 +1,69 @@
|
||||
# The rhema claw — the resident agent daemon from ../rhema.
|
||||
# Single-node by design (one SQLite store, one dispatcher): the chart
|
||||
# fails the render past one replica.
|
||||
image:
|
||||
repository: git.vhaudiquet.fr/vhaudiquet/rhema-claw
|
||||
# Empty: follows the chart's appVersion — the commit SHA CI stamped on
|
||||
# the pushed images.
|
||||
tag: ""
|
||||
# Bearer token for the /v1 routes (/healthz stays open). The daemon
|
||||
# shells out through the coding agent, so the surface must not sit open
|
||||
# on the LAN. Encrypted at rest: the .sops.yaml creation rule scoped to
|
||||
# this file adds `token` to the values encrypted_regex.
|
||||
token: ENC[AES256_GCM,data:fZKJzLy8FjN+0ONrHn40Tgb1/uTtYdAWTJwY7BfFltsGCPnuMx1F8KIPfQbzliyH,iv:yzaHrdDrSBbnT01aJmv8537D1lVe4kwIDINiuOgXPKU=,tag:dT7Z5v3CUhJg/+BqcjAWIA==,type:str]
|
||||
# No provider, model, or credentials: the backend is selected
|
||||
# dynamically (nothing injected, nothing pinned) — when a dispatch or a
|
||||
# chat turn needs a key, the daemon resolves it through the rhema
|
||||
# config seam, not through this release. The nulls erase the chart's
|
||||
# built-in anthropic/claude defaults from the rendered claw.yaml.
|
||||
config:
|
||||
provider: null
|
||||
model: null
|
||||
watches: null
|
||||
# The chart's own ingress, rendered from these values. Plain HTTP on
|
||||
# purpose: kosmos.lan is LAN-internal and token-auth-only, like every
|
||||
# other .lan surface here (no TLS story for .lan hosts).
|
||||
ingress:
|
||||
enabled: true
|
||||
host: kosmos.lan
|
||||
className: traefik
|
||||
annotations:
|
||||
external-dns.alpha.kubernetes.io/enabled: "true"
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: longhorn
|
||||
size: 5Gi
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 256Mi
|
||||
limits:
|
||||
cpu: "1"
|
||||
memory: 1Gi
|
||||
sops:
|
||||
lastmodified: "2026-10-10T11:49:22Z"
|
||||
mac: ENC[AES256_GCM,data:vz3cATCAOEoyXOJCz0u+GfIq06lV5sV3mUoOKa4lUOWnShGOnxxE+v60AslV4KYBfmSCVliTalM0Vm8isuqJSAd9ZdPaI0CZ9F0gkxza22eaESkapIcIYrAhJYcZnRBSyAXjdVHyIzlvVwyTEqWYvEW7F5MJUgc4igHFD1/gMIA=,iv:VxsYzAWGhOiLXCt68Mpu8N9xgjsXXgc2LnInv2BExV8=,tag:rICLpdj4D37QZtTNV91uWA==,type:str]
|
||||
pgp:
|
||||
- created_at: "2026-10-10T11:49:22Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA7uy4qQr71wiAQ//WeO+shUgWwJAu2IdxVteea0IpFCyo93hWqxLWMytqF7+
|
||||
3h2s7zXXsNvNCvqndHzNSrZt+OuSQDWSBVIzfxlztw7ga6BdI92OhpOZPCIyKwDT
|
||||
LzzUCPrSAGOZVekOkFXKlVDjMFunAiEp/soGda7bbP+VrdHJmeRh8fioTOgd/4qL
|
||||
/QmmJk3bMTlMoVcknOW2qI3n79YA9qnI0vjwBL63bDeZnxZ8CiZzd1SDr10K0rDf
|
||||
f9ErcmeKAwm+HgehSA3xId0Cph4gnf3xNhNDe2gcZvoFlPIrZT0iU0fBzMRuJPxt
|
||||
c9g+TqTAHBfx90H58/NF8Sfr3ScXNUHvHzgzrq4w+ogqmp8NYsdDbzG1C318dV2o
|
||||
nITluENiYgR9Qs6gJda94aEc00IYEBp4lNGp5G1SyHiDB+jMMsiHX6w3x286dgNx
|
||||
G6DcJ+TabCO+A+Fzq74I2ds+paoEgDegDMCIgK6uSKF0jT2ID579Bf2kRraneOqV
|
||||
amgBI2CQZG5FAqdhbtpf4PHAK9YR3b42mgF9nBAc+f/oFeAZm8nFmG7LubwxqbgY
|
||||
HLa7+ct38ygp/pwZ0FQcU5I3VwqYyU+JA3HMsL2yspHJAeQuXAvzkCQ8NaDOMpEY
|
||||
JRY1pIHl3SwTkV3zh9co8r2Ho8fGYO6KzlNfEdRsx2C6DegM70kpPuYzcCDYAd3S
|
||||
XAE6EX2dM+NxYqhHEIwKjFMJlROWwhhRhheFZnyYRMsn75NkeqRfPi2tJgMkIMk9
|
||||
OJ1eekhgFbQr8vaWtrIOhjvQG9ieg2ujuyltVcC2XUFxQONCxbfoXC2oYu1Y
|
||||
=gTTK
|
||||
-----END PGP MESSAGE-----
|
||||
fp: DC6910268E657FF70BA7EC289974494E76938DDC
|
||||
encrypted_regex: ^(password|value|ssh-key|api-key|user|username|privateKey|clientSecret|clientId|apiKey|extraArgs.*|.*Secret.*|extraEnvVars|.*SECRET.*|.*secret.*|key|.*Password|.*PASS|.*SOCIALACCOUNT_PROVIDERS|.*\.ya?ml|token)$
|
||||
mac_only_encrypted: true
|
||||
version: 3.10.2
|
||||
Reference in New Issue
Block a user