atosatto.caddy
Rola Ansible: Caddy
Zainstaluj i skonfiguruj Caddy.
Wymagania
Instalacja Ansible w wersji 2.2 lub wyższej.
Ta rola korzysta z filtru json_filter
Ansible, który wymaga zainstalowania jmespath
na maszynie Ansible.
Szczegóły dotyczące konkretnej wersji jmespath
wymaganej przez rolę znajdziesz w pliku requirements.txt
.
Zmienne roli
Dostępne zmienne są wymienione poniżej, wraz z wartościami domyślnymi (patrz defaults/main.yml):
caddy_download_url: ""
# caddy_download_url: "https://caddyserver.com/download/linux/amd64?plugins=http.prometheus&license=personal&telemetry=off"
Lokalizacja pliku binarnego Caddy do zainstalowania.
Powyższy przykład pokazuje, jak pobrać wstępnie skompilowaną wersję Caddy z wtyczką http.prometheus
.
Gdy jest pusta, rola pobierze Caddy z GitHub.
caddy_release_tag: "latest"
Wersja wydania Caddy z GitHub do zainstalowania.
Domyślnie, najnowsza wersja opublikowana na https://github.com/caddy/caddy/releases.
Uwaga: ta opcja ma znaczenie tylko wtedy, gdy caddy_download_url == ""
.
caddy_user: "caddy"
caddy_group: "caddy"
Użytkownik i grupa systemowa Caddy.
caddy_install_path: "/opt"
Katalog zawierający pobrane pliki wydania Caddy.
caddy_bin_path: "/usr/local/bin"
Katalog, do którego będzie symlinkowany plik binarny Caddy.
caddy_config_file: "/etc/caddy.conf"
Ścieżka do głównego pliku konfiguracji Caddy.
caddy_config_import_path: "/etc/caddy.conf.d"
caddy_config_import_files:
default: |
127.0.0.1:8080 {
root {{ caddy_web_root }}
}
Dodatkowe pliki konfiguracyjne Caddy, które będą importowane do pliku caddy_config_file
.
caddy_ssl_certificates_path: "/etc/ssl/caddy"
Adres IP i port, na którym nasłuchuje Caddy.
caddy_web_root: "/var/www"
Domyślny folder Web serwera HTTP Caddy.
caddy_log_path: "/var/log/caddy"
Katalog zawierający pliki logów Caddy.
caddy_additional_cli_args: ""
Dodatkowe argumenty wiersza poleceń, które mają być dodane do jednostki usługi Caddy.
Aby uzyskać pełną referencję dostępnych argumentów CLI, zapoznaj się z wynikiem polecenia caddy --help
.
Zależności
Brak.
Przykładowe playbooki
$ cat playbook.yml
- name: "Zainstaluj i skonfiguruj Caddy"
hosts: all
roles:
- { role: atosatto.caddy }
Testowanie
Testy są automatyzowane za pomocą Molecule.
$ pip install tox
Aby przetestować wszystkie scenariusze, uruchom
$ tox
Aby uruchomić niestandardowe polecenie Molecule
$ tox -e py27-ansible23 -- molecule test -s caddy-latest
Licencja
MIT
Informacje o autorze
Andrea Tosatto (@_hilbert_)
ansible-galaxy install atosatto.caddy