With a synced folder configuration like so:
synced_folder ".", "/vagrant", :nfs => true
synced_folder "#{ENV['HOME']}/mirror", "/mirror", :nfs => true
synced_folder ENV['HOME'], "/home/#{ENV['USER']}", :nfs => true
on OSX, vagrant writes two overlapping exports to /etc/exports
which then fail the export check.
Iterating through the list of folders lexically builds a correct, single
exports entry.
Signed-off-by: Teemu Matilainen <teemu.matilainen@iki.fi>
This reverts feb748f488 and 7cd7077467. `bootstrap_options` is
meant for flag options such as `-D`. This is demonstrated in the
example Vagrantfile from the original plugin:
github.com/saltstack/salty-vagrant/blob/develop/example/complete/Vagrantfile
Flag options must be appended to the options string before install
args such as `install_type` and `install_args`.
- The implicit default limit is always set
- ansible.limit as an empty string won't disable the default limit, but
will be passed as "--limit=" argument and ansible-playbook will return
an error (provided host list is empty)
- Support arbitrary depth of "groups of groups of ... groups"
- Skip ':vars' suffix, but allow group names with ':' (yes, Ansible
accepts this character)
- Like for groups of machines, groups of groups can result "empty", but
it is not an issue for Ansible. Recursive filter on the group tree is
a bit hard to implement, and don't brind real added value at Vagrant
level.
Pull up encrypted data bag secret management into the base classes, thus
also unifying the functionality.
Especially this complements the issues:
* Upload the secret to provisioning path also with chef-solo [GH-1246]
* Delete the secret also with chef-client [GH-2712]
* Remove the secret before uploading also with chef-client [GH-1111]
of `args` itself and as an element inside of an `args` array. Added validation
around passing in arrays for arguments. Just knowing that it is an array is not
enough, because arrays can contain any other type.
This includes two changes:
1. Change the Vagrant requirement to use the "= VERSION" constraint.
The "path:" previously requires write permission in the directory
of the gemspec, which we don't have in installers.
2. Set a BUNDLE_APP_CONFIG and BUNDLE_PATH setting. By setting this,
Bundler won't ask for sudo password. Bundler never actually needs it;
it is just overly aggressive in thinking it does.