I am trying to loop through ansible_play_batch and get the server build date information from a csv server inventory file using the inventory_hostname. The problem is that it assigns the same date to all the servers and repeats the loop again to display the next server build date.
Any suggestion on how to fix to show the correct information once.
Thank you
Server Inventory
serverA,,,,2019-04-24 19:57:34
serverB,,,,2019-04-26 19:47:01
serverC,,,,2020-08-20 23:30:25
Hosts
serverA
serverB
serverC
Task
- name: List Server in current play
debug:
msg: "Item is {{ item }} Build date {{ lookup('csvfile', item + ' file=serverInventory.csv delimiter=, col=5') }}"
loop: "{{ ansible_play_batch }}"
Run
[serverMain]# ansible-playbook -i hosts_svrbuild site.yml
PLAY [Set_Up] ************************************************************************************************************************************************
TASK [Gathering Facts] ***************************************************************************************************************************************
ok: [serverA]
ok: [serverB]
ok: [serverC]
TASK [common : List Server in current play] ******************************************************************************************************************
ok: [serverA] => (item=serverA) => {
"msg": "Item is serverA Build date 2019-04-24 19:57:34"
}
ok: [serverB] => (item=serverA) => {
"msg": "Item is serverA Build date 2019-04-24 19:57:34"
}
ok: [serverC] => (item=serverA) => {
"msg": "Item is serverA Build date 2019-04-24 19:57:34"
}
ok: [serverB] => (item=serverB) => {
"msg": "Item is serverB Build date 2019-04-26 19:47:01"
}
ok: [serverA] => (item=serverB) => {
"msg": "Item is serverB Build date 2019-04-26 19:47:01"
}
ok: [serverC] => (item=serverB) => {
"msg": "Item is serverB Build date 2019-04-26 19:47:01"
}
ok: [serverB] => (item=serverC) => {
"msg": "Item is serverC Build date 2020-08-20 23:30:25"
}
ok: [serverA] => (item=serverC) => {
"msg": "Item is serverC Build date 2020-08-20 23:30:25"
}
ok: [serverC] => (item=serverC) => {
"msg": "Item is serverC Build date 2020-08-20 23:30:25"
}
PLAY RECAP ***************************************************************************************************************************************************
serverA : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
serverC : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
serverB : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0