Help us understand the problem. What is going on with this article?

gem moduleにrbenvでインストールしたgemを使おうとしたらハマった

More than 5 years have passed since last update.

Ansible 1.4からgemモジュールにexecutableオプションが追加されて、gemのパスを指定できるようになっています。
しかしrbenvを使ってインストールしたgemのパスを指定するだけだと、playbook実行時にはインストールされたかのように見えるけれども、インストールしたものをコマンドラインで実行しようとしたらパスが通ってないという事態に遭遇しました。

実はgemモジュールはデフォルトだとuser_installオプションがTrueになっていたために、gem install時に--user-intallオプションが追加されて、~/.rbenv/以下ではなく~/.gem/以下にインストールされていたというオチでした。

user_installFalseに設定したら~/.rbenv/以下にインストールされるようになりました。

site.yml
- name: gem install bundler
  gem: name=bundler executable=.rbenv/shims/gem user_install=False
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away