Commit Graph

912 Commits

Author SHA1 Message Date
Mitchell Hashimoto d2bc1dbc3b Merge pull request #2560 from phinze/vbox-nfs-dhcp-support
providers/virtualbox: support DHCP interfaces for NFS
2013-12-03 11:49:54 -08:00
Paul Hinze c25172d0f7 providers/virtualbox: support DHCP interfaces for NFS
Previously, we required a host-only interface with a static IP for NFS
to work in VirtualBox, because we needed access to the guest's IP in
order to properly configure mount commands.

After boot, VirtualBox exposes the IP addresses of a guest's network
adapters via the "guestproperty" interface.

This adds support for reading VirtualBox guest properties to the
VirtualBox driver and utilizes that support to prepare NFS settings,
which removes the necessity for a static IP for NFS to work.

In this commit we also start building out scaffolding for unit testing
vbox actions and drivers.

Test plan:
 - Prepare a Vagrantfile with the following:
   * private network with type: :dhcp
   * synced folder with nfs: true
 - Boot a VM from this Vagrantfile using the virtualbox provider
 - Machine should boot successfully with working synced folder
2013-12-03 10:21:28 -05:00
Mitchell Hashimoto 72edddbb09 core: do proper type conversions for box checksum types 2013-12-01 23:03:21 -08:00
Mitchell Hashimoto 555f4c7dcf kernel/v2: support checksum on box config 2013-12-01 23:03:21 -08:00
Mitchell Hashimoto 1094ac976e core: support checksum on box add 2013-12-01 23:03:20 -08:00
Nicolas Delaby 7cd7077467 salt-bootstrap.sh: options are only allowed before install arguments 2013-11-29 15:52:12 +01:00
Mitchell Hashimoto cfb258a55b provisioners/shell: s/unless/if !/ 2013-11-29 00:02:20 -08:00
Paul Hinze fef60242b0 provisioners/shell: fix validation for args [GH-1949]
The logic change in 57d4775140 introduced
a bug where neither strings nor arrays provided as `args` for shell
provisioners would pass validation.

This fixes that problem along with a few extras:

- split out arg validation into a private method
- update comment describing valid args
- add a few unit tests around config validation
2013-11-28 19:54:10 -06:00
Elan Ruusamäe 1df4f5a8ed require pld/cap/change_host_name 2013-11-27 09:38:28 +02:00
Elan Ruusamäe 2416149aa3 fix hostname change on pld 2013-11-27 09:35:18 +02:00
Mitchell Hashimoto db9c8dd6b3 core: validate box_download_ca_cert_file, expand 2013-11-26 21:10:33 -08:00
Mitchell Hashimoto d0f14250d6 core: can specify config.vm.box_download_ca_cert 2013-11-26 19:35:04 -08:00
Mitchell Hashimoto cd3e19306c commands/box/add: custom CA cert [GH-2337] 2013-11-26 19:32:56 -08:00
Mitchell Hashimoto 798432febe provisioners/chef: validate environments path [GH-2381] 2013-11-26 18:57:27 -08:00
Mitchell Hashimoto 6f2d6981cb website/docs: better Chef docs [GH-2436] 2013-11-26 11:44:16 -08:00
Mitchell Hashimoto fc190fad9f guests/redhat: DHCP_HOSTNAME set to hostname [GH-2441] 2013-11-26 11:28:47 -08:00
Mitchell Hashimoto 5790235a54 Merge pull request #2539 from bearstech/debian_ifdown_ifup
guests/debian: ifdown is not enough for network config
2013-11-26 11:16:37 -08:00
Mitchell Hashimoto cd106986b4 provisioners/ansible: use the first private key
/cc @gildegoma - Does Ansible support multiple private keys? Vagrant
now does, so this isn't exactly safe.
2013-11-26 10:07:52 -08:00
Mathieu Lecarme 09a86bd70a Sometimes, ifdown is not enough. 2013-11-26 13:40:50 +01:00
Mitchell Hashimoto 9dfac9557b provisioners/puppet: fix some bonehead mistakes 2013-11-25 22:46:10 -08:00
Mitchell Hashimoto 25a8491465 provisioners/puppet: manifests path can be in the VM [GH-1805] 2013-11-25 22:39:20 -08:00
Mitchell Hashimoto d7b74ca8b9 core: config.vm.box_url can be array of urls [GH-1958] 2013-11-25 21:57:20 -08:00
Mitchell Hashimoto d88e3dcff2 kernel/v2: new style default box url 2013-11-25 18:46:54 -08:00
Mitchell Hashimoto 7d1fe7c6fe kernel/v2: properly set default value for client cert 2013-11-25 16:51:22 -08:00
Mitchell Hashimoto 13b52f6b6e Merge branch 'client-certs' of https://github.com/sthulb/vagrant into sthulb-client-certs
Conflicts:
	config/default.rb
	lib/vagrant/action/builtin/handle_box_url.rb
	plugins/commands/box/command/add.rb
