Commit Graph

7899 Commits

Author SHA1 Message Date
Gilles Cornu 3842a1f710 provisioners/ansible: provide ssh identities via ANSIBLE_SSH_ARGS (when necessary)
When provisioning multiple machines in sequence (the default vagrant
behaviour), it doesn't make sense to require to provide the private ssh
key(s) via the custom ansible inventory script/file.

To align with the handling of multiple ssh keys per machine, we won't
rely any longer on `--private-key` command line argument, but only pass
the keys via `ANSIBLE_SSH_ARGS` environment variable.

Note that when vagrant generates the ansible inventory and that only one
key is associated to a VM, this step would be redundant, and therefore
won't be applied.

This change fixes the breaking change introduced by 3d62a91.
2015-07-10 08:51:17 +02:00
Luis Pabón 76651a413d provisioners/ansible: Update unit tests
Signed-off-by: Luis Pabón <lpabon@redhat.com>
2015-07-10 08:51:17 +02:00
Luis Pabón f0718d620d provisioners/ansible: Put ssh key in the inventory
Vagrant 1.7.1 creates and injects new ssh keys for each virtual machine.
When it started ansible with the "parallel provisioning trick",
it would only send the ssh key of the targeted virtual machine.
With this change, vagrant now stores the ssh key for each virtual
machines directly in the generated ansible inventory, and thus allow
ansible parallelism.

Note that this change is not sufficient, as it would break vagrant
configuration based on a custom inventory (file or script). This issue
will be addressed in a next commit.

Signed-off-by: Luis Pabón <lpabon@redhat.com>
2015-07-10 08:39:49 +02:00
Mitchell Hashimoto d29487a2bc Merge pull request #5916 from mitchellh/sethvargo/chef_zero
Refactor Chef provisioners
2015-07-09 22:17:31 -06:00
Mitchell Hashimoto 479323f1e8 for newer versions of Bundler, store the runtime 2015-07-09 22:12:47 -06:00
Seth Vargo d72306b6d5 Fix command builder tests 2015-07-09 21:36:50 -06:00
Seth Vargo 4b1847acf3 Use Chef Client for Chef Zero
Fixes GH-5619
2015-07-09 21:23:42 -06:00
Mitchell Hashimoto 931f0700b3 upping version for dev 2015-07-09 21:22:31 -06:00
Seth Vargo 294812fb13 Merge pull request #5915 from mitchellh/sethvargo/bump
Bump to latest bundler
2015-07-09 17:47:46 -06:00
Seth Vargo f93532ce11 Bump to latest bundler 2015-07-09 17:47:36 -06:00
Seth Vargo 40b94afeb5 Update command builder now that provisioning_path has moved to runtime 2015-07-09 17:46:39 -06:00
Seth Vargo a822bb2aa6 Merge pull request #5914 from mitchellh/sethvargo/travis_docker
Try the container VMs
2015-07-09 17:27:50 -06:00
Seth Vargo 5323a51126 Use color 2015-07-09 17:24:29 -06:00
Seth Vargo b191c302f1 Use bundle exec 2015-07-09 17:20:02 -06:00
Seth Vargo dcd8877b60 Try the container VMs 2015-07-09 17:18:19 -06:00
Seth Vargo 85d2a69f98 Update CHANGELOG 2015-07-09 17:07:15 -06:00
Seth Vargo 60330218fb Merge pull request #5913 from mitchellh/sethvargo/windows_chef_paths
Use windows-specific Chef paths
2015-07-09 17:05:40 -06:00
Seth Vargo e9bcf147f0 Prefix with guest_ 2015-07-09 17:01:36 -06:00
Seth Vargo 06dcd55f57 Fix tests 2015-07-09 16:59:17 -06:00
Gilles Cornu 94e26f45ec Update CHANGELOG
Close #5551
2015-07-10 00:56:12 +02:00
Seth Vargo 0e039159a6 Calculate Chef paths at provision time 2015-07-09 16:55:55 -06:00
Nicholas Randon eb6aa2ac8c Allow Ansible provisioner to run reliably in parallel
The Ansible Vagrant provisioner has a race where the inventory file is
updated every time the provisioner runs unless a file is provided.

Therefore if Ansible attempts to provision two nodes in parallel, you
may see the following race:
   * System A writes the inventory file and calls Ansible.
   * System B starts to provision and truncates the file before
     creating a new one.
   * Ansible on system A now attempts to read the inventory
     file, which is blank. Ansible bombs out with "ERROR: provided
     hosts list is empty".

