私のansibleプレイブックで「フォルダー作成」コマンドを実行しようとしています。 (コードは以下です)
作成には、実行にSudoログインが必要です。
プレイブックは次のように実行します。
ansible-playbook myfile.yml --ask-pass
これにより、リモートマシンのユーザーアカウントパスワードの入力を求められます。 ssh接続は確立されますが、スーパーユーザーパスワードを取得しないため、コマンドは失敗し、権限が拒否されます。
どうすれば問題を解決できますか?
hosts: GSP
tasks:
- name: "make build directory"
command: mkdir -p /home/build/
become: true
become_user: root
- name: "change permissions on the directory"
command: chmod 777 -R /home/
become: true
become_user: root
ユーザーにSudoパスワードを照会するための--ask-become-pass
CLIのansible-playbook
スイッチもあります。
プレイブックでansible_become_pass変数を追加して、パスワードになるように指定できます。
詳細はここにあります: http://docs.ansible.com/ansible/latest/become.html