Why playbook is not taking updated IP from the inventory on the fly

I have a situation where 1) updating IP in inventory through following shell and 2) using that IP it will perform some operation. However, child2.yml is
not taking updated IP in inventory and still takes old IP.

Moreover, once job is finished its showing updated IP in the inventory. How can I achieve this so that it will take only updated IP.

  • hosts: localhost
    gather_facts: False
    connection: local
    vars_files:
  • “group_vars/{{domainname}}”

tasks:

  • name: get the elb IPs
    shell: sh /etc/ansible/elb_grep_ip.sh {{elb_id}} {{domainname}}

  • include: child2.yml

You probably need to show us child2.yml…

child2.yml

What does /etc/ansible/elb_grep_ip.sh exactly do?