JINJA2 templates in ansible

[root@workstation ~]# ansible -m ping all
192.168.183.129 | SUCCESS => {
“changed”: false,
“ping”: “pong”
}
192.168.183.128 | SUCCESS => {
“changed”: false,
“ping”: “pong”
}

=========================================
[root@workstation ~]# vim motd.j2
this is {{ ansible_hostname }}.
today’s date is {{ ansible_date_time.date }}
you can ask {{ system_owner }} for access
==========================================
[root@workstation ~]# vim motd.yaml

– hosts: all
vars:
system_owner: mohammedrafi
tasks:
– template:
src: motd.j2
dest: /etc/motd
owner: root
group: root
mode: 777
========================================
[root@workstation ~]# cat /etc/motd
========================================
[root@workstation ~]# ansible-playbook –syntax-check motd.yaml

playbook: motd.yaml

[root@workstation ~]# ansible-playbook -C motd.yaml

PLAY [all] *********************************************************************

TASK [setup] *******************************************************************
ok: [192.168.183.128]
ok: [192.168.183.129]

TASK [template] ****************************************************************
changed: [192.168.183.128]
changed: [192.168.183.129]

PLAY RECAP *********************************************************************
192.168.183.128 : ok=2 changed=1 unreachable=0 failed=0
192.168.183.129 : ok=2 changed=1 unreachable=0 failed=0
=======================================
[root@workstation ~]# ansible-playbook motd.yaml -vv
Using /etc/ansible/ansible.cfg as config file

PLAYBOOK: motd.yaml ************************************************************
1 plays in motd.yaml

PLAY [all] *********************************************************************

TASK [setup] *******************************************************************
ok: [192.168.183.128]
ok: [192.168.183.129]

TASK [template] ****************************************************************
task path: /root/motd.yaml:6
changed: [192.168.183.128] => {“changed”: true, “checksum”: “86167eb96fcd968f9ce2403d02fd99de5454cffa”, “dest”: “/etc/motd”, “gid”: 0, “group”: “root”, “md5sum”: “35128946a8173580f8c13e86523be1a1”, “mode”: “01411”, “owner”: “root”, “secontext”: “system_u:object_r:etc_t:s0”, “size”: 84, “src”: “/root/.ansible/tmp/ansible-tmp-1485712899.32-75249962942078/source”, “state”: “file”, “uid”: 0}
changed: [192.168.183.129] => {“changed”: true, “checksum”: “5619e003a6b2617b359b8a369c3f404035ab0b18”, “dest”: “/etc/motd”, “gid”: 0, “group”: “root”, “md5sum”: “4429a262ca0c9cca26b2bc66482abfbc”, “mode”: “01411”, “owner”: “root”, “secontext”: “system_u:object_r:etc_t:s0”, “size”: 80, “src”: “/root/.ansible/tmp/ansible-tmp-1485712899.32-157949107190502/source”, “state”: “file”, “uid”: 0}

PLAY RECAP *********************************************************************
192.168.183.128 : ok=2 changed=1 unreachable=0 failed=0
192.168.183.129 : ok=2 changed=1 unreachable=0 failed=0
==============================================
[root@servera ~]# logout
Connection to 192.168.183.129 closed.
mohammedrafi@NOC-RAFI:~$ ssh root@192.168.183.129
root@192.168.183.129’s password:
Last login: Sun Jan 29 23:29:06 2017 from workstation
this is servera.
today’s date is 2017-01-29
you can ask mohammedrafi for access
==============================================
mohammedrafi@NOC-RAFI:~$ ssh root@192.168.183.128
root@192.168.183.128’s password:
Last login: Sun Jan 29 23:31:40 2017 from workstation.example.com
this is workstation.
today’s date is 2017-01-29
you can ask mohammedrafi for access
================================================

[root@workstation ~]# vim inventory
[web]
servera.example.com
workstation.exmaple.com

[root@workstation ~]# rm -rf /etc/motd

[root@servera ~]# rm -rf /etc/motd

[root@workstation ~]# ansible-playbook -i inventory –limit servera.example.com motd.yaml

PLAY [all] *********************************************************************

TASK [setup] *******************************************************************
ok: [servera.example.com]

TASK [template] ****************************************************************
changed: [servera.example.com]

PLAY RECAP *********************************************************************
servera.example.com : ok=2 changed=1 unreachable=0 failed=0

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s