Mitchell Hashimoto
c541767949
core: add tests for box collection cleanup [GH-6002]
2015-11-19 15:59:58 -08:00
Mitchell Hashimoto
ed9bc1e847
Merge branch '3570-box-data-left' of https://github.com/ievgenp/vagrant into ievgenp-3570-box-data-left
2015-11-19 15:45:47 -08:00
Seth Vargo
eac1960d45
Fix some Ruby
2015-11-19 10:25:32 -08:00
Mitchell Hashimoto
2ffbe4e6e1
core: more robust WIndows admin check [GH-5616]
2015-11-18 20:27:07 -08:00
Mitchell Hashimoto
be29915bed
Merge pull request #6542 from mitchellh/b-dotfile
...
core: don't make dotfile path if no Vagrantfile
2015-11-18 18:10:19 -08:00
Mitchell Hashimoto
079ee6ea95
Merge pull request #6540 from mitchellh/b-non-http-head
...
core: don't do HEAD request for box on non-HTTP [GH-5477]
2015-11-18 18:09:31 -08:00
Mitchell Hashimoto
7c9fd58786
core: log if not checking box metadata
2015-11-18 18:09:18 -08:00
Mitchell Hashimoto
646414b347
core: don't make dotfile path if no Vagrantfile
2015-11-18 17:48:24 -08:00
Mitchell Hashimoto
7c49fd1418
core: fix crash on invalid checksum type [GH-6327]
2015-11-18 17:36:52 -08:00
Mitchell Hashimoto
891c47c742
core: don't do HEAD request for box on non-HTTP [GH-5477]
2015-11-18 16:52:40 -08:00
Mitchell Hashimoto
1a7937ed50
core: don't replace insecure key on base package [GH-5310]
2015-11-18 16:25:07 -08:00
Mitchell Hashimoto
0ce636d1a3
core: avoid locking in trap context
2015-11-18 16:07:49 -08:00
Mitchell Hashimoto
85f1e05e2a
core: prune machine if non-existent CWD from index [GH-4742]
2015-11-18 15:48:59 -08:00
Mitchell Hashimoto
9ce26393bb
Merge pull request #6479 from legal90/fix-fp-collision-handling
...
Bugfix: Remove redundant app call from action "handle_forwarded_port_collisions"
2015-11-18 15:13:40 -08:00
Mitchell Hashimoto
9e1a119a4b
Merge pull request #6475 from nikelmwann/linux-host-use-xfreerdp
...
Prefer xfreerdp for RDP connections on Linux hosts.
2015-11-18 15:12:47 -08:00
Mitchell Hashimoto
cccdb87388
Merge pull request #6407 from josephfrazier/patch-1
...
handle_forwarded_port_collisions.rb: fix typo: "Reparied" -> "Repaired"
2015-11-18 14:38:03 -08:00
Mitchell Hashimoto
d69d7047b2
Merge pull request #6386 from legal90/fix-osx-nic-order
...
Fix network configuration in OS X (Darwin) guests
2015-11-18 14:33:51 -08:00
Mitchell Hashimoto
946d2fe154
Merge pull request #4738 from robkinyon/skip_default_sources
...
Added a --plugin-clean-sources parameter
2015-11-18 11:20:34 -08:00
Austin Schutz
96e4544949
use env.ui for action logging
2015-11-18 11:15:02 -08:00
Austin Schutz
566e21d3fc
add machine readable logging, action starts/ends
2015-11-18 11:15:02 -08:00
Gilles Cornu
c6ef73a6fa
Merge 'gildegoma/2103-ansible-local-v2'
...
Resolve conflict in CHANGELOG.md
2015-11-10 23:05:29 +01:00
Christian Berendt
3f4a372d57
Remove all available versions of a box
...
This patch introduces a new parameter --all for the remove
command of the box plugin. Setting this parameter will remove
all available versions of a specific box.
Example usage:
```
$ vagrant box list
ubuntu/trusty64 (virtualbox, 20150427.0.0)
ubuntu/trusty64 (virtualbox, 20150430.0.0)
ubuntu/trusty64 (virtualbox, 20150506.0.0)
```
```
$ vagrant box remove ubuntu/trusty64
You requested to remove the box 'ubuntu/trusty64' with provider
'virtualbox'. This box has multiple versions. You must
explicitly specify which version you want to remove with
the `--box-version` flag. The available versions for this
box are:
* 20150427.0.0
* 20150430.0.0
* 20150506.0.0
```
With the --all parameter it is possible to remove all versions at once.
```
$ vagrant box remove --all ubuntu/trusty64
Removing box 'ubuntu/trusty64' (v20150506.0.0) with provider 'virtualbox'...
Removing box 'ubuntu/trusty64' (v20150430.0.0) with provider 'virtualbox'...
Removing box 'ubuntu/trusty64' (v20150427.0.0) with provider 'virtualbox'...
```
2015-11-09 09:32:18 +00:00
Gilles Cornu
9bfdaf7e75
provisioners/ansible: introduce ansible_local
...
With this change, the existing host-based Ansible provisioner is
refactored to share a maximum of code with this new guest-based Ansible
provisioner.
At this stage of development, the existing unit tests are intentionally
modified as little as possible, to keep safe the existing funtionalities.
Other issues resolved by this changeset:
- Display a warning when running from a Windows host [GH-5292]
- Do not run `ansible-playbook` in verbose mode when the `verbose` option
is set to an empty string.
2015-11-08 10:42:48 +01:00
Mitchell Hashimoto
baea923e9c
commands/up: automatically install providers
2015-11-05 13:58:15 -08:00
Mitchell Hashimoto
69d9bc0fe8
Environment can_install_provider and install_provider
2015-11-05 11:50:10 -08:00
Mitchell Hashimoto
dad5962ebb
hosts/darwin: support virtualbox install
2015-11-04 15:47:56 -08:00
Mitchell Hashimoto
d4ddb3c2f3
commands/provider
2015-11-04 14:20:48 -08:00
Mikhail Zholobov
c60e116121
Remove redundant app call from action "handle_forwarded_port_collisions"
...
This call should not be in the `handle` helper method. It is specified in the `call` method already.
2015-11-03 17:16:31 +02:00
Eric Winkelmann
e687f81fce
Re-word Linux RDP error to include `xfreerdp`.
...
Changed the name of the error LinuxRDesktopNotFound to
LinuxRDPClientNotFound and re-worded error text in
templates/locales/en.yml to include `xfreerdp` when listing supported
RDP clients.
2015-11-02 23:42:01 -08:00
Mitchell Hashimoto
32e981ce7c
core: machine-readable output should include standard UI output
...
As a "ui" type
2015-10-26 18:10:26 -07:00
Joseph Frazier
a59dc04b69
handle_forwarded_port_collisions.rb: fix typo: "Reparied" -> "Repaired"
2015-10-17 19:42:58 -04:00
Mitchell Hashimoto
c17efbed75
core: ignore VAGRANT_DOTFILE_PATH if a child environment
...
This causes issues since the child environment almost certainly doesn't
share data with the parent. In a larger scope, we should find a way to
encode the data path somehow on `vagrant up`.
2015-10-16 10:28:30 -07:00
Mikhail Zholobov
f930fa94af
Move "cant_read_mac_addresses" error to the global space
...
Now it is used not only by Windows, but by Darwin guests as well.
2015-10-09 14:57:41 +03:00
Mitchell Hashimoto
36cfc77167
providers/virtualbox: make prepare clone a core thing
2015-10-08 16:02:37 -04:00
Mitchell Hashimoto
f0ddac8c9a
providers/virtualbox: clone
2015-10-08 12:33:55 -04:00
Mitchell Hashimoto
9e371277a9
core: IsEnvSet remove invert opt
2015-10-08 10:38:18 -04:00
Mitchell Hashimoto
ed4df21c85
commands/snapshot: push and pop
2015-10-07 22:52:27 -04:00
Mitchell Hashimoto
2c936b2e37
providers/virtualbox: tidying up the linked clone feature
2015-10-06 14:11:41 -04:00
Mitchell Hashimoto
d519d927fa
Merge branch 'VB-linked-clone-support' of https://github.com/mpoeter/vagrant into mpoeter-VB-linked-clone-support
2015-10-06 13:50:34 -04:00
Mitchell Hashimoto
ec0b0fb7f9
providers/virtualbox: IPv6 host only networks
2015-09-30 17:23:25 -07:00
Sam Phippen
eeb750cd33
Catch encoding problems with sources provided to Vagrant::Config::Loader#set
...
Here we implement a naive solution to #5605 which catches the case that
a provided source contains an object which cannot be inspected, because
an object contained within in has an #inspect string that returns a
string that is incompatible with the encoding in
`Encoding.default_external` or a string which cannot be downcast to
7-bit ascii.
The Ruby VM implementation of "#inspect" implements this checking on
these lines of code: http://git.io/vZYNS . A Ruby level override of
this method does not cause this problem. For example:
```ruby
class Foo
def inspect
"😍 ".encode("UTF-16LE")
end
```
will not cause the problem, because that's a Ruby implementation and the
VM's checks don't occur.
However, if we have an Object which **does** use the VM implementation
of inspect, that contains an object that has an inspect string which
returns non-ascii, we encounter the bug. For example:
```ruby
class Bar
def inspect
"😍 ".encode("UTF-16LE")
end
end
class Foo
def initialize
@bar = Bar.new
end
end
Foo.new.inspect
```
Will cause the issue.
The solution this patch provides basically catches the encoding error
and inserts a string which attempts to help the user work out which
object was provided without blowing up. Most likely, this was caused
by a user having a weird encoding coming out of one of the sources
passed in, but without a full repro case, it's not clear whether a patch
should be applied to a different object in the system.
Closes #5605 .
2015-09-08 17:30:50 +01:00
Seth Vargo
d64d229c0f
Merge pull request #5928 from mitchellh/sethvargo/ssh_exec_run_command
...
Use the same ssh args for ssh with a command as ssh exec
2015-07-27 11:02:36 -04:00
Seth Vargo
d88d126ad9
Use a properly-formatted custom User-Agent
2015-07-20 23:33:31 -04:00
Ievgen Prokhorenko
562ed26533
Fix #3570 'Box data left in ~/.vagrant.d/boxes after removal'
2015-07-19 16:44:38 +03:00
Manuel Pöter
f4d1d068f9
Merge branch 'master' into VB-linked-clone-support
2015-07-13 10:56:17 +02:00
Mitchell Hashimoto
dec5f70a1e
core: fix jailbreaking of plugins
...
/cc @sethvargo
2015-07-10 15:34:59 -06:00
Seth Vargo
fc1d2c29be
Use the same ssh args for ssh with a command as ssh exec
2015-07-10 13:55:00 -06:00
Gilles Cornu
faeb8a9440
core: plugin management requires bundler
...
With this change, the `Vagrant::plugins_enabled?` is now false when the
embedded Bundler is not available.
Resolve the broken RSpec unit tests after
479323f1e8
.
2015-07-10 13:37:33 +02:00
Mitchell Hashimoto
479323f1e8
for newer versions of Bundler, store the runtime
2015-07-09 22:12:47 -06:00
Seth Vargo
fafa3fa437
Add another log statement
2015-07-09 16:06:03 -06:00
Seth Vargo
68ef9676c7
Jailbreak out of the subprocess and restore original environment
2015-07-09 16:06:03 -06:00
Seth Vargo
46563560f4
Update with_clean_env helpers
2015-07-09 16:06:02 -06:00
Seth Vargo
50a64ea30b
Add a log statement
2015-07-09 16:06:02 -06:00
Seth Vargo
0a5d37fc8b
Reset the original environment if we are running something outside of the installer
2015-07-09 16:06:02 -06:00
Mitchell Hashimoto
cea44847de
Merge branch 'filter_synced_folders' of https://github.com/maxlinc/vagrant into maxlinc-filter_synced_folders
2015-07-09 15:05:52 -06:00
Mitchell Hashimoto
b0b9f67faf
Merge pull request #5514 from MiLk/fixes/several-boxes-same-name
...
Allow to use several boxes with the same name
2015-07-09 15:00:03 -06:00
Mitchell Hashimoto
b3e935203e
remove unuse dline
2015-07-09 14:25:10 -06:00
Mitchell Hashimoto
3cad495064
Merge pull request #5887 from msabramo/config.ssh.ssh_command
...
Add setting config.ssh.ssh_command
2015-07-09 14:24:48 -06:00
Seth Vargo
3ba10b43ab
Restore the original environment from Bundler and the installer if given
2015-07-09 13:14:34 -06:00
Seth Vargo
d8d5a66fa5
Add a function to get to the "original" environment with Vagrant
...
This function only works when used with the official Vagrant installer.
2015-07-09 12:34:04 -06:00
Mitchell Hashimoto
0b6938d8ab
core: don't prepare folders in disable ode
2015-07-08 15:43:42 -06:00
Mitchell Hashimoto
28bea401c0
core: if interrupted, don't open metadata file
2015-07-07 12:38:45 -06:00
Mitchell Hashimoto
71940c60ba
providers/virtualbox: error if uid mismatch
2015-07-06 18:13:59 -06:00
Mitchell Hashimoto
1330244fef
core: save the UID that created a machine
2015-07-06 18:04:16 -06:00
Mitchell Hashimoto
cb51b4fe7f
Merge pull request #5334 from legal90/fix-data-dir-creation
...
Create machine data directory only after the machine will be checked
2015-07-06 16:33:33 -06:00
Mitchell Hashimoto
6c06db776d
core: test for URI escaping
2015-07-06 16:26:06 -06:00
Mitchell Hashimoto
341534299d
core: ssh private_key_path overwrites insecure key [GH-5632]
2015-07-06 16:17:54 -06:00
Mitchell Hashimoto
79115d1ccc
core: retry SSH keygen on RSAError [GH-5056]
...
/cc @sethvargo
2015-07-06 14:44:23 -06:00
Mitchell Hashimoto
bb25bb3be9
core: actually get the proper encoded subprocess command [GH-5128]
2015-07-06 14:39:50 -06:00
Mitchell Hashimoto
80ce9ab1f3
core: change select timeout to 1 for WIndows [GH-5309]
2015-07-06 13:54:00 -06:00
Mitchell Hashimoto
ab27413954
core: make note that the box is being added directly [GH-5311]
2015-07-06 12:17:49 -06:00
Mitchell Hashimoto
e759df11a0
core: fix crash for missing options [GH-5550]
2015-07-06 10:36:41 -06:00
Mitchell Hashimoto
36fa04fd1e
providers/virtualbox: catch subprocess launch error [GH-1483]
2015-07-05 17:01:06 -07:00
Marc Abramowitz
9240ea30b6
Add setting config.ssh.ssh_command
...
Lets the user specify what ssh to use or even direct Vagrant to use an
ssh wrapper like sshrc (https://github.com/Russell91/sshrc ).
2015-07-01 23:33:13 -07:00
Manuel Pöter
c3151c0b88
Ignore failure when trying to delete lock file.
...
Deleting the lock file can fail when another process is currently trying to acquire it (-> race condition).
It is safe to ignore this error since the other process will eventually acquire the lock and again try to delete the lock file.
2015-06-03 13:27:03 +02:00
Seth Vargo
345935887f
Style fixes
2015-06-02 17:18:50 -04:00
Philip Wrenn
4c8fe42d70
Ignore possible version directories that are hidden folders, i.e. dot folders.
2015-06-02 17:09:10 -04:00
Seth Vargo
b92d4b21a1
Add UI::Interface#color?
2015-06-01 11:49:09 -04:00
Seth Vargo
6b2ef13785
Be more defensive when trying to get the line number
...
Since this is the last line of defense before raising an error, we want to make
sure we don't cause an error while trying to render the error.
2015-05-31 18:32:23 -07:00
Adam Spiers
ce13051d61
eliminate guesswork with Vagrantfile errors
...
If the Vagrantfile has some kind of error, display not only
its path and the exception message, but also the originating
line number and exception class.
Also log the full backtrace when the error is in a provider
block, just as it is done when it's outside a provider block.
2015-05-31 18:25:51 -07:00
Dmitry Moskalchuk
26e3994319
Add option to enable trusted HTTP redirects
2015-05-31 09:34:02 -07:00
Seth Vargo
07efee776e
Merge pull request #5677 from mrahtz/fix/master/unescape-curl-passwords
...
Escape/unescape cURL URLs/auth
2015-05-30 21:40:18 -07:00
Seth Vargo
6210f13338
Merge pull request #5750 from alh84001/feature/capability_guest_darwin_mount_smb
...
Capability to mount smb shares in darwin guests
2015-05-30 21:34:53 -07:00
Seth Vargo
294b0bca41
Merge pull request #5433 from marxarelli/feature/ui-custom-pipes
...
core: allow IO redirection of UI for testing
2015-05-30 12:49:09 -07:00
Seth Vargo
a0b86a8474
Style fixes
2015-05-30 12:34:05 -07:00
Seth Vargo
cecd15edac
Merge pull request #5395 from delftswa2014/fix-local-download
...
Fixed inaccurate downloading status message
2015-05-30 12:33:28 -07:00
Seth Vargo
03b945d4d0
Merge pull request #5399 from delftswa2014/improve-package-error-message
...
Improved the package error message
2015-05-30 12:32:19 -07:00
Seth Vargo
72ea1d3e64
Merge pull request #5658 from legal90/fix-repackage
...
Fix issue #5657 : Take only files while box repackage
2015-05-30 12:03:50 -07:00
Seth Vargo
2175625b61
Merge pull request #5698 from aneeshusa/dont-report-plugins-when-disabled
...
If plugins are disabled, report them as not available.
2015-05-30 11:56:44 -07:00
Seth Vargo
98a23c5a5e
Merge pull request #5604 from bluehaoran/patch-1
...
Update ssh.rb to detect PLink v0.64
2015-05-30 11:51:52 -07:00
Matija K
b387f0e15d
Capability to mount smb shares in darwin guests
2015-05-24 12:39:28 +02:00
Aneesh Agrawal
16ac4e2321
If plugins are disabled, report them as not available.
...
Allows usage of VAGRANT_NO_PLUGINS env var to disable plugins.
Fixes #5430 .
2015-05-14 08:04:11 -04:00
Mikhail Zholobov
079e06cd09
box/package: Take only files while packaging the new box
...
Fixes GH-5657
2015-04-30 16:08:18 +03:00
Matthew Rahtz
29c77e5719
Escape/unescape cURL URLs/auth
...
so that we can deal with special characters in usernames and passwords
2015-04-29 14:34:00 +01:00
Haz
0962a2d151
Update ssh.rb to detect PLink v0.64
...
PLink 0.64 (released 28-2-2015) changes the command-line description, so the previous text-match no longer works.
2015-04-17 12:34:40 +10:00
Jean-Francois Bibeau
45e14a8dc4
UNC paths should have backslashes, not front-slashes.
2015-04-16 11:02:58 -04:00
Jean-Francois Bibeau
415837c544
moved function to platform utils, added unit test as per @sethvargo
2015-04-06 16:51:55 -04:00
Emilien Kenler
1c1dd1ef8a
Allow to use several boxes with the same name
2015-03-23 16:30:23 +09:00
Dan Duvall
3b8bc2a433
core: allow IO redirection of UI for testing
...
Use of $stdin, $stdout, and $stderr globals makes testing difficult. By
exposing the IO objects as writable attributes, input/output can be more
easily simulated using StringIO or doubles.
2015-03-04 11:23:16 -08:00
edward010
51842623db
Improved the package error message
...
The package error message will now show the actual package name if the
package already existed.
2015-02-27 10:41:04 +01:00