No description
- Erweiterte Defaults: Neue konfigurierbare Variablen für PHP-FPM, Pfade, MySQL-Einstellungen, Log-Rotation und Features - Variablen statt hardcodierte Werte: Alle Templates und Tasks verwenden nun konfigurierbare Variablen mit sinnvollen Defaults - Neue Features: Log-Rotation, Cron-Verwaltung, Monitoring-Endpoints, SSL-Vorbereitung - Code-Modernisierung: loop statt with_items, loop_control für bessere Ausgaben, Handler-Fixes (php-fpm reload) - Bug-Fixes: charset -> encoding in mysql_db, Template-Fehler behoben - Dokumentation: README.md mit vollständiger Variablen-Dokumentation Breaking Changes: Keine - vollständig abwärtskompatibel Impact: Neue Features können optional per Feature-Flags aktiviert werden |
||
|---|---|---|
| .ansible | ||
| host_vars | ||
| inventory | ||
| molecule/_commons | ||
| roles | ||
| scripts | ||
| sshKeys | ||
| vendor/roles/powerdns.pdns | ||
| .gitignore | ||
| AGENTS.md | ||
| ansible.cfg | ||
| create_instances.yml | ||
| mail-config.yml | ||
| postfix_setup.yml | ||
| README.md | ||
| server-install.yml | ||
| server-uninstall.yml | ||
| server-update.yml | ||
| share_sshkeys.yml | ||
| unattendes.yml | ||
Ansible Server Repository
This repository manages server instances and roles using a unified configuration.
Quick start
- Define server aliases and host mapping in
inventory/vars/servers.yml. - Add instances to
inventory/instance_vars/instances.ymlwithserver: <alias>and reference passwords as{{ mysql_passwords['user__domain'] }}. - Store MySQL passwords in the vaulted file
inventory/group_vars/all/mysql_passwords.ymlusing the key patternusername__domain.
Run
- All hosts:
ansible-playbook -i inventory/hosts create_instances.yml --check --diff - With Vault prompt:
--ask-vault-passor with file:--vault-password-file .vault_pass.txt - Limit to one host:
-l sv01.server.ktrion.de
Key files
create_instances.ymlfilters instances per host by resolved alias.inventory/vars/servers.ymlholds aliases and FQDN mappings.inventory/instance_vars/instances.ymlis the single source of instances.inventory/group_vars/all/mysql_passwords.ymlcontains vaulted MySQL passwords.
Contributing
- Keep playbooks idempotent and use FQCN modules (
ansible.builtin.*). - Validate with
--check --diff; lint withansible-lintandyamllintif available.