Commit Graph

2341 Commits

Author SHA1 Message Date
Mitchell Hashimoto 5ca89383f8 Simplify cygwin check everywhere 2013-04-06 16:05:13 -07:00
Mitchell Hashimoto fb9c311b4d Always colorize Cygwin output 2013-04-06 16:03:25 -07:00
Mitchell Hashimoto fbdd46a130 On Windows, prefer USERPROFILE for home directory path 2013-04-06 15:53:58 -07:00
Mitchell Hashimoto 744c879998 Don't repair forwarded port to used forwarded port 2013-04-06 14:12:33 -07:00
Mitchell Hashimoto 17a312b293 Expand the file URL when adding a box 2013-04-05 21:27:00 -07:00
Mitchell Hashimoto 1957efb4e1 Nicer error if ansible-playbook is not installed on the host 2013-04-04 14:01:26 -07:00
Mitchell Hashimoto cf9eb509a9 Don't preserve modified time when untarring files [GH-1539] 2013-04-04 13:32:37 -07:00
Mitchell Hashimoto 067f431ee9 Better debugging on searching for capabilities 2013-04-03 23:46:39 -07:00
Mitchell Hashimoto 2f232e0175 Halt and mount NFS are caps 2013-04-03 23:33:20 -07:00
Mitchell Hashimoto 61d2f9f96f SetHostname uses new cap system 2013-04-03 23:18:12 -07:00
Mitchell Hashimoto 63f28a9011 Nicer error messages for new linux caps 2013-04-03 23:14:24 -07:00
Mitchell Hashimoto 28d3f274d8 First capability for linux 2013-04-03 23:01:43 -07:00
Mitchell Hashimoto 819ef46fca Tests for registering guest capabilities 2013-04-03 22:43:35 -07:00
Mitchell Hashimoto c5c15fdaa6 Machine#guest returns the proper guest detected 2013-04-03 22:40:30 -07:00
Mitchell Hashimoto f48b0796a5 Forward arguments down to capability 2013-04-03 22:20:45 -07:00
Mitchell Hashimoto cf3c1b73d2 Guest#capability to execute capabilities 2013-04-03 22:19:20 -07:00
Mitchell Hashimoto 06a9968ec4 Guest#capability? for testing for capabilities 2013-04-03 22:03:03 -07:00
Mitchell Hashimoto 52f3847b0a Laying the foundation for the new guest plugin 2013-04-03 21:47:57 -07:00
Mitchell Hashimoto 4ffc2c3b74 Invalid configuration keys are caught and shown in user friendly way
[GH-1484]
2013-04-03 16:18:37 -07:00
Mitchell Hashimoto 52a2f48b20 Provider-specific configuration overrides via 2nd block param
Example:

Vagrant.configure("2") do |config|
  # ...

  config.vm.provider :virtualbox do |p, vb_config|
    vb_config.vm.box = "virtualbox_box"
  end
