How kazauwa/ansible-role-headscale works
This Ansible role installs and manages Headscale on Linux: an operator applies the role, which installs the selected binary, configures Headscale, and can enable advertised routes and exit nodes. The README also documents user creation, ACL configuration, and service-account and path settings. Source excerpts were unavailable, so links among task files and service actions reflect documented role behavior, not inspected task implementations.
Main entry points: configure.yml Configure Headscale · tasks/main.yml Role entry tasks · install.yml Install Headscale · defaults/main.yml Role defaults
Components 13
Role orchestration
- Role entry tasks
tasks/main.yml - Role defaults
defaults/main.yml
Host setup
- Install Headscale
tasks/install.yml
Headscale configuration
- Configure Headscale
tasks/configure.yml - Enable routes
tasks/enable_routes.yml
Service management
- Systemd unit template
templates/etc/systemd/system/headscale.service.j2 - Service handlers
handlers/main.yml
Other components
- Ansible operator
- Headscale releases
- Linux host
- Headscale service
- Headscale configuration
- ACL file
Connections 18
- Ansible operator → Role entry tasks: applies role
- Role entry tasks → Install Headscale: runs tasks
- Role entry tasks → Configure Headscale: runs tasks
- Role entry tasks → Enable routes: runs tasks
- Role defaults → Install Headscale: provides settings
- Role defaults → Configure Headscale: provides settings
- Role defaults → Enable routes: provides settings
- Install Headscale → Headscale releases: downloads version
- Install Headscale → Linux host: installs binary
- Configure Headscale → Linux host: configures host
- Configure Headscale → Headscale configuration: writes config
- Configure Headscale → ACL file: sets ACL path
- Configure Headscale → Systemd unit template: uses template
- Systemd unit template → Linux host: defines service
- Service handlers → Headscale service: manages service
- Enable routes → Headscale service: enables routes
- Headscale service → Headscale configuration: reads config
- Headscale service → ACL file: reads ACL