Commit graph

1163 commits

Author SHA1 Message Date
Viktor Barzin
4e2dbcde77 [ci skip] Add NAS, printer, iDRAC, AC, and AI to ha-sofia knowledge map 2026-02-07 21:40:47 +00:00
Viktor Barzin
0383e502a4 [ci skip] Add ha-sofia knowledge map to home-assistant skill
Document all systems discovered via API: gas boiler (EMS-ESP), 4-room
thermostats, solar/battery (Solarman), ATS, Paradox alarm, Frigate NVR
with 9 cameras, Home Connect appliances, LED controllers, media, UPS,
Pax ventilation, and Bulgarian ↔ English room name mappings.
2026-02-07 21:39:58 +00:00
Viktor Barzin
01affd9727 [ci skip] Add Proxmox VM inventory to claude knowledge 2026-02-07 21:37:38 +00:00
Viktor Barzin
191c760b94 [ci skip] Add ha-sofia Home Assistant deployment to skills
- Update home-assistant skill to v2.0.0 covering both ha-london and ha-sofia
- Add separate API script for ha-sofia (home-assistant-sofia.py)
- ha-sofia: SSH via vbarzin@ha-sofia.viktorbarzin.lan, config at /config/
- Update CLAUDE.md with both HA deployments
2026-02-07 21:26:05 +00:00
Viktor Barzin
a26fdd27b2 [ci skip] Add skills: traefik-http3-quic and helm-release-force-rerender
- traefik-http3-quic: Enable HTTP/3 (QUIC) on Traefik with advertisedPort
  gotcha, Cloudflare zone settings, and testing instructions
- helm-release-force-rerender: Fix Helm releases where Terraform applies
  but K8s resources don't reflect new values (state rm + reimport pattern)
