ワンクリックで
ansible-workflows
Write and run Ansible playbooks for multi-node home lab provisioning and configuration management.
メニュー
Write and run Ansible playbooks for multi-node home lab provisioning and configuration management.
| name | ansible-workflows |
| description | Write and run Ansible playbooks for multi-node home lab provisioning and configuration management. |
| tools | ["homelab_inventorySync","homelab_nodeList","homelab_nodeExec"] |
| standards-version | 1.10.0 |
Use this skill when the user wants to:
ansible/ in the repo roothomelab_sshTest to verify the target Pi is reachable from the network.ansible/inventory/hosts.yml for the target host definition. Ensure the host has the correct ansible_host, ansible_user, and ansible_ssh_private_key_file set.ansible/playbooks/.ansible.builtin.apt, ansible.builtin.copy, community.docker.docker_compose_v2.name fields, become: true where root is needed, and tags for selective runs.ansible/roles/<role_name>/ with standard structure: tasks/, handlers/, templates/, defaults/, vars/.ansible.builtin.template for config files with Jinja2 variables.ansible.builtin.handler with notify for service restarts.ansible/inventory/group_vars/all.yml for shared variables.ansible/inventory/group_vars/<group>.yml for group-specific settings.ansible/inventory/group_vars/vault.yml encrypted with ansible-vault.docker run --rm -v ${PWD}/ansible:/ansible -w /ansible \
willhallonline/ansible:latest \
ansible-playbook -i inventory/hosts.yml playbooks/<playbook>.yml
-vvv.--check --diff.homelab_piStatus and homelab_serviceHealth to confirm the provisioned state matches expectations.ansible/inventory/, ansible/playbooks/, ansible/roles//opt/homelab/docker/ on the Piansible.builtin.*, community.docker.*, community.general.*User: "Create a playbook that installs and configures Prometheus node_exporter on the Pi."
Agent response:
ansible/inventory/hosts.yml for the Pi host entry.ansible/playbooks/setup-node-exporter.yml:
---
- name: Deploy node_exporter
hosts: pis
become: true
tasks:
- name: Install node_exporter
ansible.builtin.apt:
name: prometheus-node-exporter
state: present
update_cache: true
- name: Enable and start node_exporter
ansible.builtin.systemd:
name: prometheus-node-exporter
enabled: true
state: started
- name: Open firewall port for node_exporter
community.general.ufw:
rule: allow
port: "9100"
proto: tcp
docker run --rm -v ${PWD}/ansible:/ansible -w /ansible \
willhallonline/ansible:latest \
ansible-playbook -i inventory/hosts.yml playbooks/setup-node-exporter.yml --check --diff
homelab_serviceHealth to verify node_exporter is running after the real run.| Tool | Purpose |
|---|---|
homelab_sshTest | Pre-flight connectivity check before running playbooks |
homelab_piStatus | Verify system state after provisioning |
homelab_serviceHealth | Confirm deployed services are running |
homelab_serviceLogs | Debug service startup failures post-deployment |
homelab_serviceRestart | Restart a service if Ansible handler did not trigger |
homelab_aptUpdate | Check for package updates before running apt tasks |
homelab_composeUp | Bring up Docker stacks deployed by playbooks |
homelab_composePs | Verify container state after compose deployment |
apt are deprecated. Always use ansible.builtin.apt.become: true. Forgetting it causes permission denied errors.core.autocrlf=input or use .gitattributes.--vault-password-file or --ask-vault-pass at runtime. Do not hardcode vault passwords.state: present not shell commands for package installs.ssh-management -- SSH key setup required before Ansible can connectsecurity-hardening -- playbooks for UFW, fail2ban, and SSH hardeningdocker-compose-stacks -- managing the compose files that Ansible deployspi-system-management -- system-level tasks that playbooks automateWrite Prometheus alerting rules and configure Alertmanager routing for home lab notifications.
Configure and manage restic backups including scheduling, verification, and disaster recovery.
Let's Encrypt, self-signed certs, renewal automation, NPM cert integration
Full Pi disaster recovery -- backup verification, restore workflows, SD card imaging, and migration checklists
Manage AdGuard Home DNS filtering, blocklists, local DNS records, and query log analysis.
Manage multi-file Docker Compose deployments on a Raspberry Pi home lab server.