Chris Roberts
b8f5752a82
Update VM import for VirtualBox 6 driver
...
The dry run import with VirtualBox 6 no longer provides full paths
for disks. Extract base path from suggested settings file location
and use that to generate full path name using provided disk base
name.
2018-11-15 11:04:08 -08:00
Chris Roberts
efbf99c451
Merge pull request #10409 from chrisroberts/e-vbox-ssh-port-detect
...
Update VirtualBox driver ssh_port helper
2018-11-13 15:44:15 -08:00
Chris Roberts
7750d6182d
Merge pull request #10410 from chrisroberts/f-hyperv-net-typo
...
Fix typo in hyper-v network configuration detection script
2018-11-13 15:43:03 -08:00
Chris Roberts
8f49e05ad4
Merge pull request #10406 from chrisroberts/e-hyperv-destroy
...
Disable automatic checkpoints prior to VM removal
2018-11-13 15:22:11 -08:00
Chris Roberts
9dd137633a
Fix typo in hyper-v network configuration detection script
2018-11-13 15:11:04 -08:00
Chris Roberts
c7721f619b
Update VirtualBox driver ssh_port helper
...
Be more restrictive when matching the port forward used for
SSH. Allow matching simply on the guest port, but also include
extra matching criteria for cases where multiple results may
be returned.
2018-11-13 15:04:12 -08:00
Chris Roberts
0ea4dcdc6e
Disable automatic checkpoints prior to VM removal
2018-11-13 13:09:12 -08:00
Chris Roberts
83ed01869d
Ignore errors when generating new VM configuration
...
The default error action is to stop. When generating the initial
VM configuration during import, if the Compare-VM command fails
it results in a generic error message. Instead the error should
be ignored so the source VM can be inspected and a useful error
message can be returned to the user.
2018-11-13 12:21:17 -08:00
Chris Roberts
d8bbc5ce09
Add support for specifying the default NIC type used for guest adapters
...
Provides support for defining the NIC type used for any guest adapter
which does not define an adapter type. This is defaulted to "virtio".
2018-11-07 15:53:46 -08:00
Chris Roberts
9d728682c4
Add vbox provider driver for 6.0
2018-11-06 16:50:17 -08:00
Chris Roberts
de42681742
Inherit from common base since 5.1 driver has no changes
2018-11-06 16:50:17 -08:00
Brian Cain
bcb6bf8acd
Merge pull request #10347 from briancain/add-timeout-for-ssh-info-hyperv
...
Fixes #10229 : Add proper reboot capability for Windows guests
2018-11-06 09:25:36 -08:00
Chris Roberts
d5f3600c4b
Merge pull request #10366 from chrisroberts/f-hyperv-vlan
...
Remove module loading from vlan script
2018-11-05 12:53:33 -08:00
Chris Roberts
5add5c24fe
Show formatted error message with address and netmask
2018-11-02 15:03:22 -07:00
Mikhail Zholobov
d9d081199c
action/network: Validate IP settings, show human-readable error
2018-11-02 22:29:19 +01:00
Mikhail Zholobov
a02aaa3195
action/network: Refactor the calculation of host-only adapter IP and DHCP settings
2018-11-02 22:28:49 +01:00
Chris Roberts
1ece44ca84
Remove module loading from vlan script
2018-11-02 10:42:28 -07:00
Brian Cain
54c8ebc31a
Fixes #10229 : Add timeout for changing hostname on windows
...
Prior to this commit, if Windows was slow to reboot, Vagrant would fail
to find the right IP address to upload the wait_for_reboot script to.
This commit fixes this race condition by adding a timeout to ensure that
Vagrant can retry. It also properly catches an exception in the winrm
ready? method for checking if a guest is properly ready for
communications.
2018-11-02 09:23:00 -07:00
Brian Cain
580bcaebb0
Merge pull request #10311 from briancain/DOCKER-VM-FOLDER-MOUNT
...
Deterministic host VM synced folder location for Docker provider
2018-10-24 16:19:41 -07:00
Brian Cain
7c06950e43
Ensure true or false for automount option
2018-10-23 09:00:55 -07:00
Brian Cain
6d0dfb2690
Fixes #10016 : Add `automount` flag if specified with synced_folder
...
This commit adds a new option to virtualbox synced_folders called
`automount`, where if set to true, will supply the `--automount` flag to
virtualbox.
2018-10-22 15:45:32 -07:00
Brian Cain
94bb50fa7e
Add test for syncing folders with docker provider
2018-10-17 14:14:27 -07:00
Martin Jonas
238338d803
Deterministic host VM synced folder location for Docker provider to prevent broken sync after host VM shutdown
...
Fix for #10282
2018-10-17 11:28:24 -07:00
Chris Roberts
080dd748ef
Merge pull request #10265 from chrisroberts/f-win-chktyp
...
Only configure CheckpointType if available to be configured.
2018-10-09 14:47:15 -07:00
Chris Roberts
88469d99f7
Only configure CheckpointType if available to be configured.
2018-10-04 15:24:05 -07:00
Chris Roberts
9c1ab2bd9f
Wrap automatic checkpoint enable to prevent inadvertent execution
2018-10-04 15:16:58 -07:00
Chris Roberts
85dc0ebec9
Allow automatic mac address assignment with virtuabox provider
2018-10-01 11:05:28 -07:00
Brian Cain
4612619dc4
Fixup docker config update
2018-09-19 10:52:59 -07:00
Oleksiy Protas
166fe374b6
More explicit logging and 'dockerfile' option support
2018-09-19 10:25:37 -07:00
Oleksiy Protas
cbc69f5158
Build from git operation for docker
2018-09-19 10:24:09 -07:00
Oleksiy Protas
de6a1794c7
Config, validation and test
2018-09-19 10:24:09 -07:00
Oleksiy Protas
8d1b5fc1c9
Docu changes for building Docker images from git
2018-09-19 10:24:05 -07:00
Chris Roberts
1f74aedeaa
Check for automatic checkpoint support before configuring
...
The AutomaticCheckpointsEnabled option may not always be available
depending on the version in use. Check for support before applying
the configured value. If automatic checkpoints are to be enabled
and support is not available, force an error.
2018-09-05 13:37:45 -07:00
Brian Cain
c2cff0dc07
Merge pull request #10100 from briancain/DOCKER-TOOLBOX
...
Convert windows paths for volume mounts on docker driver
2018-08-17 15:08:59 -07:00
Brian Cain
5d2d784ae7
( #9085 ) - Add test for converting windows paths
...
This commit adds a test for checking that a windows path for mounting a
volume in a container is properly converted into something that's
usable.
2018-08-08 10:30:04 -07:00
Chris Roberts
de284a9056
Merge pull request #10079 from chrisroberts/f-win-virt-ext
...
Enable ExposeVirtualizationExtensions only when available
2018-07-31 13:54:55 -07:00
Chris Roberts
9c149ba8b1
Only enable ExposeVirtualizationExtensions if available within Hyper-V version
2018-07-31 13:33:41 -07:00
Cédric Félizard
f53238d253
Skip link-local addresses when fixing IPv6 route
...
This occurs with a Linux host when a link-local address is configured
for vboxnet0 (which is the default for VirtualBox 5.2.6).
`connect': Invalid argument - connect(2) for "fe80::ffff:ffff:ffff:ffff" port 80 (Errno::EINVAL)
2018-07-30 15:00:35 -07:00
Matthew Olenik
428eb3ed93
Support Docker volume consistency for synced folders
...
Adds the `docker_consistency` option, which sets the Docker volume
consistency level. This can be used to greatly improved synced folder
performance, especially on macOS.
See for details: moby/moby#31047
2018-07-27 15:16:39 -07:00
Chris Roberts
110600970a
Merge pull request #10000 from chrisroberts/f-hyperv-access-localized
...
Fix Hyper-V access check
2018-07-18 16:39:54 -07:00
Chris Roberts
8aa74a03a0
Differentiate checkpoints and automatic checkpoints
...
Provide separate configuration settings for enabling/disabling
checkpoints and automatic checkpoints with Hyper-V provider.
2018-07-13 15:23:09 -07:00
Chris Roberts
cf29085d33
Fix root directory generation on failed access
2018-07-06 16:27:52 -07:00
Chris Roberts
15dacc80c0
Update ACL check to use identifier to prevent localization errors
2018-07-06 16:25:05 -07:00
Chris Roberts
a9bc0bb800
Do not provision and configure when state is saved
2018-07-06 15:49:36 -07:00
Chris Roberts
630bc6540d
Enable standard checkpoint on VM for snapshot if disabled
2018-07-06 15:29:07 -07:00
Chris Roberts
101fc447ec
Add Hyper-V access check on data directory
2018-06-18 15:36:45 -07:00
Chris Roberts
941dd77a90
Force string conversion on paths
2018-06-18 09:53:06 -07:00
Chris Roberts
fe8fe55d1f
Delete and re-create data directory when destroying guest
2018-06-18 09:09:27 -07:00
Chris Roberts
a8abb6898c
Fix PowerShell cmdlet name for clones
2018-06-18 09:09:01 -07:00
Chris Roberts
1e5c8bf275
Add check for WSL when determining if Hyper-V is usable
2018-06-18 09:08:35 -07:00
Chris Roberts
d84f29f12c
Just provide module path as conversion is done earlier
2018-06-18 09:08:05 -07:00
Chris Roberts
55aaa1d258
Update path usages to support Hyper-V provider access from WSL
2018-06-15 09:03:18 -07:00
Chris Roberts
8fbf27772a
Always ensure full path to configuration file on import
2018-06-15 07:48:14 -07:00
Chris Roberts
694104b005
Attempt to provide helper error message on failed VM import
...
When importing a Hyper-V VM fails, attempt to manually build
a system definition and inspect the result to determine cause
of the failure.
2018-06-14 16:40:37 -07:00
Chris Roberts
3919455f08
Merge pull request #9932 from chrisroberts/e-hyperv-maxmem-chk
...
Validate maxmemory setting within Hyper-V provider
2018-06-13 14:52:09 -07:00
Chris Roberts
4d3f5d33c6
Merge pull request #9925 from chrisroberts/u-powershelling
...
Misc. PowerShell cleanup
2018-06-13 14:51:43 -07:00
Chris Roberts
9482f351fc
Validate maxmemory setting within Hyper-V provider
...
Forces an error if maxmemory value is less than the configured
minimum or startup memory.
Fixes #9477
2018-06-13 13:27:11 -07:00
Chris Roberts
1554f447f2
Disconnect all configured network adapters
...
When importing a Hyper-V VM ensure all adapters are disconnected from
switches that were used when the box was built.
2018-06-13 07:59:56 -07:00
Chris Roberts
57842d7269
Update powershell messaging functions to not include second `-` character.
2018-06-12 16:47:47 -07:00
Tony Apuzzo
5ac8bb8620
Correct typo, $Enable instead of $enabled.
2018-06-07 15:00:09 -06:00
Chris Roberts
73c09de1a9
Add deprecation warning when `differencing_disk` option is used
2018-05-29 10:21:06 -07:00
Chris Roberts
c238dc0a35
Include machine name when raising invalid box errors
2018-05-25 16:43:17 -07:00
Chris Roberts
35d8920325
Case insensitive switch check and only write sentinel file if not found
2018-05-25 15:11:58 -07:00
Chris Roberts
2bd6f537ef
Clean up syntax and force string type when setting integration option
2018-05-25 10:11:05 -07:00
Chris Roberts
d2bc634623
Add vm_integration_services validation
2018-05-24 16:55:35 -07:00
Chris Roberts
52bae21933
Remove unused PowerShell scripts
2018-05-24 15:33:36 -07:00
Chris Roberts
e6457d5061
Overhaul the Hyper-V provider
2018-05-24 14:43:44 -07:00
Chris Roberts
2730fe7ec9
Update script parameter name in option to switchid
...
Fixes #9774
2018-05-04 08:55:18 -07:00
Chris Roberts
02b9d625d3
Merge pull request #9759 from StefanScherer/wsl-remove-raise-vboxmanage-missing
...
Allow other providers in WSL
2018-05-03 12:42:16 -07:00
Brian Cain
e1129d27f9
Merge pull request #9761 from briancain/FIX-DOCKER-EXEC
...
Use Util::SafeExec if docker-exec is run with `-t` option
2018-05-02 15:47:46 -07:00
Brian Cain
79e535a7ee
( #9622 ) Use SafeExec for docker-exec
...
This commit uses the internal helper SafeExec rather than using the
Kernel class directly. It also adds a test to ensure that if the `-t`
option is used, it will call SafeExec.
2018-05-02 14:23:50 -07:00
Stefan Scherer
f14e8bcbf2
Allow other providers in WSL
2018-05-02 22:36:17 +02:00
Chris Roberts
fbcd86993b
Merge pull request #9737 from chrisroberts/e-hyper-v-addr
...
Check neighbors for valid guest address when default lookup fails
2018-05-02 08:54:57 -07:00
Chris Roberts
9f08337ce1
Ignore errors on neighbor lookup and validate result
2018-04-30 17:39:27 -07:00
Chris Roberts
e47e1df228
Reference Hyper-V switch by ID instead of name
...
Keep track of selected Hyper-V switch using the ID instead of name
to prevent any encoding issues that may occur switching between
PowerShell and Ruby. With the IDs staying consistent, the switch
name can be fetched from the provided ID.
Fixes #9679 #8794 #9451
2018-04-27 16:52:16 -07:00
Chris Roberts
d15ff38d5c
Check neighbors for valid guest address when default lookup fails
...
If the guest address is unavailable via Hyper-V inspection, extract
MAC address of network adapters and check neighbor information for
any currently matching known address.
2018-04-26 12:53:52 -07:00
Isaac Freeman
de71626922
docker: use Kernel.system for docker-exec when -t is given
2018-04-18 17:50:47 -04:00
Brian Cain
4db3d49157
Improve network collision error message
...
This commit provides a bit more information when a non-hostonly network
collides with a host network.
2018-04-12 14:16:13 -07:00
Josh Soref
1a5ddea9f4
Spelling fixes
...
* account
* addresses
* administrator
* afterwards
* because
* bridgeable
* capabilities
* capability
* checksum
* configuration
* configuration for
* configure
* criteria
* delimited
* delivered
* derivatives
* description
* detect
* directory
* display
* downloading
* during
* electric
* enabling
* encountered
* equivalent
* executable
* executed
* hashicorp
* hypervisor
* hyphens
* implementation
* incorporate
* inheritance
* initialize
* instance
* instead
* interactions
* invocable
* machine
* maximum
* message
* mounting
* overridden
* overwrite
* paramiko
* preparing
* provides
* provisioning
* recursively
* requested
* resetting
* retryable
* running
* satisfied
* searching
* sometimes
* specified
* successfully
* synced folders
* unauthorized
* underlying
* userprofile
* vagrant
* vagrantfile
* variable
* various
* version
* virtual
* windows
2018-03-14 14:41:04 +00:00
Chris Roberts
51232f9a03
When matching hostonly adapter name, force common types
...
Force a string type for comparison to prevent false positives when
the name is unset (resulting in a nil value).
2018-03-09 14:15:31 -08:00
mihab
03178bbe04
Fixes #9085 : Cannot `up` a machine with Docker Toolbox and Git Bash
2018-03-01 21:38:39 +01:00
Brian Cain
ac37b67eca
Merge pull request #9518 from briancain/fix-package-cmd-wsl
...
Convert to windows path if on WSL during vbox export
2018-02-28 08:07:56 -08:00
Brian Cain
73a5a5a8c9
( #9059 ) Convert to windows path if on WSL during vbox export
...
Prior to this commit, the incorrect path was used when determining where
to export an ovf file during the `vagrant package` step. This commit
updates that by checking if vagrant is within WSL, and if so, convert
the path to a proper windows path to be used during the export.
Fixes #9059
2018-02-27 16:02:25 -08:00
Brian Cain
0b92123163
Merge pull request #9507 from briancain/fix-hyper-v-check
...
Fix Hyper-v and VirtualBox check
2018-02-26 14:54:51 -08:00
Brian Cain
007e6f49aa
Merge pull request #9302 from eyJhb/master
...
Fixed hostonly matching not respecting :name argument
2018-02-26 14:50:45 -08:00
Brian Cain
f2954a64c6
Fix Hyper-v and VirtualBox check
...
Prior to this commit, the hyper-v and virtualbox system crash check
existed within the initialize function of the virtualbox provider. That
caused an issue when running with other providers, because the
virtualbox provider still gets initialized even if not used. This commit
changes that by placing the check inside of one of the virtualbox
provider actions that checks if virtualbox is installed and ready to
use. This action is action is used by the main vbox provider actions,
and should not be called when other providers are being used with
Vagrant.
2018-02-23 11:24:30 -08:00
Brian Cain
e8708232a5
( #9258 ) Exit if Hyper-V is enabled and VirtualBox provider is used
...
This commit adds a function on windows for the VirtualBox provider to
check if Hyper-V is enabled. If so, exit and display a warning to the
user that going forward will result in a system crash.
2018-02-08 11:20:41 -08:00
Chris Roberts
780673c6fe
Add warning message for VirtualBox shared folders option.
...
Display warning to user about the VirtualBox SharedFoldersEnableSymlinksCreate
option with link to VirtualBox documentation and instructions on how the
setting can be disabled.
2018-01-20 06:51:59 -08:00
Chris Roberts
b0fc6a06a1
Merge pull request #9294 from chrisroberts/e-smb
...
SMB synced folders enhancements
2018-01-12 15:02:08 -08:00
Brian Cain
b16ca2e384
Introduce flag for SharedFoldersEnableSymlinksCreate
...
Prior to this commit, the virtualbox synced folder option
`SharedFoldersEnableSymlinksCreate` was always enabled. This commit
introduces a config option and an environment variable which allows
users to configure the option globally or per synced_folder in their
Vagrantfile.
2018-01-09 14:33:24 -08:00
Brian Cain
9c4ef88b88
Merge pull request #8863 from michaeltlombardi/FullyQualifyHyperVCmdlets
...
Ensure Hyper-V cmdlets are fully qualified
2018-01-04 10:27:09 -08:00
Chris Roberts
572f341697
Include synced folder cleanup action within hyperv provider
2018-01-03 10:29:45 -08:00
eyJhb
12a6832151
Fixed hostonly matching not respecting :name argument
2017-12-25 20:49:35 +01:00
Michael T Lombardi
9e1d05641f
Ensure Hyper-V cmdlets are fully qualified
...
+ This disambuguates calls to the Hyper-V functions for the Hyper-V provider.
The ambiguity of some commands - such as `Get-VM` - causes the Hyper-V provider
to fail on systems where VMware PowerCLI is installed. This change ensures that
all calls to Hyper-V specific cmdlets or functions are prepended by `Hyper-V\`.
This ensures the correct cmdlet calls are being made.
+ Resolves #8862 .
2017-12-15 08:30:38 -06:00
Zachary Flower
4a4183398b
Add a clean error message for invalid IP addresses
2017-12-14 14:57:21 -07:00
Andrew Hardy
ad0a47bedf
Removed rogue $ from string in hyperv import.rb
2017-12-10 11:09:49 +10:00
Chris Roberts
fc7d2a3097
Merge pull request #8921 from lookfwd/fix_8608
...
fix for issue #8608/Windows hosts
2017-10-23 16:58:39 -07:00
Brian Cain
9d360d2b21
Merge pull request #9000 from bbrala/bug-hyperv-auto-stop-action
...
Auto stop action is configured wrongly
2017-10-04 09:12:09 -07:00
Brian Cain
83310f8a56
Merge pull request #8955 from jehiah/virtualbox52_8955
...
Virtualbox 5.2 support
2017-10-03 13:25:39 -07:00
Erik Lattimore
28a92850ab
Allow synced folders to contain spaces in the guest path
...
It should be valid to allow paths with spaces for the synced folder
guest path but since the guest path is used to generate the ID (if one
isn't provided), this will err out in VirtualBox because it doesn't
allow spaces for the --name argument. We should simply convert ' ' to
'_' as we do with other special characters.
2017-09-29 17:24:12 -04:00