To fix this, we only allow Vagrant to update the inventory file if
it needs to.
2015-07-10 00:53:59 +02:00
Seth Vargo 04ed8d3d03 Merge pull request #5912 from mitchellh/sethvargo/subprocess_escape
Automatically restore the original environment if we are runnings something outside of the embedded installer
2015-07-09 16:10:33 -06:00
Seth Vargo fafa3fa437 Add another log statement 2015-07-09 16:06:03 -06:00
Seth Vargo 742d47c4cf No longer need subprocess wrapping there :) 2015-07-09 16:06:03 -06:00
Seth Vargo 68ef9676c7 Jailbreak out of the subprocess and restore original environment 2015-07-09 16:06:03 -06:00
Seth Vargo 46563560f4 Update with_clean_env helpers 2015-07-09 16:06:02 -06:00
Seth Vargo 50a64ea30b Add a log statement 2015-07-09 16:06:02 -06:00
Seth Vargo 0a5d37fc8b Reset the original environment if we are running something outside of the installer 2015-07-09 16:06:02 -06:00
Mitchell Hashimoto 790c625bc0 Merge pull request #5884 from dcbw/dcbw/fedora-network-mac-address
[fedora] honor MAC address when configuring networks
2015-07-09 16:01:33 -06:00
Mitchell Hashimoto dd625a9352 update CHANGELOG 2015-07-09 15:18:36 -06:00
Mitchell Hashimoto d36f611e24 Merge branch 'maxlinc-filter_synced_folders' 2015-07-09 15:05:59 -06:00
Mitchell Hashimoto cea44847de Merge branch 'filter_synced_folders' of https://github.com/maxlinc/vagrant into maxlinc-filter_synced_folders 2015-07-09 15:05:52 -06:00
Mitchell Hashimoto d51c5fbc69 Merge pull request #5435 from juiceinc/bugfix/salt-provisioner
Update Salt provisioner to allow more flexibility in passing arguments to the bootstrap script
2015-07-09 15:02:34 -06:00
Mitchell Hashimoto b0b9f67faf Merge pull request #5514 from MiLk/fixes/several-boxes-same-name
Allow to use several boxes with the same name
2015-07-09 15:00:03 -06:00
Mitchell Hashimoto 5fd3ab5bb0 Merge pull request #5706 from jim-minter/master
Remove docker0 from guest network interface enumeration
2015-07-09 14:31:00 -06:00
Mitchell Hashimoto c65c62b2c1 Merge pull request #5880 from strzibny/fix-nfs
Fix: Rewrite Red Hat NFS handling based on systemd
2015-07-09 14:27:30 -06:00
Mitchell Hashimoto b3e935203e remove unuse dline 2015-07-09 14:25:10 -06:00
Mitchell Hashimoto 3cad495064 Merge pull request #5887 from msabramo/config.ssh.ssh_command
Add setting config.ssh.ssh_command
2015-07-09 14:24:48 -06:00
Mitchell Hashimoto 3cd12b418c update CHANGELOG 2015-07-09 14:23:55 -06:00
Mitchell Hashimoto f1618f5ec8 providers/docker: don't remove image on reload for build cache 2015-07-09 14:23:26 -06:00
Mitchell Hashimoto 057f04e46a Merge pull request #5905 from adrianguenter/adrianguenter-5353
Docker Provider: Don't destroy built Docker image on reload
2015-07-09 14:22:43 -06:00
Adrian Guenter 9bdefb5c59 Don't destroy built Docker image on reload 2015-07-09 16:15:56 -04:00
Mitchell Hashimoto e903988461 fix tests 2015-07-09 14:14:30 -06:00
Mitchell Hashimoto e9d8fa5f1c update CHANGELOG 2015-07-09 14:05:30 -06:00
Mitchell Hashimoto 300b9c9109 provisioners/chef: don't check existing set, unique ID
[GH-5199]
2015-07-09 14:04:12 -06:00
Seth Vargo b49d25c56c Update CHANGELOG 2015-07-09 13:20:55 -06:00
Seth Vargo 912a878840 Merge pull request #5910 from mitchellh/sethvargo/preserve_original_env
Add Vagrant.original_env and break out of bundler in subprocess
2015-07-09 13:19:49 -06:00
Seth Vargo e46ef7d2f8 Document debugging the launcher 2015-07-09 13:14:38 -06:00
Seth Vargo 3ba10b43ab Restore the original environment from Bundler and the installer if given 2015-07-09 13:14:34 -06:00