atosatto.caddy
Rôle Ansible : Caddy
Installer et configurer Caddy.
Exigences
Une installation d'Ansible 2.2 ou supérieure.
Ce rôle utilise le json_filter
d'Ansible qui nécessite que jmespath
soit installé sur la machine Ansible.
Voir le fichier requirements.txt
pour plus de détails sur la version spécifique de jmespath
requise par le rôle.
Variables du Rôle
Les variables disponibles sont listées ci-dessous, avec les valeurs par défaut (voir defaults/main.yml) :
caddy_download_url: ""
# caddy_download_url: "https://caddyserver.com/download/linux/amd64?plugins=http.prometheus&license=personal&telemetry=off"
L'emplacement du binaire Caddy à installer.
L'exemple ci-dessus montre comment télécharger une version précompilée de Caddy incluant le plugin http.prometheus
.
Lorsque c'est vide, le rôle téléchargera Caddy depuis Github.
caddy_release_tag: "latest"
La version de Caddy à installer depuis Github.
Par défaut, la dernière version publiée est disponible à https://github.com/caddy/caddy/releases.
NB : cette option n'a d'effet que lorsque caddy_download_url == ""
.
caddy_user: "caddy"
caddy_group: "caddy"
Utilisateur et groupe système pour Caddy.
caddy_install_path: "/opt"
Répertoire contenant les fichiers de version Caddy téléchargés.
caddy_bin_path: "/usr/local/bin"
Répertoire où le binaire Caddy sera lié.
caddy_config_file: "/etc/caddy.conf"
Chemin vers le fichier de configuration principal de Caddy.
caddy_config_import_path: "/etc/caddy.conf.d"
caddy_config_import_files:
default: |
127.0.0.1:8080 {
root {{ caddy_web_root }}
}
Fichiers de configuration additionnels de Caddy à importer dans le fichier caddy_config_file
.
caddy_ssl_certificates_path: "/etc/ssl/caddy"
L'adresse IP et le port d'écoute de Caddy.
caddy_web_root: "/var/www"
Dossier Web par défaut du serveur HTTP Caddy.
caddy_log_path: "/var/log/caddy"
Répertoire contenant les fichiers journaux de Caddy.
caddy_additional_cli_args: ""
Arguments supplémentaires de ligne de commande à ajouter à l'unité de service Caddy.
Pour la référence complète des arguments CLI disponibles, veuillez vous référer à la sortie de la commande caddy --help
.
Dépendances
Aucune.
Exemples de Playbooks
$ cat playbook.yml
- name: "Installer et configurer Caddy"
hosts: all
roles:
- { role: atosatto.caddy }
Tests
Les tests sont automatisés avec Molecule.
$ pip install tox
Pour tester tous les scénarios, exécutez
$ tox
Pour exécuter une commande Molecule personnalisée
$ tox -e py27-ansible23 -- molecule test -s caddy-latest
Licence
MIT
Informations sur l'Auteur
Andrea Tosatto (@_hilbert_)
ansible-galaxy install atosatto.caddy