SOLVED:

Simple by using : [0][0] and [0][1] to get the correct value/parameters.

On Wednesday, 11 November 2015 16:48:09 UTC+1, Eric Franckx wrote:
>
> Hi,
> I try to connect to a list of Sentinel host to get the master redis host 
> and port.
>
>    - name: "CONNECT SENTINEL" command: "redis-cli -h {{ item.allowed_host 
>    }} -p {{ item.port }} SENTINEL get-master-addr-by-name redis-pex-01" 
>    with_items: "{{ production.redis_params.sentinels }}" register: 
>    status_sentinel ignore_errors: yes
>
> TASK [CONNECT SENTINEL] 
> ********************************************************
> changed: [pyxrrsap02.pyx.erp] => (item={u'allowed_host': u'pyxrrsap01', 
> u'port': 17700}) => {"changed": true, "cmd": ["redis-cli", "-h", 
> "pyxrrsap01", "-p", "17700", "SENTINEL", "get-master-addr-by-name", 
> "redis-pex-01"], "delta": "0:00:00.016587", "end": "2015-11-11 
> 00:49:19.387801", "item": {"allowed_host": "pyxrrsap01", "port": 17700}, 
> "rc": 0, "start": "2015-11-11 00:49:19.371214", "stderr": "", "stdout": 
> "10.50.133.20\n6379", "stdout_lines": ["10.50.133.20", "6379"], "warnings": 
> []}
> changed: [pyxrrsap02.pyx.erp] => (item={u'allowed_host': u'pyxrrsap01', 
> u'port': 27700}) => {"changed": true, "cmd": ["redis-cli", "-h", 
> "pyxrrsap01", "-p", "27700", "SENTINEL", "get-master-addr-by-name", 
> "redis-pex-01"], "delta": "0:00:00.017153", "end": "2015-11-11 
> 00:49:19.998121", "item": {"allowed_host": "pyxrrsap01", "port": 27700}, 
> "rc": 0, "start": "2015-11-11 00:49:19.980968", "stderr": "", "stdout": 
> "10.50.133.20\n6379", "stdout_lines": ["10.50.133.20", "6379"], "warnings": 
> []}
>
> I try to display result f register value:
> - name: "DISPLAY SENTINEL VAR 1"
> debug: msg={{ status_sentinel }}
> ignore_errors: yes
>
> TASK [DISPLAY SENTINEL VAR 1] 
> **************************************************
> ok: [pyxrrsap02.pyx.erp] => {
> "changed": false,
> "msg": {
> "changed": true,
> "msg": "All items completed",
> "results": [
> {
> "_ansible_no_log": false,
> "changed": true,
> "cmd": [
> "redis-cli",
> "-h",
> "pyxrrsap01",
> "-p",
> "17700",
> "SENTINEL",
> "get-master-addr-by-name",
> "redis-pex-01"
> ],
> "delta": "0:00:00.016587",
> "end": "2015-11-11 00:49:19.387801",
> "invocation": {
> "module_args": {
> "_raw_params": "redis-cli -h pyxrrsap01 -p 17700 SENTINEL 
> get-master-addr-by-name redis-pex-01"
> },
> "module_name": "command"
> },
> "item": {
> "allowed_host": "pyxrrsap01",
> "port": 17700
> },
> "rc": 0,
> "start": "2015-11-11 00:49:19.371214",
> "stderr": "",
> "stdout": "10.50.133.20\n6379",
> "stdout_lines": [
> "10.50.133.20",
> "6379"
> ],
> "warnings": []
> },
> {
> "_ansible_no_log": false,
> "changed": true,
> "cmd": [
> "redis-cli",
> "-h",
> "pyxrrsap01",
> "-p",
> "27700",
> "SENTINEL",
> "get-master-addr-by-name",
> "redis-pex-01"
> ],
> "delta": "0:00:00.017153",
> "end": "2015-11-11 00:49:19.998121",
> "invocation": {
> "module_args": {
> "_raw_params": "redis-cli -h pyxrrsap01 -p 27700 SENTINEL 
> get-master-addr-by-name redis-pex-01"
> },
> "module_name": "command"
> },
> "item": {
> "allowed_host": "pyxrrsap01",
> "port": 27700
> },
> "rc": 0,
> "start": "2015-11-11 00:49:19.980968",
> "stderr": "",
> "stdout": "10.50.133.20\n6379",
> "stdout_lines": [
> "10.50.133.20",
> "6379"
> ],
> "warnings": []
> }
> ]
> }
> }
>
> But when it tries to parse to have detail it doesn't work:
> - name: "DISPLAY SENTINEL VAR 1 1"
> debug: msg={{ status_sentinel.results.cmd }}
> ignore_errors: yes
>
> - name: "DISPLAY SENTINEL VAR 1 2"
>   debug: msg={{ item.cmd }}
>   with_items: ${status_sentinel.results}
>   ignore_errors: yes
>
> TASK [DISPLAY SENTINEL VAR 1 1] 
> ************************************************
> fatal: [pyxrrsap02.pyx.erp]: FAILED! => {"failed": true, "msg": "ERROR! 
> 'list object' has no attribute 'cmd'"}
> ...ignoring
>
> TASK [DISPLAY SENTINEL VAR 1 2] 
> ************************************************
> fatal: [pyxrrsap02.pyx.erp]: FAILED! => {"failed": true, "msg": "ERROR! 
> 'unicode object' has no attribute 'cmd'"}
> ...ignoring
>
> or like this :
> - name: "DISPLAY SENTINEL VAR 2 1"
> debug: var={{ item }}
> with_items: ${status_sentinel.results}
> ignore_errors: yes
>
> doesn't work:
> TASK [DISPLAY SENTINEL VAR 2 1] 
> ************************************************
> ok: [pyxrrsap02.pyx.erp] => (item=${status_sentinel.results}) => {
> "${status_sentinel.results}": "VARIABLE IS NOT DEFINED!",
> "item": "${status_sentinel.results}"
>
> Any idea ?
>
> Regards,
>
> ------------------------------
>
> This email is sent on behalf of Northgate Information Solutions Limited 
> and its associated companies ("Northgate") and is strictly confidential and 
> intended solely for the addressee(s). 
>
> If you are not the intended recipient of this email you must: (i) not 
> disclose, copy or distribute its contents to any other person nor use its 
> contents in any way or you may be acting unlawfully;  (ii) contact 
> Northgate immediately on +44 (0)1442 232424 quoting the name of the sender 
> and the addressee then delete it from your system.
>
> Northgate has taken reasonable precautions to ensure that no viruses are 
> contained in this email, but does not accept any responsibility once this 
> email has been transmitted.  You should scan attachments (if any) for 
> viruses.
> ------------------------------
>

-- 


------------------------------

This email is sent on behalf of Northgate Information Solutions Limited and 
its associated companies ("Northgate") and is strictly confidential and 
intended solely for the addressee(s). 

If you are not the intended recipient of this email you must: (i) not 
disclose, copy or distribute its contents to any other person nor use its 
contents in any way or you may be acting unlawfully;  (ii) contact 
Northgate immediately on +44 (0)1442 232424 quoting the name of the sender 
and the addressee then delete it from your system.

Northgate has taken reasonable precautions to ensure that no viruses are 
contained in this email, but does not accept any responsibility once this 
email has been transmitted.  You should scan attachments (if any) for 
viruses.
------------------------------

-- 
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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/a8dc4d0c-eda1-4814-b763-ae71ef07973d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to