Commit Graph

2994 Commits

Author SHA1 Message Date
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