Có thể áp dụng một vai trò cụ thể như sudo trong Ansible không?Áp dụng vai trò dưới người dùng sudo
Cụ thể, đây là những vai trò được tìm nạp từ thiên hà không thể phát hiện được, vì vậy nguồn không nằm trong tầm kiểm soát của tôi.
This example gợi ý rằng việc chuyển sudo:yes
cho vai trò sẽ hoạt động, nhưng tôi cho rằng vai trò trước tiên phải được xác định để mong đợi thông số.
This section của changelog gợi ý rằng sudo true
thể được thiết lập ở mức vai trò, tuy nhiên, sau đây không được làm việc:
---
- remote_user: "vagrant"
tasks: []
hosts: "all"
roles:
- role: "mysql"
sudo: yes
Tuy nhiên, áp dụng sudo ở cấp cao nhất làm cho công việc vai trò:
---
- remote_user: "vagrant"
tasks: []
hosts: "all"
sudo: yes
roles:
- role: "mysql"
Lưu ý - Tôi đã thử với cả hai sudo: true
và sudo: yes
và kết quả là như nhau.
những gì sẽ xảy ra nếu bạn thay đổi sudo: True' to 'sudo: yes'? – Ewan
Cùng một kết quả - vai trò không được chạy bằng sudo. –
Phiên bản Ansible của bạn là gì? Tôi đang gặp vấn đề tương tự với Ansible 2.2 và bên thứ ba [vai trò MySQL] (https://github.com/geerlingguy/ansible-role-mysql) nói rằng một trong hai chế độ sẽ hoạt động. Việc chạy role với 'sudo: yes' (thực sự' trở thành') làm cho một lệnh shell thất bại do các điều khoản, trong khi chạy nó với 'trở thành: yes' ở cấp độ chơi. Rõ ràng một lỗi Ansible như cấp vai trò 'trở thành' sẽ hoạt động. – RichVel