Não deveria ansioso-playbook -e "sudo = não" substituir sudo: true no meu playbook?

1

Quando eu auth com um usuário não-sudo eu quero substituir sudo playbook.

---
name: test
hosts: foo
sudo: yes

Se eu fizer:

ansible-playbook test.yml -e "sudo=no"

Ele não é substituído corretamente, em vez disso, eu preciso remover sudo: yes do meu manual. Não deve sudo=no funcionar?

    
por Kit Sunde 18.05.2015 / 08:20

1 resposta

3

sudo não é uma variável; é uma diretriz. Com o parâmetro de linha de comando -e , você definiu uma variável chamada sudo , mas isso não está relacionado. Provavelmente funcionaria se você fizesse isso em seu manual:

sudo: "{{ sudo }}"

ou talvez

sudo: "{{ sudo | default('yes') }}"

Mas se você optar por fazer qualquer uma das opções acima, não nomeie a variável sudo , isso será confuso; nomeie-o must_sudo ou algo assim.

    
por 18.05.2015 / 11:10

Tags