ANSIBILE E PLAYBOOK.Come convertire i comandi della shell nella sintassi YAML?
Domanda
Sono un principiante in ansible e non capisco come tutte le persone scrivono facilmente comandi della shell nella sintassi ansible / yaml.Potrebbe essere mancato una pagina dalla documentazione in cui è spiegato bene.
Ad esempio: cosa devo scrivere nel mio playbook.yml
se voglio eseguire questi comandi nelle mie macchine remote:
sudo apt-get install software-properties-common
sudo apt-key adv –recv-keys –keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
sudo add-apt-repository 'deb http://mariadb.biz.net.id//repo/5.5/ubuntu precise main'
.
Penso che sarebbe qualcosa del genere:
- name: install mariadb
apt: ...
sudo: yes
. Soluzione
Come comando guscio raw Moduli farà il trucco per la traduzione semplice di Script di Bash.Raramente finiranno per essere azioni idoneetenti.Non possono essere eseguiti due volte senza produrre errori.
Il modo ansiibile di farlo è utilizzare i moduli appropriati, nel tuo caso
- .
- APT_KEY : aggiungi il tasto GPG
- apt_repository : installa il repository
- apt : installa il pacchetto
Un campione per Mariadb
Altri suggerimenti
La risposta è Moduli ansible !) Questo è in realtà ciò di cui ho bisogno. Dopo la ricerca rapida, penso che i miei comandi saranno simili a:
-raw: sudo apt-get install software-properties-common
-raw: apt-key adv –recv-keys –keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
etc..
.