Commit Graph

1051 Commits

Author SHA1 Message Date
Mitchell Hashimoto 52c5c79edf Retry connection on Net::SSH::Disconnect [closes GH-313] 2011-07-09 17:02:41 -07:00
Mitchell Hashimoto 5143556065 Standardize on Util::Platform 2011-07-09 16:51:04 -07:00
Mitchell Hashimoto 1aed9f0f38 Remove leopard/tiger checking and just retry exec using safe_exec 2011-07-09 16:37:12 -07:00
Mitchell Hashimoto 874a9763f5 Only one copy of Vagrant can run at any given time. [closes GH-364]
This is to protect against issues with VirtualBox overwriting
each other.
2011-07-09 16:21:38 -07:00
Mitchell Hashimoto 24337b0ca4 vagrantfile now is lowercase. backwards compatible, though. [closes GH-399] 2011-07-09 15:18:52 -07:00
Mitchell Hashimoto 0b02deb37a Share folders go into the modify pipeline 2011-07-08 12:07:27 -07:00
Mitchell Hashimoto d797e48389 Clear shared folders uses new modify pipeline 2011-07-08 12:05:18 -07:00
Mitchell Hashimoto 79c46b4ec1 Forward ports now uses modify pipeline 2011-07-08 12:04:01 -07:00
Mitchell Hashimoto 027b22eca0 Clear forwarded ports to the modify pipeline 2011-07-08 12:02:35 -07:00
Mitchell Hashimoto 6b2feae0e8 Create single interal modify block to sync VM modifications 2011-07-08 11:59:29 -07:00
Mitchell Hashimoto f3c44fba2f Clear shared folders now in the context of a single write lock 2011-07-08 00:26:28 -07:00
Mitchell Hashimoto 60708873e4 Clear forwarded ports is now done in context of customize block 2011-07-08 00:20:15 -07:00
Mitchell Hashimoto 268f7f7bc2 Improved lock-reducing of forwarded ports action 2011-07-08 00:03:33 -07:00
Mitchell Hashimoto 2492f479d5 Tests passing from recent action changes 2011-07-07 23:58:42 -07:00
Mitchell Hashimoto d77738b37f Cache SSH connections to VMs. 2011-07-07 23:15:19 -07:00
Mitchell Hashimoto e625dba5ab Multiple Chef provisioners no longer overwrite cookbook folders. [closes GH-407] 2011-07-07 22:49:58 -07:00
Mitchell Hashimoto 729d62d1ea Chef solo no longer overwrites share folders when multiple provisioners exist 2011-07-07 21:38:07 -07:00
Mitchell Hashimoto 5ae483ef85 Provisioners now properly share folders again 2011-07-07 10:38:32 -07:00
Mitchell Hashimoto 19eaddcd3a Action to call `cleanup` method on provisioners during destroy. 2011-07-06 23:02:19 -07:00
Mitchell Hashimoto 1de152ae36 Move provisioning prepare up into the `call` method 2011-07-06 22:50:49 -07:00
Mitchell Hashimoto bdc316f4ef Provisioner configuration no longer cleared when box is downloaded during an `up`. [closes GH-308] 2011-07-06 22:08:37 -07:00
Mitchell Hashimoto 8733a745ce Can now specify owner/group of shared folders. [closes GH-350] 2011-07-05 23:53:23 -07:00
Mitchell Hashimoto dcaca22810 Show nice error message for bad HTTP downloads [closes GH-403] 2011-07-05 22:48:02 -07:00
Mitchell Hashimoto c27d857387 Rename :chef_server to :chef_client. [GH-359] 2011-07-03 17:20:06 -07:00
Jamie Winsor 7c89ef3de2 Add support for Chef encrypted data bags: http://wiki.opscode.com/display/chef/Encrypted+Data+Bags
Add two configuration options to chef_server provision:
  encrypted_data_bag_secret_key_path - the location of your encrypted secret key on your local machine
  encrypted_data_bag_secret - the location you wish to place the key on the target machine and the value of Chef::Config[:encrypted_data_bag_secret]. Default value of "/etc/chef/encrypted_data_bag".
