No description
- Python 96.3%
- Dockerfile 3.7%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
media-fix-permissions:
- `username: foo` on the fix task, so it could never have authenticated.
- Both `cd homelab-pyinfra` lines failed ("No such file or directory") while
`just` resolved its recipe anyway, so the directory was never needed.
Removed rather than chained -- `cd X && just` would have stopped `just`
from running at all.
- The audit exits 1 when it finds drift, which is the normal case and the
reason the fix task exists. That failed the task and the flow stopped
before the fix ever ran, so drift was detected and never corrected.
`|| true` keeps the audit informational. Deliberately not `allowFailure`,
which ends the execution in WARNING and would mail an alert every 30
minutes for something that self-heals on the next task.
alert_on_failure:
- SMTP username/password were routed through `variables:`, so the mailer got
the literal expression text and Purelymail answered 535. Same
non-recursive-rendering trap as tenant_sync; call secret() on the task.
Audited the other eight flows: no other flow-level variable holds an
expression, and no remaining uses of ForEach, pluginDefaults, trigger
conditions, json(), CANCELED, log.Fetch, execution.Count/Resume or
trigger.Toggle.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
||
| .forgejo/workflows | ||
| .run | ||
| adb-tuner | ||
| audiobookshelf-metadata | ||
| channels-mlb | ||
| eplustv | ||
| fastchannels | ||
| fruitdeeplinks | ||
| homelab-utils/ha-presence-simulator | ||
| kestra | ||
| kestra-ns-files | ||
| op-python-base | ||
| pangolin | ||
| registry | ||
| tgfp | ||
| tidarr | ||
| tindra | ||
| .gitignore | ||
| a | ||
| README.md | ||
homelab-stacks
Docker Compose stacks for my homelab, managed via Komodo with GitOps auto-sync.
Structure
Each stack lives in its own directory with a docker-compose.yml and optional .env file:
stack-name/
docker-compose.yml
.env (if needed)
Deployment
Stacks are deployed to remote Docker hosts via Komodo + Periphery agents over Tailscale. Komodo syncs from this repo and manages the full lifecycle — deploy, update, rollback.
Hosts
Stacks are distributed across multiple Proxmox LXC containers, each running Docker with a Periphery agent. Host assignments are configured in Komodo's server settings, not in this repo.
Notes
- All volume paths use absolute paths (required for Periphery remote deployment)
- Sensitive values go in Komodo's variable/secret management, not committed here
- Komodo polls this repo for changes; pushes trigger redeployment of affected stacks
- Webhooks push to Kestra (on push) and Komodo (on new release)