631 Commits

Author SHA1 Message Date
Mitchell Hashimoto
30d9e243bb fix failing tests 2015-12-02 18:03:08 -08:00
Seth Vargo
8c3f833e8e Use the new presence helpers in the Chef provisioner 2015-11-23 18:33:47 -05:00
Seth Vargo
4c55c39b2d Add presence helpers 2015-11-23 18:04:18 -05:00
Mitchell Hashimoto
7f93868c86 Merge pull request #6567 from mitchellh/b-prune-folders
core: remove saved synced folders not from Vagrantfile
2015-11-23 10:06:51 -08:00
Mitchell Hashimoto
d5fa7416ff core: more heuristics for determining Cygwin 2015-11-21 11:17:36 -08:00
Mitchell Hashimoto
e1f8b0d9c0 more passing tests on Windows 2015-11-20 15:24:51 -08:00
Mitchell Hashimoto
9dc04b648c skip box add tests on Windows 2015-11-20 15:15:04 -08:00
Mitchell Hashimoto
fafd8b8986 more passing tests on Windows 2015-11-20 15:09:17 -08:00
Mitchell Hashimoto
27412e6ee9 core: fix some failing Windows tests 2015-11-20 14:54:38 -08:00
Mitchell Hashimoto
9c1b014536 core: remove saved synced folders not from Vagrantfile 2015-11-20 10:25:09 -08:00
Mitchell Hashimoto
1ccd91aada Merge pull request #4473 from rtkrruvinskiy/https_metadata
Add HTTPS download options to `box update` and `box outdated`
2015-11-19 16:16:48 -08:00
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
aaed7c178f Add tests 2015-11-19 11:07:19 -08:00
Seth Vargo
c1623ee740 Fix port collision in tests 2015-11-18 18:47:19 -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
646414b347 core: don't make dotfile path if no Vagrantfile 2015-11-18 17:48:24 -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
85f1e05e2a core: prune machine if non-existent CWD from index [GH-4742] 2015-11-18 15:48:59 -08:00
Mitchell Hashimoto
69d9bc0fe8 Environment can_install_provider and install_provider 2015-11-05 11:50:10 -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
Mitchell Hashimoto
cc8cdafdc3 test: test for IsEnvSet 2015-10-07 22:54:27 -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
Sam Phippen
790fa9f8e2 Add a failing test for #5605 2015-09-08 17:15:51 +01:00
Ievgen Prokhorenko
562ed26533 Fix #3570 'Box data left in ~/.vagrant.d/boxes after removal' 2015-07-19 16:44:38 +03: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
1330244fef core: save the UID that created a machine 2015-07-06 18:04:16 -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
e759df11a0 core: fix crash for missing options [GH-5550] 2015-07-06 10:36:41 -06:00
Seth Vargo
b92d4b21a1 Add UI::Interface#color? 2015-06-01 11:49:09 -04: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
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
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
Mitchell Hashimoto
a0be121f4f Revert "Merge pull request #5274 from mitchellh/sethvargo/atlas_api"
This reverts commit 7f19284ef4e8a67ffbcac98aa30db89ccd370d99, reversing
changes made to f0284d000be2480ae7a9d343bd54b6ef0d4d9e0a.
2015-02-03 06:39:28 +01:00
Seth Vargo
6fd685e96d Fix failing tests 2015-02-02 19:24:50 -05:00
Simon Vetter
1bc364febc add test for checksum options mapping 2015-01-21 21:40:25 +01:00
Max Lincoln
853042f2fa Make sure allowed_synced_folder_types order overrides priority 2015-01-20 16:18:05 -05:00
Max Lincoln
d781dce8f8 Filter synced folders by allowed_synced_folder_types 2015-01-20 16:18:05 -05:00
Seth Vargo
39233e802f Validate pushes in the global config 2015-01-07 15:51:20 -05:00
Seth Vargo
c4eb0261bb Add tests for validating push configuration 2015-01-07 13:20:53 -05:00
Seth Vargo
d2874064f4 Use .key? instead of .has_key? 2015-01-05 18:29:01 -05:00
Mitchell Hashimoto
6aeae27889 core: just don't use ** to avoid symbol/strings mixup
/cc @sethvargo
2015-01-05 12:37:58 -08:00
Seth Vargo
2377247ba0 Test that the environment has string keys 2015-01-05 10:57:06 -05:00
Seth Vargo
111a43552e Add tests for Environment#pushes and #Enviroment#push 2014-12-08 11:35:11 -08:00
Seth Vargo
f3c35855f0 Add a newline because #ocd 2014-12-08 11:35:11 -08:00
Seth Vargo
7f6a4fa3bd Add tests for plugin manager push_configs 2014-12-08 11:35:11 -08:00