2026-02-07 20:49:34 +00:00
Viktor Barzin
8b8beb78dd [ci skip] update claude knowledge: HTTP/3 enabled for Traefik and Cloudflare 2026-02-07 20:46:14 +00:00
Viktor Barzin
2875bf9d4e [ci skip] Enable HTTP/3 (QUIC) for all ingresses
- Add http3.enabled + advertisedPort=443 to Traefik websecure entrypoint
- Add cloudflare_zone_settings_override to enable HTTP/3 for proxied domains
2026-02-07 20:43:49 +00:00
Viktor Barzin
eef9d25874 [ci skip] Strip Authentik auth headers before forwarding to backend
Add strip-auth-headers Traefik middleware that removes X-authentik-*
headers from requests before they reach the backend. Backends like
iDRAC and TP-Link gateway break when receiving these extra headers.
2026-02-07 20:28:44 +00:00
Viktor Barzin
30bc2e9386 [ci skip] Fix DNS forwarding through Traefik to Technitium
Expose UDP port 53 on the Traefik LoadBalancer service and enable
cross-namespace CRD references so the IngressRouteUDP in the traefik
namespace can route DNS traffic to technitium-dns in the technitium
namespace. This restores DNS resolution via 10.0.20.202 for pfSense
and Home Assistant.
2026-02-07 20:10:47 +00:00
Viktor Barzin
f01e92b1d9 [ci skip] Fix HTTPS backend proxying for reverse-proxy services
- Add insecureSkipVerify=true globally for self-signed backend certs
- Name service ports with https- prefix for HTTPS backends so Traefik uses HTTPS
- Add ServersTransport CRD for per-service insecureSkipVerify
- Add serversscheme/serverstransport annotations to reverse-proxy factory
2026-02-07 13:56:24 +00:00
Viktor Barzin
b5a74c2016 [ci skip] update kubectl skill to use local kubeconfig 2026-02-07 13:42:35 +00:00
Viktor Barzin
5b9c6484a1 [ci skip] update tf-apply and tf-plan skills to run locally with kubeconfig 2026-02-07 13:42:10 +00:00
Viktor Barzin
0709eb0266 [ci skip] update claude knowledge: always run terraform locally 2026-02-07 13:41:41 +00:00
Viktor Barzin
04d85221c7 [ci skip] Remove unsupported advertisedPort from Traefik Helm values 2026-02-07 13:41:06 +00:00
Viktor Barzin
510673949d [ci skip] Add --api.insecure=true to Traefik for dashboard access on port 8080 2026-02-07 13:35:58 +00:00
Viktor Barzin
b36932f9a3 Migrate all service modules from nginx-ingress to Traefik
- Remove nginx-specific ingress variables (use_proxy_protocol, proxy_timeout, additional_configuration_snippet)
- Update ingress annotations to use Traefik middleware CRDs
- Delete nginx-ingress module (replaced by traefik)
- Add new traefik middleware.tf for shared middleware definitions
- Update service modules to work with new ingress_factory interface
2026-02-07 13:25:49 +00:00
Viktor Barzin
43cdebe791 Migrate ingress_factory from nginx to Traefik annotations
- Replace nginx ingress class and annotations with Traefik middleware CRDs
- Add Traefik router middleware chain: rate-limit, CSP, CrowdSec, Authentik
- Remove nginx-specific proxy settings (handled by Traefik config)
- Add exclude_crowdsec and custom_content_security_policy options
- Add rybbit analytics and custom CSP middleware resources
2026-02-07 13:24:58 +00:00
Viktor Barzin
c14dc88ffa [ci skip] Clean up .claude: remove remote executor and /remote skill references
All commands and skills now reference tools directly without any remote
execution wrapper. Archived setup-remote-executor.md for reference.
Added rule: all infra changes must go through Terraform.
2026-02-07 13:21:58 +00:00
Viktor Barzin
ebe5eb1e9b Add ssh_private_key/ssh_public_key variables to create-template-vm module 2026-02-07 13:19:15 +00:00
Viktor Barzin
bda48b0f5f Remove old nginx-ingress variables and add kube_config_path + ssh_key variables
- Remove ingress_honeypotapikey, ingress_crowdsec_captcha_* variables (nginx-ingress removed)
- Add kube_config_path variable for flexible kubeconfig path
- Add ssh_private_key/ssh_public_key variables to template modules
2026-02-07 13:17:49 +00:00
Viktor Barzin
6fc94dc9c2 [ci skip] update claude knowledge: never use SSH directly, use /remote skill 2026-02-07 13:08:00 +00:00
Viktor Barzin
e5d7e4e21e Add Traefik dashboard ingress with Authentik protection
- Enable api.insecure in Helm values for internal dashboard access on port 8080
- Add TLS secret, dashboard service, and ingress via ingress_factory (protected=true)
- Pass tls_secret_name to traefik module
- Add traefik to cloudflare_non_proxied_names DNS list
2026-02-07 13:06:57 +00:00
Viktor Barzin
76715efeb7 [ci skip] update .claude commands and skills: migrate to /remote skill, remove old executor 2026-02-07 10:50:46 +00:00
Viktor Barzin
050cd54ad8 [ci skip] update claude knowledge: always commit .claude file changes 2026-02-07 10:44:33 +00:00
Viktor Barzin
c4e4aa25d0 Fix AFFiNE init container migration command for v0.26.0
The stable image removed scripts/self-host-predeploy.js. Use the new
predeploy flow: prisma migrate + dist/main.js run.

