lint / yamllint + ansible-lint + syntax-check (push) Canceled after 0s
Rolled back per the user's request. Three variants were tried on ru-vps
(static key; TLS peer-fingerprint p2p; server mode with push routes and an
inline <ca>). The server side worked each time, but the "OpenVPN for
Android" client consistently failed at config build ("Used 101 tries to
get current version of the profile"), which looks like an app/OS issue
rather than the config.
Repo: remove playbooks/openvpn-phone.yml, its Make target, and the shared
homelab_vpn_client_routes var; restore openvpn-laptop.yml to its prior
state (its pre-existing `become: false` on delegate_to: localhost is noted
in plan.md, left untouched). ru-vps teardown done out of band: unit, tun2,
ufw/nat rules for 9444 and 10.80.0.0/29, and /etc/openvpn/homelab-phone
removed; the site tunnel (homelab-openvpn, tun0) was not touched and is
verified active.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KbuZrUoevfBgCpf5DCF4DG
AI Context
Назначение
Этот набор документов фиксирует стабильный, подтвержденный репозиторием контекст
HomeLab. Он дополняет краткий рабочий контракт в AGENTS.md и
не заменяет канонические Ansible inventory/vars или операционные заметки Obsidian.
HomeLab управляется как Ansible-first control plane: Proxmox VE/LXC, сетевой
транспорт, сервисы, резервное копирование, обновления и мониторинг описываются в
ansible/. Прямые изменения на серверах допустимы только для read-only диагностики
или break-glass восстановления с последующим переносом желаемого состояния в Ansible.
Возможности
- создание и настройка LXC через Proxmox API или
pctпо SSH; - управление сервисами через Docker/systemd и Docker Compose/systemd;
- OpenVPN-транспорт и SSH ProxyJump через
ru-vps; - Caddy reverse proxy для публичных сервисов;
- PBS и offsite restic backups с аудитом свежести;
- управляемые обновления по схеме backup/audit -> update -> health check;
- активный Uptime Kuma и сохраненный, но замороженный Prometheus stack;
- локальный Grimmory MCP с ручной синхронизацией книг в Obsidian.
Форма системы
ansible/Makefileявляется основной ручной точкой входа.ansible/inventory/hosts.ymlзадает хосты, группы и индивидуальные адреса.ansible/inventory/group_vars/all/services.ymlсодержит сводный реестр сервисов, но пока программно управляет только генерацией reverse proxy.ansible/playbooks/содержит операционные entry points,ansible/roles/- роли.tools/grimmory-mcp/является отдельным Node.js stdio MCP-процессом.- Obsidian vault хранит решения, текущую эксплуатационную картину и журнал работ.
Карта репозитория
| Путь | Назначение |
|---|---|
ansible/Makefile |
Проверки, deploy, update и защищенные операции |
ansible/inventory/ |
Канонические хосты, группы, общие и host-specific vars |
ansible/playbooks/ |
Операционные Ansible entry points |
ansible/roles/ |
Переиспользуемые роли и сохраненный monitoring stack |
ansible/ssh_config |
SSH users, keys, ports и ProxyJump |
.opencode/agents/ |
Read-only специализированные агенты HomeLab |
tools/grimmory-mcp/ |
Grimmory API и Obsidian sync integration |
archive/2026-07-proxmox-migration/ |
История до Ansible control plane, не active source |
Ключевые ограничения
- Не хранить secrets в Git или Obsidian.
- Не считать
--check --diffполной симуляцией Proxmox provisioning. - Не запускать замороженный Prometheus stack без отдельного решения.
- Не считать generic roles
lxc_docker_hostиcompose_serviceподключенными к production: активные service playbooks пока остаются источником поведения. - Не исправлять обнаруженный технический долг в рамках несвязанной задачи.
- Не редактировать archive, generated files, installed Galaxy collections или
node_modulesкак active implementation.
Документы
architecture.md- observed architecture и data/control flows.tech-stack.md- runtimes, dependencies и команды.edge-cases.md- failure modes, safety gaps и coverage.plan.md- только подтвержденная активная работа.migration-tofu.md- пошаговый план перехода provisioning LXC на OpenTofu по схеме blue-green.legacy-warning.md- границы legacy/frozen/prototype кода.links.md- официальные version-relevant references.