# \-e 'versions.myapp="0.1.2"'  vs -e  '{ "versions": { "myapp": "0.1.2"} }'  =\> Rundeck job import, ":"  -\> yaml: mapping values are not allowed here

**URL:** <https://forum.ansible.com/t/e-versions-myapp-0-1-2-vs-e-versions-myapp-0-1-2-rundeck-job-import-yaml-mapping-values-are-not-allowed-here/20046>\
**Category:** Ansible Project\
**Created:** [December 18, 2015, 11:47am UTC](https://forum.ansible.com/t/e-versions-myapp-0-1-2-vs-e-versions-myapp-0-1-2-rundeck-job-import-yaml-mapping-values-are-not-allowed-here/20046 "2015-12-18T11:47:18Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jakub\_Muszynski](https://avatars.discourse-cdn.com/v4/letter/j/c68b51/32.png) [@Jakub\_Muszynski](https://forum.ansible.com/u/Jakub_Muszynski)\
**Post date:** [December 18, 2015, 11:47am UTC](https://forum.ansible.com/t/e-versions-myapp-0-1-2-vs-e-versions-myapp-0-1-2-rundeck-job-import-yaml-mapping-values-are-not-allowed-here/20046/1 "2015-12-18T11:47:18Z")

</div>

Is there any way to pass an extra\_vars in a form of dict, not json?  
Like this:  
-e ‘versions.myapp=“0.1.2”’  
not like that:  
-e ‘{ “versions”: { “myapp”: “0.1.2”} }’

Reason - while importing jobs into rundeck it does complain about

Error: Failed request to load jobs: Jobs Document was invalid for format yaml: mapping values are not allowed here  
-e '{“versions” **:** {"promo

^

(or - can some escaping in rundeck while importing yaml files)

---

<div class="post-metadata">

**Author:** ![Jakub\_Muszynski](https://avatars.discourse-cdn.com/v4/letter/j/c68b51/32.png) [@Jakub\_Muszynski](https://forum.ansible.com/u/Jakub_Muszynski)\
**Post date:** [December 18, 2015, 11:59am UTC](https://forum.ansible.com/t/e-versions-myapp-0-1-2-vs-e-versions-myapp-0-1-2-rundeck-job-import-yaml-mapping-values-are-not-allowed-here/20046/2 "2015-12-18T11:59:44Z")

</div>

Ok - I made it work in rundeck import

[http://symfony.com/doc/current/components/yaml/yaml\_format.html](http://symfony.com/doc/current/components/yaml/yaml_format.html)  
“Mappings use a colon followed by a space (`:` ) to mark each key/value pair:”

So I did some nasty change, removing the space in the JSON - it does not look well, but it works:  
-e ‘{ “versions”: { “myapp”: “0.1.2”} }’  
**-e ‘{ “versions”:{ “myapp”:“0.1.2”} }’**

The initial question is still open, if You would feel like finding a solution.

W dniu piątek, 18 grudnia 2015 12:47:18 UTC+1 użytkownik sirkubax napisał:

---

<div class="post-metadata">

**Author:** ![Jakub\_Muszynski](https://avatars.discourse-cdn.com/v4/letter/j/c68b51/32.png) [@Jakub\_Muszynski](https://forum.ansible.com/u/Jakub_Muszynski)\
**Post date:** [December 18, 2015, 4:04pm UTC](https://forum.ansible.com/t/e-versions-myapp-0-1-2-vs-e-versions-myapp-0-1-2-rundeck-job-import-yaml-mapping-values-are-not-allowed-here/20046/3 "2015-12-18T16:04:31Z")

</div>

I was to happy,  
it does import to rundeck, but then the commands (that works in shell), when executed via rundec, looses double-quotes, and a JSON fails to create the dict \*(\*_Expecting property name enclosed in double quotes)_  
[https://groups.google.com/forum/#!topic/rundeck-discuss/NWQ7Y6sHq60](https://groups.google.com/forum/#!topic/rundeck-discuss/NWQ7Y6sHq60)

W dniu piątek, 18 grudnia 2015 12:59:44 UTC+1 użytkownik sirkubax napisał:
