Commit Graph

915 Commits

Author SHA1 Message Date
Chris Roberts 147b5c653e Check verify_host_key for falsey or :never values when generating ssh config 2018-09-05 13:44:07 -07:00
Sebastian Reuße 3efdc8960c vagrant init: Support VAGRANT_DEFAULT_TEMPLATE 2018-09-04 10:48:16 +02:00
Brian Cain 11c619bff6
Merge pull request #10092 from jmaness/patch-1
[#10098] Filter out empty strings and loopback interfaces when constructing the list of network interfaces
2018-08-31 10:03:49 -07:00
Chris Roberts c4084a6387 Extract smblist information based on position
Since we are no longer extracting information based on key value due
to localization issues, use start and end locations to extract data.
This prevents errors when extra information is included like Scope.
2018-08-30 10:58:56 -07:00
Chris Roberts d48b95ffaf Check :verify_host_key value for :never or if falsey 2018-08-24 14:11:30 -07:00
Brian Cain b1357a2f60
Merge pull request #10123 from briancain/add-force-flag-reload
Add `--force` flag to reload command
2018-08-17 15:18:36 -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 e5364e7798
Only write box metadata if guest has box object
Prior to this commit, providers like docker would fail to be brought up
because they do not store box objects like virtualbox or vmware
provider guests. This commit fixes that by making sure the box object
exists before writing the metadata file to disk.
2018-08-17 09:58:24 -07:00
Brian Cain c65a0a9054
(#9677) Add `--force` flag to reload command
This commit introduces the `--force` flag to the reload command. This
change means that if the flag is included, the halt step of the reload
will forcefully shutdown the virtual machine rather than a graceful
halt.
2018-08-16 13:57:13 -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 2c4c14c57c
Merge pull request #10084 from chrisroberts/f-host-nfs-sudo
Fix sudo usage in exports write within linux host cap
2018-08-08 08:28:49 -07:00
Jeremy Maness a73fb9c139 - Filter out empty strings when constructing the list of network interfaces
- Sort interfaces properly whose name does not contain a numeric suffix (e.g. lo)
- Filter out loopback interfaces
2018-08-04 21:16:51 -04:00
Chris Roberts 00b783a6a5 Lookup latest available installed box if required on update
When performing a box update and the box version has been updated
to be different than the installed version, perform a lookup for
the latest available installed box to allow the update command to
continue successfully
2018-08-02 16:12:10 -07:00
Chris Roberts 051c7a7823 Fix sudo usage in exports write within linux host cap
Only move new exports file to destination without sudo when the
file has write access and the directory has write access. Always
use sudo when changing file ownership.
2018-08-02 15:13:27 -07:00
Chris Roberts 6c1a9dc58e Store box metadata of active guest
When a guest is created, the box metadata information is stored in the
machine data directory. This allows modifications to happen to the
Vagrantfile definition of the box in use (box name change, box version
change, etc) while still allowing the Machine instance of an active
guest successfully load the box currently backing it.
2018-08-02 11:01:36 -07:00
Chris Roberts 09c8e2800c
Merge pull request #10077 from chrisroberts/e-ipv6-link-local
Skip link-local addresses when fixing IPv6 route
2018-07-31 13:52:50 -07:00
Chris Roberts e3e68c9b51
Merge pull request #10076 from chrisroberts/e-winrm-warn
Add warning when vagrant-winrm is found
2018-07-31 13:51:23 -07:00
Chris Roberts fa9bda9554
Merge pull request #10066 from chrisroberts/e-net-ssh-update
Update net-ssh constraint
2018-07-31 13:48:49 -07:00
Chris Roberts 87ee57d94a Add test coverage on link-local skip for ipv6 in vbox 2018-07-30 15:16:50 -07:00
Chris Roberts cd7215ab13 Add warning when vagrant-winrm is found 2018-07-30 13:27:20 -07:00
Chris Roberts 57e0bb5105 Update net-ssh constraint
Also includes mapping of verify_host_key value to new values
introduced in 5.0.0
2018-07-27 16:30:06 -07:00
Brian Cain a3ef471cb0
(#9811) Add test for volume consistency and improve documentation 2018-07-27 15:16:39 -07:00
Chris Roberts c0b871794c
Merge pull request #9926 from Telekom-PD/centos_75_nmcli_hang
Fix hang at nmcli call on CentOS 7.5 when ssh.pty is enabled
2018-07-27 12:11:30 -07:00
Chris Roberts f9e994a15d Match package install string and fix test name 2018-07-27 10:26:10 -07:00
Chris Roberts 584b288b8f
Merge pull request #9935 from whitel/fix-for-#9878
Fixes the change in packaging for nfs in f28 (#9878)
2018-07-27 10:22:42 -07:00
Chris Roberts a993cbce4e
Merge pull request #10037 from chrisroberts/e-vagrant-plugins-local
Define project specific plugins
2018-07-27 09:57:41 -07:00
Chris Roberts 4d4e707b73
Merge pull request #9889 from treytabner/debian-systemd-networkd
Increase priority and support multiple networks for Debian with systemd-networkd
2018-07-19 14:13:46 -07:00
Chris Roberts 27a441f0bd
Merge pull request #10001 from chrisroberts/e-wsl-valid-sync
Disable synced folders on non-DrvFs
2018-07-18 16:41:16 -07:00
Chris Roberts 10faa599e7
Merge pull request #9999 from chrisroberts/f-hyper-v-snaps
Enable checkpoints for snapshots if disabled
2018-07-18 16:38:32 -07:00
Chris Roberts 14edb8f423 Add local only and global only flags to plugin expunge command 2018-07-18 13:43:52 -07:00
Chris Roberts 8baf7ced38 Use path of state file, not state file itself 2018-07-17 15:35:25 -07:00
Chris Roberts 3223737734 Use env_local consistently internally 2018-07-17 14:49:41 -07:00
Chris Roberts 84c0aafe71 Support non-interactive local plugin install 2018-07-17 14:49:41 -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 859d48d5f5 Restrict synced folder access to DrvFs file systems only within WSL 2018-07-06 16:58:12 -07:00
Chris Roberts ac8ad59823 Provide custom error when attempting to push too many files with FTP
When the configured directory for FTP push has too many files, it will
generate an exception and fail due to a stack overflow. When this happens
just rescue out the exception and re-raise a custom error to provide
some context to the user on the actual problem.
2018-06-26 08:28:01 -07:00
Chris Roberts ed2af17e45 Add delete vm action checks for data directory removal and creation 2018-06-18 10:18:05 -07:00
Chris Roberts ea4e60247d Check for module_path entry instead of custom environment variable 2018-06-18 09:53:22 -07:00
Chris Roberts 835c500892 Add WSL check on usable? test for provider 2018-06-18 09:50:56 -07:00
langdon f0b9d025e4 Fixes the change in packaging for nfs in f28 (#9878). However, removed part of the unit test which will be very difficult to fix (I expect). The unit test is still doing a good test that nfs and rpcbind work though. If you go far enough back, you need to bury the error out too. 2018-06-18 12:16:23 -04:00
Trey Tabner c218267436
Merge branch 'master' into debian-systemd-networkd 2018-06-13 12:49:50 -05:00
Simon Baatz fa34f4d2af Fix hang at nmcli call on CentOS 7.5 when ssh.pty is enabled
`vagrant up` may hang at the "Configuring and enabling network
interfaces..." step when private networks and PTY allocation for SSH
are used.

The newer version of `nmcli` that is part of CentOS now will open a
pager (i.e. `less`) for certain commands if it finds a tty. This
causes the invocations of `nmcli` in `guest_inspection.rb` to hang.

`nmcli` disables the use of a pager in 'terse' (`-t`) output mode,
while still returning enough information for the uses in
`guest_inspection.rb`.
2018-06-13 11:10:18 +02:00
Chris Roberts ee5656da37
Merge pull request #9923 from chrisroberts/f-win-perms
Update SSH key file permissions handling
2018-06-12 16:45:39 -07:00
Chris Roberts 7e0cc99ffd Include flag check on ssh cap test 2018-06-12 16:30:51 -07:00
Chris Roberts 4bf8fe1463
Merge pull request #9917 from chrisroberts/f-smb-garbage
Fix SMB information generation when using net share
2018-06-12 16:24:54 -07:00
Chris Roberts 2628d93370 Rename method name when checking capability 2018-06-12 14:13:10 -07:00
Chris Roberts 42cbae1e90 Add test coverage on ssh capabilities 2018-06-12 11:57:14 -07:00
Chris Roberts ef5eca16d2 Fix SMB information generation when using net share
Adds the final line of output to tests and properly simulates
failure. Fix with type casting to prevent calling methods on
nil and drop the final entry as it's not valid.

Fixes #9806
2018-06-11 12:58:35 -07:00
Chris Roberts 7df6ea5a30 Fix Chef apply provisioner to not set node_name
The base chef provisioner class will set the node name automatically
if not provided in the configuration. Since the chef apply provisioner
does not provide a node_name option, setting it will invalidate the
configuration. This checks for the node name before attempting to
use it.

Fixes #9901
2018-06-11 10:35:52 -07:00
Chris Roberts 52c174da75
Merge pull request #9833 from afischer-opentext-com/9174
#9174 Remove masterless? config attribute
2018-06-08 16:18:06 -07:00
Trey Tabner 9197036499
The restart command was moved to after the loop 2018-05-30 11:00:58 -05:00
Chris Roberts 1becae50a5 Include test coverage on provider option deprecation 2018-05-29 10:25:48 -07:00
Chris Roberts c238dc0a35 Include machine name when raising invalid box errors 2018-05-25 16:43:17 -07:00
Chris Roberts eba552ea73 Add more test coverage on Hyper-V Provider actions 2018-05-25 16:23:45 -07:00
Chris Roberts d24b432273 Add Hyper-V provider actions test coverage 2018-05-25 15:12:39 -07:00
Chris Roberts 6c731fb86c Add test coverage on hyper-v provider driver 2018-05-25 10:11:44 -07:00
Chris Roberts beacb5bada Add test coverage for all hyper-v configuration options 2018-05-24 16:56:46 -07:00
Brian Cain c6cd8f1e9a
Merge pull request #9829 from briancain/add-suspend-global
Introduce flag for suspending all machines
2018-05-11 16:41:24 -07:00
Brian Cain 5ca382727d
Raise error if argument is provided with `--all-global` flag
This commit raises an error if additional arguments are provided to the
suspend command when the `--all-global` flag is used.
2018-05-11 15:43:14 -07:00
Brian Cain aa5687cd14
(#7221) Introduce flag for suspending all machines
This commit introduces a new flag to the suspend command,
`--all-global`, which will suepend all vms both locally and globally.
2018-05-11 10:15:48 -07:00
Alexander Fischer 0b87184ad4
#9174 Remove masterless? config attribute
Remove the @config.masterless? attribute as there is no benefit from it
2018-05-11 08:49:57 +02:00
Brian Cain 728a9135c8
(#9726) Update netplan config generation to detect NetworkManager
Prior to this commit, when setting up private networks on Ubuntu using
netplan, it assumed that the guest was using systemd, the suggested
default tool to manage networking, and did not take into account devices
that could be managed with NetworkManager. This commit fixes that by
looking at the devices managed on the guest to see if its managed by
NetworkManager, and if so, use that renderer for netplan instead of
networkd.
2018-05-10 13:02:05 -07:00
Chris Yungmann 7fb9d3eb4f propagate unset guestpath 2018-05-08 22:51:30 -05:00
Chris Roberts 3bcdd2901b
Merge pull request #9800 from chrisroberts/e-vbox-builtin
Support VirtualBox shared folders using builtin kernel module
2018-05-07 13:24:50 -07:00
Chris Roberts c571249000 Support VirtualBox shared folders using builtin kernel module
Check error output if initial mount command fails to determine if
the builtin module should be used for mounting instead.
2018-05-07 13:02:19 -07:00
Chris Roberts 7a4150dc3f Use net.exe to fetch SMB shares when Get-SmbShare is not available
Fixes #9547
2018-05-04 14:07:33 -07:00
Chris Roberts 40ae8aa38d
Merge pull request #9769 from chrisroberts/e-key-perms
Log error and proceed when private key permissions fail
2018-05-03 12:34:50 -07:00
Chris Roberts f0e232d739 Log error and proceed when private key permissions fail
Fixes #9765
2018-05-03 11:48:57 -07:00
Chris Roberts 8b398b66a3 Trim drive letter prefix from path
Fixes #9764
2018-05-03 09:28:19 -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
Brian Cain 6fc2d9d82d
Merge pull request #9754 from briancain/DOCKER-PROV-WINDOWS
Update docker provisioner for windows, fix command filter behavior for `rm`
2018-05-01 13:46:33 -07:00
Brian Cain 93356d4635
Update rm filters to test for path
This commit updates the rm filter for winrm to operate like how rm works
in bash. If a folder doesn't exist, the command returns 0 rather than 1.
2018-05-01 13:35:45 -07:00
Joe Pleso c882d888a7
Add docker cap to windows to detect daemon and fix whitespace 2018-04-27 09:45:24 -07:00
Chris Roberts 97f5822dee Ignore URLs which cannot be parsed in the authentication middleware
Fixes #9725
2018-04-26 15:08:06 -07:00
Chris Roberts d2ec4d9312
Merge pull request #9734 from chrisroberts/f-win-smb-mount
Default SMB version to 2.0 for linux guest mounts on Windows hosts
2018-04-26 14:48:01 -07:00
Chris Roberts 40a1d2faf3 Default SMB version to 2.0 for linux guest mounts
Fixes #8959
2018-04-26 08:45:05 -07:00
Chris Roberts 5feb234665 Return original URL value when unmodified
Due to the behavior of URI.parse on Ruby < 2.5 returning the string
value of the parsed URI object may modify the original URL. Specifically
it will remove the `//` prefix characters from SMB paths. When no
host modifications are being made, always return the original value.

Fixes #9636
2018-04-25 16:21:21 -07:00
Brian Cain 5643ba0c7d
Merge pull request #9713 from briancain/vagrant-triggers-config
Integrate vagrant-triggers plugin functionality into core Vagrant
2018-04-24 11:35:04 -07:00
Brian Cain 7f004656db
(#9718) Properly finalize structured_facts config option
This commit sets the structured_facts option to nil if its still
UNSET_VALUE at the finalize step. This was causing a bug when the facter
config was set but was not using structured facts.
2018-04-23 14:23:59 -07:00
Brian Cain 0953287262
Relax only_on rspec tests
only_on can be either a string or regex
2018-04-20 10:51:38 -07:00
Brian Cain e7274f1b6c
Improve config rspec tests 2018-04-20 10:51:38 -07:00
Brian Cain 956ed004bb
Update trigger config merge function 2018-04-20 10:51:38 -07:00
Brian Cain 7dae1acd21
Add some "default" options to be validated 2018-04-20 10:51:38 -07:00
Brian Cain fc526a164a
Add basic create_trigger rspec test 2018-04-20 10:51:38 -07:00
Brian Cain e157362ace
Add run and run_remote expectations 2018-04-20 10:51:38 -07:00
Brian Cain 7b1b044e72
Check for default on_error behavior setting 2018-04-20 10:51:38 -07:00
Brian Cain 6cbb5d8e5d
Add unit tests for config, fix type change bug with map! 2018-04-20 10:51:38 -07:00
Brian Cain 3dec6869bb
Update trigger unit tests 2018-04-20 10:51:38 -07:00
Brian Cain 42419bbd49
Fix rspec tests 2018-04-20 10:51:38 -07:00
Brian Cain 6f00eb5679
Move trigger options into own plugin class 2018-04-20 10:51:38 -07:00
Brian Cain bb2f3b35b9
Add basic unit test 2018-04-20 10:51:38 -07:00
Brian Cain 9660951c89
Merge pull request #9490 from jzinn/solo-rb-cookbook-path
Improve Windows drive letter removal hack
2018-04-18 08:31:23 -07:00
Julian Zinn 269645f63d Improve Windows drive letter removal hack 2018-04-17 13:23:14 -07:00
Brian Cain 151095a3e9
Merge pull request #9420 from ryanwalder/salt-json
Add master_json_config & minion_json_config options to salt provisioner
2018-04-16 15:37:44 -07:00
Chris Roberts 5d7506afe3
Merge pull request #9676 from chrisroberts/e-win-file-perms
Update generated ssh private key file permissions on create
2018-04-10 14:56:28 -07:00
Chris Roberts b605da0ef5
Merge pull request #9673 from chrisroberts/f-win-paths-filter
Fix windows command filters
2018-04-10 14:44:32 -07:00
Chris Roberts 9731720773 Update generated ssh private key file permissions on create
This updates the permissions on the automatically generated private
key file to only be readable by the user. Includes support for file
permission modification on Windows platform.
2018-04-10 14:15:14 -07:00
Brian Cain f1de9821e1
Merge pull request #8099 from chrisroberts/windows/shared-folder-path
Fix virtualbox shared folders path
2018-04-10 09:16:06 -07:00
Chris Roberts ddfd86f3d1 Split with shellwords and quote paths in command filter
This uses shellwords to split the command in the command filter
inside the winrm communicator. Using shellwords properly handles
things like quoted paths. Path arguments are also quoted to
prevent issues with paths that include spaces.

Fixes #9390
2018-04-09 17:00:30 -07:00