- name: apt install packages apt: name: "{{ item }}" with_items: - php7.2 - php-mbstring - php-xml - php-zip - php-fpm - php-mongodb - mongodb-org - nginx
2018.08.23 Ansibleのwith_itemsの各要素を出力させる方法
Ansibleでaptやyumを使ってパッケージのインストールを行う際にこれまでは下のような書き方でplaybookを作っていました。
しかし、このような書き方をすると、出力が下のように全部まとめて出てきてしまい、with_items中のどれか1つがchangedになると全体がchangedとして出力されるようになっていました。
公式のapt、yumのドキュメントを見てみると、パッケージのインストール時にはvarsを使っているようですが、この書き方でも出力は下のようになってしまいました。
なにかいい方法はないかと思って試してみたところ、下のようにwith_itemsの要素を配列にすると1つ1つ分かれて出力されました。
- name: apt install packages apt: name: "{{ item.name }}" with_items: - name: php7.2 - name: php-mbstring - name: php-xml - name: php-zip - name: php-fpm - name: php-mongodb - name: mongodb-org - name: nginx
これならどこかのパッケージがchangedになっても、出力はそのパッケージ部分だけがchangedになりますし、一気に1行で出力されるよりも見栄えが良さげな気がします。
ただ、どうして公式のドキュメントが1行に出力する書き方をしてるのかは分からないです。自分が知らないメリットが何かあるんでしょうか・・・?