Sto cercando di organizzare i miei libri di gioco in base alla struttura Directory Layout. La documentazione non sembra avere una raccomandazione per file/template specifici dell'host.Dove dovrei organizzare file/modelli specifici dell'host?
Ho 2 giochi per un singolo sito
- example.com-provision.yml
- example.com-deploy.yml
Questi file si trovano nella radice del mio struttura. Il Playbook provisioning include semplicemente altri ruoli
---
- hosts: example.com
roles:
- common
- application
- database
become: true
become_method: su
become_user: root
playbook distribuzione non include i ruoli, ma ha il proprio vars
e tasks
sezioni. Ho un paio di attività template
e copy
e mi sto chiedendo quale sia la "migliore pratica" su dove collocare questi modelli/file specifici dell'host all'interno di questa struttura di directory.
In questo momento li ho a ./roles/example.com/templates/
e ./roles/example.com/files/
, ma hanno bisogno di fare riferimento ai file con il loro percorso completo dal mio playbook distribuzione, come
- name: deployment | copy httpd config
template:
src: ./roles/example.com/templates/{{ host }}.conf.j2
# ...
invece di
- name: deployment | copy httpd config
template:
src: {{ host }}.conf.j2
# ...
dipende anche da come viene gestito l'inventario dinamico. Credo che l'ambito più piccolo da considerare sia i ruoli oi gruppi rispetto agli host. se i tuoi modelli sono diversi per tipi di host, allora forse sono ruoli diversi. ciò dipende anche dal contenuto dei tuoi modelli. –