atosatto.caddy
Ansible Rolle: Caddy
Installiere und konfiguriere Caddy.
Anforderungen
Eine Ansible-Installation in Version 2.2 oder höher.
Diese Rolle nutzt den Ansible json_filter
, der die Installation von jmespath
auf der Ansible-Maschine benötigt. Siehe die Datei requirements.txt
für weitere Details zur spezifischen Version von jmespath
, die von der Rolle benötigt wird.
Rollenvariablen
Verfügbare Variablen sind unten aufgelistet, zusammen mit ihren Standardwerten (siehe defaults/main.yml):
caddy_download_url: ""
# caddy_download_url: "https://caddyserver.com/download/linux/amd64?plugins=http.prometheus&license=personal&telemetry=off"
Der Speicherort der zu installierenden Caddy-Binärdatei.
Das obige Beispiel zeigt, wie man eine vorgefertigte Caddy-Version einschließlich des http.prometheus
-Plugins herunterladen kann.
Wenn leer, lädt die Rolle Caddy von Github herunter.
caddy_release_tag: "latest"
Die Caddy-Github-Version, die installiert werden soll.
Standardmäßig die neueste Version, die unter https://github.com/caddy/caddy/releases veröffentlicht wurde.
Hinweis: Diese Option hat nur Auswirkungen, wenn caddy_download_url == ""
.
caddy_user: "caddy"
caddy_group: "caddy"
Das Systembenutzer- und Gruppen für Caddy.
caddy_install_path: "/opt"
Verzeichnis, das die heruntergeladenen Caddy-Versionen enthält.
caddy_bin_path: "/usr/local/bin"
Verzeichnis, in das die Caddy-Binärdatei verlinkt wird.
caddy_config_file: "/etc/caddy.conf"
Pfad zur Hauptkonfigurationsdatei von Caddy.
caddy_config_import_path: "/etc/caddy.conf.d"
caddy_config_import_files:
default: |
127.0.0.1:8080 {
root {{ caddy_web_root }}
}
Zusätzliche Konfigurationsdateien von Caddy, die in die caddy_config_file
-Datei importiert werden sollen.
caddy_ssl_certificates_path: "/etc/ssl/caddy"
Die IP-Adresse und der Port, auf denen Caddy hört.
caddy_web_root: "/var/www"
Standard-Webordner des Caddy HTTP-Servers.
caddy_log_path: "/var/log/caddy"
Verzeichnis, das die Caddy-Logdateien enthält.
caddy_additional_cli_args: ""
Zusätzliche Befehlszeilenargumente, die zur Caddy-Diensteinheit hinzugefügt werden.
Für die vollständige Referenz der verfügbaren CLI-Argumente siehe die Ausgabe
des Befehls caddy --help
.
Abhängigkeiten
Keine.
Beispiel-Playbooks
$ cat playbook.yml
- name: "Installiere und konfiguriere Caddy"
hosts: all
roles:
- { role: atosatto.caddy }
Tests
Die Tests sind automatisiert mit Molecule.
$ pip install tox
Um alle Szenarien zu testen, führe aus:
$ tox
Um einen benutzerdefinierten Molecule-Befehl auszuführen:
$ tox -e py27-ansible23 -- molecule test -s caddy-latest
Lizenz
MIT
Informationen zum Autor
Andrea Tosatto (@_hilbert_)
ansible-galaxy install atosatto.caddy