No description
  • Shell 43.3%
  • Jinja 29.8%
  • PowerShell 12.2%
  • Python 9.1%
  • HCL 5.6%
Find a file
Mick Conway c605ea577b
Some checks failed
/ test (push) Successful in 2s
latex_diagram / latexmk (push) Failing after 15s
more image tags to vars
2026-05-28 09:03:30 -07:00
.forgejo/workflows update latexmk action 2026-04-22 21:39:07 -07:00
.vscode
ansible more image tags to vars 2026-05-28 09:03:30 -07:00
documentation update latexmk action 2026-04-22 21:39:07 -07:00
kairos create basic cloud-init files for kairos testing 2026-05-14 14:11:43 -07:00
kubernetes
tofu/windows
.gitignore
ansible_roles_check.py
readme.md
requirements.txt
roles

Homelab Set Automation

Ansible

Prerequisites

Software Description
bw Commandline Bitwarden client - used for secrets lookup

Playbooks

Playbook Description
playbook.yml Default playbook that contains roles for all hosts (servers and pcs).
ansible/playbook-k8-services-yml Runs all configured helm chart deployments against the first k8s host in the hosts group.
ansible/playbook-unifi.yml experimental playbook used to generate config file for Unifi USH containing wireguard connection definitions.
ansible/playbook-update-all.yml run apt-update && apt-upgrade on all hosts
ansible/playbook-useraccess.yaml not used - for reference
ansible/playbook-zabbix-sites.yml Read all services from k8s and create site monitoring for each within Zabbix.

Common run scenarios

Command Description
ansible-playbook -i hosts playbook-k8s-services.yml --tag git Deploys k8s helm charts with only the "git" tag specified.
ansible-playbook -i hosts playbook.yml --limit laptop --connection local runs main playbook locally on 'laptop' host

Kubernetes

Kubernetes cluster is currently run using Microk8s. Helm charts from artifacthub.io are used whenever available. Ansible is used to deploy charts to allow secret injection into values and repeatability.