Commit Graph

980 Commits

Author SHA1 Message Date
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