Ich habe einen einzelnen von Ansible bereitgestellten Server, auf dem mehrere Websites ausgeführt werden.
Meine Ansible-Aufgaben sehen ungefähr so aus:
- name: site nginx config
template: src="nginx-site.conf.j2" dest=/etc/nginx/conf.d/{{item.name}}.conf
owner=root group=root mode=0444
with_items: sites
notify: restart nginx
- name: nginx conf
template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
owner=root group=root mode=0444
notify: restart nginx
Ich möchte den validateParameter für das Vorlagenmodul von Ansible verwenden, um aufzurufen nginx -tund sicherzustellen, dass meine neuen Konfigurationen syntaktisch gültig sind. Es funktioniert für die Haupt-nginx.conf:
template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
owner=root group=root mode=0444
validate="/usr/sbin/nginx -c %s -t"
Es scheint jedoch keine Änderungen an den ortsspezifischen Konfigurationsdateien zu erfassen. Das Einfügen validateder ortsspezifischen Vorlagen funktioniert nicht, da sie in eine httpDirektive eingeschlossen werden müssen, um gültig zu sein.
Was kann ich tun, um die Gültigkeit dieser ortsspezifischen Dateien zu überprüfen?