[ci skip]
2026-02-07 10:33:43 +00:00
Viktor Barzin
24469f4590 Add excalidraw project gitignore and README 2026-02-06 20:38:32 +00:00
Viktor Barzin
abfddfbab1 [ci skip] add blotting book repo 2026-02-06 20:32:08 +00:00
Viktor Barzin
67f5e875f0 Add Celery worker/beat deployments and fix crawler API config
Add celery worker and celery beat deployments for background task
processing and scheduled scraping. Fix API container name, add
image_pull_policy Always, and add missing path_type to ingress rules.
2026-02-06 20:31:34 +00:00
Viktor Barzin
442c662597 Upgrade immich to v2.5.2 and add GPU toleration to ML pod
Bump immich version from v2.5.0 to v2.5.2. Add nvidia.com/gpu
toleration to immich-machine-learning deployment.
2026-02-06 20:28:29 +00:00
Viktor Barzin
fd4dc96372 Forward authentik response headers through ingress
Add auth-response-headers annotation to pass user identity headers
(username, uid, email, name, groups) from authentik to backend services.
2026-02-06 20:26:21 +00:00
Viktor Barzin
594e794eab Add audiblez-web application source
Web frontend for audiblez audiobook conversion with FastAPI backend.
2026-02-06 20:24:10 +00:00
Viktor Barzin
5f0c32d005 Add audiblez-web service and refactor ebook2audiobook deployments
Uncomment ebook2audiobook deployment with proper GPU tolerations
(set to 0 replicas). Disable audiblez CLI deployment in favor of
audiblez-web. Add new audiblez-web deployment, service, and ingress
with GPU support, large upload limits, and auth protection.
2026-02-06 20:22:05 +00:00
Viktor Barzin
1275697f2b Add GPU node taint tolerations and enhance GPU memory exporter
Add nvidia.com/gpu toleration to all GPU workloads (frigate, ollama)
to support NoSchedule taint on GPU nodes. Update nvidia operator
helm values with daemonset tolerations. Enhance GPU pod memory
exporter with Kubernetes API integration to resolve container IDs
to pod names/namespaces, adding RBAC resources for API access.
2026-02-06 20:19:26 +00:00
Viktor Barzin
ffa80f0df6 add claude [ci skip] 2026-02-06 20:10:02 +00:00
Viktor Barzin
9ef4d38d51 Add DRONE_WEBHOOK_SECRET for GitHub webhook authentication
Fixes webhook signature validation failures causing 400 errors.
2026-02-01 20:42:07 +00:00
Viktor Barzin
da4cf18d6d Add per-pod GPU memory metrics exporter
- Add DaemonSet that runs on GPU node and exposes Prometheus metrics
- Uses nvidia-smi to collect per-process GPU memory usage
- Maps PIDs to container IDs via /proc/<pid>/cgroup
- Exposes gpu_pod_memory_used_bytes metric at :9401/metrics
- Add Prometheus scrape config for gpu-pod-memory job

[ci skip]
2026-01-31 16:58:14 +00:00
Viktor Barzin
751b83a53c Add crowdsec-blocklist-import CronJob
Import public threat intelligence blocklists into CrowdSec daily at 4 AM.
Uses kubectl exec to run the import script inside an existing CrowdSec
agent pod that is already registered with the LAPI.

Source: https://github.com/wolffcatskyy/crowdsec-blocklist-import

[ci skip]
2026-01-28 20:11:44 +00:00
Viktor Barzin
3d7190e935 fix resume pdf generation [ci skip] 2026-01-28 19:42:13 +00:00
Viktor Barzin
187340d652 upgrade immich to 2.5.0 [ci skip] 2026-01-28 19:41:52 +00:00
Viktor Barzin
8cfdc35a2b add the yt-highlights app [ci skip] 2026-01-28 18:03:49 +00:00
Viktor Barzin
8faf05982f ad service for youtube video highlights [ci skip] 2026-01-28 17:58:39 +00:00
Viktor Barzin
db2aaeeac3 add reactive resume service [ci skip] 2026-01-28 17:57:39 +00:00
Viktor Barzin
1eb3c30479 increase the num of nvidia slices to 20 [ci skip] 2026-01-26 20:41:59 +00:00
Viktor Barzin
e85c0365cd Add AFFiNE visual canvas for storytelling
- Deploy AFFiNE as self-hosted visual canvas tool
- Uses shared PostgreSQL and Redis from cluster
- NFS storage for uploads and configuration
- Email configured via mailserver.viktorbarzin.me
- Ingress at affine.viktorbarzin.me

[ci skip]
2026-01-25 21:40:39 +00:00
Viktor Barzin
5ded70c1ab add excalidraw with support for storing drawings per user [ci skip] 2026-01-25 00:46:26 +00:00
Viktor Barzin
34f13a2afb Drone CI Update TLS Certificates Commit 2026-01-25 00:06:38 +00:00
Viktor Barzin
10092ec285 reduce the frequency of polling idrac and remove some duplicates [ci skip] 2026-01-24 18:47:22 +00:00
Viktor Barzin
5e4623ea18 add mcaptcha [ci skip] 2026-01-24 18:46:47 +00:00
Viktor Barzin
83545c6327 add crowdsec rule ot skip my home ip[ci skip] 2026-01-24 18:46:12 +00:00
Viktor Barzin
43800017b3 use hcaptcha with nginx [ci skip] 2026-01-24 18:45:41 +00:00