Here is the issue reproduced. router is a child of both request_router and
memcached_router. In order to kill request_router, "log4j-dxad-web.xml" is
looked for in the process running on the 'router' host. In order to kill
memcached_router, "log4j-memcached-router.xml" is looked for in the process
running on the 'router' host.
(skytap_env)-bash-4.1$ cat hosts
[router]
router.releng.net ansible_ssh_host=172.24.233.2
[router:vars]
[request_router]
[request_router:vars]
process_identifier=log4j-dxad-web.xml
[request_router:children]
router
[memcached_router]
[memcached_router:vars]
process_identifier=log4j-memcached-router.xml
[memcached_router:children]
router
[matcher]
matcher.releng.net ansible_ssh_host=172.24.233.3
[matcher:children]
ad_matcher
memcached_matcher
[ad_matcher]
[ad_matcher:vars]
process_identifier=log4j-admatcher.xml
[memcached_matcher]
[memcached_matcher:vars]
process_identifier=log4j-memcached-matcher.xml
[realtime_system_components]
[realtime_system_components:vars]
rts_user=dxrts
[realtime_system_components:children]
request_router
ad_matcher
(skytap_env)-bash-4.1$
(skytap_env)-bash-4.1$ cat ansible/kill.yml
- hosts: request_router
user: dataxu
vars_files:
- vars/globals.yml
- vars/realtime_system.yml
tasks:
- include: tasks/realtime_system/kill.yml
- hosts: memcached_router
user: dataxu
vars_files:
- vars/globals.yml
- vars/realtime_system.yml
tasks:
- include: tasks/realtime_system/kill.yml
(skytap_env)-bash-4.1$
(skytap_env)-bash-4.1$ cat ansible/tasks/realtime_system/kill.yml
- name: Kill process if not stopped gracefully
shell: pgrep -f {{ process_identifier }} && (echo "Killing"; pkill -9 -f
{{ process_identifier }});
ignore_errors: True
In the following, the second pgrep/kill command should be looking for
log4j-memcached-router.xml
(skytap_env)-bash-4.1$ ansible-playbook -v -i hosts ansible/kill.yml
PLAY [request_router]
*********************************************************
GATHERING FACTS
***************************************************************
ok: [router.releng.net]
TASK: [Kill process if not stopped gracefully]
********************************
failed: [router.releng.net] => {"changed": true, "cmd": "pgrep -f*
log4j-dxad-web.xml* && (echo \"Killing\"; pkill -9 -f *log4j-dxad-web.xml*);
", "delta": "0:00:00.035682", "end": "2013-12-14 23:32:22.911873", "item":
"", "rc": -9, "start": "2013-12-14 23:32:22.876191"}
stdout: 26041
Killing
...ignoring
PLAY [memcached_router]
*******************************************************
TASK: [Kill process if not stopped gracefully]
********************************
failed: [router.releng.net] => {"changed": true, "cmd": "pgrep -f
*log4j-dxad-web.xml* && (echo \"Killing\"; pkill -9 -f *log4j-dxad-web.xml*);
", "delta": "0:00:00.030875", "end": "2013-12-14 23:32:28.376401", "item":
"", "rc": -9, "start": "2013-12-14 23:32:28.345526"}
stdout: 26074
Killing
...ignoring
PLAY RECAP
********************************************************************
router.releng.net : ok=3 changed=2 unreachable=0 failed=0
If in the hosts file, I delete everything having to do
with realtime_system_components (see first "cat hosts" above) which
shouldn't have anything to do with the kill commands, the opposite log4j
xml file is looked for both times.
(skytap_env)-bash-4.1$ cat hosts
[router]
router.releng.net ansible_ssh_host=172.24.233.2
[router:vars]
[request_router]
[request_router:vars]
process_identifier=log4j-dxad-web.xml
[request_router:children]
router
[memcached_router]
[memcached_router:vars]
process_identifier=log4j-memcached-router.xml
[memcached_router:children]
router
[matcher]
matcher.releng.net ansible_ssh_host=172.24.233.3
[matcher:children]
ad_matcher
memcached_matcher
[ad_matcher]
[ad_matcher:vars]
process_identifier=log4j-admatcher.xml
[memcached_matcher]
[memcached_matcher:vars]
process_identifier=log4j-memcached-matcher.xml
(skytap_env)-bash-4.1$ ansible-playbook -v -i hosts ansible/kill.yml
PLAY [request_router]
*********************************************************
GATHERING FACTS
***************************************************************
ok: [router.releng.net]
TASK: [Kill process if not stopped gracefully]
********************************
failed: [router.releng.net] => {"changed": true, "cmd": "pgrep -f
*log4j-memcached-router.xml
*&& (echo \"Killing\"; pkill -9 -f log4j-memcached-router.xml); ", "delta":
"0:00:00.036037", "end": "2013-12-14 23:35:58.908763", "item": "", "rc":
-9, "start": "2013-12-14 23:35:58.872726"}
stdout: 26152
Killing
...ignoring
PLAY [memcached_router]
*******************************************************
TASK: [Kill process if not stopped gracefully]
********************************
failed: [router.releng.net] => {"changed": true, "cmd": "pgrep -f
*log4j-memcached-router.xml
*&& (echo \"Killing\"; pkill -9 -f log4j-memcached-router.xml); ", "delta":
"0:00:00.026807", "end": "2013-12-14 23:36:04.260145", "item": "", "rc":
-9, "start": "2013-12-14 23:36:04.233338"}
stdout: 26185
Killing
...ignoring
PLAY RECAP
********************************************************************
router.releng.net : ok=3 changed=2 unreachable=0 failed=0
Mike
On Saturday, December 14, 2013 4:34:11 PM UTC-5, Michael DeHaan wrote:
> So I am having trouble what children means here, this is not a playbook
> keyword and the system will yell about that .. So a little confused.
>
> -- Michael
>
> On Dec 14, 2013, at 4:30 PM, Mike Cavedon <[email protected] <javascript:>>
> wrote:
>
> I have the following:
>
> - name: router
> - name: request_router
> children: [router]
> vars:
> component_script: 'requestrouter.sh'
> process_identifier: 'log4j-dxad-web.xml'
> - name: memcached_router
> children: [router]
> vars:
> component_script: 'memcached-router.sh'
> process_identifier: 'log4j-memcached-router.xml'
>
> When the following executes component_script equals requestrouter.sh when
> it should equal memcached-router.sh.
>
> - hosts: memcached_router
> user: root
> vars_files:
> - vars/globals.yml
> tasks:
> - include: task-to-execute.yml.
>
> How do I get component_script to be set as memcached-router.sh when using
> hosts: memcached_router?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected] <javascript:>.
> To post to this group, send email to [email protected]<javascript:>
> .
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.