Ansibleでcsvからパスワード取得
パスワードのようなバージョン管理したくない情報を、別途csvに記述してアクセスする。
lookupプラグイン
Ansibleから、ローカルにあるファイルを参照することができる。
lookup()
の第1引数にはプラグイン名を指定する。csvファイルを指定する場合は、csvfile
。
第2引数では、探し出すkeynameとパラメータを指定する。
パラメータ
- file : ファイル名
- delimiter : 区切り文字(デフォルトでは、タブになっている)
- col : 取り出す列(1番左を0としてデフォルトでは、1になっている)
password.csv
name,password
hoge,passhoge
geho,passgeho
piyo,passpiyo
ユーザ追加
- name: ユーザ作成
become: True
user:
name: "{{ item }}"
password: "{{ lookup('csvfile', item + ' file=password.csv delimiter=,') }}"
with_items:
- hoge
- geho
- piyo
Lookup Plugins — Ansible Documentation
csvfile - read data from a TSV or CSV file — Ansible Documentation