根据模块文件动态生成对应的配置文件
templates文件必须存放于templates目录下,且命名为.j2结尾
yaml/yml文件需和templates目录平级,目录结构如下:
root/conf/
├── repo.yml
└── templates
└── epel.repo.j2
[root@ansible ~]# mkdir conf
[root@ansible ~]# cd conf
[root@ansible conf]# mkdir templates
[root@ansible conf]# cp /etc/yum.repos.d/epel.repo /root/conf/templates/epel.repo.j2
[root@ansible conf]# ls templates/
epel.repo.j2
[root@ansible conf]# vim repo.yml
---
#This is yumrepod conf
- hosts: web
remote_user: root
tasks:
- name: copy yum
template: src=templates/epel.repo.j2 dest=/etc/yum.repos.d/epel.repo
[root@ansible conf]# ansible-playbook repo.yml
PLAY [web] *********************************************************************
TASK [Gathering Facts] *********************************************************
ok: [192.168.60.3]
ok: [192.168.60.4]
TASK [copy yum] ****************************************************************
changed: [192.168.60.4]
changed: [192.168.60.3]
PLAY RECAP *********************************************************************
192.168.60.3 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
192.168.60.4 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0