Ansible テンプレートを元に変数を埋めてコピーするtemplateモジュール

templateモジュール自体はファイルコピーとほぼ同じなのだが、変数部分を置換後にコピーするというのが違い。

templateタスクの記載例はあるのだが、置換元のファイルの記載方法についてはあまりなかったようなのであげてみた。

下記例は/etc/hostsに変数hostnameに定義した値を展開してから、コピーするタスク。実施条件としてhostname変数があることも入れている。

# hosts
- name: /etc/hosts setup
  template: src=hosts.j2 dest=/etc/hosts
  when: hostname is defined

hosts.j2の記載は置換部分をansibleと同じように{{ 変数名 }} で記載しておく。

127.0.0.1   {{ hostname }}.localdomain {{ hostname }} localhost localhost.localdomain

上記の場合はhostname変数が展開される。

カテゴリー: Ansible タグ: , , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。

Time limit is exhausted. Please reload the CAPTCHA.