Ist es möglich, eine bestimmte Rolle als Sudo in Ansible anzuwenden?Eine Rolle unter Sudo-Benutzer anwenden
Insbesondere sind dies Rollen aus ansible-Galaxie geholt, so dass die Quelle nicht in meiner Kontrolle ist.
This example schlägt vor, dass die Übergabe von sudo:yes
an die Rolle funktionieren sollte, aber ich nehme an, die Rolle muss zuerst definiert werden, um den Parameter zu erwarten.
This section der Changelog lässt vermuten, dass sudo true
kann jedoch auf Rollenebene eingestellt werden, wird die folgende nicht funktioniert:
---
- remote_user: "vagrant"
tasks: []
hosts: "all"
roles:
- role: "mysql"
sudo: yes
jedoch sudo auf der obersten Ebene der Anwendung macht die Rolle der Arbeit:
---
- remote_user: "vagrant"
tasks: []
hosts: "all"
sudo: yes
roles:
- role: "mysql"
Hinweis - Ich habe mit sudo: true
und sudo: yes
versucht, und das Ergebnis ist das gleiche.
was passiert, wenn Sie 'sudo ändern: Stimmt zu: sudo: ja? – Ewan
Gleiches Ergebnis - die Rolle wird nicht mit sudo ausgeführt. –
Was ist Ihre Ansible-Version? Ich habe das gleiche Problem mit Ansible 2.2 und einer dritten [MySQL-Rolle] (https://github.com/geerlingguy/ansible-role-mysql), die besagt, dass jeder Modus funktionieren sollte. Wenn die Rolle mit 'sudo: yes' (eigentlich' wird') ausgeführt wird, wird ein Shell-Befehl aufgrund von Berechtigungen fehlgeschlagen, während das Ausführen mit 'wird: ja' auf der Ebene play funktioniert. Offensichtlich sollte ein Ansible-Bug als Rollen-Level "werden" funktionieren. – RichVel