45044


Itamae を使ってプロヴィジョニングする際に、 ansible で言うところの
[lineinfile](http://docs.ansible.com/ansible/latest/modules/lineinfile_module.html)
をやりたいと思いました。

lineinfile は何かというと、例えば正規表現とファイル、文字列を指定して、ファイルに正規表現の行がなければ、文字列を挿入するようなモジュールです。

### 質問

  * itamae において ansible でいう lineinfile を実現するには、どのように記述するのが通常なのでしょうか。


CC BY-SA 4.0
2018-05-17T05:47:22.127
44035
2018-06-25T06:52:43.073
754
question
itamae
itamae で lineinfile 的なことがやりたい


愚直に、このような形で実行しました。

[code]

    execute 'add line' do
      command "printf '%s\n' #{Shellwords.shellescape CONTENT} >> #{Shellwords.shellescape TARGET_FILE_PATH}"
      not_if "grep -e #{Shellwords.shellescape PATTERN} #{Shellwords.shellescape TARGET_FILE_PATH}"
    end
    
[/code]


CC BY-SA 4.0
2018-06-25T06:52:43.073
45044
2018-06-25T06:52:43.073
754
44035
answer