Might be easier to just declare it as YAML.
If you need it as a string, there's stuff like
{{ foo | to_json }}
On Mon, Jan 20, 2014 at 10:53 AM, <[email protected]> wrote:
> Hmm, that was what I thought I wanted, but using that value for the API
> call was refused as it was not valid JSON.
>
> On Monday, January 20, 2014 8:36:43 AM UTC-6, James Cammarata wrote:
>
>> Escape those braces:
>>
>> - set_fact: >
>> sshkey_json='\{"text": "{{public_key_contents.stdout}}"\}'
>>
>> results in:
>>
>> TASK: [debug var=sshkey_json] ******************************
>> *******************
>> ok: [127.0.0.1] => {
>> "sshkey_json": "\\{\"text\": \"ssh-rsa blahblah comment\"\\}"
>> }
>>
>> Which I think is what you want.
>>
>>
>> On Sun, Jan 19, 2014 at 8:55 PM, <[email protected]> wrote:
>>
>>> An API that I use accepts only JSON. I'm creating what I need with
>>> set_fact, which I'll later use with the uri module. However, the curly
>>> braces are getting interpreted as a dictionary or something.
>>>
>>> Here's my playbook:
>>>
>>>
>>>
>>> ---
>>> - name: Create server
>>> gather_facts: no
>>> hosts: local
>>>
>>> tasks:
>>> - command: cat /home/jim/.ssh/id_rsa.pub
>>> register: public_key_contents
>>> - set_fact: >
>>> sshkey_json='{"text": "{{public_key_contents.stdout}}"}'
>>> - debug: var=sshkey_json
>>>
>>>
>>>
>>>
>>> The results of this are:
>>>
>>>
>>>
>>> TASK: [debug var=sshkey_json] ******************************
>>> *******************
>>> ok: [localhost] => {
>>> "sshkey_json": *{*
>>> "text": "ssh-rsa blahblah jim"
>>> *}*
>>> }
>>>
>>>
>>> The red, bolded quotes should be part of the string but it seems like
>>> they are not. How can I accomplish this?
>>>
>>> --
>>> 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.
>>>
>>
>>
>>
>> --
>>
>> James Cammarata <[email protected]>
>>
>> Sr. Software Engineer, AnsibleWorks, Inc.
>> http://www.ansibleworks.com/
>>
> --
> 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.
>
--
Michael DeHaan <[email protected]>
CTO, AnsibleWorks, Inc.
http://www.ansibleworks.com/
--
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.