2011-07-02 21:20:22 -07:00
Mitchell Hashimoto 1e33aa9ab4 Get the tests passing for the Chef provisioner 2011-06-16 18:07:11 -06:00
Mitchell Hashimoto 338b3ac094 Run Chef commands in a single command [GH-390] 2011-06-16 18:04:55 -06:00
Maksim Horbul 23bb514100 provide absolute paths for solo.rb and dna.js in order to make it work correctly with the restart cookbook https://github.com/dreamcat4/site-cookbooks/tree/COOK-245/restart/ 2011-06-13 14:08:21 -07:00
Mitchell Hashimoto c117dba4ab Refactor and tests for GH-342 (chef enhancements) 2011-05-16 12:49:05 -07:00
Mitchell Hashimoto f30ef2b8a9 Merge https://github.com/rcreasey/vagrant 2011-05-16 12:37:21 -07:00
Ryan C. Creasey d0000e9f49 adding tests for providing data bags into the vm. 2011-05-12 08:06:57 -07:00
Mitchell Hashimoto b8c2b6cde4 Fix test incompat with Ruby 1.8.6 2011-05-12 00:04:11 -07:00
Pat Collins 5f751d5a77 Provide a method to specify a Chef environment in a Vagrantfile. 2011-05-11 23:31:36 -07:00
Mitchell Hashimoto 234c47a3a7 Retryable can take multiple exceptions to retry on 2011-04-19 22:24:52 -07:00
Dimitri Aivaliotis 6f9387adc6 added :file_cache_path and :file_backup_path as configurable parameters
removed deprecated :file_store_path parameter
2011-02-25 19:33:01 -08:00
Mitchell Hashimoto 3c45df0a88 Can now configure what shell to sudo with (default: bash) 2011-02-08 23:06:05 -08:00
Mitchell Hashimoto 22f085dc5d Tests for mac address setting on host only network 2011-02-08 19:42:32 -08:00
Mitchell Hashimoto 6d6ca39795 Host only networking only doesn't work on 64-bit Windows 2011-01-29 21:03:27 -08:00
Mitchell Hashimoto 8d55bdcae5 Style tweaks and tests added for changing host name 2011-01-28 17:41:48 -08:00
Mitchell Hashimoto 1e931eaba6 chmod and execute shell provisioning script in a single session 2011-01-25 11:43:25 -08:00
Mitchell Hashimoto 75e283c81a New `shell` provisioner which uploads and executes a script as root on VM 2011-01-23 12:00:50 -08:00
Mitchell Hashimoto 2821dcee7f SSH commands which use sudo compatible with sudo < 1.7.0 2011-01-21 23:38:42 -08:00
Mitchell Hashimoto 59fa9ac46b net-ssh 2.1.0. Adds "IdentitiesOnly" support for net-ssh, fixing problems. 2011-01-19 22:00:38 -08:00
Mitchell Hashimoto 9673b7eaee Remove config.ssh.port, it actually never did anything 2011-01-14 00:36:49 -08:00
Mitchell Hashimoto 66bf56a073 Fix issue with puppet mounting shared folder as subfolder of another, causing spurious folder creation on the host 2011-01-14 00:21:20 -08:00
Mitchell Hashimoto 302f9ff0bb Puppet provisioner can mount/configure module paths from local directory 2011-01-13 21:02:26 -08:00
Mitchell Hashimoto db20f399fb Improved puppet config validation 2011-01-13 17:27:39 -08:00
Mitchell Hashimoto 8d24f779f0 Provisioner config object should have access to the top config 2011-01-13 16:54:34 -08:00
Mitchell Hashimoto 3051174dfe Chef server config validation testing 2011-01-12 17:00:01 -08:00
Mitchell Hashimoto 2a5070dad7 All provisioners are now RVM-friendly 2011-01-12 16:57:19 -08:00
Mitchell Hashimoto 93d241f4ce Puppet is now RVM friendly 2011-01-12 16:28:45 -08:00
Mitchell Hashimoto 8482eeff0b net-ssh-shell support for shell-based SSH interactions 2011-01-12 15:21:54 -08:00
Mitchell Hashimoto a4a02675ad Add a nice full error message for the old-style provisioner setting 2011-01-12 01:19:21 -08:00
Mitchell Hashimoto 047f9970fe Support hash based options for provisioners 2011-01-12 01:02:53 -08:00
Mitchell Hashimoto 4e5a7aa6bf Fix order-dependent test 2011-01-12 00:14:16 -08:00
Mitchell Hashimoto 658affe8cd Provisioner config tests, fixed some bugs 2011-01-11 23:11:51 -08:00
Mitchell Hashimoto a91ad4d89f Fixed provisioners to the new conventions. Tests passing! 2011-01-11 22:37:09 -08:00
Mitchell Hashimoto cddccab9ae Provision action works again 2011-01-11 22:13:09 -08:00
Mitchell Hashimoto 85b8ccc2ec Provisioners now register themselves with their shortcut name 2011-01-11 19:52:55 -08:00
Mitchell Hashimoto 766607db49 Raise an error message if host only networking is not supported 2011-01-09 13:34:37 -08:00
Mitchell Hashimoto d00f314eb9 Systems can now respond to `distro_dispatch` to return specific distro systems 2011-01-09 13:06:26 -08:00
Mitchell Hashimoto 25ea67a9f7 Get rid of Ruby 1.8.7 warning in tests 2011-01-08 21:22:16 -08:00
Mitchell Hashimoto 8ce95318c7 Remove check for OSE version, since with VirtualBox 4 this distinction no longer exists. 2011-01-07 01:32:21 -08:00
Mitchell Hashimoto 9a158cf45a Set VAGRANT_HOME env var to change vagrant home directory 2011-01-06 19:21:23 -08:00
Mitchell Hashimoto a5d8193982 Allow multiple Vagrant::Config.run in a single Vagrantfile again 2011-01-06 19:05:31 -08:00
Mitchell Hashimoto b8c84b67b7 Vagrantfiles are loaded only once, instead of 4+ times [closes GH-238] 2011-01-06 19:00:29 -08:00
Mitchell Hashimoto e258395346 Rewrite of Vagrant::Config, on the path to fix bug with multiple loading Vagrantfiles 2011-01-06 18:35:58 -08:00
James Turnbull 3849355ef6 Basic Puppet Server provisioner 2011-01-06 13:33:22 -08:00
Mitchell Hashimoto 496f68fd6a Move SSH::Session to its own file 2011-01-05 16:45:05 -08:00
Petyo Ivanov b9e24090e9 Add X11 ssh forwarding option (off by default). 2011-01-04 20:17:04 -08:00
Mitchell Hashimoto e0c716e454 Fix automount select to accept key/val instead of just val 2011-01-04 20:10:34 -08:00
Mitchell Hashimoto c1e0504c66 Improve the file downloader test to use a real file 2010-12-31 22:00:11 -06:00
Mitchell Hashimoto fb8f0c010b Reload config after downloading box during `up` [closes GH-231] 2010-12-31 21:41:05 -06:00
Mitchell Hashimoto e12d96d4df Only automount NFS folders which have guest path specified 2010-12-31 02:24:49 -06:00
Mitchell Hashimoto c1be64ae61 Shared folders with no guest path are not automounted [closes GH-184] 2010-12-31 02:19:27 -06:00
Mitchell Hashimoto 82d26f29e8 Tests passing for shared folder mount changes. 2010-12-30 21:06:21 -06:00
Mitchell Hashimoto 681c4a1233 Fix tests dealing with VirtualBox 4 version checks 2010-12-30 21:04:23 -06:00
Mitchell Hashimoto e19788701e Don't disable networks on halt/destroy. 2010-12-24 19:02:11 -08:00
Mitchell Hashimoto c32ab0442c Change the mechanism by which useless host only networks are detected and destroyed 2010-12-24 18:57:44 -08:00
Mitchell Hashimoto 4d8e3dc1bf Make this test actually test something 2010-12-24 18:41:18 -08:00
Mitchell Hashimoto 2018fd8645 "vbox-prev" bug still exists, but filename changes for VB4 2010-12-24 18:35:46 -08:00
Mitchell Hashimoto e4488c415e Update destroy to use new API for VB4 2010-12-24 15:19:31 -08:00
Mitchell Hashimoto 2358130c0e Show error if host only networking on Windows 2010-12-21 19:52:41 -08:00
Mitchell Hashimoto e98db8dc86 Determine SSH on main thread for up? to fix issues with multi-thread access on JRuby 2010-12-19 10:27:07 -08:00
Mitchell Hashimoto 59ae5747d0 Use timeout library instead of threads to check for VM boot 2010-12-18 18:50:59 -08:00
Brian P O'Rourke e1ed00f14c Enumerate vms according to definiton order. 2010-12-14 22:24:02 -08:00
Mitchell Hashimoto d0e3cf1210 config.puppet.options can be a string as well 2010-12-14 21:57:12 -08:00
Brice Figureau 6b46949550 Allow passing options to the Puppet provisioner
This allows for instance to pass the --modulepath options like this:

