1047 Commits

Author SHA1 Message Date
Brian Cain
773c4fff13 Fixup util/ssh and ansible/provisioner tests 2017-07-17 10:21:26 -07:00
Chris Roberts
78f5c29d12 Merge pull request #8762 from chrisroberts/fix/box-name-uri-parse
Prevent URI parse errors when checking box name
2017-07-07 11:51:23 -07:00
Chris Roberts
da1b5765c7 Prevent URI parse errors when checking box name
Fixes #8758
2017-07-07 11:43:16 -07:00
Chris Roberts
36a50f4d69 Allow a bit more time for process to get started 2017-07-07 11:26:32 -07:00
Chris Roberts
a55c169691 Merge pull request #8558 from agriffis/provider-priorities
RFC: VAGRANT_PREFERRED_PROVIDERS
2017-07-06 12:30:18 -07:00
Chris Roberts
954569d1fc Remove PATH based cygwin detection
Detecting cygwin via PATH contents can result in false positives
resulting in errors when using Vagrant on Windows outside of a
cygwin shell. Use environment based detection instead.
2017-07-03 14:40:27 -07:00
Chris Roberts
97715280c2 Deep merge plugin list with system plugins. Discard specifications correctly. 2017-06-27 19:05:30 -07:00
Brian Cain
c4eb18eb1a Merge pull request #8707 from briancain/disable-double-config-loading
Disable loading identical Vagrantfile twice from same dir
2017-06-22 13:55:19 -07:00
Brian Cain
774e19b152 Disable loading identical Vagrantfile twice from same dir
Prior to this commit, if a user set the env var VAGRANT_HOME to be the
same directory where the project home is, Vagrant would load that file
twice and merge its config. This caused various provisioner and other
provider blocks to unexpectedly run twice. This commit updates the
config loader to look and see if the `:root` and `:home` procs are
equal, and if so, removes the `:home` object so that it isn't loaded and
duplicated. This commit however does not prevent duplicate loading if an
identical Vagrantfile exists in the home and project dir if those
locations are different.
2017-06-22 09:04:21 -07:00
Brian Cain
d66122f84d Fixup util/ssh unit tests
This commit properly mocks out the ChildProcess library for testing the
`util/ssh` class when subprocess is enabled.
2017-06-20 16:43:11 -07:00
Brian Cain
1b4d7848bc Fix vagrant_cwd warnings
Prior to this commit, if a user ran a vagrant command within a subdir,
it would warn about the cwd changing which is not actually the case.
This commit adds an additional check to see if vagrant is being invoked
within a subdirectory so that it doesn't warn the user.
2017-06-19 13:05:26 -07:00
Brian Cain
b02f110cd8 (#7855) Introduce more ssh options for machines
This commit allows the user to configure two additional options that
were previously not configurable: Compression and DSAAuthentication.
Each config option is set as a boolean, and if left out of the config
will default to its previous behavior which is included and set to
"yes". If the user explicitly sets it to false, it will not be included
as an ssh option.
2017-06-15 16:29:53 -07:00
Brian Cain
43ae30cf9b Merge pull request #8651 from briancain/WARN-CWD-CHANGES
Warn about changes to cwd for every machine action
2017-06-07 11:46:57 -07:00
Brian Cain
79c7799fd9 Add basic unit test for CWD change warning 2017-06-06 08:38:03 -07:00
Fernando Seror
48b0e00368 Tests regarding warning whenever CWD changes 2017-06-05 13:25:30 -07:00
Brian Cain
1ade699936 (#6827) Introduce tty flag for ssh command execution
Prior to this commit, if a user ran the `vagrant ssh -c CMD` command, it
would not allow the user to configure pseudo-terminal allocation. This
commit introduces a -t flag for the `vagrant ssh` command which defaults
to true if not specified.
2017-06-02 17:32:02 -07:00
Brian Cain
f1d08aa629 (#7118) Handle box names that are URLs
Prior to this commit, if a user set a URL for the name of a box, vagrant
would not warn the user about using box_url instead. This would lead to
some difficult user experiences around the various box commands due to
the box name being a full URL. This commit introduces a warning to the
user and lets them know to instead use box_url.
2017-05-31 15:25:05 -07:00
Aron Griffis
3ec1f4e045
Add new tests for VAGRANT_PREFERRED_PROVIDERS 2017-05-03 08:19:29 -04:00
Chris Roberts
a8b2f78f59 Do not prefix Windows paths if UNC prefix already exists
While VirtualBox has commented that they do not support UNC remote
paths (but do for long paths) it seems that remote paths can work.
If user provides UNC path, allow it to be used as-is.

Fixes #7011
2017-04-20 16:33:38 -07:00
Chris Roberts
82ca8f8058 Support port checker methods which only accept the host port
When calling the port_checker an arity check is done to determine
if the helper accepts the host_ip and host_port or only the host_port.

Fixes #8423
2017-04-19 10:49:27 -07:00
Chris Roberts
5cd95b684f Use 127.0.0.1 for host IP when unset and 0.0.0.0 is not available 2017-03-22 16:31:46 -07:00
Chris Roberts
eed7b859ca Fix provision action for provisioners set to never.
This updates the behavior of the provision action to never run a provisioner
that is specified to "never" run unless it has been explicitly requested. Also
adds test coverage to the provision action.
2017-03-13 13:53:31 -07:00
Chris Roberts
b66446712c Start adding test coverage on port collision handling action 2017-03-09 10:28:41 -08:00
Chris Roberts
9d1ec938ef Merge pull request #8341 from chrisroberts/enhancement/prerelease
Support spec prerelease matching
2017-03-07 15:02:17 -08:00
Chris Roberts
c03ca851b1 Merge pull request #8327 from chrisroberts/plugins/local-path
Force path as preferred source on local install
2017-03-07 15:00:39 -08:00
Chris Roberts
abf38106c0 Add shared helper method to detect if running version is prerelease 2017-03-07 10:36:14 -08:00
Chris Roberts
68be1422f8 Add test coverage for box sorting
Provides test coverage for proper box sorting using BoxCollection#all
and BoxCollection#find.
2017-03-06 08:19:49 -08:00
Chris Roberts
8a9fa302f0 Removing timing issues from test coverage 2017-03-03 09:49:55 -08:00
Chris Roberts
e2acb5250a Add command deprecation helper module 2017-02-24 06:22:39 -08:00
Chris Roberts
ccdccf06b5 Merge pull request #8194 from chrisroberts/fix/curl-credentials
Scrub credentials from box URLs
2017-02-23 13:51:47 -08:00
Chris Roberts
74438cc495 Merge pull request #8196 from chrisroberts/fix/expand-vagrantfile-path
Allow VAGRANT_DOTFILE_PATH to be expanded as expected.
2017-02-23 13:33:07 -08:00
Chris Roberts
088829de9b Merge pull request #8270 from chrisroberts/enhancement/process-stop
Add new methods to Subprocess
2017-02-16 13:45:25 -08:00
Chris Roberts
e7e24ee853 Merge pull request #8248 from chrisroberts/fix/env-gems-path
Fix environment gems_path location
2017-02-08 14:18:41 -08:00
Chris Roberts
903428e569 Add Util::Subprocess#stop and Util::Subprocess#running? 2017-02-08 14:15:47 -08:00
Chris Roberts
959bdada82 Fix environment gems_path location 2017-02-01 12:43:16 -08:00
Chris Roberts
25a2bdd279 Prevent generating environment variables with invalid empty names 2017-01-12 15:12:41 -08:00
Chris Roberts
832c62f2aa Allow VAGRANT_DOTFILE_PATH to be expanded as expected.
This allows custom paths that include special characters like `~`
to be properly expanded instead of resulting in joined root path
with special characters included.
2017-01-12 14:01:25 -08:00
Chris Roberts
a055978d74 Scrub credentials from box URLs 2017-01-12 13:24:46 -08:00
Chris Roberts
cf93efca2d Update tests for new information and cleaning method 2016-11-16 13:27:34 -08:00
Chris Roberts
ac74774fcb Merge pull request #8000 from chrisroberts/plugins/updates
Plugin handling updates
2016-11-14 13:24:52 -08:00
Chris Roberts
0f720a4386 Merge pull request #7985 from chrisroberts/shell-provisioner/checksum
Add md5 and sha1 checksum support to Downloader.
2016-11-14 13:19:22 -08:00
Chris Roberts
beffa70941 Downloader checksum output information and digester usage
Add more output information around type of checksum being validated.
Use builtin Digest#file to read target file for generation of hexdigest.
2016-11-14 10:22:25 -08:00
Chris Roberts
3afa7a3193 Update specs to match updated behavior for local install 2016-11-11 15:21:30 -08:00
Chris Roberts
da45ca707c Add md5 and sha1 checksum support to Downloader.
Allows checksum validation on downloaded files via Util::Downloader
using MD5 and/or SHA1 checksums. This also integrates checksum validation
support with the shell provisioner for downloaded remote files.
2016-11-09 16:05:39 -08:00
Chris Roberts
1f5dd35d16 Remove bundler where no longer required 2016-11-07 20:00:38 -08:00
Chris Roberts
28f2ed56cf Merge pull request #7756 from alexoj/master
Fix Vagrant not prioritizing configured providers correctly
2016-10-07 17:14:54 -07:00
Alejandro Ojeda
0be221fbea Add test for provider priority fix
This commit adds tests for possible future regressions for the bug fixed
in the commit: "Fix Vagrant not prioritizing configured providers
correctly".

Two very similar tests were added because whether the bug manifests
or not depends on the order in which the provider dictionary keys
are iterated, which is specific to the dictionary implementation.
2016-09-18 04:04:32 +02:00
Jake Teton-Landis
51f68f41a2 Unit test Vagrant::Util::Subprocess's STDIN support
- create new unit test file for this class, as none existed.
- test `Vagrant::Util::Subprocess#execute` behavior relating to STDIN
  handling.
2016-09-15 18:19:01 -07:00
Chris Roberts
3abfbec5a6 Merge pull request #7623 from carlosefr/relative-dotfile-path
Support Vagrantfile-relative VAGRANT_DOTFILE_PATHs
2016-08-12 16:17:10 -07:00
Zack Train
cb70749bd8 redux of pr 7398 for ssh-agent key fix 2016-08-11 11:48:10 -07:00