end
2013-04-03 14:57:14 -07:00
Mitchell Hashimoto 0f0c0b0396 Add max redirects for download 2013-04-03 12:01:12 -07:00
Mitchell Hashimoto 5e2549fe8b Add "--insecure" flag for downloader 2013-04-03 11:57:40 -07:00
Mitchell Hashimoto 58b7c65a69 Remove the downloaders 2013-04-03 11:45:46 -07:00
Mitchell Hashimoto ab19b506bd Get rid of unnecessary variable 2013-04-03 08:31:43 -07:00
Mitchell Hashimoto d1eccbf98f SafeChdir all the things for thread safety 2013-04-03 08:31:43 -07:00
Mitchell Hashimoto bd60d6b283 Lock around chdir in Subprocess for thread safety 2013-04-03 08:31:43 -07:00
Mitchell Hashimoto c84c609633 Gracefully handle errors in parallel cases 2013-04-03 08:31:43 -07:00
Mitchell Hashimoto 368dddd950 Allow only one Environment#batch to run at a time per env 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto d6a84b5ca4 Environment#batch and forcing disable through env var 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto 3d8271a3a2 BatchAction for running actions in parallel 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto 7446b3c4ef Make the Basic/Colored UI objects threadsafe 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto 7b0745abcc UI objects use "scopes" now 2013-04-03 08:31:42 -07:00
JD Harrington 8cd74fee16 Allow override of default_provider
Set the VAGRANT_DEFAULT_PROVIDER environment variable to override the
value of default_provider.
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto 2e50a238fc Provider plugins can provide arbitrary options 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto 87f7cba16b Fix cURL parsing with invalid blanks 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto d1e2596ce5 Properly accumulate and parse cURL output for progress 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto 05c6379abb Setup file protocol if adding a box from a file 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto 25f66cee51 Remove downloaders, no longer needed 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto 6c1eb2b007 Download boxes using CURL! 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto 94dd210be7 Return the value of the yielded block in Busy 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto b9a2855fcb Tests for the downloader 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto 913e0e529d Initial downloader implementation 2013-04-03 08:31:40 -07:00
Mitchell Hashimoto 06d055f443 Up the version to 1.2.0 development 2013-04-03 08:31:40 -07:00
Mitchell Hashimoto 8aff752cfb v1.1.6 2013-04-03 08:31:10 -07:00
Mitchell Hashimoto 90f18c41be v1.1.5 2013-04-02 15:13:41 -07:00
Mitchell Hashimoto 4f1a3dad8c Retry SSH on Errno::EACCES 2013-03-31 20:27:08 -07:00
Mitchell Hashimoto e5539eb769 Only prepend/append once for hooks 2013-03-30 14:57:47 -07:00
Mitchell Hashimoto c6a2d01cdf Allow disabling prepend/append hooks 2013-03-30 14:51:10 -07:00
Mitchell Hashimoto 30053638af Human friendly error on exit code 126 from VBoxManage 2013-03-29 13:14:00 -07:00
Mitchell Hashimoto 8156185f5d Don't error too early when config.vm.box is not properly set 2013-03-29 12:54:01 -07:00
Mitchell Hashimoto 72e0a691db Don't load plugins.json plugins in Bundler env 2013-03-28 17:02:54 -07:00
Mitchell Hashimoto 64921db66f Error message if private key not owned by right user [GH-1503] 2013-03-28 16:54:39 -07:00
Mitchell Hashimoto 0272db698b Up version for development 2013-03-28 15:34:25 -07:00
Mitchell Hashimoto 87613ec939 v1.1.4 2013-03-25 14:33:00 -07:00
Mitchell Hashimoto 0903e62add v1.1.3 2013-03-25 11:48:10 -07:00
Mitchell Hashimoto 43d85930ed Improve network interface detection to avoid crash [GH-1480] 2013-03-22 10:51:07 -07:00
Mitchell Hashimoto 7e125db669 Fix obscure error with world writable temp dir 2013-03-21 17:31:23 -07:00
Mitchell Hashimoto a4745fb426 Properly handle forward port collision detection with auto-correct
[GH-1472]
2013-03-21 16:33:06 -07:00
Mitchell Hashimoto 11ad039275 Get rid of Vagrant::SSH, unused 2013-03-20 16:18:14 -07:00
Fabio Rehm 4108574b17 Remove Vagrant::TestHelpers
Things are easier to test now. The module is not used internally neither it is
up to date with recent changes.
2013-03-20 15:04:52 -03:00
Mitchell Hashimoto 847cbb9ed3 Allow anything that can #to-s for Vagrant.plugin 2013-03-18 21:34:37 -07:00
Mitchell Hashimoto 715539eac3 Up version for development 2013-03-18 14:35:03 -07:00
Mitchell Hashimoto 67bd4d30f7 v1.1.2 2013-03-18 13:51:15 -07:00
Mitchell Hashimoto 5ad6c2a94a Up version for development 2013-03-18 11:24:18 -07:00
Mitchell Hashimoto f743fed3cc v1.1.1 2013-03-17 23:05:16 -07:00
Mitchell Hashimoto 022c1daec0 Raise error if no hostonly network on VBox with NFS [GH-1437] 2013-03-17 22:33:02 -07:00
Mitchell Hashimoto 5427392459 Logger statements for copying each box file during add 2013-03-16 10:14:32 -07:00
Martin Ehrnhoefer 24aaa7f282 Adding a box fails on Windows [GH-1424]
The Dir.mkdir statement fails on Windows if src and dest
reside on different partitions. Files are therefore copied
one-by-one. The #6715 workaround is not needed anymore.
2013-03-16 13:04:33 +01:00
Mitchell Hashimoto 9464796c6d Human friendly error when metadata.json is missing from a box 2013-03-15 11:12:50 -07:00
Mitchell Hashimoto d40ba7968c Fix `vagrant package` to avoid nil errors [GH-1423] 2013-03-14 20:40:52 -07:00
Mitchell Hashimoto 327ca544ef Don't load any plugins for `vagrant plugin` [GH-1418] 2013-03-14 12:58:24 -07:00
Mitchell Hashimoto 43f3764e5b Properly quote regular expression inputs to StringBlockEditor 2013-03-14 12:41:03 -07:00
Mitchell Hashimoto 64d1b54d51 Up version for development. Moving forward. 2013-03-14 11:55:03 -07:00
Mitchell Hashimoto 1949489993 v1.1.0 2013-03-13 23:36:31 -07:00
Mitchell Hashimoto c8b829c4d2 Properly resolve cygwin paths in Cygwin environments [GH-1366] 2013-03-13 21:50:41 -07:00
Mitchell Hashimoto 57a5edbc39 Merge pull request #1366 from johnb0011/master
Solve Virtualbox pathing issue running under Cygwin
2013-03-13 21:41:34 -07:00
Mitchell Hashimoto 82d8285df6 Give a success message after adding a box 2013-03-13 21:24:03 -07:00
Mitchell Hashimoto dea881cad2 vagrant box add --force works again [GH-1413] 2013-03-13 21:20:25 -07:00
Fabio Rehm cc20d2f91e raise ChildProcess::LaunchError with the original message to ease debugging when running subprocesses 2013-03-09 15:31:28 -03:00
Fabio Rehm 54e0c37dbf Fix typo on logging output 2013-03-06 19:47:28 -03:00
Mitchell Hashimoto 360051e032 Greatly improve http_proxy/https_proxy detection for box downloads 2013-03-05 00:33:56 -08:00
Mitchell Hashimoto 36b805367d Fix all core code to use the new networking syntax 2013-03-01 16:48:10 -08:00
Mitchell Hashimoto ade5d8a579 Human-friendly error if error copying private key [GH-580] 2013-03-01 13:51:11 -08:00
Mitchell Hashimoto b482870173 Capture stdout/stderr when loading plugins so that it doesn't just
happen
2013-03-01 11:55:06 -08:00
Mitchell Hashimoto 7547a0d34a V2 missing key returns a DummyConfig as well 2013-02-28 00:17:58 -08:00
Mitchell Hashimoto af2690635e Unknown keys return a DummyConfig rather than OpenStruct 2013-02-28 00:16:43 -08:00
Mitchell Hashimoto d15acde8c0 Capture missing key calls in V1 configs and record them as warnings 2013-02-28 00:06:49 -08:00
Mitchell Hashimoto c9ad55d9e7 Built-in hostname middleware for setting hostname 2013-02-27 21:28:09 -08:00
Mitchell Hashimoto 4254b35b7d Fix the forward port collision handling 2013-02-27 13:40:11 -08:00
Mitchell Hashimoto 1505fc9d22 Autoload he port collision middleware 2013-02-27 13:37:50 -08:00
Mitchell Hashimoto 68aa9c8acf Output the UI when repairing port collisions 2013-02-26 13:43:06 -08:00
Mitchell Hashimoto 79609d42bb Additional options for the collision detection 2013-02-26 13:08:06 -08:00
Mitchell Hashimoto e97c330281 First pass at a forwarded port collision middleware 2013-02-26 12:10:26 -08:00
Mitchell Hashimoto 499d1ff8bf VAGRANT_VAGRANTFILE env var to specify alternate filename for Vfile 2013-02-23 12:07:23 -08:00
Mitchell Hashimoto 1bda157188 Only look for `Vagrantfile` if no more specific was given 2013-02-23 11:59:44 -08:00
Mitchell Hashimoto 60a1b035e7 For hooks, put the environment in the action env 2013-02-22 15:52:57 -08:00
Mitchell Hashimoto 3b2a82003e The hook callable has to be an Action builder so the hooks are called 2013-02-22 15:28:48 -08:00
Mitchell Hashimoto 29600d3d06 Always log the exception raised when error loading a plugin 2013-02-22 15:11:01 -08:00
Mitchell Hashimoto 1b6538354d Be smarter about determining if plugin load failed 2013-02-22 15:10:34 -08:00
Mitchell Hashimoto 9750069312 Better logging around environment hooks 2013-02-22 14:43:43 -08:00
Mitchell Hashimoto 46db50680b environment_unload hook 2013-02-22 13:54:28 -08:00
Mitchell Hashimoto 3c343c0623 Environment#hook allows hooks to be run at arbitrary points 2013-02-22 12:22:10 -08:00
Mitchell Hashimoto c68bf33d66 Specify action_name for all machine actions for action hooks 2013-02-22 12:14:15 -08:00
Mitchell Hashimoto be01d57034 action_hooks can hook into specific actions 2013-02-22 12:12:55 -08:00
Mitchell Hashimoto 18524628b7 Hooks allow parameters and blocks to middlewares 2013-02-22 12:00:35 -08:00
Mitchell Hashimoto 6a12edeb71 Get rid of unused variable 2013-02-20 20:41:19 -08:00
John Barney a390b9dddf Removing tabs added by a bad .vimrc 2013-02-10 03:49:15 -08:00
John Barney 73eb86bad0 Adding Cygwin detection, and fixing pathing issue in VirtualBox driver under Cygwin 2013-02-09 19:36:56 -08:00
Mitchell Hashimoto f837d32ae4 Rename FileUtil to Which since its too close to FileUtils 2013-02-08 22:29:53 -08:00
Mitchell Hashimoto 38e160055b Style nitpicks on FileUtil 2013-02-08 22:20:00 -08:00
Patrick Wyatt bd06bea3e5 Enable Windows users with SSH installed to use 'vagrant ssh' 2013-02-08 22:09:11 -08:00
Mitchell Hashimoto 595d6f7848 Record invalid key accesses as an error on config 2013-02-08 16:54:24 -08:00
Mitchell Hashimoto d659071a82 Check for NFS errors only if we actually have NFS folders 2013-02-08 16:25:41 -08:00
Mitchell Hashimoto 6afb4326fa Move NFS to a built-in middleware 2013-02-08 15:34:04 -08:00
Mitchell Hashimoto 050cb482f3 Better logging in the BoxAdd action 2013-02-07 18:19:42 -08:00
Mitchell Hashimoto 4144db5042 More gracefully handled plugins which cannot be found 2013-02-07 11:55:45 -08:00
Mitchell Hashimoto cd3d2a1e8c Call properly modifies original environment 2013-02-06 18:36:05 -08:00
Mitchell Hashimoto 4a1a990491 Raise a proper SSH error on ECONNRESET 2013-02-06 18:08:55 -08:00
Mitchell Hashimoto acbd024fa2 Put the machine action in the middleware env 2013-02-06 16:23:35 -08:00
Mitchell Hashimoto 1df4891371 Spread out methods in provision so subclass can override 2013-02-06 16:14:59 -08:00
Mitchell Hashimoto 352fec0359 Fix some issues to get hooks working 2013-02-06 15:42:48 -08:00
Mitchell Hashimoto b20dcc9eb8 Setup hooks in the runner 2013-02-06 15:37:12 -08:00
Mitchell Hashimoto aa7193471f Plugins can define action hooks via action_hook 2013-02-06 15:27:14 -08:00
Mitchell Hashimoto 83bba789a4 Hook#apply 2013-02-06 15:21:34 -08:00
Mitchell Hashimoto d720205810 Builder supports action hooks 2013-02-06 15:06:13 -08:00
Mitchell Hashimoto 9251b880f5 Addition docs on the hook class 2013-02-06 14:30:15 -08:00
Mitchell Hashimoto 80a7c8a0cb Hook class 2013-02-06 14:21:31 -08:00
Mitchell Hashimoto 8f24d2d98c Remove the "easy" plugins until a future version 2013-02-06 13:46:34 -08:00
Mitchell Hashimoto 87026b2d9e Remove old TOOD that was fulfilled 2013-02-05 22:17:00 -08:00
Mitchell Hashimoto 9f15fdeabc Only override the SSH host/user/etc if not specified by provider 2013-02-05 21:21:56 -08:00
Mitchell Hashimoto 79beefdb0a Do proper provider configuration merging 2013-02-05 12:22:00 -08:00
Mitchell Hashimoto 864f1b7506 Pass a proper Pathname for SSHExec to check key perms 2013-02-04 21:17:12 -08:00
Mitchell Hashimoto 434cc79a83 Properly expand config.ssh.private_key_path 2013-02-04 21:13:29 -08:00
Mitchell Hashimoto a72cfdbc00 Improved logging and such around SSH 2013-02-04 11:44:56 -08:00
Mitchell Hashimoto 82c9b658d0 Expose the home_path to the action runner 2013-02-04 10:42:44 -08:00
Mitchell Hashimoto b568ad0b8a Fix package to probably put output box in pwd 2013-02-04 10:38:50 -08:00
Mitchell Hashimoto 55c905b43b `vagrant plugin license` command. 2013-02-04 10:32:04 -08:00
Mitchell Hashimoto 7e71b73e4a Reformat some comments to be within 80 chars 2013-02-04 10:04:31 -08:00
Eric Tipton 421c2a9b2e fix args parser w/r/t ssh "-t" option -- it was failing b/c any associated shell commands need to be the last part of the system command 2013-02-04 06:16:32 -05:00
Mitchell Hashimoto 5d75a65382 Get rid of error "status codes" and just exit with 1 2013-02-03 18:04:43 -08:00
Mitchell Hashimoto 635949980b Handle the case a plugin install is a plugin not found 2013-02-03 14:29:29 -08:00
Mitchell Hashimoto 2079941e7d If the ID file doesn't exist, then don't delete it 2013-02-03 14:23:25 -08:00
Mitchell Hashimoto 01756dc964 Fix the UI so the output shows the proper machine name 2013-02-03 14:23:07 -08:00
Mitchell Hashimoto 78e9853b71 The resource in the UI doesn't show up if it is nil 2013-02-03 14:20:40 -08:00
Mitchell Hashimoto 3df6088db0 Make plugin loading more robust to errors 2013-02-03 14:13:27 -08:00
Mitchell Hashimoto 1162c2dbfc Instead of shelling out, use the RubyGems API to install plugins
This gets us an accurate name of the gem even if it is installed
from a file.
2013-02-03 13:59:43 -08:00
Mitchell Hashimoto 5882d5dad6 VAGRANT_NO_PLUGINS can be used to skip plugin loading 2013-02-03 13:03:00 -08:00
Mitchell Hashimoto 693b825eb1 Don't use the RC file, use the JSOn state file 2013-02-03 12:53:52 -08:00
Mitchell Hashimoto fa50f06a4c Error if RubyGems failed. 2013-02-02 23:31:53 -08:00
Mitchell Hashimoto a2ef7790de Start creating the plugin middleware sequences 2013-02-02 18:42:04 -08:00