config.vm.puppet.options = ["--modulepath","modules"]

Which would call puppet with "--modulepath modules".

Signed-off-by: Brice Figureau <brice@daysofwonder.com>
2010-12-14 21:53:57 -08:00
Brice Figureau 446ab32e0e Allow to recursively include files when packaging a box
This allows to bundle with a box a set of puppet manifests or chef cookbooks.
This supports both shell globbing and recursive copy of full directories.

Usage:

vagrant package ... --include=manifests
This would bundle the whole manifests/ directory

vagrant package ... --include=id*
This would bundle all files with prefix id in the produced box

Signed-off-by: Brice Figureau <brice@daysofwonder.com>
2010-12-14 21:51:33 -08:00
James Turnbull 6548bc9324 Adds a basic Puppet provisioner to Vagrant
This uses the Puppet binary and assumes a .pp file will be present
on the host machine.

By default it looks for manifests in the `manifests` directory (in the same root as
wherever your Vagrantfile is located). The default file uses the name of the box
being configured, for example `lucid.pp`.  Both options are configurable.
2010-12-07 16:57:00 -08:00
Mitchell Hashimoto 54f86f236c Test to verify solaris system 2010-12-07 16:52:18 -08:00
Mitchell Hashimoto 331e0841e5 Box collection reloads after downloading during CheckBox. [closes GH-229] 2010-11-30 20:19:24 -08:00
Ches Martin 8bff03fb80 BaseVMNotFoundError -> BaseVMNotFound and test [closes GH-200] 2010-11-03 21:35:39 -07:00
Mitchell Hashimoto ef50361f95 Nicer error message when box is not found. [closes GH-195] 2010-10-21 17:50:41 -07:00
Mitchell Hashimoto 39407694e3 Validate only certain command sequences [closes GH-188] 2010-10-13 18:59:25 -07:00
Mitchell Hashimoto 82d73ebe3c General validation middleware 2010-10-13 18:40:12 -07:00
Mitchell Hashimoto 6337cefb8b Disable Vagrantfile validation completely on load. see coming commits... 2010-10-12 21:08:33 -07:00
Mitchell Hashimoto 341e7916f4 Port collision type mismatches fixed. [closes GH-185] 2010-10-09 01:21:52 -07:00
Mitchell Hashimoto ebf1fa2fb1 Check if file exists on root path traversal [closes GH-182] 2010-10-08 18:23:38 -07:00
Mitchell Hashimoto f90016bb6f Only validate on the second-pass of loading configuration 2010-10-08 10:52:34 -07:00
Mitchell Hashimoto 5fcf10d6cd Validations to assure base MAC address is set 2010-10-08 10:44:19 -07:00
Mitchell Hashimoto c6b0fae318 Load sub-VM configuration on first-pass, allowing box loading for sub-VMs. [closes GH-166] [closes GH-181] 2010-10-08 10:34:33 -07:00
Mitchell Hashimoto 48e5f4fb86 Vagrantfiles with only one `config.vm.define` are now considered multi-VM. 2010-10-08 09:50:34 -07:00
Mitchell Hashimoto ba9cb19808 Configuration only validates on final Vagrantfile proc, allowing multi-VM to work correctly 2010-10-08 09:44:17 -07:00
Mitchell Hashimoto e36a9d3a0c Nice error message given if ".vagrant" is a directory and therefore can't be accessed. [closes GH-172] 2010-10-06 18:57:39 -07:00
Mitchell Hashimoto 12b769ce14 Removed final global test helper from test/test_helper.rb 2010-10-03 18:48:41 -07:00
Mitchell Hashimoto 3fe785ab72 Removed `mock_vm` test helper, which is unnecessary 2010-10-03 18:45:09 -07:00
Mitchell Hashimoto e5be4cc2b0 Removed unused test code 2010-10-03 18:37:03 -07:00
Mitchell Hashimoto eaaf55ea8a `up --no-provision` works again. This disables provisioning during the process. 2010-10-03 18:34:33 -07:00
Mitchell Hashimoto cf823cadb5 Action warden doesn't do recovery process on `SystemExit` exceptions, allowing double ctrl-C to work properly again. 2010-10-01 10:08:38 -07:00
Mitchell Hashimoto 3e54150f71 Box add checks if box exists before the download [closes GH-170] 2010-10-01 09:24:58 -07:00
Mitchell Hashimoto 61314c5e21 Only check for box directory if it is set during unpackage recovery [related to GH-170] 2010-10-01 09:20:18 -07:00
Mitchell Hashimoto bad251a20d NFS no longer attempts to clean exports file if VM is not created, which caused a stack trace during recovery. 2010-09-30 01:16:45 -07:00
Mitchell Hashimoto ed645417c7 Basic validation added for Chef configuration (both solo and server). 2010-09-30 01:09:36 -07:00
Mitchell Hashimoto 465392f99c config.vagrant validation tests 2010-09-30 00:55:00 -07:00
Mitchell Hashimoto 588ead6e45 Top config class is now available in all `Vagrant::Config::Base` subclasses. Useful for validation. 2010-09-30 00:50:50 -07:00
Mitchell Hashimoto c5b81b5998 SSH gives error message if `ssh` binary is not found. [closes GH-161] 2010-09-29 23:47:17 -07:00
Mitchell Hashimoto 0fcc1150c5 Revert "Instead of using Kernel#system, use custom piped solution"
This reverts commit 171f4184c0.
2010-09-29 23:38:07 -07:00
Mitchell Hashimoto 171f4184c0 Instead of using Kernel#system, use custom piped solution 2010-09-27 18:26:42 -07:00
Mitchell Hashimoto ea6904761f Check box action no longer needs to load_box! 2010-09-27 13:42:53 -07:00
Mitchell Hashimoto 1199c89a4a Fix issues with Ruby 1.8.7 where Vagrant wouldn't even run 2010-09-27 12:10:17 -07:00
Mitchell Hashimoto 85bbb5dd87 Switch config to not implicitly use I18n. 2010-09-21 20:38:19 -06:00
Mitchell Hashimoto b909adde1c Since I18n isn't automatic for UI class, get rid of _ prefix on options 2010-09-21 18:14:18 -06:00
Mitchell Hashimoto d003cc4f32 UI methods no longer automatically translate. Makes it easier for plugin developers. 2010-09-21 18:12:24 -06:00
Mitchell Hashimoto f0294039e1 Load config files (only) early so plugins are loaded from Vagrantfiles 2010-09-21 01:47:50 -06:00
Mitchell Hashimoto 3b735e545f Change VM loading to be lazy loaded so config can be loaded without VMs 2010-09-21 01:27:36 -06:00
Mitchell Hashimoto e3ff9c7ac3 Resource logger now logs to a "logs" directory in the home path 2010-09-20 09:58:19 -06:00
Mitchell Hashimoto 7d89d011fb Tests passing again due to config.vm.customize change earlier 2010-09-20 09:47:01 -06:00
Mitchell Hashimoto f37710a4bd Remove logger helper from action environment class 2010-09-20 09:44:51 -06:00
Mitchell Hashimoto ba8307712d Don't require root path to load an environment. (Makes `vagrant box` commands work again without a Vagrantfile) 2010-09-16 18:14:41 -06:00
Mitchell Hashimoto bae6c57230 Expose test helpers [closes GH-162] 2010-09-15 09:19:38 -06:00
Mitchell Hashimoto 90aaf5cb5e Command helpers `target_vms` now takes an optional string for the VM name 2010-09-15 08:38:56 -06:00
Mitchell Hashimoto d5fbf29ec0 Plugins. Documentation coming shortly. 2010-09-14 23:10:51 -06:00
Mitchell Hashimoto 036edfcc2a Only destroy the VM if the exception raised is not a Vagrant error 2010-09-14 00:48:31 -06:00
Mitchell Hashimoto 7c42300002 Expose the exception which triggers recovery methods through the "vagrant.error" environmental hash 2010-09-13 23:43:37 -06:00
Mitchell Hashimoto d5ad387f27 New `vagrant package` option `--vagrantfile` and changed semantics of `--include` (see CHANGELOG) 2010-09-12 23:20:13 -06:00
Mitchell Hashimoto 4b8878f5f7 Import uses the string path, rather than the pathname 2010-09-12 16:37:43 -06:00
Mitchell Hashimoto 714c94780c On import, only run destroy action if VM is created 2010-09-12 16:34:49 -06:00
Mitchell Hashimoto 7d73bec776 Disable networks only if VM is created 2010-09-12 16:31:38 -06:00
Mitchell Hashimoto e11d3bd4f7 Only halt if created and running 2010-09-12 16:29:35 -06:00
Mitchell Hashimoto 4335adc8f4 Only discard state if the VM is created 2010-09-12 16:26:32 -06:00
Mitchell Hashimoto 02cfb60387 Verify box with a string path, not pathname 2010-09-12 15:39:37 -06:00
Mitchell Hashimoto 79b303a1fc Send string, not pathname, to Minitar for decompression 2010-09-12 14:00:48 -07:00
Mitchell Hashimoto 5ce43a8ae0 Utilize pathname when available instead of doing just a File.join 2010-09-11 10:42:03 -07:00
Mitchell Hashimoto 2026bb0b1c Remove unnecessary class methods on Box class. Move commands over to use "boxes" on env 2010-09-11 10:33:49 -07:00
Mitchell Hashimoto 761da0de63 Remove method calls to "Box.find" and remove method 2010-09-11 10:21:35 -07:00
Mitchell Hashimoto 0ee21998f6 New BoxCollection class to keep track of all boxes. 2010-09-11 10:17:26 -07:00
Mitchell Hashimoto 4b17ac0f89 Environment#home_path is a Pathname object for easier manipulation 2010-09-11 09:18:33 -07:00
Mitchell Hashimoto 86465a36c0 Change method by which configuration classes register themselves to be cleaner 2010-09-11 09:02:55 -07:00
Mitchell Hashimoto f8e7431899 Retry SSH connect a few times before admitting defeat. 2010-09-09 00:28:21 -07:00
Mitchell Hashimoto a0ed4d0da8 Get rid of "mock_action_data" use "action_env" instead 2010-09-08 23:56:35 -07:00
Mitchell Hashimoto 16f3a3face Test helper `mock_environment` completely gone 2010-09-08 23:51:09 -07:00
Anko painting 650ff4b734 Allow downloading via a proxy if http_proxy environment variable is set. [closes GH-157] 2010-09-08 22:11:53 -07:00
Mitchell Hashimoto 73c223c885 Remove most of the remaining mock_environment calls. Only one remains. 2010-09-07 11:51:10 -07:00
Mitchell Hashimoto 8164644615 Converted most "mock_environment" tests to "vagrant_env" which uses real filesystem 2010-09-07 11:41:52 -07:00
Mitchell Hashimoto 3cca2f1bb4 Config loading test is now powered by real Vagrantfiles, rather than mocks 2010-09-07 11:30:48 -07:00
Mitchell Hashimoto 5f6e3acf40 Require root path on environment load 2010-09-07 10:52:58 -07:00
Mitchell Hashimoto 446d1155fe Add ruby-debug for tests in the Gemfile for MRI (both 1.8 and 1.9 version) 2010-09-07 01:19:11 -07:00
Mitchell Hashimoto 9a0834d263 Make environment tests fast again 2010-09-07 01:03:27 -07:00
Mitchell Hashimoto 5a13347fb4 Fix issue with local data store not being properly cleared for VM destruction 2010-09-07 01:02:11 -07:00
Mitchell Hashimoto 88fedb419e Update Environment#dotfile_path to take advantage of new Pathname object 2010-09-07 00:28:21 -07:00
Mitchell Hashimoto fe593c88b8 Environment#cwd and Environment#root_path are now pathname objects for more robust usage 2010-09-07 00:25:52 -07:00
Mitchell Hashimoto 84389580d6 Only run Environment#load! once 2010-09-07 00:07:22 -07:00
Mitchell Hashimoto 1478818939 Run "environment_load" action on environment load 2010-09-06 23:36:48 -07:00
Mitchell Hashimoto 1a5836ee23 Don't clear registered actions hash in tests ever 2010-09-06 19:52:46 -07:00
Mitchell Hashimoto f85401481b Create the tmp path when running tests so they pass 2010-09-06 18:29:49 -07:00
Mitchell Hashimoto 4342c87473 No need to reload the VMs hash if has a parent environment. 2010-09-06 00:09:29 -07:00
Mitchell Hashimoto ed48170b24 Remove environment "vm_name" property since it was redundant 2010-09-05 23:11:27 -07:00
Mitchell Hashimoto 23c08f2daa Configuration validation for the most common problems added 2010-09-05 11:26:38 -07:00
Mitchell Hashimoto 9cc64fcb34 Configuration classes can now be validated. Nice error message shown in case of failure. 2010-09-05 11:02:48 -07:00
Mitchell Hashimoto ad5ecf1c7f Remove unused code in Config 2010-09-05 10:18:05 -07:00
Mitchell Hashimoto 52a32820db Change the way the config is loaded to be all in one step 2010-09-05 01:13:35 -07:00
Mitchell Hashimoto ce9ff73ea4 Show proper syntax error for Vagrantfiles [closes GH-155] 2010-09-04 14:33:53 -07:00
Mitchell Hashimoto 53aaa4f264 Environment is lazy loaded for `vagrant` binary. 2010-09-04 11:10:20 -07:00
Mitchell Hashimoto f24094bba8 Converted more tests to new vagrant env helpers and removed unused code in ResourceLogger 2010-09-04 10:47:22 -07:00
Mitchell Hashimoto 260f1dcec4 Refined some tests to use real Vagrantfiles instead of mocks 2010-09-03 19:25:48 -07:00
Mitchell Hashimoto 3470d98fca Load the root path on demand. 2010-09-03 14:59:16 -07:00
Mitchell Hashimoto f85579a4de Give a nice error message if there is a syntax error in Vagrantfile [closes GH-154] 2010-09-03 14:23:47 -07:00
Mitchell Hashimoto 9590928553 If the data store is empty, delete the backing file 2010-09-03 12:05:29 -07:00
Mitchell Hashimoto e4cb2749a1 Clean nil and 'empty?' values in a data store prior to commiting 2010-09-03 12:02:44 -07:00
Mitchell Hashimoto b8a4188fa3 Config class is now responsible for loading configuration. Cleans up environment. 2010-09-03 11:16:38 -07:00
Mitchell Hashimoto 0a8540996c Action environment uses new indifferent hash util 2010-09-03 09:39:30 -07:00
Mitchell Hashimoto 3c3c9aedc9 Data store is a hash with indifferent access 2010-09-03 09:35:07 -07:00
Mitchell Hashimoto 59e1e43c74 Autoload the util classes. HashWithIndifferentAccess for data store 2010-09-03 09:33:15 -07:00
Mitchell Hashimoto 0f70812142 Load the host on demand in the environment 2010-09-03 00:48:38 -07:00
Mitchell Hashimoto 01df63ef6e Lazy load the environment "actions." Removes one more load from the environment load chain 2010-09-03 00:35:18 -07:00
Mitchell Hashimoto f72979df79 Added global data hash to environment. "system"-wide data bag for vagrant 2010-09-03 00:21:57 -07:00
Mitchell Hashimoto d65194d66e Only initialize a logger on the parent environment 2010-09-02 21:24:59 -07:00
Mitchell Hashimoto a84ea6a5b8 Load data store keys as symbols, not strings. 2010-09-02 21:19:44 -07:00
Mitchell Hashimoto 52e3c4d3b3 Persisting a VM uuid is now implicitly done by Vagrant::VM 2010-09-02 21:12:11 -07:00
Mitchell Hashimoto 2d80c32479 Remove the ActiveList. This will make a comeback using DataStore in the future. 2010-09-02 13:00:47 -07:00
Mitchell Hashimoto d74d95d0cd Get rid of exceptions/ folder. 2010-09-02 11:56:04 -07:00
Mitchell Hashimoto 9002b22fac Data store is now a hash and lazy load the local data store on the environment 2010-09-02 11:47:19 -07:00
Mitchell Hashimoto 4d87f198d7 Vagrant::DataStore which will be used soon for the dotfile in the project directory 2010-09-01 22:00:59 -07:00
Mitchell Hashimoto 43cdcb7808 Config can now be deserialized as well as serialized to JSON 2010-09-01 21:01:15 -07:00
Mitchell Hashimoto d2d2404961 Split config classes out into multiple files for better organization 2010-09-01 20:37:11 -07:00
Mitchell Hashimoto 71101c9d3d Raise interrupt error earlier so the rescue chain actually gets called 2010-09-01 14:58:22 -07:00
Mitchell Hashimoto 60c20565b2 Replace straight abort on interrupt with clean exit via exception 2010-09-01 14:50:15 -07:00
Mitchell Hashimoto a13f587bc0 Environment#error! removed (along with error? and so on) 2010-09-01 14:37:37 -07:00
Mitchell Hashimoto 3da94252b5 Get rid of util.rb. No longer used. 2010-09-01 14:30:31 -07:00
Mitchell Hashimoto bb97b388f9 Convert VM errors to I18n exceptions 2010-09-01 14:26:53 -07:00
Mitchell Hashimoto ae6e42dbbc Scope SSH errors to proper exception classes 2010-09-01 10:47:34 -07:00
Mitchell Hashimoto e7f06d7fb7 Remove ExceptionCatcher since exceptions are the way to report errors now 2010-09-01 10:04:37 -07:00
Mitchell Hashimoto 364233527e SSH no longer raises ActionException. Raises VagrantError 2010-09-01 10:00:49 -07:00
Mitchell Hashimoto 786a0f443a Provisioners raise exceptions 2010-09-01 09:36:22 -07:00
Mitchell Hashimoto f85821c268 Refactor VagrantError to be more flexible so not as many subclasses will be needed 2010-09-01 08:27:29 -07:00
Mitchell Hashimoto cf91f578fb Downloaders now raise exceptions instead of erroring environment 2010-09-01 07:22:14 -07:00
Mitchell Hashimoto a7197b3566 Autoload errors. If nothing bad happens, all those error classes don't use any memory :) 2010-09-01 07:15:37 -07:00
Mitchell Hashimoto 39663f6f11 Finish replacement of "env.error!" with exceptions in VM actions 2010-09-01 07:13:37 -07:00
Mitchell Hashimoto b72cf4c57c Convert NFS to new Warden style with 'recover' method 2010-08-30 20:09:26 -07:00
Mitchell Hashimoto aa00d15206 Few more VM actions converted to exceptions. Lots of errors gone. 2010-08-30 20:07:50 -07:00
Mitchell Hashimoto 72c3340336 About 1/3rd of the VM actions raise exceptions now 2010-08-30 19:39:11 -07:00
Mitchell Hashimoto 98bce8f836 General package action raises exceptions instead of using env.error 2010-08-28 13:54:59 -07:00
Mitchell Hashimoto 3e1ccf0c4f Convert box actions to raise exceptions rather than error environment 2010-08-28 12:31:55 -07:00
Mitchell Hashimoto ccc45ebd7a Begin moving from error_and_exit to exceptions. Fail hard! 2010-08-28 12:23:40 -07:00
Mitchell Hashimoto 354a82a177 Make some minor changes to warden to reduce the array reversals 2010-08-28 00:00:21 -07:00
Mitchell Hashimoto efbfd335ad Remove the ErrorHalt middleware, since Warden takes care of this on a larger scale 2010-08-27 23:50:14 -07:00
Mitchell Hashimoto 21e4477c39 Rip out unison syncing. It never got to see the light of day. Just didn't work out. (NFS replaced it) 2010-08-27 23:31:38 -07:00
Mitchell Hashimoto 7ddff513f0 Shell UI tests. Added option to not translate. Updated non-translated strings. 2010-08-27 23:27:35 -07:00
Mitchell Hashimoto 1d29ba31fa I18nified all the VM actions 2010-08-27 19:46:50 -07:00
Mitchell Hashimoto 0b03502bf2 Converted final error_and_exit in ssh.rb to exceptions 2010-08-27 00:05:40 -07:00
Mitchell Hashimoto bab369e856 SSHAuthenticationFailed error 2010-08-27 00:01:27 -07:00
Mitchell Hashimoto 500a63c269 Fix some bugs in the SSH tests, replace one error_and_exit with an exception 2010-08-26 23:51:30 -07:00
Mitchell Hashimoto 58237db675 Remove unused methods in environment and their translations 2010-08-26 23:30:24 -07:00
Mitchell Hashimoto afab53bf9f Scope errors into the Errors namespace. VirtualBox version errors converted to I18n 2010-08-26 23:21:28 -07:00
Mitchell Hashimoto e28947f18d Use I18n gem for string database. Refactor exceptions to use I18n. 2010-08-26 21:56:38 -07:00
Mitchell Hashimoto 6d15a1dd64 Moved the resource name to a helper method in environment 2010-08-26 20:22:20 -07:00
Mitchell Hashimoto aaac5fbf1e Get rid of all Ruby warnings in Vagrant 2010-08-25 23:21:23 -07:00
Mitchell Hashimoto a699122260 No more logger usage for outputting to the shell 2010-08-25 22:38:24 -07:00
Mitchell Hashimoto 9ab5a7c2b1 Switch the actions over to using the new UI objects. 2010-08-25 22:13:55 -07:00
Mitchell Hashimoto e74bce8b10 Factor out the command environment initialization 2010-08-25 21:49:19 -07:00
Mitchell Hashimoto 98087243a7 Support for aliasing commands 2010-08-25 16:09:51 -07:00
Mitchell Hashimoto 83b2872ddb The `target_vms` helper in multivm with no name specified will return all VMs, not the hash [closes GH-148] 2010-08-25 16:02:29 -07:00
John Bender 5c56e46739 Merge branch 'warden' 2010-08-25 00:26:07 -07:00
Mitchell Hashimoto 23526c3746 `vagrant ssh_config` 2010-08-24 23:59:51 -07:00
Mitchell Hashimoto 8340472fc5 `vagrant up` 2010-08-24 23:03:37 -07:00
Mitchell Hashimoto ccad6af8cf Only calculate the target VMs once 2010-08-24 17:53:27 -07:00
Mitchell Hashimoto 2eb09c7aa2 Helpers to get target VMs in commands from parameters 2010-08-24 17:49:22 -07:00
Mitchell Hashimoto 5af0537e56 Command::GroupBase for creating subcommands for Thor. 2010-08-24 10:58:36 -07:00
Mitchell Hashimoto 1facebc3d9 Got rid of global Vagrant.ui. Moved to Environment#ui 2010-08-24 10:37:00 -07:00
Mitchell Hashimoto 48b7596357 Init command. Tests for the base command. 2010-08-24 10:27:36 -07:00
Mitchell Hashimoto 0ddda8f591 Remove all old commands. They're all being rewritten 2010-08-24 09:19:16 -07:00
Mitchell Hashimoto 4be0063d12 Tests for the CLI class 2010-08-23 23:53:27 -07:00
Mitchell Hashimoto cd82c8d7f8 Get rid of the PROJECT_ROOT constant. 2010-08-23 21:33:14 -07:00
John Bender e9a9e4abc0 added param expectation to export action recover call for cleanup 2010-08-22 01:08:20 -07:00
John Bender 220fff0c19 moved unpackage to warden 2010-08-22 00:49:54 -07:00
John Bender 30a84c6e50 moved export to warden 2010-08-22 00:37:15 -07:00
John Bender a98a504849 fixed lambda wront # of arguments in warden test 2010-08-22 00:08:54 -07:00
John Bender c519f14626 moved rescue to recover 2010-08-22 00:08:54 -07:00
John Bender 0c011e80c7 action general package moved to warden cleanup 2010-08-22 00:08:54 -07:00