Ansibleでgem installする時の注意

Ansibleでgem installしても、参照出来なくて困った時の話。

Playbook

とりあえず、Playbookを貼ります。。



余りキレイな書き方ではないのですが、

  1. ホームディレクトリ配下にrbenvをインストール
  2. ruby-buildを追加
  3. rbenv周りの環境変数を.bashrcに追記
  4. Rubyのインストール
  5. bundlerのインストール
  6. railsのインストール

をしているだけです。
このPlaybookを実行しても、bundleやrailsが見つかりません。
が、gem listにはあったのです。

まさか...

--user-install

gem listにあるということは、どこかにインストールはされているわけです。
今の設定で、参照出来なくてインストールされているとなると、可能性が高いのは、--user-installオプションをつけてインストールしているときです。

AnsibleのgemモジュールのOptionsを見てみます。

--user-installに該当するオプションがありますね。
user_installです。
どうやら、デフォルト値がtrueになっているようです。

ということは、これをfalseで指定してあげればいいですね。



これで期待するところにインストールされるようになりました。
一安心一安心

コメント

このブログの人気の投稿

新生活始まります

ElasticIPを複数利用する時の注意

タスクの実行結果をwhenで指定するならcheck_modeつける