こちらの記事はAnsible lint Advent Calendar 2022 カレンダー2 1日目の記事になります。
今回はルールdeprecated-bare-varsについて説明します。
deprecated-bare-vars
deprecated-bare-vars はタスクで変数を利用する際に適切な形式で指定されているか検証します。bareとは英語で覆いがない、むき出しになったと言う意味です。Ansible では変数は"{{ }}"で囲うのが標準です。
問題のあるコード
---
- ansible.builtin.debug:
msg: "{{ item }}"
with_items: foo # <-- 変数が旧式の形式で指定されている
修正されたコードその1
fooが変数でない場合は文字列として扱う
---
- ansible.builtin.debug:
msg: "{{ item }}"
with_items:
- foo
修正されたコードその2
fooが変数の場合は"{{ }}"で囲う
- ansible.builtin.debug:
msg: "{{ item }}"
with_items: "{{ foo }}"