vagrant/plugins
Gilles Cornu cb80286a4a ansible_local: put json extra-vars in double quotes
Without this change, the JSON string generated from the `extra_vars`
Ruby hash is passed without enclosing quotes and is then not parseable
by the ansible-playbook command when exectuted in a usual shell context.

In this changeset, the ansible (remote) unit test coverage is improved
to cover both usage of `extra_vars` (ansible_local unit tests are still
missing).

Additional Notes:

 - Double quotes are favored to single quotes in order to allow usage of
   any character for the variable values. For this reason additional
   escaping is appended to JSON-inner double quotes and backslashes.

 - This problem was not affecting the `ansible` remote provisioner
   (which is running the ansible-playbook command via the childprocess
   Ruby library). But with this change, the `verbose` output will also
   now be correct for a copy-paste reuse.

 - After this change, all the "--extra-vars" arguments (also a var
   file passed with the @-syntax or anything coming via the
   `raw_arguments` option) are "blindly" and systematically enclosed
   in double quoted and double-escaped.
   This is not optimal and can potentially break with peculiar values
   (e.g. a double quote character (") cannot be used in a json value
   when using `raw_arguments`). That said, I think that the current
   solution is a reasonable trade-off, since the official `extra_vars`
   option should now be able to cover a great majority of use cases.

Fix #6726
2016-03-05 17:24:28 +01:00
..
commands Merge pull request #6879 from jtopper/allow_no_delete_snapshot_on_pop 2016-03-04 11:40:54 -06:00
communicators powershell and cmd calls should use commnand_executor to reuse oprn winrm shell 2016-01-27 11:59:10 -08:00
guests [MOD] Change the way FreeBSD network interfaces are configured. Fixes #5852 2016-03-01 19:28:09 -03:00
hosts Merge pull request #6602 from mitchellh/sethvargo/darwin_rdp_info 2016-02-03 10:08:18 -05:00
kernel_v1 Support environment variable forwarding, fixes #4131 2015-11-19 16:25:54 -08:00
kernel_v2 core: avoid crash case with nil [GH-6730] 2015-12-24 12:38:14 -08:00
providers Typo 2016-02-16 14:58:42 +00:00
provisioners ansible_local: put json extra-vars in double quotes 2016-03-05 17:24:28 +01:00
pushes Use SSL and HTTPS links where appropriate 2016-01-25 13:14:54 -05:00
synced_folders Fix for problem where the host_info.ps1 script returns a string instead of a list of IPs 2015-12-17 14:40:50 -06:00
README.md Add README to plugin directory 2012-04-18 17:48:06 -07:00

README.md

Vagrant Core Plugins

These are plugins that ship with Vagrant. Vagrant core uses its own plugin system to power a lot of the core pieces that ship with Vagrant. Each plugin will have its own README which explains its specific role.