ansible ちょこちょこ

Posted on 2018-11-11 in zakki

ansible_user

role 毎で変数を定義したい場合は roles/( ロール名 )/vars/main.yml とかに書くものだと思うけど、ansible_user とかも分けられたのね。role 毎にユーザを変えたいと思っていて「ど・こ・に・か・こ・う・か・な」ってしてたんだけど、いや別にしてないけど、何かこれは分けられないって思いこんでた。なのでメモ。

[vagrant@localhost ansible]$ cat roles/operate1/vars/main.yml
---                                                                                                
ansible_user: User1                                          
ansible_password: user1

include_vars

↑ の派生で、vars を分けたいと思ったのですね。

roles/( ロール名 )/vars/main.yml のほかに、sub1.yml みたいな感じのファイルを作成したいな、と。task 側で読み込ませるには、include_vars をすることが必要。ずっと include で読み込もうとして溜息なんかついてないよ。

[vagrant@localhost ansible]$ cat roles/operate1/tasks/main.yml
---                                                           
- include_vars: ../vars/sub1.yml                      
- name: task                                          
:

template

ansible の template で j2(jinja) 使ったんだけど、普通に四則演算出来て、なおかつ if/for はさっと書けそうなので必要な時はさっと使おうと思った。