システム内のグループに現在のユーザーを追加しようとしています。次に、そのグループの許可を必要とするコマンドを実行します。私のプレイブックは次のようなものです:
- name: Add this user to RVM group
sudo: true
user: state=present name=vagrant append=yes groups=rvm group=rvm
- name: Install Ruby 1.9.3
command: rvm install ruby-1.9.3-p448 creates=/usr/local/rvm/bin/ruby-1.9.3-p448
問題は、これらすべてが同じシェルで行われていることです。vagrant のシェルはまだ新しいグループで更新されていません。Ansible でユーザーの現在のグループを更新するクリーンな方法はありますか? 再接続するか、新しいシェルを開くには、それを入手する必要があると思います。
ただし、新しいシェルを開こうとしたところ、ハングするだけです。
- name: Open a new shell for the new groups
shell: bash
もちろんハングします: プロセスは決して終了しません!
newgrpでも同じこと
- name: Refresh the groups
shell: newgrp
基本的にやることは同じだからです。
何か案は?