2013-11-25 16:50:11 -08:00
Mitchell Hashimoto 8581a93e76 provisioners/chef: upload encrypted data bag secret to prov path
[GH-1246]
2013-11-25 15:55:00 -08:00
Mitchell Hashimoto 45e09eb677 core: allow multiple private keys [GH-907] 2013-11-25 15:45:39 -08:00
Mitchell Hashimoto d08e3f7ab3 provisioners/puppet: use better flags for one-time run 2013-11-25 15:28:17 -08:00
Mitchell Hashimoto 4a3259443d provisioners/puppet: make the output a bit clearer 2013-11-25 15:18:35 -08:00
Mitchell Hashimoto e72cd9c98e provisioners/puppet: can specify a client key/cert 2013-11-25 15:17:05 -08:00
Mitchell Hashimoto 57c25a26ad provisioners/puppet: update config to new style 2013-11-25 15:07:12 -08:00
Mitchell Hashimoto 57d4775140 provisioners/shell: allow array args [GH-1949] 2013-11-25 13:36:51 -08:00
Mitchell Hashimoto 741930b439 Merge pull request #1949 from mpapis/feature/shell_provisoner_array_args
provisioners/shell: implement array arguments from #1569
2013-11-25 13:31:48 -08:00
Mitchell Hashimoto 48973a72d5 commands/box/list: clean up 2013-11-25 13:26:46 -08:00
Mitchell Hashimoto 3bedc77cc4 Merge branch '2293-track-box-url' of https://github.com/fgrehm/vagrant into fgrehm-2293-track-box-url
Conflicts:
	plugins/commands/box/command/list.rb
2013-11-25 13:20:26 -08:00
Mitchell Hashimoto 195f0d9639 guests/linux: emit upstart event for vagrant mounted if avail [GH-2502] 2013-11-25 11:31:15 -08:00
Mitchell Hashimoto 602505a136 providers/virtualbox: some validation around internal networks 2013-11-25 11:25:10 -08:00
Mitchell Hashimoto 2d957cdaab providers/virtualbox: internal networks [GH-2020] 2013-11-25 11:13:46 -08:00
Mitchell Hashimoto cc57933675 update changelog 2013-11-24 21:29:04 -08:00
Mitchell Hashimoto 10daa6fddf Merge pull request #2366 from gildegoma/ansible-extra-vars
provisioners/ansible: Improvements for 'extra_vars' argument
2013-11-24 21:21:44 -08:00
Mitchell Hashimoto 6baab10df4 communicators/ssh: pty can be enabled 2013-11-24 16:48:07 -08:00
Mitchell Hashimoto 7ba9d2d0a0 commands/init: add --output flag [GH-1364] 2013-11-24 11:53:15 -08:00
Mitchell Hashimoto 5cbc54d570 commands/box: list has machine-readable output 2013-11-24 11:42:24 -08:00
Mitchell Hashimoto 15d639c8dc website: document machine-readable output 2013-11-24 11:37:57 -08:00
Mitchell Hashimoto 42a71a953d commands/status: add machine-readable output 2013-11-24 11:11:38 -08:00
phinze 688bca14f5 refactoring ubuntu/debian change_host_name
there's been a lot of churn around this code, so i figure it was worth
trying to clean it up.

 - the methods were doing a lot, so make them into template methods with
   one helper per step
 - spread out /etc/hosts regexp into a couple of helper variables for
   clarity
 - remove handling for broken hostname implementations (like basing all
   of the checks on name.split('.')[0]), since it seems reasonable to
   remove code dedicated only to handling broken boxes
 - DRY up the shared code between debian/ubuntu implementations, which
   clarifies the differences as well
 - add unit tests around the behavior; this will help us in the future
   to separate flaws in our understanding from flaws in implementation
 - includes a new DummyCommunicator in tests which should be useful in
   supporting additional unit testing of this kind
 - manually tested this on squeeze, wheezy, precise, quantal, raring,
   and saucy successfully.

handles the issue in #2333
2013-11-24 11:46:12 -06:00
Mitchell Hashimoto f66d08d73c commands/plugin: style nitpick 2013-11-23 16:45:45 -08:00
Mitchell Hashimoto 63005fc1c6 Merge pull request #2420 from tmacedo/rubygems_2_compatibility
core: compatibility with rubygems 2.x
2013-11-23 16:44:10 -08:00
Mitchell Hashimoto c8be50c69e providers/virtualbox: get rid of some 4.3 global state 2013-11-23 16:30:09 -08:00
Mitchell Hashimoto 2044c7445e Merge pull request #2484 from andyfowler/virtualbox-parallel-import
provider/virtualbox: virtualbox parallel box import
2013-11-23 16:23:07 -08:00