| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
ci/woodpecker/push/linting Pipeline was successful
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> |
||
| .woodpecker | ||
| roles | ||
| .ansible-lint | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .markdownlint-cli2.jsonc | ||
| .sops.yaml | ||
| .yamllint | ||
| AGENTS.md | ||
| ansible.cfg | ||
| playbook.yaml | ||
| readme.md | ||
| renovate.json | ||
Ansible Playbook: Base
Configure the system baseline by combining the common role (core OS components and system defaults) with the
zabbix_agent role (Zabbix Agent 2 monitoring). The repository contains no role of its own, only a playbook.
Requirements
Supported operating systems follow the child roles: Debian 13 and Alpine 3.23 (see the common role for the full
list it handles).
Dependencies
Both roles are installed from roles/requirements.yml (branch main):
| Role | Description | Repository |
|---|---|---|
common |
Core OS components and system defaults | common |
zabbix_agent |
Zabbix Agent 2 monitoring | zabbix-agent |
Variables
This playbook defines no variables of its own. Configure the child roles through the inventory, see the readme of each role for the available variables.
Example
# group_vars/all.yaml
timezone: "Europe/Amsterdam"
ntp_server: "time.cloudflare.com"
Usage
Run the playbook through Semaphore using playbook.yaml. The playbook first runs
ansible-galaxy install -f -r roles/requirements.yml to refresh the roles, then runs common followed by
zabbix_agent on all hosts with privilege escalation. Role tags (for example apt or sshd from common)
can be used to limit a run.