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
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
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
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
2d957cdaab
providers/virtualbox: internal networks [GH-2020]
2013-11-25 11:13:46 -08:00
Mitchell Hashimoto
cfe17076b5
providers/virtualbox: nitpick on style
2013-11-23 16:16:45 -08:00
Mitchell Hashimoto
56eb53d8af
Merge pull request #2483 from andyfowler/retryable-customize
...
providers/virtualbox: use Retryable for Virtualbox customize & sane_defaults actions
2013-11-23 16:12:20 -08:00
Mitchell Hashimoto
0b9861db7d
providers/virtualbox: fix broken NFS check
2013-11-22 17:29:35 -08:00
Mitchell Hashimoto
9d3818a380
providers/virtualbox: use new SyncedFolders middleware
2013-11-22 16:21:14 -08:00
Mitchell Hashimoto
504707f96a
Merge pull request #2482 from andyfowler/safer-vbox-names
...
core: safer default VM names for Virtualbox
2013-11-21 15:01:31 -08:00
phinze
4225b0eb7b
provider/virtualbox: fix bad constant reference in dhcp error
...
refs #2454
2013-11-20 11:15:25 -06:00
Andy Fowler
b13122cab7
use Retryable for virtualbox customize + defaults
...
when up-ing several boxes at once, VBoxManage modifyvm gets cranky and throws random lock errors. this adds the existing retryable logic to
the customize and sane_defaults actions, both of which fire a bunch of
modifyvm commands, all of which are fine to run multiple times.
2013-11-09 18:16:47 -05:00
Andy Fowler
d775756d18
use a safer default name for virtualbox
...
if the same vagrantfile is up'd in the same second in the same basedir
this caused a conflict,
most notably, all jenkins jobs sit in a 'workspace' directory, which
breaks if more than one job launches from the same trigger.
2013-11-09 15:54:46 -05:00
Mitchell Hashimoto
a36f06f28f
Update CHANGELOG
2013-09-15 16:39:54 -07:00
Mike Rowehl
251cafe5e4
Call the rest of the middleware stack all the time.
2013-09-13 09:34:40 -07:00
Mitchell Hashimoto
154b32e561
Merge pull request #1745 from jheise/master
...
providers/virtualbox: static ip addresses on public networks
2013-09-02 15:10:33 -07:00
Mitchell Hashimoto
a96efcdec9
providers/virtualbox: only set default name on first up [GH-1817]
2013-08-31 22:43:33 -07:00
Mitchell Hashimoto
c38d28f1c5
providers/virtualbox: 4.2 max network adapters to 36 [GH-1886]
2013-08-29 16:50:20 -07:00
Mitchell Hashimoto
261d0ef6cd
core: WaitForCommunicator - more robust wait for boot
...
This is a new built-in middleware that is more robust for
waiting for boots. The "max_tries" configuration is now gone, it is
timeout based. Future commits will make this even better as the
SSH communicator will implement the new "wait_for_ready" in a better
way.
2013-08-29 16:27:00 -07:00
Mitchell Hashimoto
c2012ff944
commands/up: flag --no-destroy-on-error [GH-2011]
2013-08-29 12:13:02 -07:00
Mitchell Hashimoto
54ac2e8448
Merge pull request #1713 from akalyaev/respect-nec-type-option-for-private-networks-1704
...
core: respect :nic_type option for private network. Fixes #1704
2013-08-28 22:44:20 -07:00
Mitchell Hashimoto
b2ee015d00
VirtualBox no longer removes network interfaces [GH-1324]
2013-07-23 17:36:48 -05:00
Mitchell Hashimoto
5f34a694f5
VBoxManage customizations can run at different events [GH-1247]
2013-07-23 17:36:47 -05:00
Kazuhiro NISHIYAMA
889067666b
pass guest_ip option from config to driver [GH-1121]
2013-07-18 15:03:13 +09:00
Mitchell Hashimoto
3e9c1cfcde
Default VM name for VirtualBox contains Vagrantfile VM name [GH-1281]
2013-07-18 00:05:23 -04:00
Mitchell Hashimoto
3028940adb
NFS allows access from all networks on VM [GH-1204]
2013-07-18 00:01:49 -04:00
Mitchell Hashimoto
0dfc6455ae
Update CHANGELOG
2013-07-13 09:22:53 +09:00
Antek Baranski
28e7ae1d05
Enable setting the IP address on DHCP based private network
2013-07-12 17:18:38 -07:00
Mitchell Hashimoto
ba91602628
Bind default SSH to 127.0.0.1 [GH-1785]
2013-06-09 15:15:59 -07:00
Mitchell Hashimoto
3d1332c86f
virtualbox: only configure networks if there are some [GH-1796]
2013-06-09 13:37:15 -07:00
Jon Heise
7a89ab7fad
patching network.rb to allow setting static ip's on public networks
2013-05-18 23:41:33 -07:00
Anton Kalyaev
098516e80e
respect :nic_type option for private network. Fixes #1704
2013-05-10 15:45:50 +04:00
Mitchell Hashimoto
780a312fc9
Built-in DestroyConfirm middleware
2013-04-19 14:14:29 -06:00
Mitchell Hashimoto
0e7a9d3c91
Mount VBox shared folders with proper owner/group [GH-1611]
2013-04-16 17:09:32 -07:00
Mitchell Hashimoto
a9b2ab33ad
Convert network type to symbol so that strings can be used
2013-04-08 10:39:26 -07:00
Mitchell Hashimoto
88b34d3b71
Message on `up` that VM is already running [GH-1558]
2013-04-08 09:09:23 -07:00
Mitchell Hashimoto
142cc4bef7
rtcuseutc as sane default for VBox [GH-912]
2013-04-07 15:04:38 -07:00
Mitchell Hashimoto
c34c8b39c3
Expand Cygwin path to Windows for VirtualBox shared folders
2013-04-06 22:08:41 -07:00
Mitchell Hashimoto
2a542dab02
Switch configure_networks to capabilities system
2013-04-03 23:08:33 -07:00
Mitchell Hashimoto
28d3f274d8
First capability for linux
2013-04-03 23:01:43 -07:00
Mitchell Hashimoto
fc708bc139
Respect :mac option for networks [GH-1536]
2013-04-03 15:41:42 -07:00
Mitchell Hashimoto
acd494d148
Get rid of debug exception
2013-04-03 12:50:04 -07:00
Mitchell Hashimoto
bd60d6b283
Lock around chdir in Subprocess for thread safety
2013-04-03 08:31:43 -07:00
Mitchell Hashimoto
79ba9df881
Respect the "disabled" flag for shared folders for VirtualBox [GH-1004]
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
43d85930ed
Improve network interface detection to avoid crash [GH-1480]
2013-03-22 10:51:07 -07:00
Mitchell Hashimoto
a4745fb426
Properly handle forward port collision detection with auto-correct
...
[GH-1472]
2013-03-21 16:33:06 -07:00
Jan Schumann
d42b7745e4
added dhcp configuration option for private networks
2013-03-20 20:18:32 +01:00
Mitchell Hashimoto
c94f61d274
Only prepare NFS settings for VirtualBox if NFS is enabled
2013-03-18 13:21:06 -07:00
Eivind Uggedal
c45d3ee728
Fix wrong reference to Errors::NFSNoHostonlyNetwork introduced in 022c1da
[GH-1437].
2013-03-18 14:30:26 +01:00
Mitchell Hashimoto
022c1daec0
Raise error if no hostonly network on VBox with NFS [GH-1437]
2013-03-17 22:33:02 -07:00
Mitchell Hashimoto
f03175b4af
Don't "return" if FP less than port 1024 [GH-1421]
2013-03-15 15:15:54 -07:00
Mitchell Hashimoto
c8b829c4d2
Properly resolve cygwin paths in Cygwin environments [GH-1366]
2013-03-13 21:50:41 -07:00
Mitchell Hashimoto
57a5edbc39
Merge pull request #1366 from johnb0011/master
...
Solve Virtualbox pathing issue running under Cygwin
2013-03-13 21:41:34 -07:00
Mitchell Hashimoto
5b18cfae28
Raise properly namespaced errors in VM boot
2013-03-06 14:46:25 -08:00
Mitchell Hashimoto
36b805367d
Fix all core code to use the new networking syntax
2013-03-01 16:48:10 -08:00
Mitchell Hashimoto
18492d5d70
Remove VirtualBox Hostname middleware
2013-02-27 21:30:01 -08:00
Mitchell Hashimoto
3c47f4f3bc
SetHostname middleware uses hostname
2013-02-27 21:29:33 -08:00
Mitchell Hashimoto
c9ad55d9e7
Built-in hostname middleware for setting hostname
2013-02-27 21:28:09 -08:00
Mitchell Hashimoto
21c218e32f
Line up equal signs because I'm anal about it
2013-02-27 19:12:45 -08:00
Mitchell Hashimoto
54bcac2e7a
Only error if minor or major version of guest additions is different
2013-02-27 19:10:49 -08:00
Mitchell Hashimoto
5d82123da9
VirtualBox should use the new port forwarding collision detection stuff
2013-02-26 13:38:00 -08:00
John Barney
416a765417
Removing extra file
2013-02-10 01:43:49 -08:00
John Barney
52156d7c06
Solved bug with spaces in paths causing errors
2013-02-10 01:41:15 -08:00
John Barney
cea8c5dafd
Whitespace issue fixed
2013-02-09 19:42:04 -08:00
John Barney
73eb86bad0
Adding Cygwin detection, and fixing pathing issue in VirtualBox driver under Cygwin
2013-02-09 19:36:56 -08:00
Mitchell Hashimoto
6afb4326fa
Move NFS to a built-in middleware
2013-02-08 15:34:04 -08:00
Mitchell Hashimoto
a76556f3eb
Fix missing translation error in set_name
2013-02-08 15:17:50 -08:00
Mitchell Hashimoto
165dd63f78
New HandleBoxUrl built-in middleware to handlet the "box_url" config
2013-02-01 11:31:08 -08:00
Mitchell Hashimoto
6d002eb4c1
Fix a little logging typo
2013-02-01 10:51:53 -08:00
Mitchell Hashimoto
1392d9b4a5
Detect if a VM name is already taken for VirtualBox
2013-01-30 23:22:45 -08:00
Mitchell Hashimoto
4fa194899d
VirtualBox config: "name" to set the VM name [GH-1126]
2013-01-30 23:03:21 -08:00
Mitchell Hashimoto
9d2f26604e
Properly handle paused VirtualBox VMs [GH-1184]
2013-01-30 22:47:45 -08:00
Mitchell Hashimoto
76ca35a095
Sanitize folder names for default virtualbox name [GH-1223]
2013-01-30 22:17:10 -08:00
Mitchell Hashimoto
f713082280
auto_nat_dns_proxy VirtualBox provider config option [GH-1313]
...
When set to false, Vagrant will no longer try to automatically manage
NAT DNS proxy settings with VirtualBox.
2013-01-30 21:03:02 -08:00
Mitchell Hashimoto
f9a843ddd0
Fix hostonly network adapter IP for VirtualBox
2013-01-30 10:52:49 -08:00
Mitchell Hashimoto
d26aea142e
NFS properly detects hostonly network for VirtualBox
2013-01-30 10:43:53 -08:00
Mitchell Hashimoto
7eec127704
Support refreshing the machine cache
2013-01-30 10:37:40 -08:00
Mitchell Hashimoto
64042a5d35
Downloading the box_url component works again
2013-01-30 10:24:47 -08:00
Mitchell Hashimoto
ca0af2866e
Change output to not include the name
2013-01-23 09:45:56 -08:00
Mitchell Hashimoto
9cb86706b8
Make all the VirtualBox middleware aware of synced folders
2013-01-23 09:42:19 -08:00
Mitchell Hashimoto
31448c4cd4
Use the new GracefulHalt built-in for VirtualBox
2013-01-22 12:07:37 -08:00
Mitchell Hashimoto
d5c5c4f523
Convert all VirtualBox provider internals to use new state API
2013-01-21 11:38:37 -06:00
Mitchell Hashimoto
7f55d5eac8
Builtin: ConfigValidate will validate your configuration
2013-01-18 13:26:14 -08:00
Mitchell Hashimoto
84c45a854c
Remove the ProvisionerCLeanup action from VirtualBox
2013-01-13 16:03:34 -08:00
Mitchell Hashimoto
212e634c3b
Make Provision a built-in action.
...
This allows other providers to just use it.
2013-01-12 16:22:37 -08:00
Mitchell Hashimoto
48eaa93745
Raise proper error if there aren't any NIC slots available
2013-01-11 15:57:08 -08:00
Mitchell Hashimoto
102e8f23d6
Use scoped hash overrides for high-level config
2013-01-11 15:50:09 -08:00
Mitchell Hashimoto
ccc4da0d32
Remove the old networking code
2013-01-11 15:23:20 -08:00
Mitchell Hashimoto
48995f6036
Support mac address and nic_type for host only networks
2013-01-11 15:22:55 -08:00
Mitchell Hashimoto
d09dc91d1b
Add support for bridged networks again
2013-01-11 15:21:09 -08:00
Mitchell Hashimoto
37e158c9b2
Configure networks on the VM
2013-01-11 15:06:38 -08:00
Mitchell Hashimoto
da7f227fff
Forwarded ports use the new high-level configuration
2013-01-11 14:51:49 -08:00
Mitchell Hashimoto
7e5f175d2c
Check port collisions now uses the new high-level networking
2013-01-11 14:44:27 -08:00
Mitchell Hashimoto
2d8f9baf7f
New Network VirtualBox middleware to handle the changes.
...
Note this is a WIP (hence committed on a branch)
2013-01-11 14:16:00 -08:00
Mitchell Hashimoto
2d3c0b7148
VirtualBox forwarding port uses new `network` calls
2013-01-04 16:22:38 -10:00
Mitchell Hashimoto
54a2f6b89e
Change boot_mode to a provider config `gui`.
...
OLD:
config.vm.boot_mode = :gui
NEW:
config.vm.provider :virtualbox do |vb|
vb.gui = true
end
2012-12-25 09:00:06 -08:00
Mitchell Hashimoto
6478139cee
Move config.vm.customize to VirtualBox specific option
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto
66849fda20
When recovering on import and destroying, force it
2012-12-23 16:29:25 -08:00