最近ansibleを始めた。

動機としては、

  • redhatが買収した
  • chefはめんどい
  • 2.0からdockerプラグインが追加された

といったところ。

 

dockerは積極的ではないが、

構成管理ツールの必要性は認識してたから、ちょうどよいかなと。

 

ただ、ある条件の元で、冪等性が確保できないケースがあった。

以下である。

- name: configure httpd before
  lineinfile: dest=/etc/httpd/conf/httpd.conf state=present insertbefore={{item.insertbefore}} line={{item.line}} backup=yes
  with_items:
    - insertbefore: '^IncludeOptional conf\.d/\*\.conf'
  line: "<VirtualHost *:80>\n</VirtualHost>"
  tags: httpd

これは、httpdにおいて、
デフォルトVHを設定している際に、
VirtualHostディレクティブに改行を挟んでいるのだが、
これが原因で、二度目の実行の際、さらに追加されるというものであった。

ソース確認してないからわからないが、
改行を入れると、冪等性が確保されないのかもしれない。

以上

コメントがあればどうぞ


CAPTCHA Image
Reload Image