when I try with
- debug:
msg: "{{ result }}"
the output is
TASK [debug]
**************************************************************************************************************************
ok: [localhost] => {
"msg": {
"changed": true,
"cmd": "curl -X POST 'https://xxxxxx.com/auth/login' -H
'Content-Type: application/json' -d @.mycred.json",
-- trimmed lines ----
"rc": 0,
-- trimmed lines ----
"stdout":
"{\"access_token\":\"XXXXX\",\"token_type\":\"Bearer\",\"expires_in\":86400}",
"stdout_lines": [
"{\"access_token\":\"XXXXX\",\"token_type\":\"Bearer\",\"expires_in\":86400}"
]
}
}
The output for the
- debug:
msg: "{{ result.stdout |from_json }}"
is
TASK [debug]
**************************************************************************************************************************
ok: [localhost] => {
"msg": {
"access_token": "XXXXXX",
"expires_in": 86400,
"token_type": "Bearer"
}
}
when I use the
- debug:
msg: "{{ result.stdout.access_token }}"
the error is
TASK [debug]
**************************************************************************************************************************
fatal: [localhost]: FAILED! => {"msg": "The task includes an option with an
undefined variable. The error was:
'ansible.utils.unsafe_proxy.AnsibleUnsafeText object' has no attribute
'access_token'\n\nThe error appears to be in '/home/user/check.yml': line
32, column 7, but may\nbe elsewhere in the file depending on the exact
syntax problem.\n\nThe offending line appears to be:\n\n\n - debug:\n
^ here\n"}
On Saturday, October 14, 2023 at 6:31:49 PM UTC+5:30 Will McDonald wrote:
> Is there any reason you can't just use result.stdout.access_token?
>
> $ cat debug-token.yml
> - name: debug vars
> hosts: localhost
> gather_facts: no
>
> vars:
> result:
> stdout:
> access_token: xxxxxxxxxx
> expires_in: 4320
> token_type: yyyyyyyyyy
>
> tasks:
> - name: debug the result
> ansible.builtin.debug:
> var: result
>
> - name: extract the token
> ansible.builtin.debug:
> msg: "{{ result.stdout.access_token }}"
>
>
> $ ansible-playbook debug-token.yml
>
> PLAY [debug vars]
> **********************************************************************************************************
>
> TASK [debug the result]
> ****************************************************************************************************
> ok: [localhost] => {
> "result": {
> "stdout": {
> "access_token": "xxxxxxxxxx",
> "expires_in": 4320,
> "token_type": "yyyyyyyyyy"
> }
> }
> }
>
> TASK [extract the token]
> ***************************************************************************************************
> ok: [localhost] => {
> "msg": "xxxxxxxxxx"
> }
>
>
> On Sat, 14 Oct 2023 at 13:43, Veera <[email protected]> wrote:
>
>> I need only the output or the value of the below(trying to set_fact the
>> access_token)
>> access_token": "xxxxxxxxxx"
>>
>>
>>
>>
>> On Saturday, October 14, 2023 at 6:01:54 PM UTC+5:30 Dick Visser wrote:
>>
>>> What is your desired output then??
>>>
>>> Sent from Gmail Mobile
>>>
>>>
>>> On Sat, 14 Oct 2023 at 10:01, Veera <[email protected]> wrote:
>>>
>>>> Hi,
>>>>
>>>> I have the below output from my playbook using
>>>> - debug:
>>>> msg: "{{ result.stdout }}"
>>>>
>>>> TASK [debug]
>>>> **************************************************************************************************************************
>>>> ok: [localhost] => {
>>>> "msg": {
>>>> "access_token": "xxxxxxxxxx",
>>>> "expires_in": 43200,
>>>> "token_type": "xxxxxx"
>>>> }
>>>> }
>>>>
>>>>
>>>> and when I tried to filter the access token alone , with map by
>>>> "{{ result.stdout | map('extract', access_token) }}" ., it errors as
>>>> below
>>>>
>>>> The task includes an option with an undefined variable. The error was:
>>>> 'access_token' is undefined\n\n
>>>>
>>>> and when I tried to filter the access token alone , with map by
>>>> msg: "{{ result.stdout | map(attribute='access_token') }}" ., it
>>>> errors as below
>>>>
>>>> What I am missing here to get the desired output here?
>>>>
>>>>
>>>> --
>>>> 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 view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/ansible-project/6a7a5ed1-6c6b-4660-8da9-1388898923fen%40googlegroups.com
>>>>
>>>> <https://groups.google.com/d/msgid/ansible-project/6a7a5ed1-6c6b-4660-8da9-1388898923fen%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> --
>> 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 view this discussion on the web visit
>> https://groups.google.com/d/msgid/ansible-project/f1f16814-e47b-4251-8bea-9e9660ead1fcn%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/ansible-project/f1f16814-e47b-4251-8bea-9e9660ead1fcn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>
--
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 view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/03558fe3-2444-4a96-9cb9-cc1a91943e7bn%40googlegroups.com.