Simon Vetter
40eb978931
fix checksum verification for downloaded boxes ( fixes #4665 )
...
This makes sure that config.vm.box_download_checksum and
config.vm.box_download_checksum_type get passed to
Vagrant::Action.action_box_add with other options on
box download/import.
2015-01-20 14:28:29 +01:00
mbrodala
cca19f8241
Check plugin name with version spec in has_plugin
...
If one passes a version spec to `Vagrant.has_plugin?`, the actual plugin name is ignored and any installed plugin which matches the version spec makes the check pass. Fix this by also checking for plugin name match in addition to the requested version spec.
2015-01-20 08:37:22 +01:00
Shawn Neal
522bf9ff8b
Fix issue 3031
...
Sometimes in use ports can raise a Errno::EACCES exeptions on Windows hosts.
2015-01-16 08:03:37 -08:00
Seth Vargo
a438e85418
Make with_clean_env a class method
...
Fixes #5021
2015-01-05 19:07:04 -05:00
Seth Vargo
d2874064f4
Use .key? instead of .has_key?
2015-01-05 18:29:01 -05:00
Seth Vargo
2bd22c9663
Turn on Atlas debug logging if Vagrant is logging
2015-01-05 15:51:19 -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
Mitchell Hashimoto
c4502737c8
Revert "Symbolize and stringify keys in options hash"
...
This reverts commit 1699c92eec
.
2015-01-05 12:35:31 -08:00
Seth Vargo
1699c92eec
Symbolize and stringify keys in options hash
2015-01-05 10:48:39 -05:00
Mitchell Hashimoto
2385305f6f
core: Don't encode! since string might be frozen
2014-12-10 09:27:00 -08:00
Seth Vargo
2e4f854725
Vagrant Cloud -> Atlas
2014-12-08 17:42:29 -08:00
Seth Vargo
6b48199346
Infer push name when only one strategy is defined, support multiple strategies
2014-12-08 11:35:15 -08:00
Seth Vargo
c8bdf53c7e
Rename push environment to env
2014-12-08 11:35:12 -08:00
Seth Vargo
35b7e28011
Do not use UNSET_VALUE in plugin (it uses components)
2014-12-08 11:35:11 -08:00
Seth Vargo
8e2f18761f
Remove unused methods from vagrantfile.rb
2014-12-08 11:35:10 -08:00
Seth Vargo
e5b10aa86b
Collect push_configs in the Plugin Manager
2014-12-08 11:35:10 -08:00
Seth Vargo
413565f961
Simplify the API for Environment#push
...
The API has a precondition that `name` is not nil
2014-12-08 11:35:10 -08:00
Seth Vargo
3871154a74
Ignore options that come back from the plugin for now
2014-12-08 11:35:10 -08:00
Seth Vargo
988518a6ba
Make Environment#pushes its own method
2014-12-08 11:35:10 -08:00
Seth Vargo
03b8105571
Super primitive implementation of Environment#push
2014-12-08 11:35:10 -08:00
Seth Vargo
b6c5ca6b7a
Add Push command and tests
2014-12-08 11:35:10 -08:00
Seth Vargo
d79a0d52dd
Do not use Enumerable in Registry
...
Calling methods like #first in Registry is misleading because it returns
a different result than registry.get(registry.keys.first).
2014-12-08 11:35:10 -08:00
Seth Vargo
c0b107ff69
Add Registry#empty? to check if a registry has any items
2014-12-08 11:35:10 -08:00
Seth Vargo
2b03838fba
Make Registry enumerable
...
Registry already responds to #each, so including the Enumerable module
gives us nice methods like #select and #collect fo' free!
2014-12-08 11:35:10 -08:00
Seth Vargo
bc4bbb9fc0
Add #length and #size methods to Registry
2014-12-08 11:35:10 -08:00
Seth Vargo
60a8472891
Use a pushes registry instead of data hash
2014-12-08 11:35:09 -08:00
Seth Vargo
72affa0a10
Accept a list of options in #push signature
2014-12-08 11:35:09 -08:00
Seth Vargo
5b9240ad8a
Add Push to the PLUGIN_COMPONENTS
2014-12-08 11:35:09 -08:00
Seth Vargo
87b4e1f2cc
Accept an environment in the push config
2014-12-08 11:35:09 -08:00
Seth Vargo
a93fff103f
Add base skeleton for `vagrant push`
2014-12-08 11:35:09 -08:00
Seth Vargo
9242e39a23
Revert "Merge pull request #4861 from obfusk/fix-tmpdir-delete"
...
This reverts commit 00e388a897
, reversing
changes made to d1691c21c7
.
2014-12-02 12:32:31 -05:00
Felix C. Stegerman
023e4b8c23
force rm tempfiles (no rescue nil); use right var
2014-11-24 16:59:15 +01:00
Felix C. Stegerman
aca273c996
fix broken tempdir removal
2014-11-24 02:26:54 +01:00
Seth Vargo
1d23fb75a2
Merge pull request #4801 from mitchellh/sethvargo/with_clean_env
...
Add Env.with_clean_env for resetting the Ruby and Rubygems environment
2014-11-10 19:38:41 -05:00
Mitchell Hashimoto
f8a2322459
core: only delete state if not created on initialize only
...
/cc @sethvargo
2014-11-10 16:29:19 -08:00
Seth Vargo
f86189a2fe
Add Env.with_clean_env for resetting the Ruby and Rubygems environment
2014-11-10 12:00:23 -05:00
Matt Wrock
dc628cd722
fixes infinite loop in machine state call if provider calls machine.action
2014-11-06 08:51:47 -08:00
Rob Kinyon
14b84a4a76
Added a --plugin-clean-sources parameter that will allow for
...
only those sources that are defined by the user to be used.
2014-10-28 21:53:41 -04:00
Mitchell Hashimoto
cb6f3e526a
Fix failing test
2014-10-24 15:51:52 -07:00
Mitchell Hashimoto
7b5e5668c5
core: add option to not lock for Machine#action [GH-4574]
2014-10-24 15:47:37 -07:00
Mitchell Hashimoto
533004e932
core: Package copies private key
2014-10-24 10:31:23 -07:00
Mitchell Hashimoto
94b2a8a56b
communicators/ssh: insert random key, remove insecure key
2014-10-24 09:58:18 -07:00
Mitchell Hashimoto
f4dec575ed
core: Vagrant::Util::Keypair for generating keypairs
2014-10-24 09:33:44 -07:00
Mitchell Hashimoto
37a4000722
providers/virtualbox: more descriptive error if empty version [GH-4657]
2014-10-24 09:20:08 -07:00
Mitchell Hashimoto
370ca050db
Merge pull request #3707 from takekazuomi/fix/master/encodeissue
...
fix subprocess external encode issue.
2014-10-23 23:18:19 -07:00
Mitchell Hashimoto
7d6f9a60b2
core: ability to set env var for silent internal upgrade [GH-3870]
2014-10-23 22:39:58 -07:00
Mitchell Hashimoto
fbd568a03e
core: load ".vagrantplugins" in root path [GH-3775]
2014-10-23 19:58:57 -07:00
Mitchell Hashimoto
6ea8dc8e20
core: cleaner output of what provisioner is running if named
2014-10-23 18:47:03 -07:00
Mitchell Hashimoto
97f9948fce
core: provisioners are defined differently now
2014-10-23 18:40:14 -07:00
Mitchell Hashimoto
9d8c85e966
core: provision-with works with provisioner IDs [GH-2850]
2014-10-23 18:27:02 -07:00
Mitchell Hashimoto
cba76c3b68
core: VirtualBox is no longer the fallback, not hardcoded anywhere
...
This commit finally removes all traces of VirtualBox defaults from
Vagrant core. Vagrant now completely relies on its automated provider
detection to pick the best and most relevant provider that is available
on the system and for a specific development environment.
A "vagrant up" on one development environment might prefer VirtualBox,
another might prefer Docker. As a result of this commit (plus the few
prior), the developer doesn't need to know anymore and doesn't need to
specify a `--provider` flag. Vagrant just figures out the correct
provider.
Yay. :)
2014-10-23 16:32:36 -07:00
Mitchell Hashimoto
b7478e09f3
core: clean up default logic
2014-10-23 15:59:27 -07:00
Mitchell Hashimoto
59dbe51ef2
core: Call default_provider with the machine for commands
2014-10-23 15:53:22 -07:00
Mitchell Hashimoto
768d453739
core: Environment#default_provider can look into machines
2014-10-23 15:52:42 -07:00
Mitchell Hashimoto
4d85e0e145
core: fix failig test around choosing default provider
2014-10-23 15:37:28 -07:00
Mitchell Hashimoto
ad758bf69a
core: prefer providers in the Vagrantfile [GH-3812]
2014-10-23 15:32:54 -07:00
Gilles Cornu
097886b2ce
core: fully revert stuff from ssh_info memoization
...
5036d16461
only partially reverted
89a4a29d65
.
Related to #4670 .
2014-10-23 23:01:33 +02:00
Mitchell Hashimoto
f0a73c7c05
core: call #state in any #action call [GH-4513]
2014-10-23 12:20:16 -07:00
Mitchell Hashimoto
4827469dee
core: recognize more complex content types for json [GH-4525]
2014-10-23 11:26:56 -07:00
Mitchell Hashimoto
46b3ea64d1
core: retry download without continue if byte range not supported
...
[GH-4479]
2014-10-23 11:06:29 -07:00
Mitchell Hashimoto
2856df79ac
core: Vagrant.has_plugin? can take version requirements [GH-4650]
2014-10-23 10:52:02 -07:00
Mitchell Hashimoto
b5642e0671
Merge pull request #4573 from mkuzmin/fix-server-url
...
config.vm.box_server_url setting is ignored
2014-10-23 09:39:33 -07:00
Mitchell Hashimoto
a6c0989bc6
Revert "Merge pull request #4616 from crypt1d/master"
...
This reverts commit aec69c4627
, reversing
changes made to 88754d2904
.
2014-10-23 09:30:46 -07:00
Mitchell Hashimoto
aec69c4627
Merge pull request #4616 from crypt1d/master
...
Consider the host_ip value when handling port collisions
2014-10-23 09:26:31 -07:00
Mitchell Hashimoto
5036d16461
update CHANGELOG
2014-10-23 09:15:47 -07:00
Mitchell Hashimoto
381f1332c8
Merge pull request #4670 from gildegoma/dry-check-ssh-perms
...
Check SSH key permissions in machine.ssh_info
2014-10-23 09:14:31 -07:00
Mitchell Hashimoto
4e9c82f364
core: ignore capability error [GH-4684]
2014-10-22 21:10:36 -07:00
Anduin Withers
855bda8c26
Fix typo that prevents "vagrant box add --cert certfile -name foo URL" from working.
2014-10-22 23:19:15 -04:00
Mitchell Hashimoto
0e29dd5668
commands/rsync: handle proxy machines [GH-4066]
2014-10-22 16:17:39 -07:00
Mitchell Hashimoto
cff57c8d01
core: trigger machine_id_changed for reload [GH-3963]
2014-10-22 12:07:49 -07:00
Mitchell Hashimoto
7988f0fb7c
Fix broken unit tests
2014-10-22 09:44:48 -07:00
Mitchell Hashimoto
58f7310444
providers/virtualbox: detect conflict in name [GH-4681]
2014-10-21 15:56:32 -07:00
Seth Vargo
2f529d47e7
VMWare -> VMware
2014-10-21 18:37:53 -04:00
Gilles Cornu
89a4a29d65
Memoize machine.ssh_info when ready for connection
2014-10-20 17:45:02 +02:00
Gilles Cornu
4e81be879c
Check SSH key permissions in machine.ssh_info
...
With this change, any caller of machine.ssh_info is assured that best
efforts will be done to fix possible wrong permissions on the private
key files.
Fix #4652
2014-10-20 17:33:06 +02:00
Julien Vey
d7493892f4
Allow SSH LogLevel to be overridden
2014-10-15 08:25:29 +02:00
crypt1d
ca1456ff82
initial changes for forwarding port modifications
2014-10-10 13:01:04 +02:00
Michael Kuzmin
bdef7efb2d
Fix for ignored `config.vm.box_server_url` setting.
...
https://github.com/mitchellh/vagrant/pull/4282 introduced new setting to set alternate vagrant cloud server URLs, but it doesn't work actually.
This PR helps to process the value correctly.
2014-09-29 22:36:37 +04:00
mpoeter
c20624bfdc
Add support for linked clones for VirtualBox.
2014-09-09 19:17:04 +02:00
Ray Ruvinskiy
5a7e00c5b1
Add HTTPS download options to `box update` and `box outdated`
...
Vagrant::Box.load_metadata did not provide a way to specify the HTTPS
download options that could be specified when downloading boxes
(ca cert, ca path, client cert, insecure). As a result, while it was
possible to add a box whose metadata file needed to be downloaded with one of
those options specified, it was impossible to check for updates. The following
changes have been made to address the situation:
1. Create a DownloadMixins module to provide the --insecure, --cacert, --capth,
and --cert command line options to all of `vagrant box add`,
`vagrant box update`, and `vagrant box outdated`.
2. Extend `Vagrant::Box.has_update?` and `Vagrant::Box.load_metadata` to accept
said download options.
3. Extend `box outdated` and `box update` commands to pass download options
down.
4. Extend `Vagrant::Builtin::Action::BoxCheckOutdated` to honour download
options.
5. Options specified on the command line take precedence over options specified
in the machine configuration, if any.
6. Fix bug in `vagrant box add` where client cert was being passed down using
the wrong environment key.
7. Unit test coverage in update_test and box_check_outdated_test.
Resolves #4420
2014-09-07 23:57:34 -04:00
Mitchell Hashimoto
52e1b4ed5a
core: more logging
2014-09-02 09:15:32 -07:00
Mitchell Hashimoto
890e988ccd
core: Be more explicit about requiring version
2014-09-02 09:11:37 -07:00
Mitchell Hashimoto
140a1b8d4b
commands/version: use checkpoint data
2014-09-01 15:23:46 -07:00
Mitchell Hashimoto
09d2b6fd86
core: add Checkpoint
2014-09-01 15:06:51 -07:00
Mitchell Hashimoto
083dce5c61
Revert "core: guard against SSH to localhost:22 [GH-4070]"
...
This reverts commit 62561f2844
.
This broke WinRM. Will fix in a future version.
2014-08-30 22:55:13 -07:00
Mitchell Hashimoto
8cd2e58194
core: better messaging around box add not existing [GH-4414]
2014-08-29 13:17:40 -07:00
Mitchell Hashimoto
4138179207
commands/plugin: error if windows with space in dir [GH-4351]
2014-08-29 12:16:40 -07:00
Mitchell Hashimoto
be6665864d
communicators/ssh: nicer errors for SSH exceptions [GH-4367]
2014-08-29 11:40:50 -07:00
Mitchell Hashimoto
a0b95cb927
core: content-type is case insensitive for metadata check [GH-4369]
2014-08-29 11:27:50 -07:00
Mitchell Hashimoto
d1d8ce7d52
core: vagrant provision triggers sentinel creation [GH-4393]
2014-08-29 10:26:44 -07:00
Mitchell Hashimoto
7fe5b70d51
Merge pull request #4341 from databus23/patch-2
...
core: selecting for duration of timeout can cause hang
2014-08-29 09:52:33 -07:00
Mitchell Hashimoto
22438a481c
Update CHANGELOG
2014-08-29 09:49:38 -07:00
Mitchell Hashimoto
417c2b7c7b
Merge pull request #4387 from BackSlasher/allow-sudo
...
Ignoring SSHKeyBadOwner if user is root (uid 0)
2014-08-29 09:48:34 -07:00
Mitchell Hashimoto
023ed006bf
core: better bundler errors
2014-08-29 08:20:21 -07:00
Veres Lajos
4ef996dca9
typofixes - https://github.com/vlajos/misspell_fixer
2014-08-25 20:12:25 +01:00
Nitzan Raz
8cca8535e7
Ignoring SSHKeyBadOwner if user is root (uid 0)
...
Allows using `sudo vagrant up` without `chown`ing the insecure private key
2014-08-25 12:55:42 +03:00
Fabian Ruff
c72c8dce40
Selecting for duration of timeout can cause hang
...
When specifying a timeout, the subprocess used to select for timeout seconds on the stdout, stderr pipes.
This creates a race condition and can cause the `Subprocess#execute` to hang for the full timeout interval if the process has already exited and no more output is send to the pipes.
This race is happening with a higher probability if the subprocess is generating a lot of output.
2014-08-12 21:00:02 +02:00
Mitchell Hashimoto
e198652e75
core: don't load curlrc [GH-4328]
2014-08-10 20:49:53 -07:00
Mitchell Hashimoto
04835ae612
core: clean up Bundler tempfiles [GH-4103]
2014-08-08 16:48:53 -07:00
Mitchell Hashimoto
15f1823d5c
core: box names with colons work on Windows [GH-4100]
2014-08-08 14:47:17 -07:00
Mitchell Hashimoto
62561f2844
core: guard against SSH to localhost:22 [GH-4070]
2014-08-08 11:58:53 -07:00
Mitchell Hashimoto
7cce4cbc90
core: lock machine action on VF name too [GH-4065]
2014-08-08 11:39:49 -07:00
Mitchell Hashimoto
e673c3251c
core: forgot error for last commit
2014-08-08 11:24:39 -07:00
Mitchell Hashimoto
0da5d7b650
communicators/ssh: clean error on max session [GH-4044]
2014-08-08 09:11:25 -07:00
Mitchell Hashimoto
7f5f720e0a
core: Machine#reload
2014-08-06 16:46:31 -07:00
Mitchell Hashimoto
ac0d213c9b
core: fix crash case with provisioners [GH-4281]
2014-08-06 13:00:29 -07:00
Mitchell Hashimoto
145af54cec
core: preserve downloaded file in more cases [GH-4301]
2014-08-06 11:23:02 -07:00
Mitchell Hashimoto
d5c548a5c0
Merge pull request #4090 from mitchellh/improve-checksum-verification-performance
...
core: Improved box checksum verification performance
2014-08-06 10:29:15 -07:00
Mitchell Hashimoto
2cdcc29902
provisioners/chef: put global lock around knife exec
2014-08-06 10:24:05 -07:00
Mitchell Hashimoto
9748b5d2fa
Merge pull request #4159 from vassilevsky/windows-encodings
...
core: windows encoding fixes
2014-08-06 10:01:06 -07:00
Franz Pletz
6def193567
Add config.vm.box_server_url setting
...
This commits adds a new config setting `config.vm.box_server_url` to set
the URL of a local VagrantCloud instance in the Vagrantfile. If the
environment variable `VAGRANT_SERVER_URL` is set, it will still be
preferred.
2014-08-01 14:38:55 +02:00
Fabian Ruff
47de3225dd
Subprocess: respect listeners on final yield
2014-07-31 11:32:25 +02:00
Elan Ruusamäe
f6448e5553
Update shared_helpers.rb
...
typo fix
2014-07-27 11:46:18 +03:00
Ilya Vassilevsky
ad54e14d65
Encode directory names to filesystem encoding for proper comparison
...
Dir.entries have filesystem encoding (ANSI in Windows).
Path fragments have terminal encoding (DOS).
2014-07-08 19:01:43 +04:00
Ilya Vassilevsky
764be49b55
Encode string representation of Environment object for seamless printing
2014-07-08 18:58:58 +04:00
Shawn Neal
9c20014a85
Improved box checksum verification performance
...
When adding large boxes verifying the checksum took noticably longer than expected because the Ruby GC was needlessly working overtime.
2014-06-23 19:17:37 -07:00
Mitchell Hashimoto
4f0e527f5d
core: don't delete data dir if no data dir [GH-4017]
2014-06-12 11:30:10 -07:00
Kalman Hazins
bb052366f7
Change symbols inside hashes to 1.9 JSON-like syntax
2014-05-22 12:35:12 -04:00
Mitchell Hashimoto
07dbe40e98
Merge pull request #3848 from shtouff/feat-capath
...
added capath option to curl Downloader
2014-05-20 20:50:26 -07:00
Mitchell Hashimoto
f369c13e25
hosts/linux: niceer error if rdesktop not found
2014-05-20 19:58:12 -07:00
Mitchell Hashimoto
5798538b0c
core: don't port collision detect UDP [GH-3859]
2014-05-20 19:35:10 -07:00
Rémi Paulmier
00a2670406
added capath option to curl Downloader
2014-05-19 18:08:23 +02:00
Mitchell Hashimoto
6353c765ae
core: cygwin_path only uses cygpath in cygwin [GH-3804]
2014-05-17 12:07:43 -07:00
Mitchell Hashimoto
e107202050
core: WaitForCommunicator always asks for state
...
This forces global-status to be up-to-date typically
2014-05-17 11:55:12 -07:00
Mitchell Hashimoto
5e9cef4efd
core: only set ID on machine if data dir [GH-3827]
2014-05-17 11:41:22 -07:00
Mitchell Hashimoto
47d85d830d
core: don't double-include package in tar [GH-3637]
2014-05-10 10:36:38 -07:00
Mitchell Hashimoto
ca6e2393bd
core: providers can choose to not be defaultable [GH-3742]
2014-05-09 16:02:09 -07:00
Mitchell Hashimoto
9c684ad2b7
core: retry acquire of dotlock [GH-3735]
2014-05-09 10:28:37 -07:00
Mitchell Hashimoto
190ba4cd27
core: can add box with name of directory [GH-3732]
2014-05-09 09:24:29 -07:00
Mitchell Hashimoto
4e52facebc
core: properly yield in locker
2014-05-08 09:57:52 -07:00
Mitchell Hashimoto
86aef2249b
core: don't lock machines on SSH access
2014-05-08 09:55:23 -07:00
Takekazu Omi
7da9648089
fix subprocess external encode issue. https://github.com/mitchellh/vagrant/issues/3706
...
in io.rb
subprocess resuts convert external encoding to utf-8
in subprocess.rb
command line argument convert utf-8 to external encoding
2014-05-08 17:59:45 +09:00
Mitchell Hashimoto
d1a26bf8ca
core: add more logging to check box outdated
2014-05-07 17:21:17 -07:00
Alex Rodionov
34ec385c81
core: public_send vs send when merging configs
...
This fixes the problem when config keys collide with Kernel/Object
methods (private). An example is `exec` which is used in vagrant-exec
plugin.
Compare:
> old.send :exec
ArgumentError: wrong number of arguments (0 for 1+)
> old.public_send :exec
=> #<Vagrant::Config::V2::DummyConfig:0x007fe212cc05c8>
2014-05-07 19:02:21 +07:00
Mitchell Hashimoto
d4087db7c5
core: no active machines if there is no vagrant env
2014-05-06 13:36:42 -07:00
Mitchell Hashimoto
45fc89877c
core: MachineIndex valid test is better
2014-05-05 21:50:51 -07:00
Mitchell Hashimoto
5d94ab9e60
core: if state ID is NOT_CREATED_ID, destroy machine state
2014-05-05 21:44:34 -07:00
Mitchell Hashimoto
d526dd54fe
core: MachineIndex#valid? checks state and ID again
2014-05-05 21:29:40 -07:00
Mitchell Hashimoto
bc4d91fb73
core: Environment#cwd should expand path to full path
2014-05-05 21:17:48 -07:00
Brian Pitts
4d90fdfec5
Check usability of nfs on host
2014-05-03 16:09:08 -05:00
Mitchell Hashimoto
51ffa4181c
core: Show message when checksumming box [GH-3623]
2014-05-03 09:17:49 -07:00
Mitchell Hashimoto
604ae6caa3
communicators/ssh: detect if config.ssh.shell is non-functional [GH-3040]
2014-05-01 21:35:02 -07:00
Mitchell Hashimoto
4a53b138a0
core: Allow insecure RubyGems for plugins [GH-3610]
2014-05-01 21:14:47 -07:00
Mitchell Hashimoto
169a829cd8
core: dup the provider options so we can't overwrite them
2014-05-01 10:06:03 -07:00
Mitchell Hashimoto
52bb68ba73
core: Fix some tests, revert a change
2014-05-01 10:03:49 -07:00
Mitchell Hashimoto
cca9bffa90
core: Can exclude providers
2014-05-01 09:50:35 -07:00
Mitchell Hashimoto
ab9f91568e
core: more intuitive logic around default providers
2014-05-01 09:46:40 -07:00
Mitchell Hashimoto
a9dfb6b3bd
core: default provider chosen by usability and prority
2014-05-01 09:40:52 -07:00
Mitchell Hashimoto
429bd73495
core: provider has default priority of 5
2014-05-01 09:26:36 -07:00
Adam Spiers
36e924b73e
add support for bundler >= 1.6.x
...
bundler changed their API for Bundler::UI in 1.6.0 via this commit:
https://github.com/bundler/bundler/commit/5e38e2d7
This caused various issues, e.g.
https://github.com/mitchellh/vagrant/issues/3451
https://github.com/test-kitchen/test-kitchen/issues/401
which will hopefully be resolved by teaching vagrant to cope with both
API versions.
2014-04-30 23:32:16 +01:00
Mitchell Hashimoto
d90bc9889a
core: Lock in plugin install of a specific version
2014-04-29 16:53:12 -07:00
Mitchell Hashimoto
92df8cf6ae
Handle a lot of TODOs
2014-04-29 16:50:58 -07:00
Mitchell Hashimoto
0bb523ebb0
providers/docker: use ssh_run if asking for stdin on execute
2014-04-29 16:27:22 -07:00
Mitchell Hashimoto
68fe0b4258
core: Fix bug where if outputting empty string, would output nothing
2014-04-27 18:19:44 -07:00
Mitchell Hashimoto
03e18d1668
core: better logging around locks
2014-04-27 17:21:46 -07:00
Mitchell Hashimoto
5eeaff1662
whitespace
2014-04-27 16:36:43 -07:00
Mitchell Hashimoto
a1af2d920f
core: MachineIndex entry invalid if machine with name not in Vagrantfile
2014-04-27 16:35:54 -07:00
Mitchell Hashimoto
8c8099aebc
Merge pull request #3551 from benesch/3550
...
core: return {} if cached synced folders file missing [GH-3550]
2014-04-27 15:55:25 -07:00
Nikhil Benesch
54e580149a
core: return {} if cached synced folders file missing [GH-3550]
...
A missing synced folders cache indicates an empty cache, not a failure
that should be handled by the caller. The cache file is missing from
data dirs created by an earlier version of Vagrant.
Fixes #3550 .
2014-04-26 15:39:25 -04:00
Mitchell Hashimoto
1a08c4def5
core: Box#in_use? as an API
2014-04-25 02:02:49 -07:00
Mitchell Hashimoto
4fb9832589
core: clean up the lock cleanup code, tests
2014-04-25 01:33:25 -07:00
Mitchell Hashimoto
0ed3c5174b
core: delete environment lock files
2014-04-24 23:13:08 -07:00
Mitchell Hashimoto
84f889e801
core: more liberally release port leases
2014-04-24 22:59:17 -07:00
Mitchell Hashimoto
f2a2d93042
Revert "core: can't add boxes from network shares [GH-3279]"
...
This reverts commit 41636a8a9c
.
Conflicts:
CHANGELOG.md
2014-04-24 22:50:27 -07:00
Mitchell Hashimoto
6870de3f6d
core: add Vagrant.latest_version
2014-04-24 20:09:32 -07:00
Mitchell Hashimoto
e40b5d6cd3
core: environment_loaded doesn't load full env
2014-04-23 06:33:46 -07:00
Mitchell Hashimoto
85f4a4d5ee
commands/box/remove: if box is in use, warn user, ask for confirmation
2014-04-23 06:13:16 -07:00
Mitchell Hashimoto
a1e6d0a85e
core: Environment#action_runner sets machine_index
2014-04-22 17:15:33 -07:00
Mitchell Hashimoto
e985308e9a
core: MachineIndex::Entry#valid? method and tests
2014-04-22 17:09:44 -07:00
Mitchell Hashimoto
2660252ede
core: Store the actual box data, not just the name
2014-04-22 16:46:11 -07:00
Mitchell Hashimoto
519c8af971
core: MachineIndex stores the box associated with a machine when ID is set
2014-04-22 15:26:56 -07:00
Mitchell Hashimoto
ce08a37d5f
Very quiet mode for development
2014-04-21 13:56:39 -07:00
Mitchell Hashimoto
ee99f42e45
core: only output error on batch action if not forked
2014-04-21 13:56:36 -07:00
Mitchell Hashimoto
4ced49bf0d
core: Batch action says immediately when error occurred
2014-04-21 13:56:35 -07:00
Mitchell Hashimoto
d96c5a81af
core: Log around process locks
2014-04-21 13:56:34 -07:00
Mitchell Hashimoto
7829e9b167
core: FP collision leaser should compare ints
2014-04-21 13:56:24 -07:00
Mitchell Hashimoto
49693a6af7
core: Move FP collision leaser code to sep method so it works with alt impl
2014-04-21 13:56:22 -07:00
Mitchell Hashimoto
bd7b458cbe
core: forwarded port collision repair leases chosen ports [GH-2966]
...
In addition to checking if a port is open, we now check if a port is
"leased", which we do for a period of 60 seconds. This gives the provider
time to actually put the port into use.
2014-04-21 13:56:20 -07:00
Mitchell Hashimoto
862414af12
core: lock around machine actions
2014-04-21 13:56:09 -07:00
Mitchell Hashimoto
d2e2ccb625
core: A function for diffing synced folders
2014-04-21 13:55:56 -07:00
Mitchell Hashimoto
81df70eee0
providers/docker: support building Dockerfiles
2014-04-21 13:55:54 -07:00
Mitchell Hashimoto
623386f13c
core: port collision detector can swap open port checker
2014-04-21 13:55:38 -07:00
Mitchell Hashimoto
fe0db9a63e
core: nicer way to assure array for pviate key path
2014-04-21 13:55:34 -07:00
Mitchell Hashimoto
af7f55f47e
core: When disabling, only disable the proper folders
2014-04-21 13:55:33 -07:00
Mitchell Hashimoto
05572955f6
core: log when disabling a synced folder
2014-04-21 13:55:32 -07:00
Mitchell Hashimoto
4df8636c38
core: instantiate all keys in a V2 config prior to merging
...
This forces everything to get a new instance, so we don't accidentally
overwrite any values across multiple machines.
2014-04-21 13:55:30 -07:00
Mitchell Hashimoto
cd38f891da
providers/docker: disable synced folders on destroy
2014-04-21 13:55:27 -07:00
Mitchell Hashimoto
704ff98200
providers/docker: only sync folders if they're not already there
2014-04-21 13:55:26 -07:00
Mitchell Hashimoto
cabacae4cb
core: return nil if cached synced folders file doesn't exist
2014-04-21 13:55:24 -07:00
Mitchell Hashimoto
4557ece4df
core: SyncedFolders middleware saves what it synced
2014-04-21 13:55:23 -07:00
Mitchell Hashimoto
794cd4f287
core: MixinSyncedFolders have methods for save/reading from cache
2014-04-21 13:55:22 -07:00
Mitchell Hashimoto
10e51eb141
providers/docker: initial sync folders working through proxy VM
2014-04-21 13:55:20 -07:00
Mitchell Hashimoto
3c9219b8c9
core: Builtin SyncedFolders accepts alternate config
2014-04-21 13:55:18 -07:00
Mitchell Hashimoto
0153e0ccbb
core: Machine#action_raw for calling raw callables
2014-04-21 13:55:17 -07:00
Mitchell Hashimoto
d8bdb62ed4
core: MixinSyncedFolders lets a custom config through
2014-04-21 13:55:15 -07:00
Mitchell Hashimoto
e119a5714a
core: add "disable" method for synced folders, deprecate "prepare"
2014-04-21 13:55:09 -07:00
Mitchell Hashimoto
901d3c3558
core: MachineIndex sets paths to nil if empty
2014-04-21 13:55:06 -07:00
Mitchell Hashimoto
98af7c7992
core: Machine sets the local data path of the machine index
2014-04-21 13:55:04 -07:00
Mitchell Hashimoto
646f0fa907
core: MachineIndex preserves the local data path for an env
2014-04-21 13:55:02 -07:00
Mitchell Hashimoto
e947960c09
providers/docker: use a custom communicator to go through host VM
2014-04-21 13:54:56 -07:00
Mitchell Hashimoto
aa1abdd1c4
core: SSHExec middleware can have ssh info overridden
2014-04-21 13:54:53 -07:00
Mitchell Hashimoto
2add94ee28
core: BatchAction can run arbitrary code
2014-04-21 13:54:46 -07:00
Mitchell Hashimoto
144c874b5a
providers/docker: process-level lock on copying default Vagrantfile
2014-04-21 13:54:40 -07:00
Mitchell Hashimoto
dc2f729fd3
core: Environment#lock is more useful now
2014-04-21 13:54:39 -07:00
Mitchell Hashimoto
32c9707aa1
core: MachineIndex cleans up machine lock files
2014-04-21 13:54:38 -07:00
Mitchell Hashimoto
8c7ab333a0
Squash the f-docker-hostmachine branch.
...
Initial work
commands/up: make sure all names to with_target_vms are strings
providers/docker: create a docker host VM if needed
providers/docker: executor abstraction for driver to eventually support remote
providers/docker: vagrant executor
providers/docker: support creating the machine
providers/docker: status works if host VM is gone
providers/docker: use start fence to get real docker output
core: Call preserves stack ordering
core: support Message post option
providers/docker: Guard some features with HasSSH checks
providers/docker: much better messaging around create/destroy
providers/docker: output the container ID on create
providers/docker: copy the hostmachine Vagrantfile to the data dir
providers/docker: should make host machine before any up action
providers/docker: HandleBox before the host machine
providers/virtualbox: functional_vboxsf to disable vboxsf
providers/virtualbox: synced folder usable method should take 2 args
providers/docker: default machine name to :default
2014-04-21 13:54:33 -07:00
Mitchell Hashimoto
d42d62ead1
core: MachineIndex#vagrant_env should silence warnings
2014-04-21 13:54:32 -07:00
Mitchell Hashimoto
2b07dec059
core: Use the MachineIndex#vagrant_env method
2014-04-21 13:54:31 -07:00
Mitchell Hashimoto
a4addd0e25
core: MachineIndex keeps track of Vagrantfile name
2014-04-21 13:54:30 -07:00
Mitchell Hashimoto
09ff31e3a3
commands/global-status: add --prune flag
2014-04-21 13:54:29 -07:00
Mitchell Hashimoto
df4dfc36e7
MachineIndex lock is a monitor to allow recursion
2014-04-21 13:54:28 -07:00
Mitchell Hashimoto
5f5d3d5ef0
core: MachineIndex more aggressively reloads data
2014-04-21 13:54:27 -07:00
Mitchell Hashimoto
9b22ccbd32
core: MachineIndex updates existing entry if name, provider, path match
2014-04-21 13:54:25 -07:00
Mitchell Hashimoto
72030d2180
Note provisioners that don't work on Windows guests
2014-04-21 13:54:02 -07:00
Mitchell Hashimoto
0dc40e1680
core: MachineIndex can have extra data attached to it
2014-04-21 13:53:38 -07:00
Mitchell Hashimoto
1c29c39f1b
core: generalize the autostart stuff so we don't have a bunch of specials
2014-04-21 13:53:35 -07:00
Mitchell Hashimoto
9dd9fff637
core: check if provider is usable when requesting a machine
2014-04-21 13:53:10 -07:00
Mitchell Hashimoto
bc2e3727a9
core: Add usable? check to providers
2014-04-21 13:53:07 -07:00
Mitchell Hashimoto
aad8e7f80d
core: provision "once" or "always" [GH-2421]
2014-04-21 13:52:30 -07:00
Mitchell Hashimoto
c4a4b998df
core: Test eager loading of WinRM
2014-04-21 13:51:51 -07:00
Mitchell Hashimoto
d608e0bdfd
Eager load WinRM
...
/cc @sneal - How is this? It is dirty, but at least then it doesn't have
a global performance impact on Vagrant if you're not using WinRM
2014-04-21 13:51:50 -07:00
Mitchell Hashimoto
cddd878656
core: Don't set index uuid file if data dir is nil
2014-04-21 13:51:28 -07:00
Mitchell Hashimoto
b38876ac50
core: pass along the UI class so we don't get a silent UI
2014-04-21 13:51:26 -07:00
Mitchell Hashimoto
4349800374
core: Silence ruby warnings when loading external machines
2014-04-21 13:51:25 -07:00
Mitchell Hashimoto
a0e9f46251
core: commands can use the IDs from anywhere to control
2014-04-21 13:51:24 -07:00
Mitchell Hashimoto
9a16af10ad
core: Use Machine#state wherever possible so we update the index
2014-04-21 13:51:23 -07:00
Mitchell Hashimoto
48cf2c38f7
core: MachineIndex is enumerable
2014-04-21 13:51:21 -07:00
Mitchell Hashimoto
13a4db391a
core: Machine updates state cache when querying state
2014-04-21 13:51:20 -07:00
Mitchell Hashimoto
44e379e961
core: Machine sets index entries on ID sets
2014-04-21 13:51:19 -07:00
Mitchell Hashimoto
8a6bdbf710
core: Environment#machine_index
2014-04-21 13:51:17 -07:00
Mitchell Hashimoto
a29f5d7e01
core: Add MachineIndex#delete
2014-04-21 13:51:16 -07:00
Mitchell Hashimoto
69a290eb9d
core: replace "-" in UUIDs with ""
2014-04-21 13:51:15 -07:00
Mitchell Hashimoto
ac032db6a6
core: MachineIndex has precision locking for entries
2014-04-21 13:51:14 -07:00
Mitchell Hashimoto
016afc7922
core: Basic MachineIndex class, starting point
2014-04-21 13:51:13 -07:00
Mitchell Hashimoto
f07ee5754a
core: Configurable communicator
2014-04-21 13:51:02 -07:00
Ramon de la Fuente
f6a5e20688
Add autostart as an option for vagrant boxes
...
Added specs for the environment and vagrantfile. Added a methd to retrieve
autostart_machine_names. Changed the plugin up/command to use autostart_machine_names
when no argument was given to the command.
2014-04-21 13:50:57 -07:00
Mitchell Hashimoto
e05bfa979e
core: remove temp file when done with box
2014-04-17 08:58:38 -07:00
Mitchell Hashimoto
ec35190cfc
core: use process.alive? to avoid exceptions
2014-04-13 14:24:25 -07:00
Mitchell Hashimoto
00962c7c2a
commands/box/repackage: better error if box not found
2014-04-12 18:00:33 -07:00
Mitchell Hashimoto
2cb6a21a5a
core: Fix tests, which found broken logic in synced folders
2014-04-11 16:28:38 -07:00
Mitchell Hashimoto
2b47478d6a
core: all symlinks for synced folders are expanded [GH-3444]
2014-04-11 16:21:12 -07:00
Mitchell Hashimoto
3aad85fa30
style
2014-04-11 09:56:35 -07:00
Mitchell Hashimoto
cd2c99972b
core: No need to map! here
2014-04-11 09:32:25 -07:00
Mitchell Hashimoto
44d7c6849d
Merge pull request #3441 from berendt/sort_versions_and_print_listing
...
commands/box/remove: sort versions and print them as listing
2014-04-11 09:32:08 -07:00
Christian Berendt
8dffbe5db8
sort versions and print them as listing
...
before this patch:
```
$ vagrant box remove --box-version 0.2.9 berendt/ubuntu-14.04-amd64
You requested to remove the box 'berendt/ubuntu-14.04-amd64' version '0.2.9' with
provider 'virtualbox', but that specific version of the box is
not install. Please double-check and try again. The available versions
for this box are:
0.2.11, 0.2.10
```
after this patch:
```
You requested to remove the box 'berendt/ubuntu-14.04-amd64' version '0.2.9' with
provider 'virtualbox', but that specific version of the box is
not install. Please double-check and try again. The available versions
for this box are:
* 0.2.10
* 0.2.11
```
2014-04-11 11:39:38 +02:00
Christian Berendt
c43bd27ffe
print version when removing a specific box
...
Example:
$ vagrant box remove --box-version 0.2.9 berendt/ubuntu-14.04-amd64
Removing box 'berendt/ubuntu-14.04-amd64' with provider 'virtualbox' in version '0.2.9'...
2014-04-11 10:05:03 +02:00
Mitchell Hashimoto
41636a8a9c
core: can't add boxes from network shares [GH-3279]
2014-04-09 14:15:26 -07:00
Mitchell Hashimoto
d8ec7b02c4
commands/package: Nicer error if includes has symlinks [GH-3200]
2014-04-09 10:52:33 -07:00
Mitchell Hashimoto
e748aadf4f
core: give users chance to quit for upgrade [GH-3212]
2014-04-09 09:58:30 -07:00
Mitchell Hashimoto
1bef7dec61
Add comment to clarify
2014-04-05 09:37:59 -07:00
Mitchell Hashimoto
1cd266da9d
core: randomize perm test filename
2014-04-05 09:36:55 -07:00
Mitchell Hashimoto
5f12126d32
core: network issues don't halt Vagrant during box update check [GH-3391]
2014-04-05 09:25:03 -07:00
Mitchell Hashimoto
0e46c5d9de
core: Raise predictable error if box metadata downlaod fails
2014-04-05 09:20:03 -07:00
Mitchell Hashimoto
5b360d0990
core: BoxCollection#find version constraint can benil
2014-04-02 19:50:44 -07:00
Mitchell Hashimoto
d1caf8c624
core: Allow direct box adding again
2014-04-02 19:45:49 -07:00
Mitchell Hashimoto
3371c37162
TemplateRenderer can take a new root [GH-3231]
2014-04-02 09:53:20 -07:00
Mitchell Hashimoto
a1d9121852
synced_folders/smb: verify PowerShell v3 is running or later [GH-3257]
2014-04-02 09:45:42 -07:00
Mitchell Hashimoto
32d86ca42b
core: don't allow version for old-style box [GH-3260]
2014-04-02 09:32:34 -07:00
Mitchell Hashimoto
af7a589231
core: outdated check checks local boxes [GH-3321]
2014-04-02 08:37:03 -07:00
Mitchell Hashimoto
36ad327ec1
core: ignore if box doesn't exist on update check [GH-3326]
2014-04-02 08:24:38 -07:00
Mitchell Hashimoto
097dd2917c
core: better error when adding box with malformed version [GH-3332]
2014-04-01 22:48:52 -07:00
Mitchell Hashimoto
8c8c6c132c
core: lock prerelease gems
2014-04-01 22:28:33 -07:00
Mitchell Hashimoto
9c570adbd7
Merge pull request #3301 from mitchellh/fix-issue-3285
...
core: fix prerelease gem versions
2014-04-01 22:25:43 -07:00
Mitchell Hashimoto
b6259c2ae9
core: Ignore if temporary box file doesn't exist when adding
2014-04-01 22:18:49 -07:00
Mitchell Hashimoto
666b270e0b
core: can add boxes with spaces in paths [GH-3306]
2014-04-01 22:18:37 -07:00
Mitchell Hashimoto
7d0cbcb686
Merge pull request #3318 from ecoleman/patch-1
...
core: properly escape path in cygwin bash check
2014-04-01 22:02:29 -07:00
Mitchell Hashimoto
8195f7faab
core: add test for removing box version [GH-3364]
...
/cc @berendt - Added a test
2014-04-01 21:47:51 -07:00
Christian Berendt
7d38d78fee
handle exception when removing a non existinga box version
...
When trying to remove a not existing version of an existing box an
exception is thrown. The exception should be handled and some message
(box version 0.1.2 not available) should be printed.
With this patch the exception is handled correctly by using a newly
introduced exception BoxRemoveVersionNotFound.
Example output:
You requested to remove the box 'berendt/alpine-2.7.5-amd64' with provider
'virtualbox' in version '0.0.2'. The box 'berendt/alpine-2.7.5-amd64'
exists but not in the specified version '0.0.2'.
Please double-check and try again.
The available versions for this box are: 0.1.0
Fixes issue #3344
2014-03-31 20:32:34 +02:00
Eric Coleman
f32a865abd
Properly escape path in cygwin bash check
...
Quick attempt at properly fixing #3304
2014-03-25 18:36:05 -04:00
Shawn Neal
0a2992b92d
Fixed issue 3285
...
When using prerelease gems we need to ensure we store the gem version otherwise Bundler won't use the correct gem version since prerelease gems are not available by default. By storing the gem version for prerelease gems, we allow Bundler to properly resolve prerelease gems and not give potentially confusing errors to Vagrant users using prerelease plugins.
2014-03-21 08:15:24 -07:00
Mitchell Hashimoto
846f942ff0
core: check for data_dir [GH-3208]
2014-03-14 14:04:00 -07:00
Jonas Stendahl
d7320399e2
Fixed broken PowerShell scripts execution [GH-3192]
2014-03-14 12:42:28 +01:00
Mitchell Hashimoto
024056fc66
Set the Bundler UI only if we enable it [GH-3193]
2014-03-13 14:18:33 -07:00
Mitchell Hashimoto
513efa6739
core: Downloads with user/pass use curl -u flag [GH-3183]
2014-03-13 08:53:18 -07:00
Mitchell Hashimoto
8634cc309b
core: error earlier if adding a path that doesn't exist
2014-03-12 20:33:12 -07:00
Mitchell Hashimoto
621369ebba
core: Execute PowerShell scripts even with spaces in dir [GH-3100]
2014-03-12 19:49:45 -07:00
Mitchell Hashimoto
5863ffdf7b
core: Windows paths work for box add [GH-3132]
2014-03-11 11:27:35 -07:00
Mitchell Hashimoto
49471ffbf6
core: output when upgrading home path
2014-03-11 11:06:38 -07:00
Mitchell Hashimoto
eb9b85c388
core: UI#ask with no echo works even if noecho not supported [GH-3119]
2014-03-11 09:58:49 -07:00
Mitchell Hashimoto
2a93b6c396
core: Assume box isn't metadata if > threshold [GH-3107]
2014-03-11 08:44:05 -07:00
Mitchell Hashimoto
122319834c
core: Setup the tmp_path before calling setup_home_path [GH-3095]
2014-03-10 15:09:09 -07:00
Mitchell Hashimoto
b6830639dd
core: EINVAL is not a metadata URL
2014-03-10 14:33:30 -07:00
Mitchell Hashimoto
ee23b87eb6
core: Private boxes authenticate metadata box URLs too
2014-03-09 19:24:54 -07:00
Mitchell Hashimoto
04a19e05ca
synced_folders/rsync: convert to proper unix-style path [GH-3086]
2014-03-09 18:22:00 -07:00
Mitchell Hashimoto
c6b07e10c9
core: Cygwin path conversion must replace slashes first
2014-03-07 22:56:47 -08:00
Mitchell Hashimoto
914d177346
core: Fix misleading wording in pre-rubygems [GH-3078]
2014-03-07 10:44:00 -08:00
Mitchell Hashimoto
4c9e6e46b2
provisioners/salt: don't use exteranl deep_merge [GH-2348]
2014-03-07 09:18:34 -08:00
Mitchell Hashimoto
adc8151a4a
core: the provision sentinel should be backwards compatible
2014-03-06 09:25:29 -08:00
Mitchell Hashimoto
79df69392f
core: initialize synced folder class only once [GH-3067]
2014-03-06 08:35:21 -08:00
Mitchell Hashimoto
6fefef7538
core: packaging works again
2014-03-05 13:37:15 -08:00
Mitchell Hashimoto
7f2fe524b3
core: use default color by default (not white)
2014-03-05 10:19:53 -08:00
Mitchell Hashimoto
3348b5d7a6
core: set default server URL
2014-03-05 07:20:52 -08:00
Mitchell Hashimoto
c098a3296b
core: safer dup checks for synced folders
2014-03-03 20:38:59 -08:00
Mitchell Hashimoto
4437bcd77f
core: better error if attempting to uninstall system plugin
2014-03-03 15:05:32 -08:00
Mitchell Hashimoto
b5637da6c4
core: plugin manager marks system gems as system
2014-03-03 14:55:34 -08:00
Mitchell Hashimoto
7710fd16fa
core: load system plugins if they are installed
2014-03-03 09:44:29 -08:00
Mitchell Hashimoto
616bf15df5
core: Vagrant.installer_embedded_dir
2014-03-03 09:37:22 -08:00
Bernhard Morgenstern
9f612402e9
Read box file in binary mode for checksum
2014-03-02 02:31:29 +01:00
Mitchell Hashimoto
a858257ffe
core: duplicate URL array when authing so we don't mess up original
2014-03-01 12:32:58 +01:00
Mitchell Hashimoto
5018e4d8a4
core: checksums supported when adding box from metadata
2014-03-01 12:03:22 +01:00
Mitchell Hashimoto
23bd397cb8
core: BoxMetadata supports checksums
2014-03-01 11:59:16 +01:00
Mitchell Hashimoto
ce350fe872
core: box checksums just work properly again for direct box adds
2014-03-01 11:54:37 +01:00
Mitchell Hashimoto
7926f7f051
core: box URLs can be authenticated by hooking
2014-03-01 11:38:04 +01:00
Mitchell Hashimoto
736bd8d34e
core: remove unused variable from Message builtin
2014-02-28 05:17:52 -06:00
Mitchell Hashimoto
c735e81e4d
core: expand IsState to support inversions
2014-02-27 08:13:12 -08:00
Mitchell Hashimoto
e93038fd0e
providers/hyperv: suspend/resume
2014-02-27 08:13:11 -08:00
Mitchell Hashimoto
784a5b2e32
providers/hyperv: all sorts of tests to verify Windows/admins
2014-02-27 08:12:51 -08:00
Mitchell Hashimoto
a1958ee12f
providers/hyperv: shuffle things around
2014-02-27 08:12:48 -08:00
Mitchell Hashimoto
6b17783688
synced_folders/nfs: unavailable on Windows
2014-02-27 08:11:50 -08:00
Mitchell Hashimoto
5f1caf3ada
core: re-ask if confirmation bad input [GH-3027]
2014-02-26 08:01:45 -08:00
Mitchell Hashimoto
dfee3f8445
core: default URL will be https
2014-02-25 21:39:32 -08:00
Mitchell Hashimoto
b8676a65dd
core: Vagrant.server_url should default if empty
2014-02-25 21:39:05 -08:00
Lucas Heinlen
e530108b6a
Do not to_s the machine id if it is nil
...
When destroying a machine, the machine id is set to nil, the to_s causes it to be set to empty string. This can cause inconsistent behavior in anything (such as plugins) that tests the machine id.
2014-02-24 15:43:58 -05:00
Mitchell Hashimoto
4c070a04d2
core: if can't communicate, force halt right away
2014-02-23 22:25:59 -08:00
Mitchell Hashimoto
8bb0094113
Avoid locking in trap context
2014-02-23 22:22:18 -08:00
Mitchell Hashimoto
a667893cbf
provisioners/shell: error if invalid encoding [GH-3000]
2014-02-23 21:50:53 -08:00
Mitchell Hashimoto
399a3e48da
core: provisioner sentinel should check machine ID
2014-02-23 21:23:31 -08:00
Mitchell Hashimoto
0e3b3d654d
Depend on ChildProcess 0.5.0, fix bugs
2014-02-18 11:15:19 -08:00
Mitchell Hashimoto
4f89bdb947
core: disable parallelization if only one action
2014-02-15 16:37:27 -08:00
Mitchell Hashimoto
4e90aa7824
core: copy all sub-directories in a box properly
...
This avoids an Errno::EACCES on windows, although I'm really unsure why.
2014-02-15 15:55:33 -08:00
Mitchell Hashimoto
a4f64d0148
core: ui can hide details
2014-02-13 21:09:02 -08:00
Mitchell Hashimoto
d2d96a0726
core: keep process group for SSH childprocess
2014-02-13 16:45:45 -08:00
Mitchell Hashimoto
5fb64dfca2
core: use Process#wait since childprocess bug is fixed
2014-02-13 07:40:33 -08:00
Mitchell Hashimoto
8bfb4bda2b
core: make sure any Subprocess exits no matter what
2014-02-12 21:35:54 -08:00
Mitchell Hashimoto
42fa0a6540
core: poll for process exit on SSH#exec with subprocess
2014-02-12 21:31:05 -08:00
Mitchell Hashimoto
79581df71b
core: chomp the version so we can echo into it
2014-02-12 15:01:12 -08:00
Mitchell Hashimoto
2c72c32df0
core: Modify Bundler settings to work with restricted permissions
...
This includes two changes:
1. Change the Vagrant requirement to use the "= VERSION" constraint.
The "path:" previously requires write permission in the directory
of the gemspec, which we don't have in installers.
2. Set a BUNDLE_APP_CONFIG and BUNDLE_PATH setting. By setting this,
Bundler won't ask for sudo password. Bundler never actually needs it;
it is just overly aggressive in thinking it does.
2014-02-12 14:24:17 -08:00
Mitchell Hashimoto
06a7c88316
core: HandleBox keeps the same machine instance
2014-02-11 16:06:03 -08:00
Mitchell Hashimoto
c280af0b9c
core: keep the same UI when handling a box URL
2014-02-11 16:03:25 -08:00
Mitchell Hashimoto
2550a76edb
core: Machine can set box
2014-02-11 13:31:50 -08:00
Mitchell Hashimoto
dd9dd5127c
Merge pull request #2948 from gnawhleinad/master
...
command/*: clean up usage
2014-02-10 09:02:32 -08:00
Mitchell Hashimoto
342fba8182
core: Ui::Prefixed values instance-level opts
2014-02-08 15:15:06 -08:00
Mitchell Hashimoto
e6ca9d6f81
core: Ui::Prefixed can take prefix_spaces option
2014-02-08 15:14:21 -08:00
Mitchell Hashimoto
2d7c161f49
core: Ui#dup works properly
2014-02-08 15:11:51 -08:00
Mitchell Hashimoto
86454ddac9
core: Environment#lock tests
2014-02-08 14:50:52 -08:00
Mitchell Hashimoto
1e50e7aca1
core: Prefixed UI only requests bolding if not specified at instance-level
2014-02-08 14:26:26 -08:00
Mitchell Hashimoto
efc1bf50dd
core: Machine#with_ui
2014-02-08 14:03:31 -08:00
gnawhleinad
fbcac2978e
clean up usage
2014-02-08 00:20:50 -08:00
Mitchell Hashimoto
2846850306
core: HandleBox reloads machine from proper Vagrantfile
2014-02-07 11:51:04 -08:00
Mitchell Hashimoto
46a42eb9c2
core: when loading box metadata, specify JSON header
2014-02-07 10:51:57 -08:00
Mitchell Hashimoto
b9aa2acddc
core: request JSON type when getting the metadata URL
2014-02-07 10:33:08 -08:00
Mitchell Hashimoto
d4c753c48d
core: download metadata with JSON accept header
2014-02-07 10:30:25 -08:00
Mitchell Hashimoto
8e9ceeaf5c
core: Machine has reference to Vagrantfile
2014-02-07 09:16:55 -08:00
Mitchell Hashimoto
66f722ef68
core: Alphabetize functions and comment better in Environment
2014-02-06 21:36:57 -08:00
Mitchell Hashimoto
8af67cf241
core: update docs for Vagrant::Environment
2014-02-06 21:33:28 -08:00
Mitchell Hashimoto
3533256cd7
core: Vagrantfile can create machines, Environment#machine uses that
2014-02-06 21:31:11 -08:00
Mitchell Hashimoto
506e1a433f
core: Vagrantfile#machine_config returns more info now
2014-02-06 21:04:59 -08:00
Mitchell Hashimoto
e2403c093d
core: Vagrantfile class now adheres to box_version
2014-02-06 20:17:24 -08:00
Mitchell Hashimoto
7549704c5b
core: Environment#config_global is gone!
2014-02-06 20:12:16 -08:00
Mitchell Hashimoto
e3a67f7ab6
core: Environment uses the new Vagrantflie class
2014-02-06 20:12:15 -08:00
Mitchell Hashimoto
99346cc516
core: add Vagrantfile class, tests
2014-02-06 20:11:12 -08:00
Mitchell Hashimoto
cac0fdb490
core: Add the default server URL
2014-02-05 21:20:37 -08:00
Mitchell Hashimoto
becc349846
core: handle native windows paths like 'c:\foo.box'
...
[GH-2081]
2014-02-05 21:20:35 -08:00
Mitchell Hashimoto
751b4da2c6
core: if box is unversioned, check update does nothing
2014-02-05 21:20:32 -08:00
Mitchell Hashimoto
647563edaf
core: shorthand boxes must be foo/bar formatted, better errors
2014-02-05 21:20:31 -08:00
Mitchell Hashimoto
433e789a99
core: set URL to opaque if there is no path
2014-02-05 21:20:30 -08:00
Mitchell Hashimoto
b194525521
core: output a newline after ask with no echo
2014-02-05 21:20:28 -08:00
Mitchell Hashimoto
1a7b78e00e
core: UI supports not echoing
2014-02-05 21:20:27 -08:00
Mitchell Hashimoto
7a6d1a3ff1
commands/box: update command can update a specific box now
2014-02-05 21:20:23 -08:00
Mitchell Hashimoto
43157fba18
core: output the version that is added with BoxAdd
2014-02-05 21:20:20 -08:00
Mitchell Hashimoto
61a1082d65
core: BoxCheckOutdated is *much* simpler, unified logic, tests
2014-02-05 21:20:18 -08:00
Mitchell Hashimoto
bfca65b098
core: better output for BoxCheckOutdated
2014-02-05 21:20:16 -08:00
Mitchell Hashimoto
ea06202903
core: get rid of unnecessary lines
2014-02-05 21:20:15 -08:00
Mitchell Hashimoto
b5157df2cc
core: BoxCheckOutdated only runs if told to
2014-02-05 21:20:14 -08:00
Mitchell Hashimoto
8cc16d14fa
core: BoxCheckOutdated checks locally
2014-02-05 21:20:13 -08:00
Mitchell Hashimoto
d78194654d
core: ability to hide success UI
2014-02-05 21:20:12 -08:00
Mitchell Hashimoto
e537e02d9d
core: BoxCheckOutdated can check if a box is outdated
2014-02-05 21:20:11 -08:00
Mitchell Hashimoto
f2509f5c65
commands/box: outdated command to find outdated boxes
2014-02-05 21:20:10 -08:00
Mitchell Hashimoto
b81686e2c9
core: BoxAdd adds the metadata URL
2014-02-05 21:20:08 -08:00
Mitchell Hashimoto
bd9f375263
core: Box can store a metadata URL
2014-02-05 21:20:07 -08:00
Mitchell Hashimoto
e9afe386c1
core: remove BoxUpgradeRequired exception
2014-02-05 21:20:06 -08:00
Mitchell Hashimoto
d278fb2661
core: catch ENOENT as not a metadata URL
2014-02-05 21:20:04 -08:00
Mitchell Hashimoto
2ea6f92a6c
core: Cleaner output for BoxAdd
2014-02-05 21:20:03 -08:00
Mitchell Hashimoto
fa77d6810f
core: BoxAdd expands URL paths
2014-02-05 21:20:02 -08:00
Mitchell Hashimoto
8ab3ae1bef
core: BoxAdd UI looks better
2014-02-05 21:20:00 -08:00
Mitchell Hashimoto
f0607c6df0
core: BoxAdd supports multiple URLs properly
2014-02-05 21:19:59 -08:00
Mitchell Hashimoto
38248c240c
core: BoxAdd errors if name doesn't match metadata
2014-02-05 21:19:58 -08:00
Mitchell Hashimoto
b23ad41c40
core: HandleBox reloads the box
2014-02-05 21:19:57 -08:00
Mitchell Hashimoto
f2c4adc4ee
core: use symbol names for providers everywhere
2014-02-05 21:19:56 -08:00
Mitchell Hashimoto
e316e10552
core: make sure the env has the UI in it for adding boxes
2014-02-05 21:19:55 -08:00
Mitchell Hashimoto
a115750401
core: HandleBox works with metadata boxes
2014-02-05 21:19:52 -08:00
Mitchell Hashimoto
b2fa785d07
core: Environment loads proper version of box
2014-02-05 21:19:51 -08:00
Mitchell Hashimoto
d08866e9f3
core: nicer error if shorthand can't be found
2014-02-05 21:19:49 -08:00
Mitchell Hashimoto
1bd3275b3b
core: output the expanded URL
2014-02-05 21:19:48 -08:00
Mitchell Hashimoto
5aba445cac
core: shorthand box adds wor
2014-02-05 21:19:47 -08:00
Mitchell Hashimoto
f9fe025d10
core: helper to get the server URL
2014-02-05 21:19:46 -08:00
Mitchell Hashimoto
7b8002eba7
core: don't prefix ask statements
2014-02-05 21:19:45 -08:00
Mitchell Hashimoto
b71cde6b99
core: make box add UI much icer
2014-02-05 21:19:44 -08:00
Mitchell Hashimoto
c7fc9d1d46
core: BoxRemove works, tests
2014-02-05 21:19:42 -08:00
Mitchell Hashimoto
8ef13b037c
core: add a space to the question;
2014-02-05 21:19:40 -08:00
Mitchell Hashimoto
f9c9559320
core: ask what provider to use if multiple providers
2014-02-05 21:19:38 -08:00
Mitchell Hashimoto
e38ce34e56
core: make the BoxAdd UI look a bit better
2014-02-05 21:19:37 -08:00
Mitchell Hashimoto
acc57a3c18
core: clarify output for boxadd error message
2014-02-05 21:19:36 -08:00
Mitchell Hashimoto
0fceed6ff4
core: BoxAdd uses the proper path on Unix
2014-02-05 21:19:35 -08:00
Mitchell Hashimoto
05eeefbe36
core: Fix Downloader tests
2014-02-05 21:19:34 -08:00
Mitchell Hashimoto
c31feb0e94
core: fix missing interpolation for boxcollection
2014-02-05 21:19:33 -08:00
Mitchell Hashimoto
8f0f0506d6
core: BoxAdd requires name if old-style box
2014-02-05 21:19:32 -08:00
Mitchell Hashimoto
09e8666296
core: BoxAdd now works with HTTP URLs
2014-02-05 21:19:31 -08:00
Mitchell Hashimoto
03b22ab9a1
core: add the box_added to the middleware
2014-02-05 21:19:30 -08:00
Mitchell Hashimoto
1ca7f86f76
core: verify providers with direct box adding
2014-02-05 21:19:29 -08:00
Mitchell Hashimoto
75cffe53d1
core: BoxAdd checks if box already exists for metadata
...
unless force
2014-02-05 21:19:28 -08:00
Mitchell Hashimoto
c1989603be
core: adding from metadata wlil force if specified
2014-02-05 21:19:27 -08:00
Mitchell Hashimoto
2a08302145
core: BoxAdd can add old boxes (happy path)
2014-02-05 21:19:26 -08:00
Mitchell Hashimoto
961d3607b9
core: add newline to end of download if windows
2014-02-05 21:19:24 -08:00
Mitchell Hashimoto
adbcc9f34e
core: delete the temporary file if adding succeeds
2014-02-05 21:19:23 -08:00
Mitchell Hashimoto
ee139eb79d
core: more output for box adding
2014-02-05 21:19:22 -08:00
Mitchell Hashimoto
5b075fa34e
core: BoxAdd adds matching provider even if lower version
2014-02-05 21:19:20 -08:00
Mitchell Hashimoto
80194cde35
core: BoxMetadata#version can constrain by providers
2014-02-05 21:19:19 -08:00
Mitchell Hashimoto
7d44cd61c9
core: BoxAdd can add from metadata, version constraints, more
2014-02-05 21:19:18 -08:00
Mitchell Hashimoto
15aa91b073
core: can add/search boxes with slashes in name
2014-02-05 21:19:17 -08:00
Mitchell Hashimoto
8abcc6e5f2
core: BoxMetadata can read the JSON description
2014-02-05 21:19:15 -08:00
Mitchell Hashimoto
e111b7a691
core: environment tests pass
2014-02-05 21:19:12 -08:00
Mitchell Hashimoto
d87c414327
core: Box has a version field
2014-02-05 21:19:10 -08:00
Mitchell Hashimoto
87a85488d1
core: all box collection tests pass
2014-02-05 21:19:09 -08:00
Mitchell Hashimoto
4c1fa7359d
core: BoxCollection can find with version constraints
2014-02-05 21:19:07 -08:00
Mitchell Hashimoto
77b5fa94b7
core: BoxCollection#all returns versions
2014-02-05 21:19:06 -08:00
Mitchell Hashimoto
6cddb92407
core: error if newer home dir version is detected
2014-02-05 21:19:05 -08:00
Mitchell Hashimoto
b52d33e0af
core: upgrade to v1.5 box dir format if it can
2014-02-05 21:19:04 -08:00
Mitchell Hashimoto
5253da79cd
core: use a Monitor in BoxCollection
2014-02-05 21:19:03 -08:00
Mitchell Hashimoto
a03bc763f9
core: tests around the environment setup_version
2014-02-05 21:19:01 -08:00
Mitchell Hashimoto
f72db0c611
core: config raises NoMethodError on bad calls once finalized
2014-02-05 16:14:58 -08:00
Mitchell Hashimoto
5030a16f84
kernel/v2: default all configs properly, remove config/default.rb
2014-02-05 15:36:35 -08:00
Mitchell Hashimoto
f63ef395f1
Merge branch 'rsync_install' of https://github.com/tmatilai/vagrant into tmatilai-rsync_install
...
Conflicts:
plugins/guests/freebsd/plugin.rb
plugins/guests/netbsd/plugin.rb
plugins/guests/openbsd/plugin.rb
2014-02-03 12:12:49 +01:00
Mitchell Hashimoto
592c577b2e
Merge pull request #2922 from tmatilai/file_provisioner_expand_path
...
provisioners/file: expand destination path if capable
2014-02-03 02:52:57 -08:00
Teemu Matilainen
e634cdc824
guests: rename LinuxShellExpandFailed error to ShellExpandFailed
...
Make the error generic for all guests (`DarwinShellExpandFailed` didn't
even exist) and not tied to synced folder.
2014-02-02 17:26:54 -03:00
Mitchell Hashimoto
07389f26ed
core: Force bundler usage if in Installer
2014-02-02 20:32:39 +01:00
Mitchell Hashimoto
3ed7b2618a
Add new version.txt used to generate installers
2014-02-02 15:33:12 +01:00
Mitchell Hashimoto
bc55081e9f
core: execute the specified Vagrant executable in pre-rubygems.rb
2014-02-01 16:28:45 +01:00
Teemu Matilainen
ee2ae94c25
synced_folders/rsync: Install `rsync` on guest if needed
...
Add new `rsync_installed` and `rsync_install` guest capabilities
to detect and install `rsync`.
Also copy `rsync_pre` capability to all Unix guests.
2014-01-31 02:12:57 -03:00
Mitchell Hashimoto
83b22de944
Merge pull request #2888 from obfusk/fix-mktmpdir
...
core: Clean up temp dir used by fs_case_sensitive?
2014-01-27 09:26:43 -08:00
Mitchell Hashimoto
a924a7b48c
core: provider capabilities
2014-01-26 14:15:06 -08:00
Felix C. Stegerman
5c3555b56b
Clean up temp dir used by fs_case_sensitive?
2014-01-25 04:57:52 +01:00
Mitchell Hashimoto
0e9cac5b07
core: clear line with \033[K
2014-01-23 13:22:10 -08:00
Mitchell Hashimoto
00530303fb
core: color success Ui green
2014-01-23 13:15:07 -08:00
Mitchell Hashimoto
2b9e7ca14e
core: merge default synced folders ,don't override [GH-2873]
2014-01-21 20:13:08 -08:00
Mitchell Hashimoto
e80552b6aa
core: if synced folder type is blank, use default
2014-01-21 20:10:32 -08:00
Mitchell Hashimoto
06f1ebf752
core: add more tests for MachineReadable UI
2014-01-21 12:11:53 -08:00
Mitchell Hashimoto
f2f58655e8
core: get rid of more references to scope, old terminology
2014-01-21 12:06:04 -08:00
Mitchell Hashimoto
26366d0673
core: remove BasicScope class, not used anymore
2014-01-21 12:04:32 -08:00
Mitchell Hashimoto
a32e154e6e
core: use cleaner UI abstractions
2014-01-20 17:18:36 -08:00
Mitchell Hashimoto
fc86a10796
core: only bold when output is part of a machine
2014-01-20 16:37:06 -08:00
Mitchell Hashimoto
714c690d8b
Merge pull request #2857 from mitchellh/f-ui-revamp
...
UI revamp
2014-01-20 16:22:36 -08:00
Carlos López
8d1cc513ec
Fixed: dup string if frozen when formatting output for machine.
2014-01-19 14:34:32 +00:00
Mitchell Hashimoto
3f62addac2
core: make output white for now
2014-01-17 21:53:17 -08:00
Mitchell Hashimoto
0eec9aa599
core: extensive tests for Vagrant::UI classes
2014-01-17 21:31:07 -08:00
Mitchell Hashimoto
ac2ca2537d
core: Ui color should be red on errors, yellow on warnings
2014-01-17 21:03:05 -08:00
Mitchell Hashimoto
1b8f1a3864
core: convert more output to `output` method
2014-01-17 21:03:04 -08:00
Mitchell Hashimoto
5b449c8000
providers/virtualbox: many `detail` level output
2014-01-17 21:03:00 -08:00
Mitchell Hashimoto
b557ee5625
core: align text and make sure its all lined up with prefixes
2014-01-17 21:02:59 -08:00
Mitchell Hashimoto
f3d102e069
core: colorize VM output for each VM in a command
2014-01-17 21:02:58 -08:00