f5fca9171ac94ec9d997ec0f1b19310e84e05714
Reviewed-on: #6
Merge pull request 'Add initial project structure and documentation' (#6) from chore/documentation into main
homelab-ansible
Ansible playbook to align my homelab VMs — Alpine & Debian.
Roles
| # | Role | Purpose |
|---|---|---|
| 1 | ufw |
Install UFW, deny incoming by default, allow only Tailscale |
| 2 | repos |
Set Alpine repos to edge |
| 3 | upgrade |
Upgrade all packages (handles Tailscale SSH drops gracefully) |
Usage
# Full playbook
ansible-playbook homelab.yml
# Single role
ansible-playbook homelab.yml --tags ufw
# Dry-run
ansible-playbook homelab.yml --check --diff
Inventory
inventory/tailscale_inventory.py— dynamic inventory from localtailscale status, filtered bytag:homelabinventory/static_groups.yml— static group assignments (Alpine vs Debian)
Vars
Per-role defaults live in roles/*/defaults/main.yml. Per-group overrides in group_vars/.
Description
Ansible playbooks for homelab configuration alignment : repos, ufw, Tailscale-first firewall policy, update
Languages
Python
100%