Mitchell Hashimoto
d03744c5e1
Test that `vagrant up` also works for resuming
2011-11-24 16:21:21 -07:00
Mitchell Hashimoto
f9653bf8d2
Some suspend tests
2011-11-24 16:15:45 -07:00
Mitchell Hashimoto
2dc9bad97d
Fix missing variable in tests
2011-11-24 14:15:36 -07:00
Mitchell Hashimoto
87767e24d0
Fix test harness where blocking could occur on IO read.
...
We had issues with the CI where some tests would sometimes hang
on cleanup when it would call VBoxManage, even with a timeout.
My only assumption is that this is happening as it waits on `readline`,
so we do a `read_nonblock` which will help immensely.
2011-11-24 14:13:22 -07:00
Mitchell Hashimoto
1eb3845405
CI: Schedule each unit/acceptance pair by platform it is testing
2011-11-22 23:07:33 -08:00
Mitchell Hashimoto
fba9f7c473
Test that a VM can be brought back up after halting
2011-11-22 21:47:10 -08:00
Mitchell Hashimoto
1ed1650fb6
`vagrant halt` acceptance tests
2011-11-22 19:34:25 -08:00
Mitchell Hashimoto
5e4dffb7e1
Test: Don't worry if VBoxManage failed.
2011-11-22 19:28:21 -08:00
Justin Brown
dcef64fa0d
Remove the chef dependency on the default 'v-root' shared folder.
2011-11-22 19:03:52 -08:00
Mitchell Hashimoto
8651127ead
Add tag for the bug that a test addresses
2011-11-22 18:46:43 -08:00
Mitchell Hashimoto
5d684b9001
Reload the configuration for all VMs after downloading a box. Fixes GH-564
2011-11-21 22:39:12 -08:00
Mitchell Hashimoto
bac87f2478
Complete the test (still failing)
2011-11-21 22:09:51 -08:00
Mitchell Hashimoto
d71a78eacf
Failing acceptance test for GH-564
2011-11-21 21:55:03 -08:00
Mitchell Hashimoto
315733703a
Tempfile no longer needed in isolated env
2011-11-21 21:18:15 -08:00
Mitchell Hashimoto
203056a0db
Switch posix-spawn to childprocess for better cross-OS support
2011-11-21 21:16:51 -08:00
Mitchell Hashimoto
2174d02439
Add TODOs to the destroy test
2011-11-20 13:42:06 -08:00
Mitchell Hashimoto
3a18119774
Fix failing destroy test for requiring a VM
2011-11-20 13:39:54 -08:00
Mitchell Hashimoto
38d28800be
Destroy acceptance tests
2011-11-20 13:37:01 -08:00
Mitchell Hashimoto
cebd66d8e6
Test: Add a timeout to cleaning up the VM environment
2011-11-20 10:44:09 -08:00
Mitchell Hashimoto
224c981846
Test: Add "timeout" parameter to execute in tests
2011-11-20 10:38:41 -08:00
Mitchell Hashimoto
0036d1e131
Custom builders for each OS type
2011-11-19 21:30:51 -08:00
Mitchell Hashimoto
1e6918cb2b
buildbot: Enable IRC bot
2011-11-19 21:02:20 -08:00
Mitchell Hashimoto
dd92f32c3a
buildbot: Set timeout to 3600 seconds for acceptance tests
2011-11-19 20:35:48 -08:00
Mitchell Hashimoto
627fa4295f
buildbot: Better failure styling on CI
2011-11-19 17:36:43 -08:00
Mitchell Hashimoto
96639d78d4
buildbot: Add style for failed builds
2011-11-19 17:32:54 -08:00
Mitchell Hashimoto
9dd0aab37f
Remove unused build steps
2011-11-19 16:45:00 -08:00
Mitchell Hashimoto
a6cee79633
Buildbot: Update waterfall headers
2011-11-19 13:33:08 -08:00
Mitchell Hashimoto
2ef8206ff2
buildbot: Another slight styling update to change page
2011-11-19 13:31:21 -08:00
Mitchell Hashimoto
21c403965b
buildbot: Update change page
2011-11-19 13:30:10 -08:00
Mitchell Hashimoto
b11db62677
buildbot: Homepage styling
2011-11-19 13:19:48 -08:00
Mitchell Hashimoto
40c1169d4c
Buildbot: Design for slaves pages
2011-11-19 13:04:46 -08:00
Mitchell Hashimoto
efa29f1859
buildbot: Start redesigning the CI
2011-11-19 12:55:04 -08:00
Mitchell Hashimoto
9ee301c525
Buildbot: Make the acceptance tests dependent on the unit tests passing
2011-11-13 20:57:51 -08:00
Mitchell Hashimoto
98919fbec5
Add buildsteps and builders for acceptance tests
2011-11-13 20:42:22 -08:00
Mitchell Hashimoto
a8909cbb0b
Acceptance tests now take a "box_directory" instead of paths to individual boxes
2011-11-13 13:49:21 -08:00
Mitchell Hashimoto
bb06a20843
Add `rake acceptance:boxes` to download required boxes for tests
2011-11-13 13:37:30 -08:00
Mitchell Hashimoto
b62d7c317c
Generalize the builder creation methods a bit to prepare for dependent builders
2011-11-12 16:51:00 -08:00
Mitchell Hashimoto
5d98c5cab7
Buildbot: Require user auth for forcing builds
2011-11-12 16:09:30 -08:00
Mitchell Hashimoto
c0f3e6b954
CI: Fix deploy to work properly
2011-11-12 15:53:52 -08:00
Mitchell Hashimoto
a090eb36fb
Don't allow any commands on the Vagrant CI right now
2011-11-12 15:52:27 -08:00
Mitchell Hashimoto
7d63b4d0ab
Deploy/setup scripts for the buildmaster
2011-11-12 15:51:26 -08:00
Mitchell Hashimoto
e1a4287ef5
Add choices to a vendor/ directory
2011-11-12 13:27:29 -08:00
Mitchell Hashimoto
aeae640c34
Buildbot: Add a scheduler for the master branch to run
2011-11-12 13:18:19 -08:00
Mitchell Hashimoto
5974fbcb16
Buildbot: Enable github hook
2011-11-12 13:14:16 -08:00
Mitchell Hashimoto
49135dfd24
Buildbot runs unit tests! Yay!
2011-11-12 13:06:37 -08:00
Mitchell Hashimoto
44540f369d
Add buildbot code for what will become the Vagrant CI
2011-11-12 10:20:07 -08:00
Mitchell Hashimoto
60a350f9c7
Test that `vagrant up` works if Vagrantfile is in a parent directory
2011-11-11 00:19:46 -08:00
Mitchell Hashimoto
f0aa19f696
Test shared folders for basic up tests
2011-11-11 00:10:42 -08:00
Mitchell Hashimoto
7a07a78bf1
Shared contexts for Vagrant command similarities
2011-11-10 21:54:58 -08:00
Mitchell Hashimoto
8787c4b876
Acceptance tests: Get rid of remaining "assert" statements
2011-11-08 23:09:04 -08:00
Mitchell Hashimoto
4443a323e5
Create the output matcher, switch to RSpec style matchers
2011-11-08 23:03:15 -08:00
Mitchell Hashimoto
87bc6ec63f
RSpec is coming in for acceptance tests. More details follow...
...
RSpec was chosen to be used for acceptance tests for many reasons:
* The tests are actually much cleaner now. It is clearer to see what
is being tested, and what is being used for setup.
* Matcher transition will be coming soon. This will really clean up
a lot of the "assert" boilerplate all over. There was a lot of repetition
in this area.
* Shared examples will help greatly for testing common error cases
for many commands.
* The test runner for RSpec is simply much better. Being able to specify
the exact test to run by line, for example, is a great help.
2011-11-06 23:47:23 -08:00
Mitchell Hashimoto
699c67c1aa
Test: Able to pass a command to execute via `vagrant ssh` command
2011-11-06 22:35:53 -08:00
Mitchell Hashimoto
2796c441ea
Add more SSH tests
2011-11-06 22:21:02 -08:00
Mitchell Hashimoto
3412a11c51
Move `vagrant ssh` test into ssh_test.rb
2011-11-06 22:17:27 -08:00
Mitchell Hashimoto
641a581d6b
Rename the up test
2011-11-06 22:15:59 -08:00
Mitchell Hashimoto
dba2a4e3e7
Check that VirtualBox isn't running at the beginning of the acceptance tests
2011-11-06 19:21:29 -08:00
Mitchell Hashimoto
2c607ca4f4
Wait for VBoxSVC to disappear between tests.
2011-11-06 19:20:14 -08:00
Mitchell Hashimoto
2febc9fcff
Isolated environment removes virtual machines after run.
2011-11-06 18:45:49 -08:00
Mitchell Hashimoto
797f124e6d
Test: `vagrant up` should bring up a machine ready for SSH
2011-11-06 18:28:05 -08:00
Mitchell Hashimoto
e86628c023
test: `vagrant up` should fail if no Vagranfile is found
2011-11-06 18:23:06 -08:00
Mitchell Hashimoto
a80e579af7
Add a bunch of test TODOs
2011-11-06 13:44:44 -08:00
Mitchell Hashimoto
421a1fb341
First "up" based acceptance test. Multiple fixes to test harness.
...
* First test that uses "vagrant up"
* Allow interaction with processes executed during `execute` so that
we can enter input into STDIN and receive data from STDOUT in
real time.
* Fix some issue with `waitpid2`, which actually speeds up all tests
quite a bit.
2011-11-06 13:30:49 -08:00
Mitchell Hashimoto
f83c1b3c27
Fix regression introduced with cab1e4e
2011-11-05 15:19:03 -07:00
Mitchell Hashimoto
66761ae3ff
Comments on the Output class
2011-11-05 15:01:00 -07:00
Mitchell Hashimoto
bb09b249b6
Use output helpers instead of direct regex's in tests.
...
We're not trying to test the format of the output, we're trying
to test the meaning of the output, so hide that state away in
another class.
2011-11-05 14:59:17 -07:00
Mitchell Hashimoto
55f2ac3f54
Isolated env will log output of command as it comes. Update tests.
2011-11-05 14:44:24 -07:00
Mitchell Hashimoto
bb4f7b6418
`vagrant init` acceptance tests
2011-11-05 14:09:18 -07:00
Mitchell Hashimoto
56d4a7f14e
Digest/SHA1 not required here
2011-11-05 13:30:57 -07:00
Mitchell Hashimoto
08daf11580
Add loggers to acceptance tests
2011-11-03 23:07:51 -07:00
Mitchell Hashimoto
9a551837d6
Tests for removing and repackaging a box
2011-11-03 23:05:06 -07:00
Mitchell Hashimoto
d9d8029783
Test that adding an invalid box results in an error
2011-11-03 22:22:19 -07:00
Mitchell Hashimoto
d0e191a96c
Make some changes to have tests run on 1.8.7
2011-11-03 22:12:51 -07:00
Mitchell Hashimoto
cab1e4e49b
Make the file download the default for `vagrant box add`. Tests.
2011-11-03 21:56:38 -07:00
Mitchell Hashimoto
c9cf2867ea
Some `vagrant box` tests
2011-11-03 21:38:15 -07:00
Mitchell Hashimoto
78f8705c5b
Make the `vagrant` tests cleaner
2011-11-03 21:38:07 -07:00
Mitchell Hashimoto
f741d81582
Fix color tests
2011-11-02 23:37:19 -07:00
Mitchell Hashimoto
974c180d8f
Tests that color and --no-color work properly
2011-11-02 23:16:29 -07:00
Mitchell Hashimoto
d753b750e9
Do not output color if stdout is not a TTY
2011-11-02 21:59:35 -07:00
Mitchell Hashimoto
2bd0b76fd2
Set isolated environment working dir to the proper directory
2011-11-02 21:55:54 -07:00
Mitchell Hashimoto
b3e4efb786
Basic box tests
2011-11-02 21:42:09 -07:00
Mitchell Hashimoto
a19fa6a07c
Cleanup temporary directory after running
2011-11-02 21:41:41 -07:00
Mitchell Hashimoto
4c6f8d2b52
Setup isolated environment to setup a custom HOME directory as well
2011-11-02 21:38:48 -07:00
Mitchell Hashimoto
ec38417abb
Add more acceptance tests for printing the Vagrant version
2011-11-02 21:15:53 -07:00
Mitchell Hashimoto
4c9ad26115
Acceptance tests starting code is in. Version is an example.
2011-11-02 21:09:38 -07:00
Justin Brown
0c2fc0cae2
Make init respect the env's cwd.
2011-10-30 22:48:35 -07:00
Mitchell Hashimoto
245bcf436f
Have tests pass on Ruby 1.8.x
2011-10-30 22:23:36 -07:00
Ticean Bennett
dab80649b8
Added Basic Auth support to HTTP downloader.
2011-10-14 18:37:24 +02:00
Mitchell Hashimoto
7219f3d05b
Show warning if forwarding port less than 1024 [closes GH-487]
2011-09-11 23:56:02 -07:00
Samer Abukhait
99646735d0
Don't do the port threshold check if running under root
2011-09-11 23:26:55 -07:00
Mitchell Hashimoto
1cfef2734a
Fix crashing bug if .vagrant is invalid. [closes GH-496]
2011-09-11 23:23:17 -07:00
Mitchell Hashimoto
ce5d989384
Moving unit tests to test/unit
2011-08-28 23:10:32 -07:00
Mitchell Hashimoto
327a6f9d94
Add a check for VM accessibility before every action
2011-08-28 20:32:22 -07:00
Mitchell Hashimoto
bf32fb4de8
Args can now be specified to the shell provisioner [closes GH-475]
2011-08-28 00:01:23 -07:00
Mitchell Hashimoto
8ff269c341
Chef solo roles_path and data_bag_path should be a string
2011-08-02 23:30:57 -07:00
Mitchell Hashimoto
ed8bf34153
Chef client accepts nil run list to load run list from server [closes GH-429]
2011-07-25 21:33:36 -07:00
Mitchell Hashimoto
3f9534ae7d
Tests passing from Puppet update
2011-07-22 23:56:04 -07:00
Mitchell Hashimoto
14ca7ecc24
Better validation for networking configuration
2011-07-22 23:53:19 -07:00
Mitchell Hashimoto
16c21ed9d1
More terse test
2011-07-22 23:07:44 -07:00
Jeff Rafter
64ae5bcdf9
Rework indexes on chef solo provisioner to fix roles, data_bags [closes GH-425]
2011-07-22 23:02:16 -07:00
Mitchell Hashimoto
270da0da80
Failing test case for #407
2011-07-22 22:57:04 -07:00
Mitchell Hashimoto
6300bebe72
Disable SSH caching for now
2011-07-21 14:55:03 -07:00
Mitchell Hashimoto
0dacd78b10
Add `forwarded_port_destination` to find SSH port by that instead of key. [closes GH-375]
2011-07-10 22:41:35 -07:00
Mitchell Hashimoto
8248679fab
Fix bug with loading Vagrantfiles with new case changing
2011-07-10 16:08:39 -07:00
Mitchell Hashimoto
0db2ec9d43
Remove ResourceLogger and PlainLogger
2011-07-10 15:35:45 -07:00
Mitchell Hashimoto
442584fbac
Change default home directory to ~/.vagrant.d [closes GH-333]
2011-07-09 18:55:33 -07:00
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