Pergunta

Sou um novato em Ansible e não entendo como todas as pessoas escrevem facilmente comandos shell na sintaxe Ansible/YAML.Talvez eu tenha perdido uma página da documentação onde está bem explicado.

Por exemplo:O que preciso escrever no meu playbook.yml se eu quiser executar estes comandos em minhas máquinas remotas:

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'

Acho que seria algo assim:

- name: install mariadb
  apt: ...
  sudo: yes
Foi útil?

Solução

Como comando shell bruto módulos fará o truque para a tradução simples de scripts bash.Raramente acabarão sendo ações idempotentes.Eles não podem ser executados duas vezes sem produzir erros.

A maneira Ansible de fazer isso é usar os módulos apropriados, no seu caso

Uma amostra para mariadb

Outras dicas

A resposta é Módulos Ansible!) Isso é realmente o que eu preciso.Após uma pesquisa rápida, acho que meus comandos serão semelhantes a:

-raw: sudo apt-get install software-properties-common
-raw: apt-key adv –recv-keys –keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
 etc..
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top