Commit Graph

333 Commits

Author SHA1 Message Date
Mikhail Zholobov e828927cee providers/virtualbox: Add 'post-comm' to the list of valid events 2014-12-21 01:09:55 +03:00
Paul Hinze 25ff636ee2 providers/virtualbox: cleanup default vbox dhcp server
fixes #3083

Detect the presence of the default DHCP server that comes in a fresh
VirtualBox install and clean it up to prevent it from colliding with
Vagrant-managed network config.

In order to accomplish this, we:

 - add a `remove_dhcp_server` call to the virtualbox driver
 - fix dhcp options parsing to allow `:dhcp_{ip,lower,upper}`
   configuration options to make it through (so a user can override the
   removal behavior with some explicit configuration)
 - add the full `:network_name` to the details returned from
   `:read_dhcp_servers`, so we can have a durable value to pass to
   `:remove_dhcp_server`

Note that we do have to eat one more `VBoxManage list dhcpservers` for
each network interface to support this, but this seemed like a nominal
cost
2014-11-30 22:03:52 -06:00
Paul Hinze 24b6f21d1d providers/virtualbox: extract reading dhcpservers from hostonlyifs
This is just a refactor, no behavior change.

Instead of stitching together dhcpserver info in the structure returned
from `read_host_only_interfaces`, sprout a new driver method called
`read_dhcp_servers` to return that information separately.

This means that driver clients (well there's really only _one_ client in
`ProviderVirtualBox::Action::Network`) have to do a bit more work to get
interface and DHCP server information.

But this gives us (a) a cleaner and more consistent driver interface and
(b) groundwork for a fix for #3083, which will require interacting with
DHCP servers outside of the context of host-only interfaces.
2014-11-30 22:03:52 -06:00
Chris Jones b19abebdf0 Grammar fix to the network interface bridge question 2014-10-31 15:16:02 -04:00
Mitchell Hashimoto 37a4000722 providers/virtualbox: more descriptive error if empty version [GH-4657] 2014-10-24 09:20:08 -07:00
Mitchell Hashimoto 4ffaaf119e providers/virtualbox: more hints when choosing interface [GH-4463] 2014-10-23 10:24:07 -07:00
Mitchell Hashimoto a6c0989bc6 Revert "Merge pull request #4616 from crypt1d/master"
This reverts commit aec69c4627, reversing
changes made to 88754d2904.
2014-10-23 09:30:46 -07:00
Mitchell Hashimoto aec69c4627 Merge pull request #4616 from crypt1d/master
Consider the host_ip value when handling port collisions
2014-10-23 09:26:31 -07:00
Mitchell Hashimoto 2a8f74f54a providers/virtualbox: style 2014-10-23 09:12:41 -07:00
Mitchell Hashimoto 7287604450 Merge pull request #4671 from jramnani/fix/master/nfs_exports_file_for_freebsd_guests
Fix #4658. Bad NFS exports file on OS X & BSD hosts.
2014-10-23 09:12:00 -07:00
Mikhail Zholobov 5197945e56 providers/virtualbox: Remove unused method "using_nfs?"
Related to [GH-4344]
2014-10-23 11:04:21 +04:00
Mitchell Hashimoto 7988f0fb7c Fix broken unit tests 2014-10-22 09:44:48 -07:00
Mitchell Hashimoto 7ccec33460 providers/virtualbox: define a sync_folders action to setup NFS
[GH-4344]
2014-10-22 09:26:38 -07:00
Mitchell Hashimoto 58f7310444 providers/virtualbox: detect conflict in name [GH-4681] 2014-10-21 15:56:32 -07:00
Jeff Ramnani bd5fd7ab18 Fix #4658. Bad NFS exports file on OS X & BSD hosts.
For FreeBSD guests, Virtualbox can sometimes report the private network
interface IP address as "0.0.0.0".  This will cause an invalid NFS
exports file to be generated for FreeBSD and OS X hosts.

