Chris Roberts
03d8965ef7
Add param documentation and fix key used for box version
2018-08-02 15:19:39 -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
66566b8c3d
Merge pull request #10078 from chrisroberts/e-appimage-libs
...
Detect AppImage and update executable environment if required
2018-07-31 13:56:35 -07:00
Chris Roberts
6009492e73
Detect AppImage and update executable environment if required
...
If starting a process while running from within AppImage adjust
the LD_LIBRARY_PATH of the subprocess when the executable exists
outside of the AppImage. This prevents issues of invalid dynamic
library lookups when the AppImage contains common named libraries.
2018-07-31 10:39:26 -07:00
Chris Roberts
ba908052ec
Also handle false value for compatibility
2018-07-30 11:58:49 -07:00
Chris Roberts
e3e3a332b3
Include update in ssh util for verify_host_key value
2018-07-30 11:25:29 -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
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
ae14f95124
Properly downcase answer for check. Default response to no.
2018-07-19 10:31:32 -07:00
Chris Roberts
c660643abb
Prevent matching on other Location headers
...
Prevent matching on custom headers that include the Location name
when checking for host redirection.
2018-07-19 09:18:30 -07:00
Chris Roberts
a490a8c587
Merge pull request #9966 from conspicuousClockwork/#9965
...
Added option to add to User-Agent
2018-07-18 16:43:02 -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
2ba5c74e1c
Merge pull request #9998 from chrisroberts/f-plat-wsl-pathname
...
Always force string type conversion of path
2018-07-18 16:37:07 -07:00
Chris Roberts
ab39125570
Set options directly instead of lazy merging
2018-07-18 15:47:35 -07:00
Chris Roberts
c5a6790192
Only run bundler initialization if plugin initialization is enabled
2018-07-18 10:48:22 -07:00
Chris Roberts
c605b7d875
Update option name for local plugin installation
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
b71054502e
Update local usage to env_local for clarity
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
40f4e6f67e
Vagrant Environment isolated plugins
...
Adds support for plugins isolated to a specific `Vagrant::Environment`
which can be managed by the vagrant plugin command using the the
--local flag.
2018-07-17 14:49:41 -07:00
Chris Roberts
01a7b625e5
Merge pull request #10017 from troeggla/master
...
Download causes exception when location header is not an absolute URL
2018-07-17 10:00:23 -07:00
Chris Roberts
6f81d16691
Remove final #to_s on path
2018-07-12 16:49:22 -07:00
Thomas Röggla
2613d620fd
checking whether the field location_uri.host is nil
2018-07-12 15:49:26 +02:00
Brian Cain
52c3dcc70e
( #9997 ) Catch and allow for non-standard exit codes
...
Prior to this commit, the run trigger option wouldn't catch for failures
outside of the #Subprocess.execute raising exceptions. This commit fixes
that by inspecting the exit code result of the subprocess and using the
new `exit_codes` option to determine how to move forward with the
trigger.
2018-07-09 15:56:26 -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
6aa5c1a008
Always force string type conversion of path
...
Fixes #9984
2018-07-06 14:29:32 -07:00
Koen Verheyen
7939784d1b
Display current version in version check
2018-06-29 16:41:50 +02:00
Caleb Martinez
447e58dac3
Added option to add to User-Agent
2018-06-28 13:21:34 -04:00
Chris Roberts
69ece0db4e
Always return string value when converting path
2018-06-18 10:02:59 -07:00
Chris Roberts
c5c63d291d
Only expand path if not in windows format
2018-06-18 09:39:30 -07:00
Chris Roberts
97eb459f56
Always expand to full path before converting to Windows path
2018-06-18 09:07:12 -07:00
Chris Roberts
3f23466703
Replace file separators when decompressing box files
2018-06-18 08:57:29 -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
5357727350
Attempt full path to powershell as last resort in WSL
2018-06-15 09:03:18 -07: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
ef4d431d36
Remove console resizing on powershell commands
2018-06-12 16:47:47 -07:00
Chris Roberts
87b8321702
Remove win32 dependencies
2018-06-12 13:54:37 -07:00
Chris Roberts
5325000fa6
Add helper option for setting custom module path on PowerShell executes
2018-06-12 10:44:12 -07:00
Chris Roberts
5f4e661155
Add automatic console resize and environment support for powershell commands
2018-05-30 15:04:59 -07:00
Chris Roberts
e6457d5061
Overhaul the Hyper-V provider
2018-05-24 14:43:44 -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
Chris Roberts
91018d4edc
Remove existing items from request set prior to installation
2018-05-08 13:52:23 -07:00
Chris Roberts
d58096da31
Update plugin loading to prevent error suppression
...
Only catch exception types we care about when attempting to load
plugins. If no require call is successful, force an exception
instead of ignoring.
2018-05-08 13:47:31 -07:00
Brian Cain
a177bcf4b7
Ensure internal trigger fire does not get called if plugin installed
...
This commit wraps up the internal machine action level trigger calls if
the community vagrant-trigger plugin is installed.
2018-05-07 11:33:55 -07:00
Brian Cain
092e73d87f
( #9775 ) Move triggers object init in machine
...
Prior to this commit, the hyper-v provider called an action on a machine
that hadn't fully finished initializing. This commit fixes that by
moving up the initialization of the triggers object next to the rest of
the instance variables of the machine object.
2018-05-04 14:32:57 -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
beb08b51a4
( #7076 ) Continue on if vagrant fails to parse metadata box for update
...
Prior to this commit, vagrant would halt if it could not parse the
metadata file for a box to check for updates with. This commit changes
that to behave like when vagrant fails to download a metadata file and
continue on but warn the user it failed to check for box updates.
2018-05-02 13:58:21 -07:00
Stefan Scherer
f14e8bcbf2
Allow other providers in WSL
2018-05-02 22:36:17 +02:00
Chris Roberts
3f3777f03a
Merge pull request #9746 from chrisroberts/e-hyper-v-check
...
Update Windows Hyper-V check
2018-05-02 07:45:26 -07:00
Chris Roberts
3dcc350364
Merge pull request #9696 from D4rkSh1t/fix-rootpath-for-wsl
...
fix rootpath if the vagrantfile is located under the root directory (WSL)
2018-04-27 17:04:23 -07:00
Chris Roberts
a997a27b57
Update Windows Hyper-V check
...
Checks only if the Hyper-V hypervisor is enabled instead of all
Hyper-V features. This will allow detection where Hyper-V is in
use for things like ApplicationGuard.
Uses both Get-WindowsOptionalFeature and Get-WindowsFeature to
support check on server and non-server version.
2018-04-27 14:13:34 -07:00
Brian Cain
fd3d78746c
( #9717 ) Improve messaging around not finding requested provider
...
This commit adds a bit more helpful messaging for the user when asking
for a provider that might not exist or does not follow the correct
casing. If it can find a match on a provider it knows about, it will
suggest it.
2018-04-26 09:43:58 -07:00
Brian Cain
67c3f866dd
( #7886 ) Add tests and simplify code for continuing on 416
2018-04-25 14:03:24 -07:00
Alexey Kamenskiy
f1993dfa19
Fixed minor typo in comment
2018-04-25 09:12:08 -07:00
Alexey Kamenskiy
cd3035e5e9
Issue #7885 Don't raise error if response is 416
...
416 means there is no more bytes to download (which works only with `--continue-at -` of curl)
2018-04-25 09:12:08 -07:00
Brian Cain
a9be56b356
Code updates based on PR feedback
2018-04-24 10:04:40 -07:00
Brian Cain
daffd87200
Use match over match? for Ruby 2.3
2018-04-20 12:24:32 -07:00
Brian Cain
188fd5d6a6
Split out run methods with Powershell functions
2018-04-20 10:51:38 -07:00
Brian Cain
12b1a3dfe4
Update triggers based on code review
2018-04-20 10:51:38 -07:00
Brian Cain
4e5e4d0214
Use args setting for run option in trigger
2018-04-20 10:51:38 -07:00
Brian Cain
8451cbf854
Move up location of error message
2018-04-20 10:51:38 -07:00
Brian Cain
c35e0a4f9a
Update docs with some basic trigger examples
2018-04-20 10:51:38 -07:00
Brian Cain
e0806f623c
Remove TODO
2018-04-20 10:51:38 -07:00
Brian Cain
0054c5aae6
Raise error if incomplete trigger block is defined
2018-04-20 10:51:38 -07:00
Brian Cain
6bf01965de
Fix run command for windows hosts
2018-04-20 10:51:38 -07:00
Brian Cain
a5fe84d64f
Fix string translation
2018-04-20 10:51:38 -07:00
Brian Cain
7cdb32f642
Use inclunde? instead of any? for ruby 2.3
2018-04-20 10:51:38 -07:00
Brian Cain
767a315393
Trigger cleanup
2018-04-20 10:51:38 -07:00
Brian Cain
85dedf25d9
Ensure that :all triggers don't get filtered out
2018-04-20 10:51:38 -07:00
Brian Cain
600557ff24
Move strings to translation file
2018-04-20 10:51:38 -07:00
Brian Cain
a1e4fe4411
Align how local provisioner looks with shell provisioner
2018-04-20 10:51:38 -07:00
Brian Cain
a857056136
Update color for run_remote to match shell provisioner colors
2018-04-20 10:51:38 -07:00
Brian Cain
8b71c24f90
Match properly on guests with trigger filtering
2018-04-20 10:51:38 -07:00
Brian Cain
a4faaa1a4d
Provision run_remote using the shell provisioner
2018-04-20 10:51:38 -07:00
Brian Cain
fd2878309b
Move exception warnings in run function
2018-04-20 10:51:38 -07:00
Brian Cain
e078767b2b
run now supports script files as well as inline scripts
2018-04-20 10:51:38 -07:00
Brian Cain
8b70abd4d0
Send the correct config message to warn
2018-04-20 10:51:38 -07:00
Brian Cain
59965f4fd6
Properly filter triggers
2018-04-20 10:51:38 -07:00
Brian Cain
975b8e774c
Get basic run triggers executing inline scripts
2018-04-20 10:51:38 -07:00
Brian Cain
d750169f6e
Add some logging around run and run_remote
2018-04-20 10:51:38 -07:00
Brian Cain
616b0f9ba6
Preserve returning environment after machine action gets called
2018-04-20 10:51:38 -07:00
Brian Cain
48b7c682ad
Use active machine object
2018-04-20 10:51:38 -07:00
Brian Cain
93af398f9e
Update params for NoStageGiven error
2018-04-20 10:51:38 -07:00
Brian Cain
bbf4e3c521
Reduce fire trigger methods to a single method
2018-04-20 10:51:38 -07:00
Brian Cain
eac2fcf71e
Filter triggers based on only_on restraint
2018-04-20 10:51:38 -07:00
Brian Cain
6373441ab2
Ensure guest name is a string
2018-04-20 10:51:38 -07:00
Brian Cain
76418b9fcd
Simplify trigger selection
2018-04-20 10:51:38 -07:00
Brian Cain
0e5cd900f8
Add missing param
2018-04-20 10:51:38 -07:00
Brian Cain
1462b3f718
Simplify trigger command filtering
2018-04-20 10:51:38 -07:00
Brian Cain
372a6a7911
Initial trigger plugin scaffolding
2018-04-20 10:51:38 -07:00
Brian Cain
4ecf682265
Add basic trigger plugin scaffold
2018-04-20 10:51:38 -07:00
Brian Cain
42419bbd49
Fix rspec tests
2018-04-20 10:51:38 -07:00
Brian Cain
f0ec7c750b
Potential solution for trigger validation when guest is defined
...
Send the defined before and or after triggers in the merge function if
triggers exist already
2018-04-20 10:51:38 -07:00
Brian Cain
51e4118cc2
Debug commit
2018-04-20 10:51:38 -07:00
Chris Roberts
6ae1f4a2f6
Fix require for ffi-win32-extensions
...
Fixes #9698
2018-04-18 12:42:46 -07:00
Maximilian Gotter
134060d577
fix rootpath if the vagrantfile is located under the root directory
2018-04-17 07:10:41 +00: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
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
Chris Roberts
e4399a5724
Check Windows installed Vagrant version using --version
...
Using the --version flag keeps Vagrant from doing a full startup
and prevents the Vagrantfile from being parsed. This makes the
version check faster, and stops things like syntax errors within
a Vagrantfile from causing an unexpected error.
Fixes #9635
2018-04-10 08:05:23 -07:00
Chris Roberts
f3c5e86f28
Merge pull request #9504 from zachflower/feature/vagrant-aliases
...
Vagrant aliases
2018-04-06 15:39:18 -07:00
Chris Roberts
8391abc63a
Properly respect environment variable on checkpoint setup
...
The checkpoint update missed the environment variable check for
disabling the checks so this adds in the check and properly
disables checks when requested.
2018-04-05 10:47:28 -07:00
Chris Roberts
a9223cf443
Add missing action autoloads
...
Fixes #9303
2018-04-04 16:27:06 -07:00
Chris Roberts
ef4318eda2
Merge pull request #9653 from chrisroberts/f-powershell-detection
...
Make powershell version detection timeout configurable
2018-04-04 16:20:23 -07:00
Chris Roberts
8ac0fedbbb
Suppress errors from invalid path encoding and carry on with best effort
...
Fixes #9299
2018-04-04 16:09:46 -07:00
Chris Roberts
dd1d91f2c4
Merge pull request #9503 from chrisroberts/f-win-ssh-control
...
Fix ssh binary selection on windows
2018-04-04 16:05:17 -07:00
Chris Roberts
90fa705a6d
Make powershell version detection timeout configurable
...
Allows custom configuration of the powershell timeout and bumps
the default timeout from 10 seconds to 30 seconds.
Fixes #9629
2018-04-04 16:02:11 -07:00
Chris Roberts
dd438100b8
Merge pull request #9645 from chrisroberts/e-checkpoint-exceptions
...
Prevent exceptions from being raised by checkpoint
2018-04-04 15:58:47 -07:00
Chris Roberts
a1d23b4e97
Allow system binary lookup to be disabled on windows for ssh
...
Fixes #9433
2018-04-04 15:50:52 -07:00
Chris Roberts
0139fe052b
Only modify report_on_exception if the method is available
2018-04-02 12:11:37 -07:00
Chris Roberts
1dafc6b82e
Prevent exceptions from being raised by checkpoint
2018-04-02 12:00:56 -07:00
Chris Roberts
30e7e81eab
Make resolv-replace loading optional not automatic
2018-04-02 11:59:02 -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
8b7e501e50
Handle pathing in lxrun generated WSL instances better.
2018-02-28 10:08:01 -08:00
Chris Roberts
5f0d16a0e9
Include support for lxrun generated install
...
Adds compatibility support for legacy lxrun generated WSL installation
which is a single install at a known path location. This allows earlier
versions of Windows 10 to continue working as expected while still
supporting the recent updates allowing for multiple instances.
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
cc82f96618
#9298 : Fix typos in comments to the code
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
47a7f0817c
#9298 : Try to fallback to "powershell.exe" on WSL if "powershell" is not available
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
c5fdd47a56
#9298 : Respect usernames with spaces
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
a1211caa9c
#9298 : Add debugging messages and explanations to the code
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
62740e2240
#9298 : Increase stability of determination of a current WSL instance
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
72664eafec
#9298 : Use a single-word distro name
2018-02-28 10:08:01 -08:00
Sergii Bondarenko
476981874b
#9298 : Compute a correct path to the current WSL instance
2018-02-28 10:08:01 -08:00
Zachary Flower
3dbcdea691
allow the alias file path to be defined via an environment variable
2018-02-25 22:32:13 -07:00
Zachary Flower
42f72e1099
some light changes per PR feedback
2018-02-25 22:21:16 -07:00
Chris Roberts
00400c95d8
Merge pull request #9499 from chrisroberts/f-vc-urls
...
Update behavior of the authentication middleware
2018-02-23 09:28:04 -08:00
Chris Roberts
b5b5f8870a
Merge pull request #9472 from chrisroberts/e-sensitive-length
...
Ignore empty strings registered as sensitive
2018-02-23 09:26:38 -08:00
Chris Roberts
d6f4c75f40
Merge pull request #9344 from chrisroberts/e-dl-redirect-notify
...
Notify when host changes on redirect
2018-02-23 09:24:40 -08:00
Brian Cain
2475c62b20
Merge pull request #9502 from briancain/override-box-version
...
Use provider override for box_version if given
2018-02-22 12:58:24 -08:00
Brian Cain
bba4978c13
Merge pull request #9470 from briancain/subprocess-frozen-windows-ps
...
Pass ruby block to capture stdout when determining PS version
2018-02-22 12:56:28 -08:00
Brian Cain
d1c3deb234
( #9452 ) Use provider override for box_version if given
...
Prior to this commit if an override was given for a box version, it
would be ignored. This commit ensures that the box_version override is
used when specified in a Vagrantfile.
2018-02-22 10:43:52 -08:00
Brian Cain
3844a8e9f9
( #9056 ) Pass ruby block to capture stdout when determining PS version
...
Prior to this commit, the function used to determine the version of
Powershell would loop forever inside the Subprocess.execute function
because the process would never exit. This commit fixes that by passing
in a ruby block to capture the version from stdout instead of trying to
capture it from the returned process when it exits.
2018-02-22 10:04:16 -08:00
Chris Roberts
ffa6d2810d
Remove end of line matcher from progress regexp
2018-02-22 09:46:24 -08:00
Chris Roberts
04e05088ff
Check location first. Grab final progress when multiple entries listed.
2018-02-21 19:46:12 -08:00
Chris Roberts
5e7e56f573
Fix redirect display and chosen location
2018-02-21 17:05:13 -08:00
Chris Roberts
fa2f17c7ae
Notify user when download host changes on redirect
2018-02-21 17:05:13 -08:00
Chris Roberts
f2bf18e56b
Update behavior of the authentication middleware
...
Always remap old hosts to target host when encountered. When custom
vagrant server is defined, warn when tokens may be attached and allow
time for user to cancel.
Fixes #9442
2018-02-21 17:03:38 -08:00
Zachary Flower
f46ebf5240
throw an exception when whitespace is found within an alias keyword
2018-02-16 13:28:57 -07:00
Zachary Flower
57419fd12c
quick fix to register method
2018-02-16 13:28:41 -07:00
Zachary Flower
f16751a46d
start working through tests
2018-02-16 13:00:39 -07:00
Chris Roberts
330ee2e1eb
Ignore empty strings registered as sensitive
...
Fixes #9462
2018-02-15 17:02:34 -08:00
Brian Cain
8c15e1995b
Merge pull request #9459 from briancain/9428/master/update-systemd-check
...
Update systemd? check for guest inspection
2018-02-14 08:50:27 -08:00
Zachary Flower
17f13785ce
move alias registration into a separate register() method
2018-02-10 18:08:37 -07:00
Zachary Flower
bbb3cdaa9a
vagrant aliases proof-of-concept
2018-02-10 17:58:18 -07:00
Brian Cain
b77171c4fc
( #9428 ) Update systemd? check for guest inspection
...
Prior to this commit, the regex matcher used with grep to determine if a
system was using systemd? was failing on systems that did not exactly
match the old regex. This commit updates that communications test to use
a different method of determining if systemd is in use with the ps
command.
2018-02-08 15:50:59 -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
0f7f4b32b9
Merge pull request #9400 from chrisroberts/fall-back-to-system-ssh
...
Allow which to use original path. Prefer native ssh.
2018-01-26 07:21:33 -08:00
Chris Roberts
19d1cae92c
Add log warning when native ssh executable is not found
2018-01-25 08:35:08 -08:00
Chris Roberts
570d5abb95
Prefer ssh executable found on original path
2018-01-25 08:23:14 -08:00
Chris Roberts
6f6e936451
Add option to Which utility for using original path on lookup
2018-01-25 08:23:14 -08:00
Brian Cain
343e252574
Favor system ssh binary over embedded ssh binary
2018-01-25 08:23:14 -08:00
Chris Roberts
522d503030
Use Ruby's resolver by default and allow replace to be disabled
2018-01-22 10:40:33 -08:00