On 20.07.2019 10:13, hauke wrote:
> Currently I try to fetch an integer value of an API and to use that exact
> value later on to create an object via the same API. The problem is, the
> API only accepts JSON numbers (integer in this case) as input. Is there any
> way to tell Ansible to save a value as a "true" integer without the
> brackets?
> 
> My tasks:
> 
> - name: Foo
>    hosts: all
>    tasks:
> 
>      - name: Get the JSON object
>        uri:
>          url: https:
> //jira.foo.bar/rest/agile/1.0/board/219/sprint?state=active
>          user: "{{ username }}"
>          password: "{{ password }}"
>          force_basic_auth: yes
>          body_format: json
>        register: response
>        delegate_to: localhost
> 
>      - name: Show important part of response
>        debug:
>          msg: "{{ response.json }}"
> 
>      - name: Try to filter out ID without brackets
>        debug:
>          # msg: "{{ response.json |json_query('values[0].id') |int }}"
>          # msg: "{{ response.json |json_query('values[0].id') }}"
>          # msg: "{{ response.json |json_query('values[0].id') | to_json }}"
>          # msg: "{{ response.json |json_query('values[0].id') | to_json |int
> }}"
>          msg: "{{ response.json |json_query('values[0].id') | int | to_json
> }}"
> 

Don't filter it through to_json, following debugs will show that the value is a 
int

- debug: msg={{ response.json.values.0.id | type_debug }}
- debug: msg={{ response.json | json_query('values[0].id') | type_debug }}


-- 
Kai Stian Olstad

-- 
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/c797001d-e730-1953-382d-0bae978d57b2%40olstad.com.

Reply via email to