Mitchell Hashimoto
b1b4ae2077
Remove SSH object from environment
2010-05-07 21:45:40 -07:00
Mitchell Hashimoto
2e547bda26
SSH object is now on the VM, rather than the environment
2010-05-07 21:40:32 -07:00
Mitchell Hashimoto
7419563b80
Added `config.vm.define` which will be used for multi-VMs
2010-05-07 21:19:11 -07:00
Mitchell Hashimoto
d7e0172e2d
`vagrant destroy` always forces the shutdown (does not attempt graceful)
2010-05-06 20:50:32 -07:00
Mitchell Hashimoto
4d042da99b
If JSON parsing fails on reading the active list, just set it to an empty hash
2010-05-06 11:02:53 -07:00
Mitchell Hashimoto
699fa2ce77
Call properly `t` method in error_and_exit
2010-05-02 13:51:25 -07:00
Mitchell Hashimoto
af1b098b9d
`vagrant status --global` flag to view global status
2010-05-01 00:24:39 -07:00
Mitchell Hashimoto
1900d1faaa
vagrant status now uses strings.yml instead of hardcoding strings into the command
2010-04-30 23:52:16 -07:00
Mitchell Hashimoto
13c05de702
Rename errors.yml to strings.yml and Error to Translator, since I plan on using it for general strings
2010-04-30 23:42:11 -07:00
Mitchell Hashimoto
4e9653f95e
Made `last_updated_at` `created_at` instead
2010-04-30 23:35:30 -07:00
Mitchell Hashimoto
422951f0eb
ActiveList now contains meaningful information about the running VMs
2010-04-30 23:34:22 -07:00
Mitchell Hashimoto
661af82e63
Refactor up/start actions.
2010-04-29 00:38:39 -07:00
Mitchell Hashimoto
822a5e3154
Linux shutdown state checking no longer requires the force param. Its default
2010-04-28 20:47:58 -07:00
Mitchell Hashimoto
fab4ae5dd2
Get rid of the one second sleep on `reload`. A fix was pushed upstream in virtualbox gem which fixes this.
2010-04-26 23:41:42 -07:00
Mitchell Hashimoto
fee901a899
Remove remaining Vagrant.config references. There a still a couple left...
2010-04-25 17:17:18 -07:00
Mitchell Hashimoto
c28195ed26
Add '--help' to any command to immediately get help for that command.
2010-04-25 16:58:35 -07:00
Mitchell Hashimoto
bbb1b70e1d
Forceful halting with `vagrant halt --force` (or -f for short)
2010-04-25 16:42:12 -07:00
Mitchell Hashimoto
23857242f2
Linux system configurable via `config.linux`
2010-04-25 16:33:33 -07:00
Mitchell Hashimoto
d5866a1b54
`vagrant halt` now attempts to gracefully shut down the machine (via System#halt)
2010-04-25 16:27:03 -07:00
Mitchell Hashimoto
0736f8582d
Shared folder action uses new system abstraction
2010-04-25 02:08:59 -07:00
Mitchell Hashimoto
95938c652d
New abstraction: Systems. Updated config and environment to properly load configured system.
...
This allows the OS-specific tasks to be pulled out into separate classes, so that other systems could potentially be supported. For now, a "Linux" system has been created.
2010-04-25 01:46:51 -07:00
Mitchell Hashimoto
1429723277
Glob loader to make glob loading easier
2010-04-25 00:51:45 -07:00
Mitchell Hashimoto
753ed4c574
Remove `vagrant down` (was deprecated in 0.3.0 to 0.3.2)
2010-04-25 00:34:58 -07:00
Mitchell Hashimoto
f6b95801fc
Export progress bar uses new syntax
2010-04-24 03:31:51 -07:00
Mitchell Hashimoto
4394882a7b
Busy task no longer runs in a separate thread.
2010-04-24 03:26:44 -07:00
Mitchell Hashimoto
50d81031b0
Update VM import to use proper new syntax for virtualbox
2010-04-23 23:56:03 -07:00
Mitchell Hashimoto
46b113dcdb
Trivial change.
2010-04-21 17:04:22 -07:00
Mitchell Hashimoto
ec90382efe
Reload sleeps 1 sec after halt to avoid FFI exception
2010-04-19 21:28:13 -07:00
Mitchell Hashimoto
28eb56b9f8
Error if OSE version is detected
2010-04-19 17:06:27 -07:00
Mitchell Hashimoto
376cd2f24d
Box verification actually raises error to undo box adding
2010-04-19 15:45:52 -07:00
Mitchell Hashimoto
3e36b4ce12
Box verification uses the runner rather than the env
2010-04-19 14:21:21 -07:00
Mitchell Hashimoto
d9308f86ec
Boxes now properly use scoped Environment
2010-04-19 14:15:52 -07:00
Mitchell Hashimoto
5b307a5d9b
Added boxes are now verified
2010-04-19 14:14:44 -07:00
Mitchell Hashimoto
c64dc43c84
Fix progress meter output for Windows
2010-04-15 17:53:54 -07:00
Mitchell Hashimoto
d845e73138
Fork-and-wait SSH on Mac OS X 10.5 [closes GH-51]
2010-04-15 02:36:46 -07:00
Mitchell Hashimoto
b1d3cd3d14
SIGINT twice and vagrant will immediately exit, even if busy
2010-04-14 22:30:46 -07:00
Mitchell Hashimoto
4bc4597e01
When listing subcommands, subcommand without descriptions are ignored
2010-04-13 23:25:50 -07:00
Mitchell Hashimoto
575a9f1021
Readded `vagrant down` but as an error message to assist users in migrating to `vagrant destroy`
2010-04-13 23:24:36 -07:00
Mitchell Hashimoto
5a7e8369d5
`vagrant status` properly detects no rootfile
2010-04-13 23:04:21 -07:00
Mitchell Hashimoto
1a4f934465
Remove old commands files
2010-04-13 17:25:43 -07:00
Mitchell Hashimoto
797112cf84
box remove subcommand
2010-04-13 17:18:59 -07:00
Mitchell Hashimoto
f097ee3111
box list subcommand
2010-04-13 17:16:21 -07:00
Mitchell Hashimoto
8f891630d6
Proper subclassing for box subcommand
2010-04-13 17:11:51 -07:00
Mitchell Hashimoto
c744f7afde
vagrant box add
2010-04-13 17:08:36 -07:00
Mitchell Hashimoto
3107fa763f
Status command
2010-04-13 17:02:43 -07:00
Mitchell Hashimoto
b3277e015f
Package subcommand
2010-04-13 16:46:51 -07:00
Mitchell Hashimoto
b72e3640e8
Resume subcommand
2010-04-13 16:37:32 -07:00
Mitchell Hashimoto
5efa7bded5
Suspend subcommand
2010-04-13 16:36:08 -07:00
Mitchell Hashimoto
28a2fd5466
Halt command
2010-04-13 16:34:29 -07:00
Mitchell Hashimoto
fa3ca57c9f
ssh-config subcommand
2010-04-13 16:31:08 -07:00
Mitchell Hashimoto
4674b1983e
SSH subcommand
2010-04-13 16:24:39 -07:00
Mitchell Hashimoto
0a1f2158f7
Sort subcommands listing
2010-04-13 16:23:02 -07:00
Mitchell Hashimoto
453f4774e4
Reload command and some docs for other commands
2010-04-13 16:22:14 -07:00
Mitchell Hashimoto
33c3a2df45
Destroy subcommand
2010-04-13 16:19:33 -07:00
Mitchell Hashimoto
60c6ad480c
Up command
2010-04-13 16:16:59 -07:00
Mitchell Hashimoto
95592eb7f6
`vagrant --version` outputs the version
2010-04-13 15:45:38 -07:00
Mitchell Hashimoto
b4d1ee6e83
Commands specify their option parsings in the `options_spec` method. Parent takes care of the rest.
2010-04-13 15:34:26 -07:00
Mitchell Hashimoto
26c12a9a17
Init subcommand is working
2010-04-13 14:03:50 -07:00
Mitchell Hashimoto
bb0d3f7f93
Base command now recursively dispatches, allowing for arbitrarily complex commands such as `vagrant a b c`
2010-04-13 13:53:27 -07:00
Mitchell Hashimoto
aec05eff0d
Commands can now be registered as subcommands (similar to how config works)
2010-04-13 13:13:55 -07:00
Mitchell Hashimoto
83da66ee91
Commenting on the Vagrant::Command class
2010-04-13 01:44:11 -07:00
Mitchell Hashimoto
5c3171a8f9
Option parsing is in on the base command
2010-04-13 01:42:11 -07:00
Mitchell Hashimoto
d8387f8280
New files for the new command structure. Ignore the `vagrant-temp` binary for now.
2010-04-13 01:22:53 -07:00
Mitchell Hashimoto
46956d8caa
You can now specify the host of the ssh-config with the `--host` option.
2010-04-12 21:28:37 -07:00
Mitchell Hashimoto
8218395546
ssh-config should require root path, not a created environment
2010-04-12 21:03:13 -07:00
Mitchell Hashimoto
c630b028fc
`vagrant ssh-config` outputs .ssh/config ready entry for current environment
2010-04-12 21:00:42 -07:00
Mitchell Hashimoto
d5e2a64fd3
On import/export, hide "parts" of progress (since its simply out of 100)
2010-04-12 18:11:32 -07:00
Mitchell Hashimoto
f8dee9adf9
Base boxes can now be packaged with `vagrant package` by specifying the `--base` parameter.
2010-04-12 16:29:33 -07:00
Mitchell Hashimoto
677b3b05cc
Packaging uses MAC address directly from the machine
2010-04-12 16:12:37 -07:00
Mitchell Hashimoto
40e823d90a
Shorten shared folders further [see GH-50]
2010-04-12 14:38:34 -07:00
Lincoln Stoll
1245a0c1c8
Shorten shared folder names
...
On some setups, the generated name is truncated, which causes issues
because they then look the same, and the kernel throws duplicate
filename errors. Shorten the name so this doesn't happen
2010-04-12 14:06:56 -07:00
Lincoln Stoll
ea85e1d38f
Shorten shared folder names
...
On some setups, the generated name is truncated, which causes issues
because they then look the same, and the kernel throws duplicate
filename errors. Shorten the name so this doesn't happen
2010-04-12 14:06:40 -07:00
Mitchell Hashimoto
9498226c83
Package now puts auto-generated Vagrantfile with MAC address in root.
2010-04-12 00:44:04 -07:00
Mitchell Hashimoto
ecdec218b4
Included files in package now go into the include/ directory.
2010-04-12 00:29:26 -07:00
Mitchell Hashimoto
d30354540e
Simply typo fixes
2010-04-12 00:06:53 -07:00
Mitchell Hashimoto
f0fa8aa5df
Export now uses proper function and has progress bar (like import)
2010-04-12 00:05:24 -07:00
Mitchell Hashimoto
945710e068
Config JSON doesn't include 'env'
2010-04-11 23:39:22 -07:00
Mitchell Hashimoto
4d3f929b3f
Sleep for a second on `vagrant destroy` if the boot mode is GUI. Required to wait for GUI to clean itself up.
2010-04-10 17:46:42 -07:00
Michael Johnston
4149313e7a
allow setting mode to boot into, so can boot with gui which makes debugging networking setup easier
2010-04-10 16:45:01 -07:00
Mitchell Hashimoto
b1a16a7b3d
`vagrant down` is now `vagrant destroy`
2010-04-09 21:39:38 -07:00
Mitchell Hashimoto
43f66c1693
Modify start to only boot for saved VMs, no sharing folders, etc.
2010-04-09 21:26:56 -07:00
Mitchell Hashimoto
fd3012ae00
Suspend uses proper VM method structure
2010-04-09 15:47:31 -07:00
Mitchell Hashimoto
6de3b641d0
Fix forwarded ports destroy method call to use new virtualbox format
2010-04-09 15:41:26 -07:00
Mitchell Hashimoto
4586bc554d
Give cookbooks and role shared folders unique IDs
2010-04-09 14:22:05 -07:00
Mitchell Hashimoto
a9c261090e
Remove redundancy in chef solo provisioner
2010-04-09 14:17:25 -07:00
Wade Simmons
15e4b2f411
add support for roles in Chef Solo
2010-04-09 14:01:15 -07:00
Mitchell Hashimoto
008e533c98
Chef configuration is now pulled into Chef provisioner base. Log level is able to be specified.
2010-04-08 23:17:25 -07:00
Mitchell Hashimoto
965e5a12f3
Chef server client.rb uses new templates
2010-04-08 21:07:24 -07:00
Mitchell Hashimoto
47a9d85b4e
Chef solo config uses new template system
2010-04-08 20:56:48 -07:00
Mitchell Hashimoto
945cc6af32
VM import now reports import progress!
2010-04-08 12:53:23 -07:00
Mitchell Hashimoto
00cf000189
Added a progress meter module/mixin since that'll be used elsewhere.
2010-04-08 12:44:25 -07:00
Mitchell Hashimoto
745aadd1a5
VM halting uses new VM#stop
2010-04-08 01:47:57 -07:00
Mitchell Hashimoto
2271a41940
Boot uses new VM#start method which only takes 1 arg
2010-04-08 01:45:19 -07:00
Mitchell Hashimoto
279704475d
SharedFolder uses the proper VM#save method
2010-04-08 01:42:48 -07:00
Mitchell Hashimoto
7a533a40c9
Forwarded ports task now calls VM#save properly
2010-04-08 01:30:28 -07:00
Mitchell Hashimoto
c4da4a6b9f
Fix vm.save on customize. no longer needs the boolean argument
2010-04-08 01:30:00 -07:00
Mitchell Hashimoto
0c5ec7a4c7
Update destroy action to use the new destroy syntax for VM
2010-04-08 01:22:51 -07:00
Mitchell Hashimoto
d44dd9a4eb
`nics` on virtualbox are now called `network_adapters`
2010-04-08 01:21:22 -07:00
Mitchell Hashimoto
068c0e67c5
Update environment to use new VirtualBox methods/attributes
2010-04-08 01:13:25 -07:00
Adrian Bravo
ed3e86d20f
Moved node_name from command option on chef-client to the generated config file.
2010-04-02 13:52:23 -07:00
Adrian Bravo
d87030a798
Added support for env.config.chef.node_name when using ChefServer.
2010-04-02 13:51:31 -07:00
John Bender
bd69c54379
file download from http fix with correct options for windows
2010-03-26 23:36:53 -07:00
Julio Arias
2e39ab53e7
Fixed bug with single chef-solo cookbook location
2010-03-25 17:30:47 -07:00
John Bender
4e4d1a6978
error for vagrant ssh on windows, error text, mario gem, still need doc pages for links in error.yml
2010-03-25 00:09:31 -07:00
John Bender
9ba3108cc3
small cleanup
2010-03-23 00:07:54 -07:00
John Bender
527e101cab
fix for no extract results from uri check
2010-03-23 00:03:28 -07:00
John Bender
2067f000f5
fix for uri parsing issues on windows with a small refactor thrown in on the side
2010-03-22 23:49:36 -07:00
Mitchell Hashimoto
c25ff5300a
Tab => Spaces
2010-03-22 00:13:48 -07:00
Mitchell Hashimoto
bfcc0d3939
Whitespace fixes
2010-03-22 00:09:30 -07:00
John Bender
0c00201a6b
switch to File.open for downloader temp file path to prevent minitar issues on windows
2010-03-21 23:50:08 -07:00
Mitchell Hashimoto
35e9fa53d4
Vagrant::Commands moved to instance methods on the environment rather than class methods
2010-03-20 09:15:20 -07:00
Mitchell Hashimoto
881aa833e6
Run VM customizations when restarting a halted machine [closes GH-36]
2010-03-20 01:59:32 -07:00
Mitchell Hashimoto
5bbb84efa7
Chef server validation key path now expands
2010-03-20 01:25:14 -07:00
Mitchell Hashimoto
1d518e2693
Box.find sets environment of found box
2010-03-20 01:04:56 -07:00
Mitchell Hashimoto
36648e7a12
Box#directory properly passes environment to class method
2010-03-20 00:52:28 -07:00
Mitchell Hashimoto
ea25f49c63
Pass environment to box.find
2010-03-20 00:50:59 -07:00
Mitchell Hashimoto
e8e2c136d3
Finally remove Vagrant::Env
2010-03-19 23:56:36 -07:00
Mitchell Hashimoto
3504b1dbcb
Boxes modified for use with environment
2010-03-19 22:29:59 -07:00
Mitchell Hashimoto
fee10c47fd
Provisioning redone to use new environment
2010-03-19 22:15:20 -07:00
Mitchell Hashimoto
11780fb618
Converted Box class to use new environment
2010-03-19 21:31:43 -07:00
Mitchell Hashimoto
5db99c04d4
Removing references to Vagrant::Env
2010-03-19 21:15:45 -07:00
Mitchell Hashimoto
bafd15661d
`vagrant box` uses new Environment
2010-03-19 17:17:51 -07:00
Mitchell Hashimoto
32a951cb6c
Removed unused method on Vagrant::Command
2010-03-19 17:10:09 -07:00
Mitchell Hashimoto
fddee1158d
`vagrant package` now uses the environment
2010-03-19 17:05:31 -07:00
Mitchell Hashimoto
0641df7563
`vagrant resume` command now uses new environment
2010-03-19 16:53:18 -07:00
Mitchell Hashimoto
c7508e91b9
`vagrant suspend` update to work with new environment
2010-03-19 16:51:59 -07:00
Mitchell Hashimoto
e68994556c
`vagrant reload` uses new Environment
2010-03-19 16:50:54 -07:00
Mitchell Hashimoto
b461e0ee8b
`vagrant halt` uses new environment
2010-03-19 16:48:36 -07:00
Mitchell Hashimoto
259a3a3836
`vagrant ssh` with new Environment
2010-03-19 16:47:38 -07:00
Mitchell Hashimoto
62de77132c
`vagrant up` process converted to new Environment
2010-03-19 16:42:48 -07:00
Mitchell Hashimoto
ae43f25cd2
Boot action converted to new Environment
2010-03-19 16:22:20 -07:00
Mitchell Hashimoto
d384408782
SharedFolder action converted to new Environment
2010-03-19 16:19:27 -07:00
Mitchell Hashimoto
e1c4f91664
ForwardPort action converted to new environment
2010-03-19 16:16:03 -07:00
Mitchell Hashimoto
b5daf5ae86
`vagrant down` command and associated actions now use the new environment
2010-03-19 16:08:29 -07:00
Mitchell Hashimoto
59ae16998d
Set the environment on the loaded box
2010-03-19 15:53:24 -07:00
Mitchell Hashimoto
a2a59b532b
`vagrant ssh` will automatically fix permissions on the private key if necessary
2010-03-19 01:57:28 -07:00
Mitchell Hashimoto
260b099dba
SSH class converted to instance methods. now loads on the environment
2010-03-19 01:51:27 -07:00
Mitchell Hashimoto
689f69bd4c
Loading VMs and created VMs now point back to the environment they belong to
2010-03-19 01:31:44 -07:00
Mitchell Hashimoto
2661845b5d
Helper method to create a new VM on an environment. Interim method.
2010-03-19 01:27:40 -07:00
Mitchell Hashimoto
2fef27ec8b
Persist/depersist VM methods implemented on new Environment
2010-03-18 18:05:34 -07:00
Mitchell Hashimoto
06947002f7
The require_* methods and check_virtualbox! integrated into new Environment
2010-03-18 17:41:51 -07:00
Mitchell Hashimoto
a31bd73587
Environment.load! implemented to load a given environment in a single step
2010-03-18 15:05:46 -07:00
Mitchell Hashimoto
cb2513b1ec
Environment#load_config! loads from the box directory and home directory as well
2010-03-18 14:54:43 -07:00
Mitchell Hashimoto
047c094e41
Environment#load! implemented to set up an instance of environment
2010-03-18 14:43:17 -07:00
Mitchell Hashimoto
8c314e3e17
New Environment class can load home dir, box, and persisted VM
2010-03-18 14:27:53 -07:00
Mitchell Hashimoto
c7f32c8be8
Beginnings of Environment class. Currently loads config partially.
2010-03-18 12:38:01 -07:00
Mitchell Hashimoto
e84b17e215
Config#execute! returns the newly loaded configuration
2010-03-18 12:28:58 -07:00
Mitchell Hashimoto
a7652244d5
Move stacked proc runner to the util directory
2010-03-18 12:08:33 -07:00
Mitchell Hashimoto
586878a330
Runner uses the proper key/data to output errors
2010-03-17 21:45:20 -07:00
Mitchell Hashimoto
f59b255085
ActionExceptions all use the new error strings by key
2010-03-17 21:38:38 -07:00
Mitchell Hashimoto
18f761b015
Unit tests for each error_and_exit now that the message is testable
2010-03-17 21:15:48 -07:00
Mitchell Hashimoto
3c2e1bd80a
All errors now go through the errors.yml files
2010-03-17 21:08:26 -07:00
Mitchell Hashimoto
ac6c3a4892
Util::Errors class to parse errors from YML and render them via ERB
2010-03-17 20:42:53 -07:00
Mitchell Hashimoto
88cfaf8f27
Added class level method to render string for the TemplateRenderer
2010-03-17 19:09:17 -07:00
Mitchell Hashimoto
37de04eb9b
TemplateRenderer can now render strings
2010-03-17 18:09:24 -07:00
Mitchell Hashimoto
c6e39ddbf0
Removed namespace from command usage of TemplateRenderer, since we extend that into the class
2010-03-17 18:00:30 -07:00
Mitchell Hashimoto
b1872c4e31
Moved template renderer until the Util namespace
2010-03-17 17:59:25 -07:00
Mitchell Hashimoto
4229b65a81
`vagrant init` now takes an optional parameter to specify the default box [close GH-6]
2010-03-17 17:15:12 -07:00
Mitchell Hashimoto
974624e5cb
Documentation on the renderer
2010-03-17 17:04:21 -07:00
Mitchell Hashimoto
edc1bbec8c
TemplateRenderer added in preparation for supporting ERB templates for some things...
2010-03-17 17:00:46 -07:00
Mitchell Hashimoto
723c36cb1d
Give a useful error if the VirtualBox.xml is not found [close GH-30]
2010-03-17 01:25:02 -07:00
Mitchell Hashimoto
ef5e73e950
File box downloader gives a nice error message if the file doesn't exist.
2010-03-15 19:18:00 -07:00
Mitchell Hashimoto
829d1231bf
Add log output to VM customization
2010-03-15 15:46:53 -07:00
Mitchell Hashimoto
dcbfe709f3
VM customization through Vagrantfile (modifying RAM, name, etc.)
2010-03-15 15:41:53 -07:00
Mitchell Hashimoto
83ddfa6695
Shared folder UID/GID now defaults to the SSH username
2010-03-15 15:13:07 -07:00
Mitchell Hashimoto
0062207ab3
Configuration now uses the new StackedProcRunner module
2010-03-15 14:27:34 -07:00
Mitchell Hashimoto
130d584322
StackedProcRunner abstraction which will be used for VM customization (in addition to configuration)
2010-03-15 14:19:28 -07:00
Mitchell Hashimoto
1f216da06b
Removed some code which just isn't used anymore
2010-03-15 12:38:31 -07:00
Mitchell Hashimoto
5bdabbc8c8
Can now specify the UID/GID of the shared folders from the Vagrantfile
2010-03-15 12:33:03 -07:00
Mitchell Hashimoto
51116438a7
Port collision detection ignores if the VM is the current VM
2010-03-15 01:00:40 -07:00
Mitchell Hashimoto
de54433496
On SSH authentication failure, give a helpful error message outlining what may have gone wrong.
2010-03-15 00:50:23 -07:00
John Bender
5aeee61e83
action dependencies and unique requirement moved to actions/collection
2010-03-14 22:34:48 -07:00
Mitchell Hashimoto
42007f6b80
A very basic `vagrant status` command, which simply outputs the status of the environment (whether it has been created, its on, its off, etc.)
2010-03-14 18:35:18 -07:00
Mitchell Hashimoto
f6057bf80a
Port collision detection now checks every VirtualBox VM, not just the active list
2010-03-14 17:54:30 -07:00
Mitchell Hashimoto
98d5454936
Collision check is now done in `prepare` of forward port action.
2010-03-14 17:35:58 -07:00
Mitchell Hashimoto
c08937d899
Dotfile and active list are now updated when environment is torn down
2010-03-14 16:57:29 -07:00
Mitchell Hashimoto
05c4c2f838
Env.persist_vm also persists UUID to the ActiveList
2010-03-14 16:39:52 -07:00
Mitchell Hashimoto
62d3172e57
VM now has a `uuid` method
2010-03-14 16:28:36 -07:00
Mitchell Hashimoto
575e91e70b
ActiveList supports adding/removing and saving of VM UUIDs.
2010-03-14 16:27:22 -07:00
Mitchell Hashimoto
235480fffa
Reads of Vagrant::ActiveList to track the active vagrant managed virtual environments.
2010-03-14 16:08:58 -07:00
Mitchell Hashimoto
ab1acf2479
Parenthesize argument to remove warning
2010-03-14 14:59:35 -07:00
Mitchell Hashimoto
8057e1e94e
`vagrant box list` added to error message for invalid subcommand to `vagrant box`
2010-03-14 14:57:39 -07:00
Mitchell Hashimoto
6c05901fe7
Vagrant is now a good ruby gem citizen and no longer modifies the include path.
2010-03-13 03:21:04 -08:00
Mitchell Hashimoto
5598a260c2
Require the files, not puts them... its late.
2010-03-13 03:12:08 -08:00
Mitchell Hashimoto
2a6c9a762a
Fixed expand pathing to work properly in vagrant.rb
2010-03-13 03:11:16 -08:00
Mitchell Hashimoto
9da68bb129
Expand paths properly for loading so that files already loaded aren't loaded twice
2010-03-13 03:08:26 -08:00
Mitchell Hashimoto
39a8a5fd94
Vagrant.config.home now returns nil if home is nil, otherwise expands path
2010-03-13 01:53:12 -08:00
Mitchell Hashimoto
98d8c1978b
Properly reload configuration once all the basics are loaded
2010-03-13 01:47:48 -08:00
Mitchell Hashimoto
e09dbfa367
Vagrantfile in the home path is now injected into the vagrantfile load sequence
2010-03-12 21:03:49 -08:00
Mitchell Hashimoto
5995191972
More useful error message for using vagrant in home directory
2010-03-12 10:15:17 -08:00
Mitchell Hashimoto
e9940d83df
Change VirtualBox version requirement to 3.1 until virtualbox gem supports 3.0 cleanly
2010-03-12 02:10:05 -08:00
John Bender
e35e2fbb04
expand path fix
2010-03-12 01:34:36 -08:00
John Bender
00eecf5bdd
moved to key based ssh
2010-03-12 01:19:45 -08:00
Mitchell Hashimoto
9ba0647b64
Merge in 'flexible-provisioning' which supports abstracted provisioners, chef server, additional chef solo features, and better chef configuration overall. Also includes pluggable configuration keys.
2010-03-11 22:52:37 -08:00
Mitchell Hashimoto
b86ef6aab9
Silly typo fix
2010-03-11 22:44:50 -08:00
Mitchell Hashimoto
3a4881bf2e
Chef solo cookbooks paths can now take arrays of folders, in addition to just a single string
2010-03-11 21:59:44 -08:00
Mitchell Hashimoto
9c8db3b48a
Revert up-ramping SSH timeout. Doesn't solve issue with SSH.execute slowness on internet-less machines.
2010-03-11 19:29:41 -08:00
Mitchell Hashimoto
0ebebe14a0
Re-added the sleep
2010-03-11 19:26:39 -08:00
Mitchell Hashimoto
2c1483ae80
SSH.up? timeout slowly ramps up based on configuration values, giving later attempts more time.
2010-03-11 17:59:25 -08:00
Mitchell Hashimoto
b03af8ccc2
Removed sleeping from waiting for boot since the timeout should handle that
2010-03-11 17:40:27 -08:00
Mitchell Hashimoto
df2f76297d
Helper methods on chef config `add_recipe` and `add_role` and `run_list`
2010-03-11 01:05:57 -08:00
John Bender
97e31c82ef
whitespace fix
2010-03-11 00:02:57 -08:00
John Bender
751a8bfa1b
file copy fix
2010-03-11 00:02:05 -08:00
Mitchell Hashimoto
5f695d8f4d
Added file existence test for the validation key for chef server provisioning
2010-03-10 23:06:20 -08:00
Mitchell Hashimoto
9384917b81
Chef server provisioner works. Added the auto-creation of the client key config.
2010-03-10 22:42:42 -08:00
Mitchell Hashimoto
a4428cd201
Added :chef_server provisioner shortcut
2010-03-10 21:58:51 -08:00
Mitchell Hashimoto
df2e80140d
Chef server provisioner
2010-03-10 21:57:51 -08:00
Mitchell Hashimoto
df648803dd
Pull out common chef code into its own abstract provisioner
2010-03-10 19:00:49 -08:00
Mitchell Hashimoto
f6bc0ff5fc
Change chef solo to use `run_list` instead of `recipes`
2010-03-10 18:34:52 -08:00
Mitchell Hashimoto
759d904628
Provision action must call "prepare" on the provisioner
2010-03-10 15:12:45 -08:00
Mitchell Hashimoto
2763540b44
Move default chef solo configuration to the chef solo provisioner
2010-03-10 14:58:41 -08:00
Mitchell Hashimoto
86ffbe5d32
Provision class now properly figures out the provisioner and executes it
2010-03-10 14:54:12 -08:00
Mitchell Hashimoto
d81e5dc28d
Remove all "chef" configuration and moved chef solo provisioning to its own class
2010-03-10 14:27:02 -08:00
Mitchell Hashimoto
6878a3ea4d
Merge branch 'master' into flexible-provisioning for new shared folder API
2010-03-10 14:00:51 -08:00
Mitchell Hashimoto
a71815df4e
Additional shared folders can now be configured through the `config.vm.share_folder` method
2010-03-10 13:49:52 -08:00
Mitchell Hashimoto
0d026da21e
Base class for chef solo
2010-03-10 13:01:53 -08:00
Mitchell Hashimoto
f86bc912eb
Base provisioning class
2010-03-10 12:56:52 -08:00
Mitchell Hashimoto
19d00a8802
Config class now allows classes to dynamically register configuration keys.
2010-03-10 12:25:53 -08:00
Mitchell Hashimoto
3daf48b70c
Config class now properly uses class variables. Not sure how this one slipped through the cracks.
2010-03-10 01:07:24 -08:00
Mitchell Hashimoto
631580fc8e
Make the windows test only run on windows for now until it can pass on unix
2010-03-10 01:02:23 -08:00
John Bender
b92efdfe53
windows root path fix
2010-03-10 00:30:28 -08:00
Ewen Cheslack-Postava
1bf70fd4c4
Show helpful error if importing VM fails
2010-03-09 22:00:56 -08:00
Mitchell Hashimoto
47d46d4b12
Now checks for VirtualBox installation and proper version and gives sensible error if not detected.
2010-03-09 21:47:07 -08:00
Mitchell Hashimoto
6c5ddcdf8d
Windows root path checking. Interim solution.
2010-03-09 12:33:54 -08:00
Mitchell Hashimoto
dfe67d71de
Tests for Minitar update.
2010-03-09 11:05:33 -08:00
Ilkka Laukkanen
de18f1e4a6
Replace tarruby with archive-tar-minitar.
...
Tarruby seems to not compile on 64-bit, and even its author says to use
another library. Minitar seems to be more active than libarchive so I
used that.
Tests not fixed yet.
2010-03-09 10:38:02 -08:00
Jonathan Rudenberg
68d709eab9
Fix reference to File.cp since no longer using ftools
2010-03-09 09:51:57 -08:00
Jonathan Rudenberg
6e0f171514
Remove ftools requirement (deprecated in 1.9)
2010-03-09 09:12:02 -08:00
Mitchell Hashimoto
6a3b7370aa
Load action runner before all other files
2010-03-09 08:45:14 -08:00
John Bender
d550cc3a76
dup action exception and tests
2010-03-08 22:20:17 -08:00
Mitchell Hashimoto
f9fff05e37
Reload uses the new 'boot' action
2010-03-08 21:13:03 -08:00
Mitchell Hashimoto
d818bf856b
SSH timeout is now configurable with `config.ssh.timeout`
2010-03-08 19:30:58 -08:00
Mitchell Hashimoto
1139ec9e0c
SSH.up? actually times out properly now
2010-03-08 19:17:43 -08:00
Mitchell Hashimoto
2f7de333ec
Fix issue with infinite looping on `vagrant resume`
2010-03-08 18:45:59 -08:00
Mitchell Hashimoto
db24291b3d
Fix bug where dotfile_path is a directory in the project path. Thanks brett_h
2010-03-08 13:12:58 -08:00
Mitchell Hashimoto
ce7f7dd168
Refactor Vagrant::Env a bit and requiring root path.
2010-03-08 00:34:15 -08:00
Mitchell Hashimoto
efe98df4b0
Added `vagrant box list` command to list added boxes
2010-03-07 21:34:53 -08:00
Mitchell Hashimoto
6194421972
`vagrant box` no longer requires a Vagrantfile in the current directory.
2010-03-07 12:44:00 -08:00
Mitchell Hashimoto
6fd10504e0
Box existence error checking is now in proper 'require_box'
2010-03-06 21:48:39 -08:00
Mitchell Hashimoto
49c98ad8af
Mounting a folder now waits for the mount to succeed before continuing. Fixed a race condition between SSH daemon starting and the VBox kernel extensions loading...
2010-03-05 19:16:57 -08:00
Mitchell Hashimoto
41b25e68ec
Reload action only halts the machine if its running
2010-03-05 18:03:08 -08:00
Mitchell Hashimoto
06ff3a363c
Env.load_box! gives a reasonable error if the box specified in the Vagrantfile doesn't exist now.
2010-03-05 16:58:36 -08:00
Mitchell Hashimoto
0a54ea1464
`vagrant-down` now uses reusable actions (a Down action)
2010-03-05 16:47:47 -08:00
John Bender
0cdc6b5eaa
moved hanging dotfile_name under Vagrant.config.vagrant
2010-03-04 23:50:08 -08:00
Mitchell Hashimoto
66bc5a19e2
Revamped provisioning JSON generation which includes the entire configuration tree. Plus better testing all around for JSON generation + configuration.
2010-03-04 22:14:44 -08:00
Mitchell Hashimoto
da2150da89
Resume uses the resume action now
2010-03-04 21:22:25 -08:00
Mitchell Hashimoto
0a791d1c58
Suspending moved out to an action, command takes advantage of this action now.
2010-03-04 21:13:17 -08:00
Mitchell Hashimoto
b4e25143dc
error_and_exit now uses `abort`, which prints to stdout before exiting
2010-03-04 21:05:43 -08:00
Mitchell Hashimoto
20ed284372
Unpackage now has its own rescue implementation
2010-03-04 21:02:59 -08:00
Mitchell Hashimoto
bf738d4db5
Developer documentation for box actions
2010-03-04 20:58:50 -08:00
Mitchell Hashimoto
a88e75f357
Runner developer documentation
2010-03-04 00:25:17 -08:00
Mitchell Hashimoto
be47236c37
ActionException developer documentation
2010-03-04 00:08:25 -08:00
Mitchell Hashimoto
94280943f4
Actions::Base developer documentation
2010-03-04 00:08:25 -08:00
Mitchell Hashimoto
816a1734e4
Vagrant::Box developer documentation
2010-03-04 00:08:25 -08:00
John Bender
c952fdaa24
check if a box exists before beginning add action
2010-03-03 23:53:46 -08:00
Mitchell Hashimoto
35af1fa02b
Added rescue/cleanup methods to box downloading to cleanup temporary files
2010-03-03 23:00:04 -08:00
Mitchell Hashimoto
8e7621061f
vagrant-up and vagrant-halt no longer raise exceptions when the VM is not in the proper state.
2010-03-02 22:19:13 -08:00
Mitchell Hashimoto
c7f040f14c
vagrant-up now starts the VM if its already created, rather than giving an error.
2010-03-02 22:07:04 -08:00
Mitchell Hashimoto
c119a34f0e
Added vagrant-halt to forcibly shut down vagrant instance.
2010-03-02 21:53:16 -08:00
Mitchell Hashimoto
f5f1405a7c
HTTP downloader clears the download line once its complete so that the log output doesn't wrap
2010-02-28 22:34:07 -08:00
Mitchell Hashimoto
3d220ef5c8
HTTP downloader implemented. Boxes can now be added via HTTP!
2010-02-28 22:13:37 -08:00
Mitchell Hashimoto
9913c07ff2
Box download action now uses Vagrant "Downloaders." These are abstractions which will allow me to implement file downloading, http downloading etc. File downloading implemented here.
2010-02-28 21:42:38 -08:00
Mitchell Hashimoto
7c19419ef2
Package uses a reference to the Export action to get the temp path rather than the wonky callback. Implemented Runner#find_action for this.
2010-02-28 20:23:32 -08:00
Mitchell Hashimoto
5dd3e51788
Export action now cleans up and rescues. Package no longer cleans up temporary directory.
2010-02-28 19:56:50 -08:00
Mitchell Hashimoto
e50e264747
Actions can now implement the #cleanup method which is called after all other actions have finished executing.
2010-02-28 01:47:42 -08:00
Mitchell Hashimoto
dce3c032be
If an "ActionException" is raised from an action, the runner will error and exit rather than continuing to raise the exception.
2010-02-28 01:24:11 -08:00
Mitchell Hashimoto
37393986e3
Implemented the "rescue" method for action runners when an exception is raised. Read documentation for more information.
2010-02-28 01:06:01 -08:00
Mitchell Hashimoto
affe1cd9ad
Log output for additional files
2010-02-28 00:41:09 -08:00
John Bender
3c546ef2c7
check for included files before packaging
2010-02-28 00:13:55 -08:00
Mitchell Hashimoto
f316e0c61c
Default include files to empty array
2010-02-28 00:03:21 -08:00
John Bender
79718eb4c3
--include added to package tests passing, but still needs manual verification
2010-02-27 22:49:43 -08:00
Mitchell Hashimoto
9e41bd9a34
Moved the root shared folder to load in the start task.
2010-02-25 23:57:50 -08:00
Mitchell Hashimoto
f1fc07e353
Action runner clears actions after execution
2010-02-24 00:39:12 -08:00
Mitchell Hashimoto
e4548508f2
Removed some delegated methods on VM to explicitly use `vm` attribute in actions so its more runner-agnostic.
2010-02-24 00:34:54 -08:00
Mitchell Hashimoto
26f9eca141
Reworked `vagrant package` to use the new tmp directory.
2010-02-24 00:30:58 -08:00
Mitchell Hashimoto
2ee850011b
Clear config after load paths are setup
2010-02-23 23:56:53 -08:00
Mitchell Hashimoto
71abd76fae
If a box contains a Vagrantfile, that is now loaded in the configuration chain between the gem config and the project config.
2010-02-23 21:50:44 -08:00
Mitchell Hashimoto
3b198e208d
Config clearing.
2010-02-23 21:39:56 -08:00
Mitchell Hashimoto
1a6f838baa
`vagrant up` (specifically Actions::VM::Import) now uses a configured box rather than a base VM. Much cleaner!
2010-02-23 00:05:41 -08:00
Mitchell Hashimoto
bd551174ba
Removed traces of ovf_file usage in actions
2010-02-22 23:15:21 -08:00
Mitchell Hashimoto
10e67e85f0
Removed unpackage VM action (since its part of box now)
2010-02-22 23:09:19 -08:00
Mitchell Hashimoto
5b68f3dd10
Box actions clean up the temporary file after unpackaging
2010-02-22 22:42:31 -08:00
Mitchell Hashimoto
c7e21a0c94
Moved the destroy logic out to a re-usable box action.
2010-02-22 21:32:15 -08:00
Mitchell Hashimoto
546db294ca
`vagrant box remove` functionality is in
2010-02-22 21:27:57 -08:00
Mitchell Hashimoto
f502587931
`vagrant box add` works completely
2010-02-22 18:57:19 -08:00
Mitchell Hashimoto
28b48929df
Changed box actions and commands to use the Box class instead of passed in params.
2010-02-22 18:17:43 -08:00
Mitchell Hashimoto
1856d56431
Box downloading works (Actions::Box::Download)
2010-02-22 17:34:44 -08:00
Mitchell Hashimoto
6b705cbe42
Change `vm` attribute to be `runner` on action base to reflect what it now is.
2010-02-22 16:35:22 -08:00
Mitchell Hashimoto
35762a4308
Moved VM actions into the Actions::VM namespace.
2010-02-22 16:25:47 -08:00
Mitchell Hashimoto
f60b383b75
`vagrant box` command with primitive functionality is in. Doesn't do anything productive yet.
2010-02-22 16:13:53 -08:00
Mitchell Hashimoto
2b1afa6f6f
Vagrant::Env sets up the home directory (specified in config) with proper subfolders if they don't exist.
2010-02-22 01:03:08 -08:00
Mitchell Hashimoto
f1fda1f0fa
Pulled out action running from VM into its own Actions::Runner class
2010-02-21 22:56:22 -08:00
Mitchell Hashimoto
d447f9e377
Package tests updated to not hit the filesystem
2010-02-20 22:44:32 -08:00
John Bender
c644cfad1a
package and unpackage moved to tar, tarruby added
2010-02-19 00:54:49 -08:00
John Bender
a690b13f78
unpackage added, still uses zlib
2010-02-17 15:45:06 -08:00
Mitchell Hashimoto
8d9e53fe27
SSH.up? returns false when an abrupt disconnect occurs
2010-02-16 16:05:58 -08:00
Mitchell Hashimoto
e855ae9965
vagrant-reload works
2010-02-16 15:48:03 -08:00
Mitchell Hashimoto
e8e07d26f5
Forwarding ports now clears old ports first
2010-02-16 15:47:52 -08:00
Mitchell Hashimoto
e825847dac
VM instances can execute a single command now (VM#execute!(foo)) and added "stop" action to force immediate shutdown of VM.
2010-02-16 13:21:27 -08:00
Mitchell Hashimoto
7c61792b19
Stubbed vagrant-reload command
2010-02-16 13:04:18 -08:00
Mitchell Hashimoto
05f4845509
Provisioning can now be enabled/disabled by configuration.
2010-02-16 01:05:42 -08:00
John Bender
1c045bd447
refactored package into actions: export, package
2010-02-15 22:53:52 -08:00
Mitchell Hashimoto
cf0615ac9b
Provisioning action
2010-02-15 22:53:05 -08:00
Mitchell Hashimoto
a67dd3cb6f
Removed old VM code for VM creation. Lots of code removed!
2010-02-15 22:51:48 -08:00
Mitchell Hashimoto
c176a04cfa
Fixed a bug with forwarded ports action
2010-02-15 22:44:15 -08:00
Mitchell Hashimoto
b115fc0ea0
Initial up action. Not hooked up yet to the vagrant-up bin though
2010-02-15 22:42:57 -08:00
Mitchell Hashimoto
5f64240edb
Start action
2010-02-15 22:40:58 -08:00
Mitchell Hashimoto
ae6f086fad
Forwarding ports action
2010-02-15 22:38:07 -08:00
Mitchell Hashimoto
9e6478c0d6
Import action
2010-02-15 22:36:24 -08:00
Mitchell Hashimoto
0ceee33a51
VM#invoke_callback now returns an array of the results of the actions which implemented the callback.
2010-02-15 22:33:37 -08:00
Mitchell Hashimoto
063ea60d40
Initial attempt at refactoring commands out into evented actions. Heavy documentation on the "vagrant/actions/base.rb" class. New VM action runner functionality is well tested, as well.
2010-02-15 22:32:12 -08:00
Mitchell Hashimoto
dd5abc5452
Implemented "around" callbacks on VM for convenient `before_foo` and `after_foo` callbacks
2010-02-15 19:02:23 -08:00
Mitchell Hashimoto
ebc3c70f8b
SSH.execute uses the new port helper
2010-02-15 18:52:33 -08:00
Mitchell Hashimoto
57de04abac
Added provisioning to the "up" sequence.
2010-02-15 18:50:29 -08:00
Mitchell Hashimoto
97f9d4c5ef
Run only a single trap thread at any given time. Ensure that trap threads are joined after a busy block ends.
2010-02-15 18:37:20 -08:00
Mitchell Hashimoto
874eb70911
Additional options can be passed into actions as additional arguments to the constructor
2010-02-15 18:19:59 -08:00
Mitchell Hashimoto
f3cd0591d0
Refactored SSH in how it retrieves the port
2010-02-15 18:07:11 -08:00
Mitchell Hashimoto
3d27d47d34
Signal trapping for SIGINT waits for busy signal to go low
2010-02-15 17:56:48 -08:00
Mitchell Hashimoto
816b29eb18
Removed duplicate code (from a merge conflict)
2010-02-15 15:31:35 -08:00
Mitchell Hashimoto
2cdd3f35fc
Removed "tarruby" dependency
2010-02-15 15:27:47 -08:00
Mitchell Hashimoto
3c42db7dfe
Merge branch 'runners' which brings in the "actions" model.
2010-02-15 15:25:22 -08:00
Mitchell Hashimoto
e8df988d94
Provisioning action
2010-02-15 15:07:27 -08:00
John Bender
c9d0d0d9d9
packaging and unpackaging
2010-02-15 14:49:47 -08:00
Mitchell Hashimoto
86524048ae
Removed old VM code for VM creation. Lots of code removed!
2010-02-15 00:04:13 -08:00
Mitchell Hashimoto
bf0aff45f6
Move hard drive action added to Up if config is set
2010-02-14 23:58:02 -08:00
Mitchell Hashimoto
6a79c4268b
Added before/after callbacks around import to stabilize persisting of VM UUID.
2010-02-14 23:48:44 -08:00
Mitchell Hashimoto
11f4876b9d
vagrant-up now uses pure actions rather than the hardcoded sequential instant methods. Provisioning not yet working, and moving hard drives not yet implemented.
2010-02-14 23:12:36 -08:00
Mitchell Hashimoto
cb2f1ff402
Fixed a bug with forwarded ports action
2010-02-14 22:59:01 -08:00
Mitchell Hashimoto
9438b3b01e
Initial up action. Not hooked up yet to the vagrant-up bin though
2010-02-14 22:47:23 -08:00
Mitchell Hashimoto
1753d97d45
Move hard drive action.
2010-02-14 22:27:06 -08:00
Mitchell Hashimoto
ddfbe13b1d
Shared folder action.
2010-02-14 02:36:16 -08:00
Mitchell Hashimoto
b88da5a6d3
Start action
2010-02-14 02:23:09 -08:00
Mitchell Hashimoto
0fa8a94f32
Forwarding ports action
2010-02-13 12:17:59 -08:00
Mitchell Hashimoto
1a89e50da7
Import action
2010-02-13 11:56:33 -08:00
Mitchell Hashimoto
e77c780e0d
Add defined? check for defining PROJECT_ROOT to suppress warnings
2010-02-13 11:50:01 -08:00
Mitchell Hashimoto
1288b229d1
Require action base before everything else as well
2010-02-13 11:48:13 -08:00
Mitchell Hashimoto
0864d7c2d3
Merge branch 'master' into runners to add nice file requiring in vagrant.rb
2010-02-13 11:47:02 -08:00
Mitchell Hashimoto
8f63272403
Cleaned up the requiring of files in vagrant.rb
2010-02-13 11:43:58 -08:00
Mitchell Hashimoto
d9986034b3
Base action tests
2010-02-13 11:38:11 -08:00
Mitchell Hashimoto
4ea450ba2a
VM#invoke_callback now returns an array of the results of the actions which implemented the callback.
2010-02-13 11:20:24 -08:00
Mitchell Hashimoto
af1fcd0ae0
Initial attempt at refactoring commands out into evented actions. Heavy documentation on the "vagrant/actions/base.rb" class. New VM action runner functionality is well tested, as well.
2010-02-12 19:53:34 -08:00
John Bender
a4b9375abf
spelling correction
2010-02-12 00:24:17 -08:00
John Bender
9e3a57fc36
package command
2010-02-12 00:14:08 -08:00
John Bender
1316a9ac17
packaging working
2010-02-12 00:13:24 -08:00
Mitchell Hashimoto
f2636355c1
`vagrant init` command. Used for initializing directories with vagrant.
2010-02-12 00:11:49 -08:00
Mitchell Hashimoto
f2f92d7ffa
Get rid of "VAGRANT_ENV" since that was just a hack. Log output location configurable now.
2010-02-12 00:09:04 -08:00
Mitchell Hashimoto
119d91eafb
Move all commands to the Vagrant::Command class. Document all commands.
2010-02-12 00:07:39 -08:00
Mitchell Hashimoto
7ff428d5c2
`vagrant init` command. Used for initializing directories with vagrant.
2010-02-11 00:51:21 -08:00
Mitchell Hashimoto
fef985009f
load_root_path! can now suppress errors if option is set
2010-02-11 00:39:11 -08:00
Mitchell Hashimoto
45fbac92f9
The 'up' command will now error if an instance already exists
2010-02-10 22:21:55 -08:00