Ansible で PATH を追加する系の処理は、なんとかならないものか?だった話
open source configuration management utility という分野で Chef, Puppet もあるが Ansible しかわからないので、このタイトル。
インストール手順に PATH を通すために .bashrc に記載が必要という処理は、わりとよくある。
例えば nodebrew だと以下の様な PATH の設定を .bashrc に記載するのが手順。
export PATH=$HOME/.nodebrew/current/bin:$PATH
これを正直に task に落とすと、こんな感じになる。
shell: echo export PATH=/home/{{ user }}/.nodebrew/current/bin:$PATH >> /home/{{ user }}/.bashrc
この書き方だと複数回プロビジョニングをした時に、
export PATH=/home/{{ user }}/.nodebrew/current/bin:$PATH
がプロビジョニングした回数だけ .bashrc に記載されてしまう。
なにかよい方法はないかな?
-
-
- -
-
などと、書いていたら 普通にファイルの存在確認して、ファイルがなければ追加でいいのではないか?と思うようになった。