Commit Graph

2193 Commits

Author SHA1 Message Date
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
Mitchell Hashimoto ec995b5ddf Avoid cross-device moves when adding boxes [GH-1350] 2013-02-02 16:37:46 -08:00
Mitchell Hashimoto 165dd63f78 New HandleBoxUrl built-in middleware to handlet the "box_url" config 2013-02-01 11:31:08 -08:00
Mitchell Hashimoto 4e6496bed7 Improve subprocess logging 2013-01-31 19:47:54 -08:00
Mitchell Hashimoto a8c7ad30ee Be a bit more fine grained about errors that are reported for Vfiles 2013-01-31 18:52:29 -08:00
Mitchell Hashimoto 67c2e205be Create rgloader/loader.rb files for encoded files 2013-01-31 18:48:56 -08:00
Mitchell Hashimoto 1392d9b4a5 Detect if a VM name is already taken for VirtualBox 2013-01-30 23:22:45 -08:00
Mitchell Hashimoto 7fe19d3a11 Use box directory as temporary directory to avoid cross-device [GH-1199] 2013-01-30 21:54:07 -08:00
Mitchell Hashimoto c164a5ca81 Merge pull request #1300 from kainz/master
Avoid cross device activity for box creation by creating tmp dir in provider dir
2013-01-30 21:47:40 -08:00
Mitchell Hashimoto c75ec09014 Lower IO.select timeouts to improve subprocess speeds
We were getting bit if the process exited while we were doing an
IO.select because it would then wait the full timeout.
2013-01-30 21:29:04 -08:00
Mitchell Hashimoto c5120fdd5e Don't fail too early with bad Vagrantfiles [GH-1345] 2013-01-30 20:16:10 -08:00
Mitchell Hashimoto e9327c4a28 Better logging in the config logger 2013-01-30 20:12:41 -08:00
Mitchell Hashimoto c57ba9de58 Give a nice human-friendly error message when problems loading Vfile 2013-01-30 20:01:41 -08:00
Mitchell Hashimoto 75ea4e5bdd --provision-with works properly again 2013-01-30 19:42:54 -08:00
Mitchell Hashimoto e0f0066c99 --no-provision works properly again 2013-01-30 19:39:21 -08:00
Mitchell Hashimoto 7eec127704 Support refreshing the machine cache 2013-01-30 10:37:40 -08:00
Mitchell Hashimoto 64042a5d35 Downloading the box_url component works again 2013-01-30 10:24:47 -08:00
Mitchell Hashimoto a21744a12d Merge pull request #1336 from ithinkihaveacat/return-non-zero-if-invalid-command
Return exit status of 1 on invalid command
2013-01-29 10:58:55 -08:00
Mitchell Hashimoto e1b78dbfbe Unlock the file explicitly due to some weirdness on BSD kernels 2013-01-28 21:08:22 -08:00
Mitchell Hashimoto 7531c94dbf Allow path and exception for Lock middleware to be procs 2013-01-28 20:46:39 -08:00
Mitchell Hashimoto 9ae3a373c8 Add new middleware builtin: Lock
This will do a process lock by flocking a file. If it fails, it will
raise an exception of choice.
2013-01-28 17:08:37 -08:00
Mitchell Hashimoto 0d27cd5bcb Warn if Vagrant is run outside of installers 2013-01-28 13:39:56 -08:00
Mitchell Hashimoto d4cf03d6c5 `vagrant package` uses bsdtar 2013-01-28 13:20:42 -08:00
Mitchell Hashimoto 35aef1aa0b Use bsdtar to repackage boxes 2013-01-28 13:18:07 -08:00
Mitchell Hashimoto e6a0023713 Switch to bsdtar for unpackaging a box 2013-01-28 13:01:43 -08:00
Michael Stillwell 7941748db7 Return exit status of 1 on invalid command
Makes "vagrant destroyjj" and similar return an exit code of 1, so that
"vagrant destroyjj && vagrant up" works as expected.
2013-01-27 19:52:43 +00:00
Mitchell Hashimoto c3cc513609 Create the setup_version file to track our directory layout version 2013-01-25 16:37:54 -08:00
Mitchell Hashimoto 6a3c0bd425 Call built-in supports args for imddleware 2013-01-22 12:20:02 -08:00
Mitchell Hashimoto fb875ab642 Better logging in the GracefulHalt middleware 2013-01-22 12:13:42 -08:00
Mitchell Hashimoto 51540496a9 GracefulHalt builtin 2013-01-22 11:56:49 -08:00
Mitchell Hashimoto e1f4e27b1b Update docs for v2 provider interface for MachineState 2013-01-21 11:44:19 -06:00
Mitchell Hashimoto 8ad8f73846 Raise an exception if a non-MachineState is returned 2013-01-21 11:31:20 -06:00
Mitchell Hashimoto 7bdf54923a Create the MachineState class 2013-01-21 11:25:28 -06:00
Mitchell Hashimoto 2d57afbbda Support warnings/errors when upgrading Vagrantfiles internally 2013-01-20 22:04:50 -05:00
Mitchell Hashimoto ffd9c1eb9c Verify we have errors to show if we're going to show them 2013-01-18 13:37:31 -08:00
Mitchell Hashimoto 7f55d5eac8 Builtin: ConfigValidate will validate your configuration 2013-01-18 13:26:14 -08:00
Mitchell Hashimoto 37e36010e0 Remove the ErrorRecorder 2013-01-18 13:15:22 -08:00
Mitchell Hashimoto fff021e51d Update Chef provisioner to new validation API 2013-01-18 13:12:02 -08:00
Mitchell Hashimoto e651eb3aa1 Add a V2 config helper to merge errors since that seems common 2013-01-18 13:03:07 -08:00
Mitchell Hashimoto 3f3c7027aa Machine objects are passed into validate instead of env 2013-01-18 12:43:53 -08:00
Mitchell Hashimoto a8b57ba13f Ignore empty error groups 2013-01-18 12:27:29 -08:00
Mitchell Hashimoto bae6555836 Remove DeprecationError 2013-01-18 12:23:29 -08:00
Mitchell Hashimoto e0c8fadae4 I can remove the `validate!` method from the v1 root 2013-01-18 12:18:30 -08:00
Mitchell Hashimoto 42a1ce6e9d Remove the old config validation error 2013-01-18 12:15:36 -08:00
Mitchell Hashimoto e6f9586d83 New validation method on the root that returns errors 2013-01-18 12:14:40 -08:00
Mitchell Hashimoto 0bd0752bf2 Environment#data_dir
This is basically a directory to store state.
2013-01-18 11:37:49 -08:00
Mitchell Hashimoto 776a1e446b Strip the value, actually, to trim the front newline 2013-01-15 21:57:10 -08:00
Mitchell Hashimoto 6c2e1c354f Chomp values inserted into a StringBlockEditor 2013-01-15 21:55:56 -08:00
Mitchell Hashimoto 23668d4ed0 Fix some newline weirdness with StringBlockEditor 2013-01-15 21:53:11 -08:00