kayobe/releasenotes/notes/quote-escape-vars-3d42c7de8dc39d15.yaml
Mark Goddard 196d28e766 Quote and escape extra vars passed to ansible
Arguments passed as extra variables to Ansible require double escaping.
This can be seen when running the following command:

kayobe physical network configure --interface-description-limit 'interface 42'

This gets passed to ansible-playbook as:

['-e', 'physical_network_interface_description_limit=interface 42']

Ansible for some reason loses the 42 from the description. This can be
worked around via quoting:

kayobe physical network configure --interface-description-limit '"interface 42"'

Which results in:

['-e', 'physical_network_interface_description_limit="interface 42"']

This change adds quoting and escaping of variables passed to
ansible-playbook in this way.

Note that this change does not modify any extra variables passed to
kayobe via the -e argument, instead keeping the behaviour of this
argument the same as that of the Ansible -e argument.

Change-Id: I51d5112b8f94998f948fe5b8cb9a927ee7ed8cec
Story: 2004379
Task: 27993
2018-11-19 18:42:42 +00:00

7 lines
221 B
YAML

---
fixes:
- |
Fixes an issue where CLI arguments containing whitespace that are passed to
Ansible needed to be quoted. See `Story 2004379
<https://storyboard.openstack.org/#!/story/2004379>`__ for details.