Fixed by not allowing Virtualbox to report a guest IP address of
"0.0.0.0".
2014-10-20 12:35:30 -05:00
crypt1d ca1456ff82 initial changes for forwarding port modifications 2014-10-10 13:01:04 +02:00
mpoeter c20624bfdc Add support for linked clones for VirtualBox. 2014-09-09 19:17:04 +02:00
Mitchell Hashimoto 951dc934cc providers/virtualbox: cleaner ignore DHCP 2014-09-04 14:20:03 -07:00
Simo Leone 71119590e8 Fix NFS when DHCP settings use a custom IP range
Only use the static IP if it is indeed a static IP. Otherwise assume
it's DHCP and get the IP that way.
2014-09-02 13:17:30 -07:00
Mitchell Hashimoto ae1a03903e providers/virtualbox: error if can't read VM name [GH-4047] 2014-08-08 10:49:07 -07:00
Mitchell Hashimoto 0f3e4242df Merge pull request #3934 from xstevecs/master
providers/virtualbox: Disable automatic enablement of hostiocache
2014-08-06 10:27:20 -07:00
Mitchell Hashimoto 3b2e3b6a69 Merge pull request #4207 from stevemcc/enhancement/virtualbox_36_nic
Changed hardcoded number of interfaces, fixes #4206.
2014-08-06 09:51:30 -07:00
Steve McConville de7ed34120 Changed hardcoded number of interfaces, fixes #4206. 2014-07-17 09:52:57 +01:00
Keith Shook 93f84f53e5 Ensure VirtualBox virtual disks are stored in the correct directory round 2 2014-07-02 10:08:44 -04:00
Keith Shook 0912ddaf5f Ensure VirtualBox virtual disks are stored in the correct directory on Windows hosts 2014-07-02 08:55:00 -04:00
Akzhan Abdulin bf2e8deebe VirtualBox driver should replace only last occurence of suggested VM name. 2014-07-02 08:52:31 -04:00
steve 9444e2dc43 Disable automatic ennoblement of hostiocache
This can cause behavior that requires re stat’ing
files to for the guest to realize they have
changed. Prevents manually dialing this option.
2014-05-29 10:27:00 -07:00
Kalman Hazins bb052366f7 Change symbols inside hashes to 1.9 JSON-like syntax 2014-05-22 12:35:12 -04:00
Mitchell Hashimoto 5ca475fc7d providers/virtualbox: check VBOX_MSI_INSTALL_PATH on Win [GH-3852] 2014-05-20 19:37:18 -07:00
Mitchell Hashimoto 48f5b0d53b providers/virtualbox: package --base should use vboxsf 2014-05-06 13:48:32 -07:00
Mitchell Hashimoto 7e6ba7fa50 providers/virtualbox: check for provider config nilness 2014-05-06 13:10:22 -07:00
Mitchell Hashimoto a34ee404d8 providers/*: use special NOT_CREATED_ID if not created 2014-05-05 21:52:28 -07:00
Mitchell Hashimoto d526dd54fe core: MachineIndex#valid? checks state and ID again 2014-05-05 21:29:40 -07:00
Mitchell Hashimoto 52c249ff8c providers/virtualbox: higher priority than default 2014-05-05 21:13:56 -07:00
Mitchell Hashimoto f475df0987 providers/virtualbox: don't do transient by default 2014-05-05 15:44:45 -07:00
Mitchell Hashimoto a8d51a2452 providers/virtualbox: remove old print 2014-05-01 21:19:14 -07:00
Mitchell Hashimoto 9c420b8738 providers/virtualbox: set proper mac address on priv net [GH-3588] 2014-04-30 17:09:29 -07:00
Adam Spiers 082bf37df8 backport GH-3277 fix for missing interpolation to older drivers
The original fix for the "missing interpolation argument :stderr" bug
was in d4b3f226, but it only addressed the driver for VirtualBox 4.3:

  https://github.com/mitchellh/vagrant/issues/3277

This backports the fix to the drivers for VirtualBox 4.0, 4.1, and 4.2.
2014-04-30 16:06:20 +01:00
Mitchell Hashimoto b08c1a62ce Removing some old files 2014-04-29 16:48:12 -07:00
Mitchell Hashimoto 2694f746a7 providers/virtualbox: no SSH info if not running 2014-04-27 17:26:24 -07:00
Yavor Nikolov 2cbaa98751 Fix processing of VBOX_INSTALL_PATH 2014-04-26 11:05:32 +03:00
Mitchell Hashimoto a205cf84a0 providers/virtualbox: don't require valid config on destroy [GH-1629] 2014-04-21 13:56:37 -07:00
Mitchell Hashimoto 4372ab034e providers/virtualbox: merge customizations properly 2014-04-21 13:56:32 -07:00
Mitchell Hashimoto 3edfe6deaf providers/docker: remove synced folders after docker rm 2014-04-21 13:55:28 -07:00
Mitchell Hashimoto 10e51eb141 providers/docker: initial sync folders working through proxy VM 2014-04-21 13:55:20 -07:00
Mitchell Hashimoto c1f14320bd providers/docker: process-level lock on host machine up 2014-04-21 13:55:13 -07:00
Mitchell Hashimoto afb61b1466 providers/virtualbox: synced folder supports the "disable" method 2014-04-21 13:55:12 -07:00
Mitchell Hashimoto e119a5714a core: add "disable" method for synced folders, deprecate "prepare" 2014-04-21 13:55:09 -07:00
Mitchell Hashimoto 8c7ab333a0 Squash the f-docker-hostmachine branch.
Initial work

commands/up: make sure all names to with_target_vms are strings

providers/docker: create a docker host VM if needed

providers/docker: executor abstraction for driver to eventually support remote

providers/docker: vagrant executor

providers/docker: support creating the machine

providers/docker: status works if host VM is gone

providers/docker: use start fence to get real docker output

core: Call preserves stack ordering

core: support Message post option

providers/docker: Guard some features with HasSSH checks

providers/docker: much better messaging around create/destroy

providers/docker: output the container ID on create

providers/docker: copy the hostmachine Vagrantfile to the data dir

providers/docker: should make host machine before any up action

providers/docker: HandleBox before the host machine

providers/virtualbox: functional_vboxsf to disable vboxsf

providers/virtualbox: synced folder usable method should take 2 args

providers/docker: default machine name to :default
2014-04-21 13:54:33 -07:00
Mitchell Hashimoto 967f7bce1a providers/virtualbox: usability test 2014-04-21 13:53:08 -07:00
Mitchell Hashimoto 9a16af10ad core: Use Machine#state wherever possible so we update the index 2014-04-21 13:51:23 -07:00
Mitchell Hashimoto 7ccf7fadf2 providers/virtualbox: make ID os-friendly for Windows 2014-04-21 13:51:12 -07:00
Mitchell Hashimoto d600e83e6d guests/windows: configure networks 2014-04-21 13:51:09 -07:00
Oscar Renalias 8f4ae68f56 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x, including internal networks 2014-03-31 21:32:12 +03:00
Oscar Renalias 094be9dc50 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x, including internal networks 2014-03-31 21:31:51 +03:00
Oscar Renalias cd6f24b2d9 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x 2014-03-31 20:36:24 +03:00
Oscar Renalias 0314453f46 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x 2014-03-31 20:36:16 +03:00
Mitchell Hashimoto d4b3f226dd providers/virtualbox: fix missing interpolation [GH-3277] 2014-03-20 17:57:17 -07:00
Mitchell Hashimoto a8fa2d5ffe providers/virtualbox: import progress works on Windows 2014-03-12 20:02:05 -07:00
Marc Schlaich 5694c7dc2f providers/virtualbox: retry list vms [GH-2831] 2014-03-12 16:23:32 +01:00
Mitchell Hashimoto 0f70ce7e46 providers/virtualbox: style nitpick 2014-03-11 08:48:33 -07:00
Mitchell Hashimoto 6a5fee0191 providers/virtualbox: add post-comm customize step [GH-3080] 2014-03-09 21:35:53 -07:00
Mitchell Hashimoto 3324756e12 providers/virtualbox: don't log in trap context 2014-02-23 22:09:15 -08:00
Mitchell Hashimoto d0cd2464b2 providers/virtualbox: only clear forwarded ports if there are any 2014-02-13 21:04:56 -08:00
Mitchell Hashimoto b1bed68bed providers/virtualbox: cap to read forwarded ports 2014-02-13 16:34:34 -08:00
Mitchell Hashimoto 8d3afa73d2 providers/virtualbox: config to skip guest additions check 2014-02-08 18:35:09 -08:00
Mitchell Hashimoto 1a5ad9f3d5 providers/virtualbox: check for outdated on any start 2014-02-05 21:20:17 -08:00
Mitchell Hashimoto bfca65b098 core: better output for BoxCheckOutdated 2014-02-05 21:20:16 -08:00
Mitchell Hashimoto 4cedd590d9 providers/virtualbox: use new HandleBox middleware 2014-02-05 21:20:05 -08:00
Mitchell Hashimoto 56e85bc989 Merge pull request #2906 from frosario/cable_connected
providers/virtualbox: connect cable for bridged networking
2014-02-03 03:05:16 -08:00
Freddie Rosario ccf14bb398 Applying bugfix for cableconnected issue to earlier releases of virtualbox 4.x series 2014-01-28 11:05:44 -05:00
Freddie Rosario cd0c7dfbd9 Bugfix for github issue 2890.
Changing default behavior of vagrant up to enable "cableconnected" on bridged network devices
2014-01-28 10:54:39 -05:00
Mitchell Hashimoto ea77194384 providers/virtualbox: more detailed output 2014-01-17 21:03:01 -08:00
Mitchell Hashimoto 5b449c8000 providers/virtualbox: many `detail` level output 2014-01-17 21:03:00 -08:00
Mitchell Hashimoto dd33a26422 providers/virtualbox: network config uses proper format, tests [GH-2854] 2014-01-17 09:53:02 -08:00
Mitchell Hashimoto eecba611a4 providers/virtualbox: validate missing keys [GH-2831] 2014-01-16 09:43:31 -08:00
Mitchell Hashimoto eae2edf063 providers/virtualbox: retry list hostonlyifs [GH-2831] 2014-01-15 19:55:31 -08:00
Mike Fiedler 9679eccb06 extend Virtualbox convenince methods
In the vein of #2426, I too can never remember syntax, and end up
hunting for either an exisiting Vagrantfile or starting to dig up
details.
2014-01-10 12:41:23 -05:00
Mitchell Hashimoto 2f7163386d providers/virtualbox: don't error when intnet set to "true" [GH-2751] 2014-01-03 08:31:14 -08:00
Mitchell Hashimoto 3f2d3886b2 providers/virtualbox: fix package [GH-2739] 2014-01-02 10:09:05 -08:00
Mitchell Hashimoto 7141be065a Merge pull request #2674 from phinze/static-nfs-guest-ips
core: problems with using VirtualBox guest properties for reading NFS Guest IP
2013-12-31 11:00:23 -08:00
Mitchell Hashimoto 54f4cffc00 providers/virtualbox: export after checking if package exists [GH-2380] 2013-12-31 08:45:56 -08:00
Paul Hinze fc66ec1660 providers/virtualbox: allow and prefer static guest IPs for NFS
Since vbox guest properties are proving to be less reliable than we had
hoped, bring back the static config parsing mechanism for finding a
guest IP to hand to NFS. If we find a static IP (or set of IPs) we'll
use that instead of trying to probe guest properties.

This retains NFS support for DHCP interfaces while regaining the
reliability that we previously had when static IPs were required.
2013-12-28 17:01:08 -06:00
Mitchell Hashimoto c1141dded3 providers/virtualbox: don't clear /etc/exports on BSDs for NFS [GH-2645] 2013-12-13 22:03:14 -08:00
Mitchell Hashimoto 2c65d247da core: Allow options to be passed down into SF cleanup 2013-12-06 16:40:24 -08:00
Mitchell Hashimoto 55931d507e Merge branch 'nfs-sync-folder-cleanup' of https://github.com/emyl/vagrant into emyl-nfs-sync-folder-cleanup
Conflicts:
	plugins/providers/virtualbox/action.rb
2013-12-06 15:06:34 -08:00
Mitchell Hashimoto b65462faf1 providers/virtualbox: resume should wait for boot 2013-12-06 13:21:07 -08:00
Mitchell Hashimoto 0d02ada43b providers/virtualbox: only clear shared folders if we have a VM 2013-12-05 13:39:23 -08:00
Teemu Matilainen 897fde3274 Add missing argument to ProviderVirtualBox::SyncedFolder#driver call
GH-2577 missed passing the `machine` to the `driver` method.
2013-12-05 00:21:16 -03:00
Emiliano Ticci 07bbca426e NFS/VBox: remove dedicated cleanup action in favour of native routine. 2013-12-04 12:29:09 +01:00
Emiliano Ticci c95fc4e27c VirtualBox shared folders: remove dedicated cleanup action in favour of native routine. 2013-12-04 12:22:01 +01:00
Mitchell Hashimoto 832a5ef70b providers/virtualbox: clean up synced folders on destroy 2013-12-03 18:44:37 -08:00
Mitchell Hashimoto ca521887eb Merge pull request #2561 from emyl/synced-folder-cleanup-v2
core: Enhance the synced folder plugin implementation with a cleanup routine
2013-12-03 18:08:42 -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
Emiliano Ticci 578393ac8e Add cleanup routine to synced folder plugin implementation 2013-12-02 11:19:09 +01: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 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
Mitchell Hashimoto cfe17076b5 providers/virtualbox: nitpick on style 2013-11-23 16:16:45 -08:00