Mitchell Hashimoto
2e969065b7
Merge pull request #1911 from emyl/no_route_fix
...
Raise a proper SSH error on EHOSTUNREACH
2013-07-09 16:45:35 -07:00
Fabio Rehm
b2b7643dfc
Merge pull request #1720 from tawan/patch-1
...
Fix typo.
2013-07-09 09:19:48 -07:00
Emiliano Ticci
b0b18c64dd
Raise a proper SSH error on EHOSTUNREACH
2013-07-09 14:35:07 +02:00
Simon Thulbourn
ea9fde9433
Merge branch 'master' into client-certs
2013-07-02 09:29:39 +01:00
Thomas Linkin
d95b202346
Vagrant::Action::Builder RDoc correction
...
The RDoc comments for `Vagrant::Action::Builder#to_app` reference an
instance of `Vagrant::Action::Environment` as the passed paramter. There
is no class `Vagrant::Action::Environment` available. The param being
passed is actually a `Hash` that represents the "action environment".
This commit corrects the RDoc lines for
`Vagrant::Action::Builder#to_app` to correctly reference the passed
`Hash`.
2013-06-24 13:10:32 -04:00
Mitchell Hashimoto
6c99f3dfa7
tweaks for style
2013-06-09 13:51:19 -07:00
Mitchell Hashimoto
8906ae01a8
Merge pull request #1783 from Aigeruth/issue-654
...
Check for binaries as part of Subprocess
2013-06-09 13:48:21 -07:00
Mitchell Hashimoto
80f06605fb
config.vm.guest now forces guest setting again [GH-1800]
2013-06-09 13:17:23 -07:00
Gabor Nagy
a4979c4824
[GH-654] Missing condition and translations
2013-06-03 00:04:25 +02:00
Gabor Nagy
4c00abe69e
Modifies to use util/which [GH-654]
2013-06-02 03:48:47 +02:00
Gabor Nagy
0936267314
Fixes [GH-654] on Windows 8x64 and Ruby 1.9.3p374
...
Replaces the command with absolute path version if it exists.
2013-06-01 14:29:45 +02:00
Simon Thulbourn
ef98c7b8b1
passes client cert option from Vagrant file to box_add
2013-05-23 15:13:04 +01:00
Simon Thulbourn
7dd7957a97
adds client cert
2013-05-21 11:42:19 +01:00
Simon Thulbourn
c495fb7c5c
adds options for client certs to downloader class
...
Adds :client_cert to the env array and then passes it into the curl
options array
2013-05-21 11:39:43 +01:00
Tawan Sierek
52f7c53707
Fix typo.
2013-05-12 16:32:15 +03:00
Anton Kalyaev
6c5a580006
more concise message for BoxNotFound error
...
Now we have different providers, but the error message didn't tell
anything about it. Suppose I want to remove one of my boxes:
vagrant box remove opscode-ubuntu-12.04 vritualbox
There is a typo in provider name. The error message is:
Box 'opscode-ubuntu-12.04' could not be found.
Therefore I need to double check the box name, and only than I will see
the typo.
This commit make the error message looks like this:
Box 'opscode-ubuntu-12.04' with 'vritualbox' provider could not be
found.
2013-05-05 18:23:12 +04:00
Mitchell Hashimoto
ccfd321ef9
Properly convert provider name to symbol when searching for boxes
...
[GH-1691]
2013-05-04 09:51:13 -07:00
Mitchell Hashimoto
4c5262690e
Ignore "guest not ready" error when graceful halting [GH-1679]
2013-05-01 18:50:40 -07:00
Mitchell Hashimoto
7f32af980e
SmartOS support for setting hostnames [GH-1672]
2013-04-30 15:07:41 -07:00
Mitchell Hashimoto
52448c97cc
Up version for development
2013-04-24 14:23:11 -07:00
Mitchell Hashimoto
7e400d00a3
v1.2.2
2013-04-23 13:05:18 -07:00
Mitchell Hashimoto
7524e7a3c0
Box add URL with windows drive letter works properly
2013-04-22 20:41:47 -07:00
Mitchell Hashimoto
14d70776ca
Better locking within handle_box_url
...
This improves locking in the face of parallel providers and
handling box_url parameters. This avoids downloading a box multiple
times.
2013-04-20 14:31:29 -06:00
Mitchell Hashimoto
c29e4d6334
In a multi-machine environment, don't download box multiple [GH-1467]
2013-04-19 23:51:53 -06:00
Mitchell Hashimoto
04d9872674
Improve the thread safety of BoxCollection
2013-04-19 23:48:05 -06:00
Mitchell Hashimoto
e8d8188474
Error if a box override changes the box setting...
2013-04-19 23:10:17 -06:00
Mitchell Hashimoto
661b982502
Handle box overrides in provider-specific overrides properly [GH-1617]
2013-04-19 23:05:32 -06:00
Mitchell Hashimoto
780a312fc9
Built-in DestroyConfirm middleware
2013-04-19 14:14:29 -06:00
Mitchell Hashimoto
4a6939096c
Up version for development
2013-04-17 08:22:00 -07:00
Mitchell Hashimoto
a7853fe7b7
v1.2.1
2013-04-16 21:29:18 -07:00
Mitchell Hashimoto
2239036b59
Use Mozilla CA cert bundle for SSL validation
2013-04-16 17:32:30 -07:00
Mitchell Hashimoto
0f089c5671
`--[no-]parallel` for vagrant up
2013-04-16 15:22:14 -07:00
Mitchell Hashimoto
f3cf23e873
Ability to specify no parallelism on the environment
2013-04-16 15:13:00 -07:00
Mitchell Hashimoto
dc31725049
Follow redirects when downloading boxes [GH-1607]
2013-04-16 13:25:32 -07:00
Mitchell Hashimoto
d3f415133b
Up version for dev
2013-04-16 13:21:54 -07:00
Mitchell Hashimoto
f5ece47c51
v1.2.0
2013-04-16 09:42:34 -07:00
Benjamin Schwarze
13c914f85e
fix root cause for error message when running in multi-vm environment:
...
SSH Defaults:
* The following settings don't exist: forward_agent, forward_x11
2013-04-10 22:05:57 +02:00
Mitchell Hashimoto
8e5b52c00c
Get rid of unused autoload
2013-04-10 10:49:10 -07:00
Mitchell Hashimoto
98a23be689
Get rid of unused class
2013-04-10 10:48:56 -07:00
Mitchell Hashimoto
d03938e3c1
config.ssh properly overrides provder-detected [GH-1479]
2013-04-08 20:50:15 -07:00
Mitchell Hashimoto
66ff86fda5
Auto-detect policy server IP for CFEngine
2013-04-08 15:30:41 -07:00
Mitchell Hashimoto
ba2c749d6d
Running provisioner output shows provisioner shortcut, not class
2013-04-08 14:50:22 -07:00
Mitchell Hashimoto
c457285fb6
Basic CFEngine boostrapping
2013-04-08 13:46:03 -07:00
Mitchell Hashimoto
9599d8a45d
Starting work on CFEngine, installs on Debian
2013-04-08 13:05:53 -07:00
Mitchell Hashimoto
376eb0b327
UI on Machine
2013-04-08 12:38:15 -07:00
Mitchell Hashimoto
2ddefd49a1
Convert capability name to symbol for lookup
2013-04-08 10:44:56 -07:00
Mitchell Hashimoto
efaabea5c0
Use vagrant tmp directory for boxes [GH-1442]
2013-04-07 14:48:56 -07:00
Mitchell Hashimoto
998122e076
Box adding is done in a helper that ensures temporary files are cleaned
2013-04-07 14:43:52 -07:00
Mitchell Hashimoto
f203c29fbb
Builders are merged when using hooks. [GH-1555]
2013-04-07 14:17:40 -07:00
Mitchell Hashimoto
9f49b9298e
vagrant ssh on Cygwin won't output DOS path file warnings
2013-04-07 13:57:24 -07:00
Mitchell Hashimoto
5fe8cbb083
Proper clear line text for Cygwin
2013-04-07 13:48:26 -07:00
Mitchell Hashimoto
162239d2cd
Expand file paths when adding boxes in Cygwin
2013-04-07 13:46:46 -07:00
Mitchell Hashimoto
373a1d8633
Properly expand cygwin paths to Windows path for vboxmanage
2013-04-06 22:06:33 -07:00
Mitchell Hashimoto
96ebd3e8f7
Providers can support multiple box formats if they choose to.
...
Currently, providers must match a box format exactly the same
as that provider's name. i.e. the virtuabox provider needs a
"virtualbox" box and the "vmware_fusion" provider needs a
"vmware_fusion" box. Now, the provider can specify what the box format
is they want and support multiple if wanted.
Other box formats are specified in the provider definition within
a plugin:
class Plugin < Vagrant.plugin("2", "provider")
# ... other stuff
provider("foo", box_format: ["virtualbox", "other_format"]) do
# .. same
end
end
Now when using the example "foo" provider above, boxes for both
"virtualbox" or "other_format" are searched for. If both are found,
the order in which the formats exist determines precedence.
2013-04-06 18:21:16 -07:00
Mitchell Hashimoto
868f8d4061
Detect PuTTY Link on Windows and show error [GH-1518]
2013-04-06 16:50:59 -07:00
Mitchell Hashimoto
0874d4a77a
Assume Cygwin has a TTY for input [GH-1430]
2013-04-06 16:07:20 -07:00
Mitchell Hashimoto
5ca89383f8
Simplify cygwin check everywhere
2013-04-06 16:05:13 -07:00
Mitchell Hashimoto
fb9c311b4d
Always colorize Cygwin output
2013-04-06 16:03:25 -07:00
Mitchell Hashimoto
fbdd46a130
On Windows, prefer USERPROFILE for home directory path
2013-04-06 15:53:58 -07:00
Mitchell Hashimoto
744c879998
Don't repair forwarded port to used forwarded port
2013-04-06 14:12:33 -07:00
Mitchell Hashimoto
17a312b293
Expand the file URL when adding a box
2013-04-05 21:27:00 -07:00
Mitchell Hashimoto
1957efb4e1
Nicer error if ansible-playbook is not installed on the host
2013-04-04 14:01:26 -07:00
Mitchell Hashimoto
cf9eb509a9
Don't preserve modified time when untarring files [GH-1539]
2013-04-04 13:32:37 -07:00
Mitchell Hashimoto
067f431ee9
Better debugging on searching for capabilities
2013-04-03 23:46:39 -07:00
Mitchell Hashimoto
2f232e0175
Halt and mount NFS are caps
2013-04-03 23:33:20 -07:00
Mitchell Hashimoto
61d2f9f96f
SetHostname uses new cap system
2013-04-03 23:18:12 -07:00
Mitchell Hashimoto
63f28a9011
Nicer error messages for new linux caps
2013-04-03 23:14:24 -07:00
Mitchell Hashimoto
28d3f274d8
First capability for linux
2013-04-03 23:01:43 -07:00
Mitchell Hashimoto
819ef46fca
Tests for registering guest capabilities
2013-04-03 22:43:35 -07:00
Mitchell Hashimoto
c5c15fdaa6
Machine#guest returns the proper guest detected
2013-04-03 22:40:30 -07:00
Mitchell Hashimoto
f48b0796a5
Forward arguments down to capability
2013-04-03 22:20:45 -07:00
Mitchell Hashimoto
cf3c1b73d2
Guest#capability to execute capabilities
2013-04-03 22:19:20 -07:00
Mitchell Hashimoto
06a9968ec4
Guest#capability? for testing for capabilities
2013-04-03 22:03:03 -07:00
Mitchell Hashimoto
52f3847b0a
Laying the foundation for the new guest plugin
2013-04-03 21:47:57 -07:00
Mitchell Hashimoto
4ffc2c3b74
Invalid configuration keys are caught and shown in user friendly way
...
[GH-1484]
2013-04-03 16:18:37 -07:00
Mitchell Hashimoto
52a2f48b20
Provider-specific configuration overrides via 2nd block param
...
Example:
Vagrant.configure("2") do |config|
# ...
config.vm.provider :virtualbox do |p, vb_config|
vb_config.vm.box = "virtualbox_box"
end
end
2013-04-03 14:57:14 -07:00
Matt Wormley
00c9f2c973
added ssh.proxy_command to handle waiting for aws ssh connection when ssh proxy in place. use config.ssh.proxy_command = "ssh -q <user>@<proxy_host> nc %h %p"
2013-04-03 13:54:47 -07:00
Mitchell Hashimoto
0f0c0b0396
Add max redirects for download
2013-04-03 12:01:12 -07:00
Mitchell Hashimoto
5e2549fe8b
Add "--insecure" flag for downloader
2013-04-03 11:57:40 -07:00
Mitchell Hashimoto
58b7c65a69
Remove the downloaders
2013-04-03 11:45:46 -07:00
Mitchell Hashimoto
ab19b506bd
Get rid of unnecessary variable
2013-04-03 08:31:43 -07:00
Mitchell Hashimoto
d1eccbf98f
SafeChdir all the things for thread safety
2013-04-03 08:31:43 -07:00
Mitchell Hashimoto
bd60d6b283
Lock around chdir in Subprocess for thread safety
2013-04-03 08:31:43 -07:00
Mitchell Hashimoto
c84c609633
Gracefully handle errors in parallel cases
2013-04-03 08:31:43 -07:00
Mitchell Hashimoto
368dddd950
Allow only one Environment#batch to run at a time per env
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
d6a84b5ca4
Environment#batch and forcing disable through env var
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
3d8271a3a2
BatchAction for running actions in parallel
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
7446b3c4ef
Make the Basic/Colored UI objects threadsafe
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
7b0745abcc
UI objects use "scopes" now
2013-04-03 08:31:42 -07:00
JD Harrington
8cd74fee16
Allow override of default_provider
...
Set the VAGRANT_DEFAULT_PROVIDER environment variable to override the
value of default_provider.
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
2e50a238fc
Provider plugins can provide arbitrary options
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
87f7cba16b
Fix cURL parsing with invalid blanks
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
d1e2596ce5
Properly accumulate and parse cURL output for progress
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
05c6379abb
Setup file protocol if adding a box from a file
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
25f66cee51
Remove downloaders, no longer needed
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
6c1eb2b007
Download boxes using CURL!
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
94dd210be7
Return the value of the yielded block in Busy
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
b9a2855fcb
Tests for the downloader
2013-04-03 08:31:41 -07:00
Mitchell Hashimoto
913e0e529d
Initial downloader implementation
2013-04-03 08:31:40 -07:00
Mitchell Hashimoto
06d055f443
Up the version to 1.2.0 development
2013-04-03 08:31:40 -07:00
Mitchell Hashimoto
8aff752cfb
v1.1.6
2013-04-03 08:31:10 -07:00
Mitchell Hashimoto
90f18c41be
v1.1.5
2013-04-02 15:13:41 -07:00
Mitchell Hashimoto
4f1a3dad8c
Retry SSH on Errno::EACCES
2013-03-31 20:27:08 -07:00
Mitchell Hashimoto
e5539eb769
Only prepend/append once for hooks
2013-03-30 14:57:47 -07:00
Mitchell Hashimoto
c6a2d01cdf
Allow disabling prepend/append hooks
2013-03-30 14:51:10 -07:00
Mitchell Hashimoto
30053638af
Human friendly error on exit code 126 from VBoxManage
2013-03-29 13:14:00 -07:00
Mitchell Hashimoto
8156185f5d
Don't error too early when config.vm.box is not properly set
2013-03-29 12:54:01 -07:00
Mitchell Hashimoto
72e0a691db
Don't load plugins.json plugins in Bundler env
2013-03-28 17:02:54 -07:00
Mitchell Hashimoto
64921db66f
Error message if private key not owned by right user [GH-1503]
2013-03-28 16:54:39 -07:00
Mitchell Hashimoto
0272db698b
Up version for development
2013-03-28 15:34:25 -07:00
Mitchell Hashimoto
87613ec939
v1.1.4
2013-03-25 14:33:00 -07:00
Mitchell Hashimoto
0903e62add
v1.1.3
2013-03-25 11:48:10 -07:00
Mitchell Hashimoto
43d85930ed
Improve network interface detection to avoid crash [GH-1480]
2013-03-22 10:51:07 -07:00
Mitchell Hashimoto
7e125db669
Fix obscure error with world writable temp dir
2013-03-21 17:31:23 -07:00
Mitchell Hashimoto
a4745fb426
Properly handle forward port collision detection with auto-correct
...
[GH-1472]
2013-03-21 16:33:06 -07:00
Mitchell Hashimoto
11ad039275
Get rid of Vagrant::SSH, unused
2013-03-20 16:18:14 -07:00
Fabio Rehm
4108574b17
Remove Vagrant::TestHelpers
...
Things are easier to test now. The module is not used internally neither it is
up to date with recent changes.
2013-03-20 15:04:52 -03:00
Mitchell Hashimoto
847cbb9ed3
Allow anything that can #to-s for Vagrant.plugin
2013-03-18 21:34:37 -07:00
Mitchell Hashimoto
715539eac3
Up version for development
2013-03-18 14:35:03 -07:00
Mitchell Hashimoto
67bd4d30f7
v1.1.2
2013-03-18 13:51:15 -07:00
Mitchell Hashimoto
5ad6c2a94a
Up version for development
2013-03-18 11:24:18 -07:00
Mitchell Hashimoto
f743fed3cc
v1.1.1
2013-03-17 23:05:16 -07:00
Mitchell Hashimoto
022c1daec0
Raise error if no hostonly network on VBox with NFS [GH-1437]
2013-03-17 22:33:02 -07:00
Mitchell Hashimoto
5427392459
Logger statements for copying each box file during add
2013-03-16 10:14:32 -07:00
Martin Ehrnhoefer
24aaa7f282
Adding a box fails on Windows [GH-1424]
...
The Dir.mkdir statement fails on Windows if src and dest
reside on different partitions. Files are therefore copied
one-by-one. The #6715 workaround is not needed anymore.
2013-03-16 13:04:33 +01:00
Mitchell Hashimoto
9464796c6d
Human friendly error when metadata.json is missing from a box
2013-03-15 11:12:50 -07:00
Mitchell Hashimoto
d40ba7968c
Fix `vagrant package` to avoid nil errors [GH-1423]
2013-03-14 20:40:52 -07:00
Mitchell Hashimoto
327ca544ef
Don't load any plugins for `vagrant plugin` [GH-1418]
2013-03-14 12:58:24 -07:00
Mitchell Hashimoto
43f3764e5b
Properly quote regular expression inputs to StringBlockEditor
2013-03-14 12:41:03 -07:00
Mitchell Hashimoto
64d1b54d51
Up version for development. Moving forward.
2013-03-14 11:55:03 -07:00
Mitchell Hashimoto
1949489993
v1.1.0
2013-03-13 23:36:31 -07:00
Mitchell Hashimoto
c8b829c4d2
Properly resolve cygwin paths in Cygwin environments [GH-1366]
2013-03-13 21:50:41 -07:00
Mitchell Hashimoto
57a5edbc39
Merge pull request #1366 from johnb0011/master
...
Solve Virtualbox pathing issue running under Cygwin
2013-03-13 21:41:34 -07:00
Mitchell Hashimoto
82d8285df6
Give a success message after adding a box
2013-03-13 21:24:03 -07:00
Mitchell Hashimoto
dea881cad2
vagrant box add --force works again [GH-1413]
2013-03-13 21:20:25 -07:00
Fabio Rehm
cc20d2f91e
raise ChildProcess::LaunchError with the original message to ease debugging when running subprocesses
2013-03-09 15:31:28 -03:00
Fabio Rehm
54e0c37dbf
Fix typo on logging output
2013-03-06 19:47:28 -03:00
Mitchell Hashimoto
360051e032
Greatly improve http_proxy/https_proxy detection for box downloads
2013-03-05 00:33:56 -08:00
Mitchell Hashimoto
36b805367d
Fix all core code to use the new networking syntax
2013-03-01 16:48:10 -08:00
Mitchell Hashimoto
ade5d8a579
Human-friendly error if error copying private key [GH-580]
2013-03-01 13:51:11 -08:00
Mitchell Hashimoto
b482870173
Capture stdout/stderr when loading plugins so that it doesn't just
...
happen
2013-03-01 11:55:06 -08:00
Mitchell Hashimoto
7547a0d34a
V2 missing key returns a DummyConfig as well
2013-02-28 00:17:58 -08:00
Mitchell Hashimoto
af2690635e
Unknown keys return a DummyConfig rather than OpenStruct
2013-02-28 00:16:43 -08:00
Mitchell Hashimoto
d15acde8c0
Capture missing key calls in V1 configs and record them as warnings
2013-02-28 00:06:49 -08:00
Mitchell Hashimoto
c9ad55d9e7
Built-in hostname middleware for setting hostname
2013-02-27 21:28:09 -08:00
Mitchell Hashimoto
4254b35b7d
Fix the forward port collision handling
2013-02-27 13:40:11 -08:00
Mitchell Hashimoto
1505fc9d22
Autoload he port collision middleware
2013-02-27 13:37:50 -08:00
Mitchell Hashimoto
68aa9c8acf
Output the UI when repairing port collisions
2013-02-26 13:43:06 -08:00
Mitchell Hashimoto
79609d42bb
Additional options for the collision detection
2013-02-26 13:08:06 -08:00
Mitchell Hashimoto
e97c330281
First pass at a forwarded port collision middleware
2013-02-26 12:10:26 -08:00
Mitchell Hashimoto
499d1ff8bf
VAGRANT_VAGRANTFILE env var to specify alternate filename for Vfile
2013-02-23 12:07:23 -08:00
Mitchell Hashimoto
1bda157188
Only look for `Vagrantfile` if no more specific was given
2013-02-23 11:59:44 -08:00
Mitchell Hashimoto
60a1b035e7
For hooks, put the environment in the action env
2013-02-22 15:52:57 -08:00
Mitchell Hashimoto
3b2a82003e
The hook callable has to be an Action builder so the hooks are called
2013-02-22 15:28:48 -08:00
Mitchell Hashimoto
29600d3d06
Always log the exception raised when error loading a plugin
2013-02-22 15:11:01 -08:00
Mitchell Hashimoto
1b6538354d
Be smarter about determining if plugin load failed
2013-02-22 15:10:34 -08:00
Mitchell Hashimoto
9750069312
Better logging around environment hooks
2013-02-22 14:43:43 -08:00
Mitchell Hashimoto
46db50680b
environment_unload hook
2013-02-22 13:54:28 -08:00
Mitchell Hashimoto
3c343c0623
Environment#hook allows hooks to be run at arbitrary points
2013-02-22 12:22:10 -08:00
Mitchell Hashimoto
c68bf33d66
Specify action_name for all machine actions for action hooks
2013-02-22 12:14:15 -08:00
Mitchell Hashimoto
be01d57034
action_hooks can hook into specific actions
2013-02-22 12:12:55 -08:00
Mitchell Hashimoto
18524628b7
Hooks allow parameters and blocks to middlewares
2013-02-22 12:00:35 -08:00
Mitchell Hashimoto
6a12edeb71
Get rid of unused variable
2013-02-20 20:41:19 -08:00
John Barney
a390b9dddf
Removing tabs added by a bad .vimrc
2013-02-10 03:49:15 -08:00
John Barney
73eb86bad0
Adding Cygwin detection, and fixing pathing issue in VirtualBox driver under Cygwin
2013-02-09 19:36:56 -08:00
Mitchell Hashimoto
f837d32ae4
Rename FileUtil to Which since its too close to FileUtils
2013-02-08 22:29:53 -08:00
Mitchell Hashimoto
38e160055b
Style nitpicks on FileUtil
2013-02-08 22:20:00 -08:00
Patrick Wyatt
bd06bea3e5
Enable Windows users with SSH installed to use 'vagrant ssh'
2013-02-08 22:09:11 -08:00
Mitchell Hashimoto
595d6f7848
Record invalid key accesses as an error on config
2013-02-08 16:54:24 -08:00
Mitchell Hashimoto
d659071a82
Check for NFS errors only if we actually have NFS folders
2013-02-08 16:25:41 -08:00
Mitchell Hashimoto
6afb4326fa
Move NFS to a built-in middleware
2013-02-08 15:34:04 -08:00
Mitchell Hashimoto
050cb482f3
Better logging in the BoxAdd action
2013-02-07 18:19:42 -08:00
Mitchell Hashimoto
4144db5042
More gracefully handled plugins which cannot be found
2013-02-07 11:55:45 -08:00
Mitchell Hashimoto
cd3d2a1e8c
Call properly modifies original environment
2013-02-06 18:36:05 -08:00
Mitchell Hashimoto
4a1a990491
Raise a proper SSH error on ECONNRESET
2013-02-06 18:08:55 -08:00
Mitchell Hashimoto
acbd024fa2
Put the machine action in the middleware env
2013-02-06 16:23:35 -08:00
Mitchell Hashimoto
1df4891371
Spread out methods in provision so subclass can override
2013-02-06 16:14:59 -08:00
Mitchell Hashimoto
352fec0359
Fix some issues to get hooks working
2013-02-06 15:42:48 -08:00
Mitchell Hashimoto
b20dcc9eb8
Setup hooks in the runner
2013-02-06 15:37:12 -08:00
Mitchell Hashimoto
aa7193471f
Plugins can define action hooks via action_hook
2013-02-06 15:27:14 -08:00
Mitchell Hashimoto
83bba789a4
Hook#apply
2013-02-06 15:21:34 -08:00
Mitchell Hashimoto
d720205810
Builder supports action hooks
2013-02-06 15:06:13 -08:00
Mitchell Hashimoto
9251b880f5
Addition docs on the hook class
2013-02-06 14:30:15 -08:00
Mitchell Hashimoto
80a7c8a0cb
Hook class
2013-02-06 14:21:31 -08:00
Mitchell Hashimoto
8f24d2d98c
Remove the "easy" plugins until a future version
2013-02-06 13:46:34 -08:00
Mitchell Hashimoto
87026b2d9e
Remove old TOOD that was fulfilled
2013-02-05 22:17:00 -08:00
Mitchell Hashimoto
9f15fdeabc
Only override the SSH host/user/etc if not specified by provider
2013-02-05 21:21:56 -08:00
Mitchell Hashimoto
79beefdb0a
Do proper provider configuration merging
2013-02-05 12:22:00 -08:00
Mitchell Hashimoto
864f1b7506
Pass a proper Pathname for SSHExec to check key perms
2013-02-04 21:17:12 -08:00
Mitchell Hashimoto
434cc79a83
Properly expand config.ssh.private_key_path
2013-02-04 21:13:29 -08:00
Mitchell Hashimoto
a72cfdbc00
Improved logging and such around SSH
2013-02-04 11:44:56 -08:00
Mitchell Hashimoto
82c9b658d0
Expose the home_path to the action runner
2013-02-04 10:42:44 -08:00
Mitchell Hashimoto
b568ad0b8a
Fix package to probably put output box in pwd
2013-02-04 10:38:50 -08:00
Mitchell Hashimoto
55c905b43b
`vagrant plugin license` command.
2013-02-04 10:32:04 -08:00
Mitchell Hashimoto
7e71b73e4a
Reformat some comments to be within 80 chars
2013-02-04 10:04:31 -08:00
Eric Tipton
421c2a9b2e
fix args parser w/r/t ssh "-t" option -- it was failing b/c any associated shell commands need to be the last part of the system command
2013-02-04 06:16:32 -05:00
Mitchell Hashimoto
5d75a65382
Get rid of error "status codes" and just exit with 1
2013-02-03 18:04:43 -08:00
Mitchell Hashimoto
635949980b
Handle the case a plugin install is a plugin not found
2013-02-03 14:29:29 -08:00
Mitchell Hashimoto
2079941e7d
If the ID file doesn't exist, then don't delete it
2013-02-03 14:23:25 -08:00
Mitchell Hashimoto
01756dc964
Fix the UI so the output shows the proper machine name
2013-02-03 14:23:07 -08:00
Mitchell Hashimoto
78e9853b71
The resource in the UI doesn't show up if it is nil
2013-02-03 14:20:40 -08:00
Mitchell Hashimoto
3df6088db0
Make plugin loading more robust to errors
2013-02-03 14:13:27 -08:00
Mitchell Hashimoto
1162c2dbfc
Instead of shelling out, use the RubyGems API to install plugins
...
This gets us an accurate name of the gem even if it is installed
from a file.
2013-02-03 13:59:43 -08:00
Mitchell Hashimoto
5882d5dad6
VAGRANT_NO_PLUGINS can be used to skip plugin loading
2013-02-03 13:03:00 -08:00
Mitchell Hashimoto
693b825eb1
Don't use the RC file, use the JSOn state file
2013-02-03 12:53:52 -08:00
Mitchell Hashimoto
fa50f06a4c
Error if RubyGems failed.
2013-02-02 23:31:53 -08:00
Mitchell Hashimoto
a2ef7790de
Start creating the plugin middleware sequences
2013-02-02 18:42:04 -08:00
Mitchell Hashimoto
ec995b5ddf
Avoid cross-device moves when adding boxes [GH-1350]
2013-02-02 16:37:46 -08:00
Mitchell Hashimoto
165dd63f78
New HandleBoxUrl built-in middleware to handlet the "box_url" config
2013-02-01 11:31:08 -08:00
Mitchell Hashimoto
4e6496bed7
Improve subprocess logging
2013-01-31 19:47:54 -08:00
Mitchell Hashimoto
a8c7ad30ee
Be a bit more fine grained about errors that are reported for Vfiles
2013-01-31 18:52:29 -08:00
Mitchell Hashimoto
67c2e205be
Create rgloader/loader.rb files for encoded files
2013-01-31 18:48:56 -08:00
Mitchell Hashimoto
1392d9b4a5
Detect if a VM name is already taken for VirtualBox
2013-01-30 23:22:45 -08:00
Mitchell Hashimoto
7fe19d3a11
Use box directory as temporary directory to avoid cross-device [GH-1199]
2013-01-30 21:54:07 -08:00
Mitchell Hashimoto
c164a5ca81
Merge pull request #1300 from kainz/master
...
Avoid cross device activity for box creation by creating tmp dir in provider dir
2013-01-30 21:47:40 -08:00
Mitchell Hashimoto
c75ec09014
Lower IO.select timeouts to improve subprocess speeds
...
We were getting bit if the process exited while we were doing an
IO.select because it would then wait the full timeout.
2013-01-30 21:29:04 -08:00
Mitchell Hashimoto
c5120fdd5e
Don't fail too early with bad Vagrantfiles [GH-1345]
2013-01-30 20:16:10 -08:00
Mitchell Hashimoto
e9327c4a28
Better logging in the config logger
2013-01-30 20:12:41 -08:00
Mitchell Hashimoto
c57ba9de58
Give a nice human-friendly error message when problems loading Vfile
2013-01-30 20:01:41 -08:00
Mitchell Hashimoto
75ea4e5bdd
--provision-with works properly again
2013-01-30 19:42:54 -08:00
Mitchell Hashimoto
e0f0066c99
--no-provision works properly again
2013-01-30 19:39:21 -08:00
Mitchell Hashimoto
7eec127704
Support refreshing the machine cache
2013-01-30 10:37:40 -08:00
Mitchell Hashimoto
64042a5d35
Downloading the box_url component works again
2013-01-30 10:24:47 -08:00
Mitchell Hashimoto
a21744a12d
Merge pull request #1336 from ithinkihaveacat/return-non-zero-if-invalid-command
...
Return exit status of 1 on invalid command
2013-01-29 10:58:55 -08:00
Mitchell Hashimoto
e1b78dbfbe
Unlock the file explicitly due to some weirdness on BSD kernels
2013-01-28 21:08:22 -08:00
Mitchell Hashimoto
7531c94dbf
Allow path and exception for Lock middleware to be procs
2013-01-28 20:46:39 -08:00
Mitchell Hashimoto
9ae3a373c8
Add new middleware builtin: Lock
...
This will do a process lock by flocking a file. If it fails, it will
raise an exception of choice.
2013-01-28 17:08:37 -08:00
Mitchell Hashimoto
0d27cd5bcb
Warn if Vagrant is run outside of installers
2013-01-28 13:39:56 -08:00
Mitchell Hashimoto
d4cf03d6c5
`vagrant package` uses bsdtar
2013-01-28 13:20:42 -08:00
Mitchell Hashimoto
35aef1aa0b
Use bsdtar to repackage boxes
2013-01-28 13:18:07 -08:00
Mitchell Hashimoto
e6a0023713
Switch to bsdtar for unpackaging a box
2013-01-28 13:01:43 -08:00
Michael Stillwell
7941748db7
Return exit status of 1 on invalid command
...
Makes "vagrant destroyjj" and similar return an exit code of 1, so that
"vagrant destroyjj && vagrant up" works as expected.
2013-01-27 19:52:43 +00:00
Mitchell Hashimoto
c3cc513609
Create the setup_version file to track our directory layout version
2013-01-25 16:37:54 -08:00
Mitchell Hashimoto
6a3c0bd425
Call built-in supports args for imddleware
2013-01-22 12:20:02 -08:00
Mitchell Hashimoto
fb875ab642
Better logging in the GracefulHalt middleware
2013-01-22 12:13:42 -08:00
Mitchell Hashimoto
51540496a9
GracefulHalt builtin
2013-01-22 11:56:49 -08:00
Mitchell Hashimoto
e1f4e27b1b
Update docs for v2 provider interface for MachineState
2013-01-21 11:44:19 -06:00
Mitchell Hashimoto
8ad8f73846
Raise an exception if a non-MachineState is returned
2013-01-21 11:31:20 -06:00
Mitchell Hashimoto
7bdf54923a
Create the MachineState class
2013-01-21 11:25:28 -06:00
Mitchell Hashimoto
2d57afbbda
Support warnings/errors when upgrading Vagrantfiles internally
2013-01-20 22:04:50 -05:00
Mitchell Hashimoto
ffd9c1eb9c
Verify we have errors to show if we're going to show them
2013-01-18 13:37:31 -08:00
Mitchell Hashimoto
7f55d5eac8
Builtin: ConfigValidate will validate your configuration
2013-01-18 13:26:14 -08:00
Mitchell Hashimoto
37e36010e0
Remove the ErrorRecorder
2013-01-18 13:15:22 -08:00
Mitchell Hashimoto
fff021e51d
Update Chef provisioner to new validation API
2013-01-18 13:12:02 -08:00
Mitchell Hashimoto
e651eb3aa1
Add a V2 config helper to merge errors since that seems common
2013-01-18 13:03:07 -08:00
Mitchell Hashimoto
3f3c7027aa
Machine objects are passed into validate instead of env
2013-01-18 12:43:53 -08:00
Mitchell Hashimoto
a8b57ba13f
Ignore empty error groups
2013-01-18 12:27:29 -08:00
Mitchell Hashimoto
bae6555836
Remove DeprecationError
2013-01-18 12:23:29 -08:00
Mitchell Hashimoto
e0c8fadae4
I can remove the `validate!` method from the v1 root
2013-01-18 12:18:30 -08:00
Mitchell Hashimoto
42a1ce6e9d
Remove the old config validation error
2013-01-18 12:15:36 -08:00
Mitchell Hashimoto
e6f9586d83
New validation method on the root that returns errors
2013-01-18 12:14:40 -08:00
Mitchell Hashimoto
0bd0752bf2
Environment#data_dir
...
This is basically a directory to store state.
2013-01-18 11:37:49 -08:00
Mitchell Hashimoto
776a1e446b
Strip the value, actually, to trim the front newline
2013-01-15 21:57:10 -08:00
Mitchell Hashimoto
6c2e1c354f
Chomp values inserted into a StringBlockEditor
2013-01-15 21:55:56 -08:00
Mitchell Hashimoto
23668d4ed0
Fix some newline weirdness with StringBlockEditor
2013-01-15 21:53:11 -08:00
Mitchell Hashimoto
adec64baa4
Add the #get method to StringBlockEditor
2013-01-15 20:34:41 -08:00
Mitchell Hashimoto
335503a688
StringBlockEditor to help plugins with owning parts of files
2013-01-15 17:49:46 -08:00
Mitchell Hashimoto
5c9f27626c
Provisioner built-in uses new API
2013-01-13 16:09:32 -08:00
Mitchell Hashimoto
cf2cca3b7c
Revamp the configuration internal state for defining provisioners
2013-01-13 16:02:48 -08:00
Mitchell Hashimoto
c8053c00a4
New provisioner API. Shell provisioner adheres to it.
2013-01-13 15:48:52 -08:00
Mitchell Hashimoto
25fcb59e38
Use registries for the V2 plugin manager
2013-01-13 13:05:31 -08:00
Mitchell Hashimoto
f3b340aae0
Use registry merging for provider configs
2013-01-13 13:00:06 -08:00
Mitchell Hashimoto
45879132a3
Registries support merging
2013-01-13 12:58:48 -08:00
Mitchell Hashimoto
e66c5066e4
Plugin configuration can have scopes now, ex. provider
2013-01-13 12:38:17 -08:00
Mitchell Hashimoto
212e634c3b
Make Provision a built-in action.
...
This allows other providers to just use it.
2013-01-12 16:22:37 -08:00
Mitchell Hashimoto
22571bf05b
Rescue the EHOSTDOWN error for SSH
2013-01-12 12:47:49 -08:00
Mitchell Hashimoto
124a2ee5d3
Add the --provider optional flag to `box add`
2013-01-11 21:24:57 -08:00
Mitchell Hashimoto
48eaa93745
Raise proper error if there aren't any NIC slots available
2013-01-11 15:57:08 -08:00
Mitchell Hashimoto
102e8f23d6
Use scoped hash overrides for high-level config
2013-01-11 15:50:09 -08:00
Mitchell Hashimoto
0c612f695f
Util::ScopedHashOverride
2013-01-11 15:44:35 -08:00
Bryon Roche
b5c75b89a9
Make box creation not cross filesystems.
...
This will cause issues on modern linux which uses a tmpfs-backed tmpdir.
2013-01-07 16:19:17 -08:00
Mitchell Hashimoto
f428b288f3
Convert provider to symbol only if non-nil
2012-12-30 18:08:07 -10:00
Mitchell Hashimoto
20253c4c4f
Convert provider to symbol
2012-12-30 18:04:31 -10:00
Mitchell Hashimoto
a30a92bb4f
active_machines should return name as a symbol
2012-12-30 11:51:22 -10:00
Mitchell Hashimoto
4c46091746
Environment#primary_machine_name and use it for with_target_vms
...
This makes the single-provider and default provider semantics work with
primary VMs.
2012-12-30 11:12:56 -10:00
Mitchell Hashimoto
07157b47ae
Only allow one provider active machine at a time.
...
Temporary limitation of Vagrant to only allow one active machine with a
provider at a time. That means you cant `up` a machine with both vmware
and virtualbox at the same time. In the future you will be able to but
to avoid various edge cases for now we're disallowing it.
2012-12-30 10:52:01 -10:00
Mitchell Hashimoto
526603dbbf
Lots more logging in with_target_vms
2012-12-29 18:34:11 -10:00
Mitchell Hashimoto
9257fe3d98
Environment#active_machines
...
This returns a list of active machines for the environment. An active
machine is a machine that at one point was created by Vagrant.
2012-12-27 19:28:05 -10:00
Mitchell Hashimoto
4e649cc987
Upgrade V1-style dotfile to V2
...
See the code and comments for details on how this is done. As usual, we
are very careful about this so as not to inadvertently destruct real
user data.
2012-12-26 22:41:42 -08:00
Mitchell Hashimoto
c0c3e7bf43
Remove Vagrant::DataStore
...
We just don't use it yet and the old implementation was sketchy. I was
not happy with it.
2012-12-26 21:45:24 -08:00
Mitchell Hashimoto
b15a6dee0e
Log more information about the machine
2012-12-26 21:45:24 -08:00
Mitchell Hashimoto
3baa31460f
Store machine ID in "id" file in data directory.
...
Instead of storing an "active" hash in the local_data of an Environment,
we now place the ID of a machine in the "id" file of the machine data
directory. This file is read upon re-instantiation in order to load the
proper state.
2012-12-26 21:45:23 -08:00
Mitchell Hashimoto
d18edc3ce5
Detect a V1 environment and stub upgrade process
2012-12-26 21:45:23 -08:00
Mitchell Hashimoto
cc18492c7a
Local data path introduced
...
The local data path is set to the `ROOT_DIR/.vagrant` by default and is
a directory where Vagrant can store environment-local state. This can be
overriden on a per-Environment basis using the `local_data_path`
option.
2012-12-26 21:45:23 -08:00
Mitchell Hashimoto
5cb2f3275a
Get rid of a silly constant for subdirs in Environment
...
The data is only used once anyways so just use a local variable.
2012-12-26 21:45:23 -08:00
Mitchell Hashimoto
8fe0f86dbd
The --provider flag for `up` now actually does something.
2012-12-23 21:23:08 -08:00
Mitchell Hashimoto
3808ea377f
Upgrade all other default configurations to V2
2012-12-23 16:29:26 -08:00
Mitchell Hashimoto
b0b7c56aa3
More accurate commenting/documentation on the command helpers
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto
e88d735cb6
Make configured VM providers default to an empty one
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto
6478139cee
Move config.vm.customize to VirtualBox specific option
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto
dffbf6eb09
Allow COnfirm calls to be forced by specifying a force_key
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto
50d7b0aba4
Fix bug where Call didn't propagate recovery. Warden has no recovery.
...
The issue here is that when a middleware failed and a recovery sequence
started, it would halt at the "call" step because the "Call" didn't
properly recover the child sequence.
An additional issue was that a Warden had no "recover" method, meaning
embedded Wardens wouldn't recover their stacks properly.
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto
a6e0d3908f
Create a "dummy" provider for tests
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
ac7958a43b
Environment#primary_machine takes a provider argument. Use it.
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
128c06e78d
Environment#default_provider
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
1ee470a551
Begin work on supporting provider-specific configuration
...
This works by registering a `config` with `:provider => true` with the
same name as your provider. Vagrant will then automatically configure
the provider when `config.vm.provider` is used.
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
99c5cddb7d
V2 config supports the concept of an "UNSET" value when doing merges
...
This value should be used as a default, and allows the parent `merge`
method to "just work" most of the time.
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
2da812bd48
Change log levels of some messages that are useful
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
e16010041a
Warden only logs an error once
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
cc24d7b196
Better logging for the box collection
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto
c9d5cff7be
Add in some logging
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto
819140bbc2
Don't error if box doesn't exist on load
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto
0ec639c8e1
BoxCollection#find should only find V1 box when searching for vbox
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto
f2b91d26fd
Load the configuration per machine, so that provider boxes work
...
Boxes are provider-specific, and we don't know the provider until
Environment#machine is called, so we need to build up the machine
configuration during this time.
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto
0180ed849d
Move config loader order out from an ivar into a param for the #load
...
method
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto
1559f7b7a7
Get rid of the old Environment#vms calls. Use #machine everywhere.
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto
130a602e9b
Style nitpick
2012-12-16 10:40:12 -08:00
Nate Smith
d556c0006c
Update lib/vagrant/plugin/v2/plugin.rb
...
Require set in the V2 plugin file since it uses it.
Fixes #1257
2012-12-11 15:51:35 -05:00
Mitchell Hashimoto
d84b71d73e
Require set in the V1 plugin file since it uses it.
2012-12-01 11:28:31 -08:00
Mitchell Hashimoto
b416665fd7
Just some comments
2012-11-07 22:21:48 -08:00
Mitchell Hashimoto
2ef6ff10f0
Cache the machine objects created in Environment#machine.
...
Each machine and provider backing should be represented by only one
machine.
2012-11-07 22:08:06 -08:00
Mitchell Hashimoto
67855be77b
Add the Environment#machine method
...
This will eventually replace the Environment#vms method. Because of the
introduction of providers, the environment doesn't know what the backing
of the machines will be (and they're _machines_ now, not _vms_).
Instead, users of Environment will now call `#machine` on the
environment to retrieve a machine with the given backing provider as it
needs it.
2012-11-07 21:45:09 -08:00
Mitchell Hashimoto
53860f90ab
V2 loader now properly upgrades V1 configuration.
...
This is done by calling the `upgrade` method on the _old_ configuration
classes. The old configuration classes are given the complete new
configuration and can set whatever settings they need to on it.
2012-11-07 20:01:39 -08:00
Mitchell Hashimoto
d254d6f718
Configure the V2 kernel.
2012-11-06 21:28:44 -08:00
Mitchell Hashimoto
81ca275792
Providers to V2
2012-11-06 21:20:55 -08:00
Mitchell Hashimoto
5a33b7ee54
Hosts to V2
2012-11-06 21:20:22 -08:00
Mitchell Hashimoto
1d2beff649
Guests to V2
2012-11-06 21:14:45 -08:00
Mitchell Hashimoto
45f211b19e
Communicators to v2 plugins.
2012-11-06 21:14:10 -08:00
Mitchell Hashimoto
78a1e5726e
Get rid of some ruby warnings due to shadowed variables
2012-11-06 21:12:15 -08:00
Mitchell Hashimoto
e8370f0098
Convert comands to V2 plugins.
2012-11-06 21:09:29 -08:00
Mitchell Hashimoto
be294e002a
Build the v2 interface, which is just a copy of V1 for now.
2012-11-06 20:51:03 -08:00
Mitchell Hashimoto
0ca783e8d1
V1 config loader loads upgradable config if not V1
...
This is to prepare for the upcoming V2 configuration. When we're in V2,
we only want to load _upgradable_ configuration keys.
2012-11-03 21:54:32 -07:00
Mitchell Hashimoto
59d5c5ed92
Add support for "upgrade safe" config classes to plugins.
...
These are classes that use NO core classes of Vagrant, and are therefore
safe to load for upgrades. i.e. a V2 core can load a V1 config class
that is deemed upgrade safe without crashing Vagrant.
2012-11-03 21:39:06 -07:00
Mitchell Hashimoto
c803b0508a
Much cleaner plugin part querying syntax.
...
Before we were manually going over every plugin and getting each piece,
all over the place. Now we have a central manager that will give us all
the pieces we want. There is still some cleanup to do here but this is
much better overall.
2012-11-03 21:25:28 -07:00
Mitchell Hashimoto
6ca671e2b8
Don't allow registry to be given value in non-block form
2012-11-03 20:46:24 -07:00
Mitchell Hashimoto
6df6f6764f
Remove plugin activation. It really isn't necessary.
...
It was only used in a couple places and it isn't necessary since you can
do the loading within the actual blocks themselves.
2012-11-03 20:29:34 -07:00
Mitchell Hashimoto
32d5599e72
Document the box collection format a bit more
2012-09-27 11:57:40 -07:00
Mitchell Hashimoto
1360d86747
Use `next` over select with symbol to proc
2012-09-27 11:52:03 -07:00
skim
bad38ca935
fixes an exception issue when a non-directory appears in the boxes dir
2012-09-25 21:13:38 -05:00
Mitchell Hashimoto
bb56f4dd31
Clean up logic surrounding file downloader matching
2012-09-09 20:31:17 -07:00
Mitchell Hashimoto
e0e2cc1974
Merge pull request #1087 from nwjsmith/master
...
Allow `file://` URIs from `config.box.url`
2012-09-09 20:28:19 -07:00
Mitchell Hashimoto
7158445c2d
Error message on ECONNRESET for box downloading via HTTP [GH-1090]
2012-09-09 20:16:43 -07:00
Nate Smith
50c04ac927
`box.url` can use `file://` URI
2012-08-24 09:53:50 -04:00
Mitchell Hashimoto
ba0e426507
Get vagrant package --base working in some hacky way.
...
`vagrant package --base` is deprecated for a future feature so I didn't
want to waste any brain cycles on how to do this the "right" way since a
new system will be introduced to do this sort of thing in teh future.
2012-08-19 18:51:36 -07:00
Mitchell Hashimoto
cc7768c535
Trivial whitespace changes
2012-08-18 20:06:50 -07:00
Mitchell Hashimoto
a7b298b647
Remove Vagrant::VM
2012-08-18 19:36:50 -07:00
Mitchell Hashimoto
78d79de5c4
Comment the action_box_add method
2012-08-18 16:19:13 -07:00
Mitchell Hashimoto
47fe278667
`vagrant box add` works again. Box verification remove temporarily.
...
The built-in middleware sequences will now be hardcoded onto
Vagrant::Action. Other plugins can hook into these sequences to provide
verification and so on. So the VirtualBox plugin will hook into that
action sequence and add verification.
2012-08-18 16:13:14 -07:00
Mitchell Hashimoto
fa4cf63462
Remove the actions that are unavailable now from autoload
2012-08-15 21:55:47 -07:00
Mitchell Hashimoto
fcffcb2ee0
Delete more unused actions
2012-08-15 21:55:25 -07:00
Mitchell Hashimoto
ef5eabb63d
Remove the builtin VM middleware that are now part of the VB provider
2012-08-14 22:39:25 -07:00
Mitchell Hashimoto
b659191a02
`vagrant up`!
2012-08-14 22:38:41 -07:00
Mitchell Hashimoto
2fc18f7207
`destroy` gets a little farther, and properly halts the VM
2012-08-13 23:18:50 -07:00
Mitchell Hashimoto
bca8663742
`vagrant resume` works with the new machine abstraction
2012-08-13 20:03:35 -07:00
Mitchell Hashimoto
83b908f3d8
`vagrant suspend` works with new machine abstraction
2012-08-13 19:30:41 -07:00
Mitchell Hashimoto
296878cff5
Add basic loop detection for distro_dispatch
2012-08-12 19:03:22 -07:00
Mitchell Hashimoto
0eddda3552
Halt works with new machine.
...
This required some modifications to the linux guest implementation. And
the other guests will have to be modified as well. This is because
`channel` is now `communicate`.
2012-08-12 18:54:52 -07:00
Mitchell Hashimoto
f9752d78d8
Properly resolve and load the guest class impl for Machines
2012-08-12 18:35:19 -07:00
Mitchell Hashimoto
28f341ec75
Begin working on the #guest method for Machine instances
2012-08-12 16:46:00 -07:00
Mitchell Hashimoto
5e70ad0ec2
`vagrant ssh -c` now uses a middleware sequence
2012-08-10 00:57:23 -07:00
Mitchell Hashimoto
2e25285297
Add nice inspect results for Environment and Machine
2012-08-10 00:38:11 -07:00
Mitchell Hashimoto
64afd578b3
Just always return the SSH communicator for machines for now.
...
In the future we'll actually find a matching communicator but for now
since we're just focusing on machine abstraction, we just return SSH.
2012-08-08 21:57:08 -07:00
Mitchell Hashimoto
5ae3e0e80c
Allow the definition of communicators in plugins
2012-08-08 21:52:25 -07:00
Mitchell Hashimoto
595e7cee0e
Move SSH communication to a plugin
2012-08-08 21:48:51 -07:00
Mitchell Hashimoto
a1cef830e3
Add the Communicator plugin API.
...
This allows communication protocols to be defined for the machine. This
is how things like SSH will be implemented.
2012-08-08 21:28:28 -07:00
Mitchell Hashimoto
b1ced46d7c
SSHExec raises proper exception if SSH is not yet ready
2012-08-06 10:29:25 -07:00
Mitchell Hashimoto
8d50c4774e
Tests for SSHExec, and forward in the ssh options
2012-08-05 18:37:41 -07:00
Mitchell Hashimoto
e0ec679838
`vagrant ssh` with full console works with new provider.
...
This works by now calling the `:ssh` action on the provider. This action
is allowed to do whatever it pleases, but should at some point probably
call the `SSHExec` built-in middleware.
The `SSHExec` built-in middleware was added. This uses the information
returned by `Machine#ssh_info` and uses the `Vagrant::Util::SSH` helper
to exec into the remote machine. The provider should do any work upfront
in verifying that the machine is ready to be SSHed into.
2012-08-05 13:45:24 -07:00
Mitchell Hashimoto
a1145615d0
Machine#action supports passing in extra env vars for action runner
2012-08-05 13:16:08 -07:00
Mitchell Hashimoto
984c4f4025
Add Util::SSH which has methods for checking key permissions and exec
2012-08-05 13:12:53 -07:00
Mitchell Hashimoto
1a2a8b49c0
Provider API to return SSH info, must implement `ssh_info`.
...
Since SSH is such a critical part of Vagrant, each provider must
implement a method that returns the proper way to SSH into the machine.
2012-08-05 12:41:05 -07:00
Mitchell Hashimoto
9db982f7a4
Expose the provider via the machine object.
2012-08-04 11:16:31 -07:00
Mitchell Hashimoto
d8cb02d55d
Load the machine ID prior to initializing the provider
2012-08-03 14:22:17 -07:00
Mitchell Hashimoto
e5f250121a
Call now only yields the environment
2012-07-27 19:34:46 -07:00
Mitchell Hashimoto
118377e6f0
Destroy sequence asks the user for confirmation.
2012-07-27 19:29:40 -07:00
Mitchell Hashimoto
e20326d577
Added the Confirm built-in middleware
...
This middleware asks the user a question and expects a Y/N answer. This
middleware can be used with the Call middleware.
2012-07-27 19:16:44 -07:00
Mitchell Hashimoto
556a53d48d
You can no longer set env vars on Builders via `use`
2012-07-27 19:05:35 -07:00
Mitchell Hashimoto
90517a0f9b
The `Call` built-in middleware allows for conditional MW sequences.
...
Read the documentation for more information.
2012-07-26 23:56:47 -07:00
Mitchell Hashimoto
5eed3b8417
Building up the `destroy` action again using new provider API.
...
This shows me moving the built-in middleware sequences to the provider
and how I'm organizing all that.
2012-07-26 22:39:27 -07:00
Mitchell Hashimoto
5f8a654393
Goodbye, instance_eval on Vagrant::Action::Builder!
2012-07-26 22:00:25 -07:00
Mitchell Hashimoto
2ef20586da
Remove the action registry feature.
...
This can be removed since in the future all actions will come from the
providers or something. There are still issues with box actions but
we'll get back to that later...
2012-07-26 21:57:11 -07:00
Mitchell Hashimoto
44b4b9dfef
Move drivers to the VirtualBox plugin. Use Machine class.
...
This starts the transition of replacing VM with Machine. Machine still
isn't ready to fully replace VM but by moving it now, I'm able to find
the spots that need to be fixed. At this point `vagrant status` works
with the new provider interface.
2012-07-24 21:32:38 -07:00
Mitchell Hashimoto
912998ef31
Fill in the provider API a bit more to what it is.
2012-07-16 15:24:51 -07:00
Mitchell Hashimoto
aef2c5f48e
Logging statements to Vagrant::Machine
2012-07-16 14:21:51 -07:00
Mitchell Hashimoto
8f0375d7f3
Machines can call actions on their providers.
2012-07-16 14:12:58 -07:00
Mitchell Hashimoto
8fc5591b8e
Machine queries state from the provider
2012-07-16 10:57:17 -07:00
Mitchell Hashimoto
353610021c
Vagrant::Machine
...
This is the class that will represent a machine that is managed by
Vagrant. The class has a number of attributes associated with it and is
meant to be a single API for managing the machines.
2012-07-16 10:28:42 -07:00
Mitchell Hashimoto
3519bf0372
Add the "provider" API to the V1 plugin.
2012-07-15 11:17:58 -07:00
Mitchell Hashimoto
436da57cc4
Add the #action API to the provider plugin
2012-07-14 17:04:06 -07:00
Mitchell Hashimoto
3b82f2efc4
Create the basic provider plugin interface.
...
Non-functional at this point.
2012-07-14 16:57:54 -07:00
Mark LaPerriere
28e19d5449
Update load_plugins to be more Windows friendly. Uses File::PATH_SEPARATOR instead of hard-coded colon (':').
2012-07-12 15:25:28 -03:00
Mitchell Hashimoto
690d380b77
Use the new BoxCollection API
2012-07-11 18:41:13 -07:00
Mitchell Hashimoto
f20666e230
Automatically upgrade the boxes all over.
2012-07-11 18:36:23 -07:00
Mitchell Hashimoto
bcd1304ef4
Remove unused middleware sequences related to repackaging
2012-07-11 18:36:23 -07:00
Mitchell Hashimoto
cc076e5ee5
Box#repackage to repackage a box.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
798ffc93bd
BoxCollection#add throws an UpgradeRequired exception if a V1 box
...
already exists
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
1d197d84c3
BoxCollection#add transparently upgrades V1 boxes to V2
...
This means that V1 boxes can be added to a V2 box collection without
issue.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
8026715619
Remove the box_remove builtin middleware sequence.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
6bb621026f
`vagrant box add` uses the new API.
...
This assumes VirtualBox boxes for now, which is fine.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
623ecb3e3d
Environment attempts to upgrade box on config load.
...
If a V1 box is encountered when Vagrant loads the configuration, then it
will be upgraded on the fly.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
7595f0078e
BoxCollection#add provider argument is optional
...
In the case that not provider is given then whatever provider the box
represents will be added to the system. Ideally, a provider will be
given, but if not, Vagrant still does a "best effort" to install the
box.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto
da15105a8f
Make Box2 the new Box
...
This involved defaulting all box searching at the moment to VirtualBox.
Additionally, box upgrading is not yet handled. This needs to be done at
some point.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
e7bed7c2ff
Raise an exception if an invalid tar file is added.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
a35f6a175d
Exception when you attempt to add a box when a V1 box conflicts.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
9e33d16ca1
Adding a box that already exists should result in an exception.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
9cb0015b6e
Test that an added box provider must match expected.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
c2151681ec
Box collection can add a new box. This is the happy path only.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
e647afc7d2
Add logging statements to the box upgrade process.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
ffd5ac5af4
BoxCollection can now upgrade V1 boxes to V2
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
2eaa850853
Box2 reads the metadata.json file.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto
4386ff9887
BoxCollection#all returns all boxes, including V1 boxes
2012-07-11 18:36:20 -07:00
Mitchell Hashimoto
9d1924811e
Box collection can detect V1 boxes and throws an exception
...
The exception notifies the caller that the box needs to be upgraded. The
upgrade process is not yet done but is coming ina future commit.
2012-07-11 18:36:20 -07:00
Mitchell Hashimoto
a6d7bd48fd
Find boxes with new on-disk structure.
...
The box collection can now find new-style boxes with providers and
return proper Box objects. In the future, we'll also have to implement
upgrading old style ones as well.
2012-07-11 18:36:20 -07:00
Mitchell Hashimoto
42826356ad
Basic "Box2" implementation.
...
This is the beginning of the new box internals. The basic idea is that
the new box has a new field: provider. The provider will describe what
provider that box was built with and what provider it is made to work
with.
2012-07-11 18:36:20 -07:00
Mitchell Hashimoto
a34801588c
Handle the case where ctrl-D is pressed on input.
2012-07-11 18:30:37 -07:00
Mitchell Hashimoto
61621369d2
Catch Net::SSH::Disconnect when connecting to SSH
...
This error was experienced by @pearkes. It is thrown when the remote end
unexpectedly closes the remote end. This is usually caused by SSH not
being able to properly setup the connection.
2012-07-04 08:26:09 -10:00
Mitchell Hashimoto
ef265ab3ba
Disable read timeout for HTTP downloader
2012-06-28 21:28:40 -07:00
Mitchell Hashimoto
5bc0fa1dff
Default the IO.select result to empty array to avoid nil errors
2012-06-28 08:22:06 -07:00
Mitchell Hashimoto
0b9173efd9
Handle case that `writers` is nil on IO.select in subprocess
...
This can happen when IO.select timeout is reached when we're listening
for writers.
2012-06-27 13:54:05 -07:00
Mitchell Hashimoto
0b3e703498
Add the gateway to hostonly network interfaces on Debian [GH-990]
2012-06-27 11:18:23 -07:00
Mitchell Hashimoto
134e56db21
Reference proper constant ALL_ACTIONS
2012-06-27 11:16:04 -07:00
Mitchell Hashimoto
70bdd9f56e
Move host base class to a plugin component
2012-06-27 09:26:03 -07:00
Mitchell Hashimoto
214b29888a
Remove the old guest base
2012-06-26 16:29:53 -07:00
Mitchell Hashimoto
53d8c28c8e
Move guests to Vagrant.plugin("1", :guest)
2012-06-26 16:28:49 -07:00
Mitchell Hashimoto
b23dda54b8
Move command base class to a plugin component
2012-06-26 16:18:02 -07:00
Mitchell Hashimoto
7258daf535
Support specifying a component for Vagrant.plugin
...
The future of subclassing things like configuration bases and so on will
be to use `Vagrant.plugin(version, component)`. For example:
`Vagrant.plugin("1", :provisioner)`.
2012-06-26 15:47:26 -07:00
Mitchell Hashimoto
2e00a007ce
Move provisioner superclass into the V1 namespace
2012-06-26 15:06:04 -07:00
Mitchell Hashimoto
798704c6d2
Move the loader into the Config::V1 namespace.
2012-06-26 15:06:03 -07:00
Mitchell Hashimoto
41bc8e7454
Move Config::V1::Base to Vagrant::Plugin::V1::Config
2012-06-24 17:06:11 -07:00
Mitchell Hashimoto
ffab8cab68
Renamespace V1 plugin root to Vagrant::Plugin::V1::Plugin
...
This is mostly a transparent change to end users, but I'm going to put
all base classes for V1 into Vagrant::Plugin::V1.
2012-06-24 14:24:52 -07:00
Mitchell Hashimoto
6231bef3f0
Simple logging text change
2012-06-23 23:40:55 -07:00
Mitchell Hashimoto
7a299ae2de
Configuration loader can handle upgrading.
...
The basic process for this is to:
1. Load the configuration using the proper loader for that version. i.e.
if you're loading V1 config, then use the V1 loader.
2. If we just loaded a version that isn't current (imagine we're
currently at V3), then we need to upgrade that config. So we first
ask the V2 loader to upgrade the V1 config to V2, then we ask the V3
loader to upgrade the V2 config to V3. We keep track of warnings and
errors throughout this process.
3. Finally, we have a current config, so we merge it into the in-process
configuration that is being loaded.
2012-06-23 19:56:31 -07:00
Mitchell Hashimoto
9bc1ea5f04
Use config finalize to move some version-specific logic to the version
...
This moves out the concept of a "default VM" from the Environment class
and makes it the responsibility of the V1 configuration that at least
one VM is defined on it. This lets the configuration ultimately decide
what a "default" implementation is.
2012-06-23 12:48:53 -07:00
Mitchell Hashimoto
70fb804128
Configuration versions can finalize config after loading
...
This is useful so that it can take a look at the final loaded
configuration object and possibly make some tweaks to the configuration
object. The use case this was built for was so that config V1 can verify
that there is always at least a single VM defined as a sub-VM, the
"default" VM.
2012-06-23 12:27:32 -07:00
Mitchell Hashimoto
7e19d6849b
Config loader no longer assumes latest version for procs.
...
Previously, all procs were assumed to just be the current version. This
is certainly not going to be true always so now the version number of
the configuration must be explicit if you're assigning a proc to the
configuration loader.
2012-06-23 12:06:54 -07:00
Mitchell Hashimoto
b3db82e516
Separate out the versions the config loader knows as init params.
...
This means that the Config::Loader now only knows how to load
configuration for versions used to initialize the class. This lets
things like the tests be completely isolated from what the actual
configuration is for Vagrant. This will be immensely useful to verify
that the loader functionality works for non-trivial bits (like
upgrading) without depending on Vagrant's upgrading functionality.
2012-06-23 11:33:53 -07:00
Mitchell Hashimoto
a677c15e86
Use `next` instead of `return` for 1.8.x compatibility.
...
Since we're not calling this lambda from inside a method, the `return`
causes a LocalJumpError on 1.8.x. It appears this functionality works
fine on 1.9.x but we'd like to support both. The correct behavior
appears to use `next`.
2012-06-23 10:47:01 -07:00
Mitchell Hashimoto
ba64c28304
Convert the path to a string because it may be a Pathname
2012-06-22 21:06:49 -07:00
Mitchell Hashimoto
fa99eb7e54
Check for permission denied when using SCP to upload [GH-924]
2012-06-22 21:04:21 -07:00
Mitchell Hashimoto
d8c16035c8
Don't use Pathname#each_child for 1.8.7 compat [GH-979]
...
each_child is a 1.9.x feature. The implementation however is simple
enough that I copied it over and just use the 1.8.7 compatible version.
2012-06-22 20:47:43 -07:00
Mitchell Hashimoto
51be92eeb6
Remove dependence on V1 Kernel from Environment
2012-06-14 18:46:48 -07:00
Paul Morton
922a5aade5
Update drivers to support reading MAC Addresses
2012-06-11 21:29:21 -07:00
Matt Robenolt
db76b42ef5
Allow the .vagrant dotfile to be moved into a completely different directory tree
...
I wanted to define my dotfile as: `config.vagrant.dotfile_name =
"~/.vagrant-projectname"` and noticed that the full path wasn't
expanded as expected.
This patch allows the vagrant file to be placed anywhere on the
filesystem.
2012-06-09 22:56:54 -07:00
mxtthias
447d6810f7
Explicitly tell ssh server we're done sending data
2012-06-08 14:40:49 +02:00
Mitchell Hashimoto
b393de052f
Subprocess now only yields stdout/stderr if you're listening
2012-06-01 23:17:48 +02:00
Mitchell Hashimoto
2441961a34
Fix bug where SSH didn't work properly
...
Forgot to set the `shell` variable properly
2012-06-01 23:17:38 +02:00
Mitchell Hashimoto
1a6ae81aa9
Require what to be notified for with block and Subprocess.execute
...
There was an issue before where the stdin buffer would always have space
so it would always yield that block and Ruby would spin at 100%. Now we
require all callers to say what they want to listen for. This drops
CPU down to almost nothing.
See GH-832
2012-06-01 17:02:12 +02:00
Mitchell Hashimoto
903fd3acdc
Easy operations API `local` now echoes stdout/stderr
2012-06-01 16:38:40 +02:00
Mitchell Hashimoto
ca6d49bc94
Easy operations `run` and `sudo` now echo stdout/stderr
2012-06-01 16:33:41 +02:00
Mitchell Hashimoto
f133f39bcc
Add comment to explain unclear code
2012-06-01 16:08:41 +02:00
Mitchell Hashimoto
fd9ad904fe
Easy commands now take a target VM name
...
It is assumed to be the first arg, as long as the first arg doesn't
begin as a flag "-foo"
2012-06-01 15:59:05 +02:00
Mitchell Hashimoto
83917a6bb0
Added `arg` and `arg_extra` API to easy commands
...
Easy commands can now easily get arguments from the command line.
Using `arg`, you can get named arguments on the command line, such as
"--foo" or "-f"
With `arg_extra`, you can get any remaining arguments after a "--"
on the command line, which is a common pattern used to grab longer
parameters.
2012-06-01 15:57:55 +02:00
Mitchell Hashimoto
100e1f7eb0
Primary VMs are respected again.
...
At some point in the past, primary VMs were no longer respected for
commands. This fixes taht.
2012-06-01 15:10:26 +02:00
Mitchell Hashimoto
9cb53860c2
New easy command APIs: argv, info, error, success
...
Some new APIs were added to the easy command operations. `info`,
`error`, and `success` are simple ways to output messages to the UI
without resorting to "puts" in Ruby, since the Vagrant UI object is the
idiomatic way to do communication with the world.
Additionally, `argv` was added which gives commands access to the
command-line arguments that are remaining that does not include the
vagrant binary or subcommand.
Also, behavior was changed: Previously, easy commands would run for
every target VM. Now, it is only run once with the primary VM. In the
next commit, I plan on adding a new flag that signifies an easy command
is meant to work with a named VM.
2012-06-01 14:55:08 +02:00
Mitchell Hashimoto
1ef679f683
SSH log level fatal. Thanks @petejkim
...
This change makes it so that SSH errors are shown, whereas QUIET hid
those as well. The main change to QUIET was to get rid of warnings,
not errors, so this fixes that.
2012-05-31 23:42:28 +02:00
Zsolt Takács
cac79cf409
preserve attributes on packaging when using ruby 1.9.2
...
see http://bugs.ruby-lang.org/issues/4507
2012-05-26 16:51:18 -07:00
Matt Callaway
117a9c146a
On Linux where IPv6 is disabled, where /etc/hosts has '::1 localhost', a socket connect to localhost 2222 results in ENETUNREACH which needs to be caught as per this patch.
2012-05-25 15:45:18 -05:00
Mitchell Hashimoto
d5a7ca6159
config.ssh.shell now contains full shell command
...
Before, it only contained the shell executable and "-l" was magically
appended to it. However, every shell doesn't support "-l" and maybe "-l"
isn't even the behavior that users want!
Therefore, the config.ssh.shell command must now contain the full
command to execute.
2012-05-23 15:30:16 -07:00
Mitchell Hashimoto
de78a3637a
Plugin activation
...
Vagrant is only guaranteeing that the plugin definition superclass (the
Vagrant.plugin("1") part) is backwards compatible. Anything else, such
as Vagrant::Command::Base and so on, will likely change in future
versions. Beacuse of this, plugins should only immediately expose their
definition.
In order to support loading the other classes, plugins should defer
loading to the "activation" phase of a plugin. This can be done using
the `activated` block:
class MyPlugin < Vagrant.plugin("1")
name "my plugin"
activated do
require "myplugin/my_command"
end
command("foo") { MyCommand }
end
Plugin activation is done at two specific times:
* Right when a Vagrant::Environment is created and the global plugins
(such as from ~.vagrantrc) are loaded.
* Right before loading configuration, but after the Vagrantfiles have
been evaluated. This allows plugins to be defined within these files
as well.
2012-05-21 22:23:50 -07:00
Mitchell Hashimoto
3204b3a580
Vagrant.configure and versioned configuration
...
Vagrant.configure is now how configuration is done in Vagrantfiles
(previously it was Vagrant::Config.run). This function takes a single
argument which is the version of configuration to use.
Various internals were updated for this new versioned configuration.
Note that multiple versions of configuration aren't yet used so aren't
fully supported by Vagrant, but the foundation is being set here.
2012-05-21 21:47:01 -07:00
Mitchell Hashimoto
95e554314e
Foundation for supporting multiple version types
...
I created VersionBase which is the abstract base class for any
configuration versions. Configuration versions are responsible for
knowing how to load configuration given a proc (from a
Vagrant.configure block), as well as merging configuration procs. In the
future, it will have to upgrade versions as well. This is not done yet.
The VERSIONS constant was added to Vagrant::Config which is a registry
to keep track of all the available configuration versions. The
VERSIONS_ORDER constant is an array of the ordering of these versions.
The ordering is important so that in the future Vagrant can attempt to
gracefully upgrade the configurations. It is also used to determine the
current configuration version (which is assumed to be the last version
in the order).
The loader was modified to use the current version and the VERSIONS
registry instead of hardcoding V1.
2012-05-20 17:47:24 -07:00
Mitchell Hashimoto
0f85cb7b74
Log the guest class chosen
2012-05-19 09:32:43 -07:00
Josh Mahowald
174df1edf0
Setting up hostname before setting up the network to minimize issues as described in http://serverfault.com/questions/38114/why-does-sudo-command-take-long-to-execute
2012-05-19 09:17:44 -07:00
Mitchell Hashimoto
73c8299ecd
Merge pull request #868 from justinlynn/add_dhcp_default_route_option
...
Issue #862 : Allow bridged networking without removing the interface's DHCP assigned default route
2012-05-06 14:46:58 -07:00
Mitchell Hashimoto
8c6f3edf2d
Single-VM mode still allows target name in vagrant commands
2012-05-06 14:33:47 -07:00
Mitchell Hashimoto
bc0643613a
Vagrant.require_plugin [GH-916]
2012-05-06 14:01:10 -07:00
Mitchell Hashimoto
d230f0a41c
Environment.rb doesn't need to load in "rubygems" anymore
2012-05-06 13:49:22 -07:00
Mitchell Hashimoto
de92f5217c
Use `load` for the Vagrantrc, make sure it is only loaded once
2012-05-06 10:09:33 -07:00
Mitchell Hashimoto
0d6248394c
Tests for the Easy command base
2012-05-06 10:01:50 -07:00
Mitchell Hashimoto
dc4f6e1939
Allow creating multiple easy commands
2012-05-06 09:54:23 -07:00
Ryan LeCompte
2355a4b9a6
fix support for multiple unique easy commands
2012-05-06 01:47:43 -07:00
Mitchell Hashimoto
b7854c1ef6
Easy hooks
2012-05-05 22:31:21 -07:00
Mitchell Hashimoto
31ac7271aa
Rename EasyCommand namespace to Easy
2012-05-05 22:16:13 -07:00
Mitchell Hashimoto
3d147f1d96
Raise exception if the insert_before middleware is not found
2012-05-05 22:10:26 -07:00
Mitchell Hashimoto
879f98b5d5
Action builder supports indexing middlewares by name
2012-05-05 22:01:53 -07:00
Mitchell Hashimoto
c2649074c3
Test command name validation and fix up some bugs
2012-05-05 20:11:26 -07:00
Mitchell Hashimoto
e4fa5bb489
Validate that commands only contain proper characters
2012-05-05 20:01:14 -07:00
Mitchell Hashimoto
64ece507ad
`download` operation
2012-05-05 19:52:10 -07:00
Mitchell Hashimoto
f8ab516082
`upload` operation for easy commands
2012-05-05 19:44:52 -07:00
Mitchell Hashimoto
1d7e02cd63
Build up some operations that can be run.
...
These are heavily inspired by Fabric! Thanks!
2012-05-05 19:28:50 -07:00
Mitchell Hashimoto
00aba5ac03
Plugin easy commands.
...
Easy commands are well... easy! They don't offer the full power of
creating a completely custom command class, but they let you do the
basics (what almost everyone needs) with minimal fuss. Example:
class MyPlugin < Vagrant.plugin("1")
name "my-plugin"
easy_command "foo" do |action|
puts "HELLO!"
end
end
NOTE: The "action" stuff isn't done yet, but will be soon!
2012-05-05 18:57:29 -07:00
Mitchell Hashimoto
8850c086b1
Plugins can now have action_hooks
2012-05-05 18:28:07 -07:00
Mitchell Hashimoto
462136cbf2
Use the .vagrantrc for plugins!
2012-05-05 13:08:07 -07:00
Mitchell Hashimoto
d9034da8a4
Remove gem-based plugin loading
2012-05-05 12:57:31 -07:00
Mitchell Hashimoto
3b7030ed2c
Merge pull request #905 from LarsFronius/master
...
Fix for issue #898 - interfaces assigned in wrong order under ruby1.8
2012-05-04 20:52:04 -07:00
Mitchell Hashimoto
359ea23069
Support multiple paths in VBOX_INSTALL_PATH [GH-885]
2012-05-04 20:48:52 -07:00
Mitchell Hashimoto
04df9bc80b
Merge pull request #877 from bitprophet/allow-agents-in-plain-mode
...
Don't use IdentitiesOnly under 'ssh -p'
2012-05-04 20:31:15 -07:00
Jorgen H. Fjeld
6f5a9d13f3
Detect and disable DNS settings that break on Ubuntu 12.04.
2012-05-01 22:24:07 -07:00
Sean Wolfe
e10e8aae86
After changing the file permissions, we need to reload the stat before comparing again. Otherwise we will always throw an exception even if we set the permissions successfully.
2012-05-01 13:26:12 -07:00
Lars Fronius
534faeae7c
Fixes a bug where interfaces are assigned in a wrong order when using ruby1.8, causing vm boot to stop as documented in issue #898
2012-04-26 21:11:16 +02:00
Mitchell Hashimoto
9956e6d012
Better directory structure for plugins
2012-04-20 16:53:01 -07:00
Mitchell Hashimoto
cae80a7716
Make Vagrant::Plugin a module
2012-04-19 21:42:35 -07:00
Mitchell Hashimoto
86a846e445
Remove old command directory
2012-04-19 21:33:26 -07:00
Mitchell Hashimoto
945f3bba67
Remove old commands
2012-04-19 21:29:25 -07:00
Mitchell Hashimoto
deb346d5a1
Remove guest subdirectory
2012-04-19 21:28:24 -07:00
Mitchell Hashimoto
3a79aa0beb
Remove hosts directory
2012-04-19 21:27:16 -07:00
Mitchell Hashimoto
9593ad3fdb
Get rid of provisioners directory
2012-04-19 20:30:14 -07:00
Mitchell Hashimoto
6161c04fcf
Fix some issues with commands not referencing proper classes
2012-04-19 14:02:03 -07:00
Mitchell Hashimoto
1489854d70
Move commands into plugins
2012-04-19 13:59:48 -07:00
Mitchell Hashimoto
661f20bb91
Move hosts to a plugin system
2012-04-18 22:20:45 -07:00
Mitchell Hashimoto
1cbac3167f
Move provisioners into plugins
2012-04-18 21:53:19 -07:00
Mitchell Hashimoto
0d7b9f84e2
Add logging to v1 plugin registration
2012-04-18 21:32:15 -07:00
Mitchell Hashimoto
1b2fa748f9
Move all guests to plugins, even the distros
2012-04-18 21:23:25 -07:00
Mitchell Hashimoto
7766eb6098
Major guests have been moved to plugins
2012-04-18 21:03:03 -07:00
Mitchell Hashimoto
dd459170dd
Start moving guest configuration out into plugins
2012-04-18 17:38:20 -07:00
Mitchell Hashimoto
a23fee4848
Remove old configuration classes
2012-04-18 17:16:03 -07:00
Mitchell Hashimoto
a62e859231
Get rid of the UNSET_VALUE stuff, save it for v2
2012-04-18 17:09:25 -07:00
Mitchell Hashimoto
b38fb5e974
Loader uses the new configuration classes
2012-04-18 17:03:34 -07:00
Mitchell Hashimoto
98d6bf958e
Move core config into a plugin
2012-04-17 22:12:27 -07:00
Mitchell Hashimoto
c0ee3b06ff
Config merging
2012-04-17 10:22:24 -07:00
Mitchell Hashimoto
92ee042fc2
V1 config loading using plugins as a source for config keys
2012-04-16 22:26:38 -07:00
Mitchell Hashimoto
b46daa82bc
Ability to define configuration classes on plugins
2012-04-15 16:04:54 -05:00
Mitchell Hashimoto
2eebc2cb68
Basic Plugin class
2012-04-15 15:34:44 -05:00
Mitchell Hashimoto
4034a2db21
`vagrant destroy` works in "guru meditation" state
2012-04-12 10:18:34 -07:00
Jeff Forcier
e35fac0986
Protip, don't apply changes from old released versions to master
2012-04-09 18:01:03 -07:00
Jeff Forcier
59852e79de
Don't use IdentitiesOnly under 'ssh -p'
2012-04-09 17:57:41 -07:00
Justin Lynn
a20ee32c9a
Need to correctly configure the template's options.
...
pull the config through the bridged interface configuration routine
template debugging
add another test line
set the setting in the correct areas, yay dynamic method calls
2012-04-05 10:58:58 -07:00
Justin Lynn
bf3d3b0245
add use_dhcp_assigned_default_route setting to allow for dhcp bridged interfaces which have a default route assigned by dhcp
2012-04-05 09:21:09 -07:00
Mitchell Hashimoto
00c4193b43
Merge pull request #856 from stevehodgkiss/fix_error_when_changing_users
...
Cleanup any tmp files set by vagrant to fix a permissions issue when switching users.
2012-04-03 21:56:16 -07:00
Mitchell Hashimoto
e98cedf0e1
LogLevel QUIET for SSH to suppress known hosts warning [GH-847]
2012-04-02 09:57:16 -07:00
Mitchell Hashimoto
285a07ebb3
Don't use unless
2012-04-02 09:55:39 -07:00
Steve Hodgkiss
3561c1c5ba
Guests should clean up after themselves
2012-04-02 17:33:54 +10:00
Steve Hodgkiss
092e8a95b3
Cleanup any tmp files set by vagrant to fix a permissions issue when switching users.
2012-04-02 14:56:43 +10:00
David Calavera
e8c5cf09db
fix reading information method for vbox 4.1
2012-03-31 18:58:02 -07:00
David Calavera
b0e6085c0b
Fix importing progress status check
2012-03-31 18:50:45 -07:00
David Calavera
73b31b5a3b
fix regexp matchers
2012-03-30 19:36:35 -07:00
David Calavera
eb07788db1
Remove global variables
2012-03-30 19:36:26 -07:00
Mitchell Hashimoto
1782acdf2e
Fix up some stuff from previous pull request
2012-03-30 19:31:03 -07:00
Hunter Morris
db6cd14f9e
Detect when the VirtualBox installation is incomplete and error
2012-03-30 19:29:39 -07:00
Mitchell Hashimoto
9f6bc9ee03
Catch Errno::ETIMEDOUT for downloading boxes [GH-849]
2012-03-30 19:28:10 -07:00
Mitchell Hashimoto
2ed6695f78
Improve the SSH ready? check [GH-841]
2012-03-28 22:30:01 -07:00
Mitchell Hashimoto
c9d1110b0e
Up version for development
2012-03-28 22:08:55 -07:00
Mitchell Hashimoto
41445466ee
v1.0.2
2012-03-25 10:08:22 -07:00
Mitchell Hashimoto
bfe20a223f
Fail fast if the VM fails to boot properly. [GH-825]
2012-03-25 10:00:27 -07:00
Mitchell Hashimoto
1b4388ee98
Fix a few edge cases where CLI#execute didn't properly return an int
2012-03-25 09:58:57 -07:00
Mitchell Hashimoto
351f9757a1
Backwards compatible with_target_vms, fix failing test
2012-03-23 11:29:10 -04:00
withnale
ff36845259
Allow multiple VMs to be specified for relevant commands
2012-03-23 11:25:35 -04:00
Mitchell Hashimoto
3338b6c134
Support arbitrary exit statuses for CLI commands that aren't exploding
2012-03-23 11:07:35 -04:00
Mitchell Hashimoto
c1445a0130
Check if a port is open prior to forwarding [GH-821]
2012-03-23 10:31:27 -04:00
Mitchell Hashimoto
d08a65e7f7
IsPortOpen utility
2012-03-23 10:26:29 -04:00
Mitchell Hashimoto
3877b71983
Better logging in the SaneDefaults middleware
2012-03-23 10:00:26 -04:00
Seth Chisamore
c137dec14f
Enable DNS proxy (in NAT mode) by default
2012-03-23 09:37:04 -04:00
Mitchell Hashimoto
a1b16fd96d
Merge pull request #816 from Oakie3CR/chef-solo-encrypted-databags
...
Add encrypted data bag options to chef-solo
2012-03-23 06:21:36 -07:00
Mitchell Hashimoto
1749e4cf94
Enable Host IO cache on SATA controller by default
2012-03-22 13:41:48 -07:00
Mitchell Hashimoto
641a8daac8
safe_puts to avoid EPIPE [GH-819]
2012-03-18 17:45:49 -06:00
Hendrik Volkmer
28e391cb61
Disable IdentitiesOnly for SunSSH
...
SunSSH is default on Solaris/OpenSolaris/Illumos. SunSSH does not support
the IdentitiesOnly option. 'vagrant ssh' works when the options is not supplied.
2012-03-18 16:32:15 +01:00
Mitchell Hashimoto
cd92d6483f
Update CHANGELOG
2012-03-15 09:52:28 -06:00
Remco Vermeulen
728dbe5a4f
Make sure that the private_key_path is expanded before checking existence.
...
This allows for paths like ~/.ssh/some_key to be defined in the Vagrantfile.
2012-03-14 12:02:31 +01:00
Christian Rigdon
b4e24c91f5
Add encrypted databag options to chef-solo
2012-03-13 16:27:11 -06:00
Benedikt Böhm
aa06f06d1a
add change_host_name support for gentoo
2012-03-13 14:56:22 -07:00
Benedikt Böhm
275241caf6
fix interpolation error in VMGuestError strings
2012-03-13 14:56:11 -07:00
Mitchell Hashimoto
3ff4be3632
Nicer error for unsupported SSH key type [GH-805]
2012-03-13 14:27:16 -07:00
Mitchell Hashimoto
0245245daa
Update CHANGELOG
2012-03-13 14:19:34 -07:00
R. Tyler Croy
95ebd5b4ca
Allow provisioners to prepare, even if they're not enabled
...
Fixes #801
2012-03-13 05:08:33 -07:00
Mitchell Hashimoto
5bc27e46d3
v1.0.1
2012-03-11 16:10:30 -07:00
Mitchell Hashimoto
07fa6d5dc4
ssh-config -h shows help [GH-793]
2012-03-11 10:38:23 -07:00
Mitchell Hashimoto
b38083fb9b
OpenBSD guest [GH-773]
2012-03-10 14:03:09 -08:00
Mitchell Hashimoto
8ea5e15b48
`vagrant reload` accepts `--no-provision` and `--provision-with`
2012-03-10 13:57:18 -08:00
Mitchell Hashimoto
37b8a13179
Add the :facter option for puppet server [GH-790]
2012-03-09 12:16:27 -08:00
Mitchell Hashimoto
0b28910b77
Update CHANGELOG + Style
2012-03-09 10:18:40 -08:00
Daniel Simmons
38212969c6
Don't attempt to calculate percentage if total is not set
...
Prevents a FloatDomainError if the total is zero or not known. Fixes #788 .
2012-03-09 11:10:30 +00:00
Mitchell Hashimoto
f8fa859b5f
Raise an error if the CWD is incorrect
2012-03-08 16:57:17 -08:00
Mitchell Hashimoto
6969f791ad
VAGRANT_CWD can be set to set the CWD of `vagrant`.
2012-03-08 16:45:19 -08:00
Mitchell Hashimoto
ce00a56ecb
Even with a custom vagrantfile name, use defaults [GH-778]
2012-03-08 13:24:04 -08:00
Mitchell Hashimoto
bab5d7b685
Silent UI can't respond to `ask`
2012-03-07 22:42:47 -08:00
Mitchell Hashimoto
3046845215
Show nice error if vagrant destroy can't confirm [GH-779]
2012-03-07 22:35:40 -08:00
Mitchell Hashimoto
95b3e9f82f
UI errors if a TTY is required and not given
2012-03-07 22:32:44 -08:00
Mitchell Hashimoto
700938b668
Load rubygems in environment.rb [GH-781]
2012-03-07 22:15:45 -08:00
Mitchell Hashimoto
ef90fb7b0d
Up version for dev
2012-03-06 11:38:11 -08:00
Mitchell Hashimoto
1fd4cb1a4e
Fix a potential exception case by making UUID for VB driver optional
2012-03-06 11:37:36 -08:00
Mitchell Hashimoto
14513a99b3
Ignore me.
2012-03-05 22:17:39 -08:00
Mitchell Hashimoto
40901dc2e6
Make sure a driver is always set on a VM object
2012-03-05 20:42:55 -08:00
Mitchell Hashimoto
97cf6ddfba
Update CHANGELOG
2012-03-04 16:39:35 -08:00
Wayne E. Seguin
9990311f20
Added Fedora 16 handling.
2012-03-04 18:42:37 -05:00
Mitchell Hashimoto
a90f33dcf2
Avoid deadlock behavior on Windows subprocess IO [GH-765]
2012-02-28 09:44:28 -08:00
Achim Herwig
7c1fcbdde0
Added openSuSE as host system.
...
Init script for NFS-server differs.
2012-02-28 11:55:39 +01:00
Mitchell Hashimoto
a8293543e9
Automatically convert all customize arguments to strings.
2012-02-26 14:13:24 -08:00
Mitchell Hashimoto
07a815f9d8
Remove deprecation warnings, the things are gone!
2012-02-25 12:35:58 -08:00
Mitchell Hashimoto
7b9f64f577
Allow data store to work even if file path is nil
2012-02-25 10:41:06 -08:00
Mitchell Hashimoto
6490710d43
Puppet accepts :facter option to override default facts [GH-753]
2012-02-25 10:18:17 -08:00
Mitchell Hashimoto
2c823e98bd
Fix crashing bug with `primary_vm` on Environment
2012-02-24 10:27:34 -08:00
Mitchell Hashimoto
50fb129f53
Make VM#run_action public for plugin devs
2012-02-23 23:01:43 -08:00
Ian Downes
0f63171a4d
Support for bridged networks in FreeBSD
2012-02-23 18:06:40 -08:00
Mitchell Hashimoto
23fe4ef7e2
Fix up the freebsd guest regex
2012-02-22 15:19:45 -08:00
Ian Downes
3ebde12efb
add change_host_name support for FreeBSD
2012-02-22 15:08:18 -08:00
Mitchell Hashimoto
2f420705da
Output version at the top of every log
2012-02-22 10:00:19 -08:00
Mitchell Hashimoto
cf840c88b0
Merge pull request #751 from jjhuff/chef-provision
...
Fix for permissions when re-provisioning chef.
2012-02-20 17:28:31 -08:00
Mitchell Hashimoto
3e5b3d051b
Fix exception when adding boxes due to recent change. [GH-752]
2012-02-20 17:26:22 -08:00
Justin Huff
32f7f98ef4
Fix for permissions when re-provisioning chef.
...
https://github.com/mitchellh/vagrant/issues/748
2012-02-20 09:53:09 -08:00
Jaime Soriano Pastor
c0338dfa4b
NIC type can also be defined for host-only adapters
2012-02-20 12:16:10 +01:00
Mitchell Hashimoto
5eb09aac3f
Up version for RC2
2012-02-19 11:50:54 -08:00
Mitchell Hashimoto
8969605fe2
Check that VirtualBox exists early. [GH-746]
2012-02-19 11:36:25 -08:00
Mitchell Hashimoto
c2fbbe7dee
Better logging for config loading
2012-02-15 18:23:05 -08:00
Mitchell Hashimoto
d4a2e39c3e
Gracefully handle if the type of arg is not correct for bridged.
...
[GH-743]
2012-02-15 18:20:44 -08:00
Mitchell Hashimoto
163da82170
Fix edge case which caused exception in network configuration code.
...
[GH-742]
2012-02-15 11:11:11 -08:00
Mitchell Hashimoto
034477b52a
Add `fsid` to linux exports for NFS. [GH-736]
2012-02-14 23:08:32 -08:00
Mitchell Hashimoto
96a920e4e5
Destroy VMs in reverse order. [GH-739]
2012-02-14 10:42:30 -08:00
Mitchell Hashimoto
2cf146cf6b
Set uuid directly if VM couldn't be found. [GH-725]
...
This fixes a rare edge case where an exception could actually cause
Vagrant to remove the UUID state of a running VM, "losing" it.
2012-02-13 17:39:18 -08:00
Mitchell Hashimoto
888907de91
Up version for 1.0.0.rc1
2012-02-12 11:21:00 -08:00
Mitchell Hashimoto
b64ac0b0d3
Use `binmode` to actually fix GH-727
2012-02-11 10:36:27 -08:00
Mitchell Hashimoto
9e427562ef
Retry VirtualBox commands. [GH-726]
2012-02-10 21:56:59 -08:00
Mitchell Hashimoto
c50c7959f9
Convert lineendings for the other guests as well
2012-02-10 18:14:51 -08:00
Mitchell Hashimoto
ba42fffed0
Convert line endings to Unix-style [GH-727]
2012-02-10 18:07:59 -08:00
Mitchell Hashimoto
5c49d693d4
You can no longer output a package to a directory [GH-730]
2012-02-10 17:57:40 -08:00
Mitchell Hashimoto
99ec766efe
Get rid of tabs
2012-02-10 17:57:40 -08:00
John Bender
b8db119d50
expose virtualbox base driver methods execute and raw
2012-02-09 23:04:21 -08:00
Mitchell Hashimoto
02fe7b6a9a
Merge branch '0-9-6-regression'
2012-02-09 00:45:30 -08:00
Mitchell Hashimoto
ea19bddb04
v0.9.7
2012-02-10 00:54:16 -08:00
Mitchell Hashimoto
0ba3824106
Windows subprocess IO works again. [GH-721]
2012-02-10 00:53:22 -08:00
Mitchell Hashimoto
aa18ea3fd0
Fix issue where starting a VM failure was false negative [GH-720]
2012-02-09 00:04:47 -08:00
Mitchell Hashimoto
f81fb58cd9
Fix puppet inheritence for config [GH-722]
2012-02-08 22:28:19 -08:00
Bob Van Zant
ae62c9bd68
Convert example host only IPs to RFC1918
2012-02-08 14:50:33 -08:00
Mitchell Hashimoto
9882918903
`destroy` takes a `--force` flag [GH-699]
2012-02-07 22:58:01 -08:00
Mitchell Hashimoto
6ed6c0c085
`destroy` asks for confirmation. [GH-699]
2012-02-07 22:54:51 -08:00
Mitchell Hashimoto
fbcb2c6ddc
Merge branch 'f-vagrant-gem'
2012-02-07 22:42:34 -08:00
Mitchell Hashimoto
6224f79557
Up version for development. 1.0 folks.
2012-02-07 21:32:50 -08:00
Mitchell Hashimoto
600e8ae036
v0.9.6
2012-02-07 21:30:29 -08:00
Mitchell Hashimoto
6f45cdc1ed
Some code cleanup
2012-02-07 21:20:33 -08:00
Mike Lundy
00953073e7
Add Gentoo support for NFS
2012-02-07 21:14:47 -08:00
Mitchell Hashimoto
c9fe21cf72
Merge pull request #719 from semarj/master
...
Fix the ifdown/ifup issue for once and for all?
2012-02-07 21:00:07 -08:00
semarj
64a26dae18
Update lib/vagrant/guest/redhat.rb
2012-02-07 17:42:28 -06:00
Mitchell Hashimoto
a25a691913
Don't forward ports if there aren't any to forward
2012-02-07 15:40:35 -08:00
Paul Handly
a0e60d641d
Uncolorize puppet provisioner output
2012-02-07 14:52:16 -08:00
John Bender
ea9dadd41e
update the action_env test helper for the new environment structure
2012-02-06 22:47:25 -08:00
Mitchell Hashimoto
a3d9615a13
Custom help for `vagrant gem` on top of RubyGems help
2012-02-06 22:52:34 -05:00
Mitchell Hashimoto
13fddfa6f9
Load plugins with the private gem path.
...
This changed plugin loading semantics a tiny bit, since they are
no longer loaded when Vagrant is loaded but instead when the
Vagrant::Environment is initialized. I'll note this in the CHANGELOG.
2012-02-06 22:39:35 -05:00
Mitchell Hashimoto
261a83d60f
Logging statements in plugin loading
2012-02-06 22:31:45 -05:00
Mitchell Hashimoto
4444e7150c
`vagarnt gem` cannot be called within a bundler env
2012-02-06 22:22:28 -05:00
Mitchell Hashimoto
d19f7a44e5
Starting on the `vagrant gem` command.
2012-02-06 22:16:37 -05:00
Mitchell Hashimoto
fd54cf0809
`vagrant ssh` now uses a direct exec() [GH-751]
...
Before, I was using the "super exec" by passing a single string.
Ruby handles this by actually invoking the command with a shell.
This causes some odd issues with file pathes with spaces and
expansion and other things. This no longer happens.
2012-02-06 15:27:28 -05:00
Mitchell Hashimoto
3eff28ac0d
Don't strip color codes with ANSI escape code remover
2012-02-05 13:30:21 +01:00
Mitchell Hashimoto
6c1eafe00e
Update CHANGELOG
2012-02-05 13:23:53 +01:00
Joe Kutner
36f43fa676
moved the closing of subprocess streams to after the process has finished.
2012-02-05 13:21:50 +01:00
Mitchell Hashimoto
3ea04f2577
Up version for dev
2012-02-05 13:17:00 +01:00
Mitchell Hashimoto
fb3d2234cf
v0.9.5
2012-02-05 13:15:42 +01:00
Mitchell Hashimoto
987abb8abc
Fix typo in puppet server I18n
2012-02-04 17:51:45 +01:00
Mitchell Hashimoto
a6a42b31df
Ability to specify `:bridge` to networking [GH-655]
2012-02-04 15:04:28 +01:00
Mitchell Hashimoto
26d9636faf
Better logging with the bridged networking layer
2012-02-04 14:51:55 +01:00
Mitchell Hashimoto
90d7742c9c
More intelligent puppet server cert name handling
2012-02-04 13:57:02 +01:00
Mitchell Hashimoto
ab8b1d3ea6
Fix some issues with puppet server config inheritance
2012-02-04 13:51:36 +01:00
withnail
e90c36ac77
puppet_server certname changes
...
At present, puppet_node is defined by default and must almost always be
overwritten. This changes the logic for puppet_server so puppet_node is
initially undefined and the node name will be set based on this order
1. puppet_node if defined
2. host_name if defined (actually this removes the explicit certname
specification which is cleaner and uses the machine hostname)
3. config.vm.box
2012-02-04 13:50:15 +01:00
withnail
77c1b7c9e2
Only list bridged interfaces that are up [GH-701]
2012-02-01 15:38:57 -08:00
semarj
535bda2a4e
properly restart the interface. Was failing with /sbin/ifup
2012-01-31 22:36:38 -06:00
Scott Sanders
2d327055f3
Do not allow BSD hosts to double-quote in exports
...
This is not allowed on *BSD
2012-01-30 19:52:59 -08:00
Scott Sanders
0ec02fe711
Update comment to better reflect the actual issue
2012-01-30 19:52:36 -08:00
Scott Sanders
28c377848f
Update FreeBSD guest to support networking
...
The latest update to 0.9.x broke FreeBSD networking. This patch fixes
things by moving the code into the right method.
2012-01-30 19:51:58 -08:00
Mitchell Hashimoto
f9a42973d9
Select NFS version with :nfs_version
2012-01-29 13:34:50 -08:00
Mitchell Hashimoto
3a8c44301b
Fix some issues with NFS version selecting
2012-01-29 13:33:35 -08:00
Russ Garrett
ced99edd59
Allow user to choose NFS protocol version, defaulting to 3
...
NFSv4 has siginificant added complexity in the form of ID-mapping which
can cause problems with applications without extra setup. Best to
force version 3 unless the user requests it.
Conflicts:
lib/vagrant/systems/linux.rb
2012-01-29 13:27:42 -08:00
Mitchell Hashimoto
f095939800
Update changelog for GH-690
2012-01-28 21:50:57 -08:00
sathlan
4715400761
The type of nic can be set for bridged network.
...
:nic_type can be specified in the network bridged type. Its value can
be Am79C970A, Am79C973, 82540EM, 82543GC, 82545EM, virtio.
2012-01-28 21:50:04 -08:00
Mitchell Hashimoto
d687473760
Fix crashing issue when all networks don't aut config [GH-689]
2012-01-28 21:48:12 -08:00
Mitchell Hashimoto
f8619007a7
Update version for dev
2012-01-28 17:39:47 -08:00
Mitchell Hashimoto
261dadb1c6
v0.9.4
2012-01-28 17:38:53 -08:00
Mitchell Hashimoto
912e4974db
Registry will now cache result values.
...
This is actually required so that we can do things like this
in plugins:
Vagrant.actions[:up].insert(Foo, Bar)
2012-01-28 17:31:50 -08:00
Mitchell Hashimoto
88ba3a3619
Change middleware internals to make plugin lives easier [GH-684]
2012-01-28 17:31:50 -08:00
Mitchell Hashimoto
e9ae63f3b5
Merge pull request #688 from schisamo/transient-shared-folder-support
...
add vbox driver support for creating transient shared folders
2012-01-28 16:50:27 -08:00
Mitchell Hashimoto
6d7a3d9b64
More accurate VBoxManage error detection.
2012-01-27 12:40:42 -08:00
Seth Chisamore
14c4dc5d53
add vbox driver support for creating transient shared folders
2012-01-27 11:53:42 -08:00
Mitchell Hashimoto
e1dbc7f9b1
Fix some puppet translation
2012-01-27 10:52:27 -08:00
Mitchell Hashimoto
5500058343
Call xpg4/bin/id on Solaris [GH-679]
2012-01-26 09:56:06 -08:00
Mitchell Hashimoto
20fa355502
Uncolorize puppet server output since it does it for us [GH-685]
2012-01-26 09:52:37 -08:00
Mitchell Hashimoto
8d6a33584f
Set the name as a separate step. [GH-669]
2012-01-25 21:16:21 -08:00
Mitchell Hashimoto
195a0d6999
Logging for host detection
2012-01-25 10:42:35 -08:00
Mitchell Hashimoto
f1dd5459f2
Properly detect Arch, Fedora, FreeBSD [GH-683]
2012-01-25 10:39:17 -08:00
Mitchell Hashimoto
0576d6e817
NFS shared folders can have the :create flag, too [GH-667]
2012-01-24 21:54:47 -08:00
Mitchell Hashimoto
e6ea1c6340
NFS shared folders can contain unexpanded guest paths
2012-01-24 21:40:35 -08:00
Mitchell Hashimoto
3cda2e48dc
Setting :auto_config to false will not configure a network. [GH-663]
2012-01-24 21:29:26 -08:00
Mitchell Hashimoto
ce2ea4ea93
Error message when kernel module is not loaded for VirtualBox [GH-677]
2012-01-24 19:30:55 -08:00
Mitchell Hashimoto
f48a2784a0
Regexp escape VM names when matching for them.
2012-01-24 17:03:55 -08:00
Mitchell Hashimoto
0dbd012d6b
Up version for dev
2012-01-24 00:19:04 -08:00
Mitchell Hashimoto
aeaf44db32
v0.9.3
2012-01-24 00:18:10 -08:00
Mitchell Hashimoto
3a5f0cefb3
Remove ANSI escape codes from SSH output
...
Note that the ANSI escape code removal is not complete,
but is fairly comprehensive in terms of the codes that
really muck with the terminal layout.
2012-01-23 19:29:07 -08:00
Mitchell Hashimoto
d1e78f791d
Remove test warnings, add ANSI escape code remover
2012-01-23 19:24:32 -08:00
Ryan Gibbons
2339f3c833
use printf instead of echo
...
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/echo.html#tag_20_37_16
2012-01-23 18:11:17 -08:00
Mitchell Hashimoto
17224e3df6
Merge pull request #675 from scoates/755499
...
ignore host-only interface if it is down
2012-01-23 17:57:17 -08:00
Mitchell Hashimoto
ae8b476639
Fix crashing issue with bridged networking [GH-673]
2012-01-23 10:05:03 -08:00
Sean Coates
755499dcf9
ignore interface if it is Ddown (not 100% sure about vbox4.0 support; please test)
2012-01-23 10:38:18 -05:00
Mitchell Hashimoto
f2eff93c38
Proper error handling of missing arguments to all box commands
2012-01-20 15:23:33 -08:00
Mitchell Hashimoto
9fce04c2cd
Test for the correct number of arguments to box add
2012-01-20 15:21:54 -08:00
Mitchell Hashimoto
4252fe94de
Up version for dev
2012-01-20 11:41:12 -08:00
Mitchell Hashimoto
3b4cf0b225
v0.9.2
2012-01-20 11:40:17 -08:00
Mitchell Hashimoto
ce365336cd
Unnecessary line of code
2012-01-20 11:36:12 -08:00
Mitchell Hashimoto
97235ee080
Clean up some impl [GH-666]
2012-01-20 11:25:39 -08:00
Jarmo Pertman
b9046a5594
enable colors on Windows when using ANSICON
2012-01-20 11:21:16 -08:00
Mitchell Hashimoto
4ead6e3f82
If there is only one bridgable interface, just use that [GH-655]
2012-01-19 21:11:42 -08:00
Mitchell Hashimoto
f022e9ee36
Fix issue where chef solo always expected "cookbooks" folder [GH-638]
2012-01-19 21:06:09 -08:00
Mitchell Hashimoto
d487e286f4
Don't merge config keys that start with __.
...
This allows config classes to store internal state somehow.
2012-01-19 20:54:09 -08:00
Mitchell Hashimoto
f87c25bac8
Provide defaults in a proper way for Chef config
2012-01-19 20:47:01 -08:00
Mitchell Hashimoto
28eddafa56
Better logging in linux guest impl
2012-01-19 20:17:10 -08:00
Mitchell Hashimoto
be97cec8b5
Allow shell expansions in shared folder guest paths again [GH-656]
2012-01-19 20:14:05 -08:00
Mitchell Hashimoto
ac48d270eb
Error if :vagrant is used as chef JSON key. [GH-661]
2012-01-19 19:48:57 -08:00
Mitchell Hashimoto
89fb684297
Add a deprecation error for `config.vm.system=` [GH-653]
2012-01-19 17:41:34 -08:00
Mitchell Hashimoto
9b4925d5de
Use ifdown instead of ifconfig down for Ubuntu/Debian
2012-01-19 17:36:29 -08:00
Mitchell Hashimoto
0d455fcf73
Get rid of nil dereference error when reading version [GH-658]
2012-01-19 17:34:06 -08:00
Mitchell Hashimoto
3f3476f323
Use symbol as a hash key for subprocess. Guarantees we always get a string back.
2012-01-19 17:24:22 -08:00
Mitchell Hashimoto
527b79853c
Log output now goes on stderr by stdout
2012-01-19 17:12:18 -08:00
Mitchell Hashimoto
e68eb1f4f3
More verbose logging for SSH
2012-01-19 17:02:18 -08:00
Mitchell Hashimoto
87b03609db
Filter clear screen character out of stderr as well
2012-01-19 15:14:11 -08:00
Ryan Gibbons
8aa1d58b33
filter the clear screen command over ssh connections
2012-01-19 16:03:59 -07:00
Mitchell Hashimoto
3db8db9cdc
Fix reference to a class that doesn't exist
2012-01-19 14:21:26 -08:00
Mitchell Hashimoto
c600d9237b
Properly merge forward_agent and other SSH configs [GH-651]
2012-01-18 18:48:07 -08:00
Mitchell Hashimoto
ce53263a11
Update version for development
2012-01-18 11:14:02 -08:00
Mitchell Hashimoto
231747cb7e
v0.9.1
2012-01-18 11:12:53 -08:00
Ryan Gibbons
a11e99cdae
Switch to using ifconfig <device> down instead of ifdown. ifdown will return non-zero status if device failed to get IP during dhcp.
2012-01-18 11:04:54 -08:00
Ryan Gibbons
cc94f1ee2c
making the same ifdown -> ifconfig change for debian
2012-01-18 11:02:35 -08:00
Mitchell Hashimoto
3ab8aaa1b0
Clarify invalid log level message [GH-645]
2012-01-18 09:40:51 -08:00
Frank Luithle
f3038a4033
Fix 'box help' subcommand for Ruby 1.8.7
...
This is related to Github issue #599 , with a similar fix.
2012-01-18 12:23:43 +01:00
Mitchell Hashimoto
8abada25b9
Fix poor variable reference in puppet server. Also colorize output
2012-01-17 21:16:52 -08:00
Mitchell Hashimoto
d675b7c83c
Replace `test?` call with proper `test` call
2012-01-17 14:43:32 -08:00
Mitchell Hashimoto
06733a070d
NFS action no longer needs to recover from anything
2012-01-17 13:37:52 -08:00
Mitchell Hashimoto
def09573c6
Up version for development
2012-01-17 13:37:36 -08:00
Mitchell Hashimoto
939a667979
v0.9.0
2012-01-17 11:32:18 -08:00
Mitchell Hashimoto
0cf619dec8
Update solaris networks API
2012-01-17 11:30:21 -08:00
Mitchell Hashimoto
f4ea1f800c
Update Arch guest to the new networks API
2012-01-17 11:25:40 -08:00
Mitchell Hashimoto
3a2546907e
Update Gentoo guest to new networks API
2012-01-17 11:17:12 -08:00
Brad Greenlee
0181b167f6
Do expand_path in FileUtils.cp, where it really matters.
2012-01-14 15:19:29 -08:00
Mitchell Hashimoto
f1d5fe27ab
Check for /etc/exports before pruning
2012-01-13 20:38:20 -08:00
Mitchell Hashimoto
8f5232c5cf
`vagrant package --base`
2012-01-13 17:55:01 -08:00
Mitchell Hashimoto
7f10c05b5b
Clean up export progress output
2012-01-13 17:46:39 -08:00
Mitchell Hashimoto
29b5414295
Improve hostname setting for Debian to be more correct [GH-574]
2012-01-13 17:08:03 -08:00
Mitchell Hashimoto
0ee501fb6b
More effective guest addition version check [GH-639]
2012-01-13 16:13:41 -08:00
Mitchell Hashimoto
1927f8ef79
No more `NFSHelpers`
2012-01-12 23:34:06 -08:00
Mitchell Hashimoto
3456bfd2fe
Warn user we're pruning exports
2012-01-12 23:33:17 -08:00
Mitchell Hashimoto
7fdbb68917
Prune NFS exports more cleanly.
2012-01-12 23:30:19 -08:00
Mitchell Hashimoto
829f64406e
Add `attempts` to chef provisioners. [GH-282]
2012-01-12 23:10:30 -08:00
Mitchell Hashimoto
22ff1bb047
Ubuntu will emit a `vagrant-mounted` event. [GH-576]
...
There will be a MOUNTPOINT variable available with this event that
will point to the shared folder that has been mounted.
2012-01-12 22:57:32 -08:00
Mitchell Hashimoto
cfd0e0c30f
Merge pull request #637 from zev/master
...
Fix chef_client variable name error for vm
2012-01-12 22:40:26 -08:00
Zev Blut
481a588bc8
Fix vm variable name to be env[:vm]
2012-01-13 15:38:35 +09:00
Mitchell Hashimoto
5630dc144d
Fix up NFS to use the new VirtualBox drivers
2012-01-12 22:19:23 -08:00
Mitchell Hashimoto
5c2bb9412d
A much cleaner way to find NFS folders to mount
2012-01-12 22:11:59 -08:00
Mitchell Hashimoto
de450f7e63
Always clean the NFS exports
2012-01-12 22:11:59 -08:00
Mitchell Hashimoto
7dc5f8ca80
Revert "Always clear NFS exports for the VM booting [GH-529]"
...
This reverts commit 70705d2861
.
2012-01-12 22:11:59 -08:00
Zev Blut
ed894ab3a3
Fix syntax error for exception message.
2012-01-13 12:56:17 +09:00
Mitchell Hashimoto
70705d2861
Always clear NFS exports for the VM booting [GH-529]
2012-01-12 18:15:53 -08:00
Mitchell Hashimoto
6d212efdbd
Fix ppk path by just... not using ppk anymore. [GH-634]
2012-01-12 18:03:35 -08:00
Mitchell Hashimoto
3834930189
Remove open-uri in http downloader [GH-635]
2012-01-12 17:53:56 -08:00
Mitchell Hashimoto
8cc162f48f
Options after `--` to `vagrant ssh` are passed through to ssh [GH-554]
2012-01-11 23:49:42 -08:00
Mitchell Hashimoto
1f02318a5e
Variable name conflict
2012-01-11 23:23:05 -08:00
Mitchell Hashimoto
a8fe342520
Arbitrary mount options can be passed to shared folders with `:extra` [GH-551]
2012-01-11 23:20:12 -08:00
Mitchell Hashimoto
14d61f61ba
The full options data is sent to mount_shared_folder
2012-01-11 23:14:04 -08:00
Mitchell Hashimoto
f0b77d2f30
Additional fixes + tests for shell expansion [GH-633]
2012-01-11 22:56:15 -08:00
Brad Greenlee
9a242ba718
Do shell expansion before doing the file test in Vagrant::Downloaders::File#prepare so that "~/file/paths" work.
2012-01-11 22:54:11 -08:00
Mitchell Hashimoto
06d4b6a4e5
Don't default config values to nil
2012-01-11 22:35:28 -08:00
Mitchell Hashimoto
5c70dd1658
Remove nil defaults
2012-01-11 22:34:36 -08:00
Mitchell Hashimoto
863ebe2d2f
Custom merging for VM config
2012-01-11 22:12:49 -08:00
Mitchell Hashimoto
b7279ec79d
Custom merging behavior for VM configuration
2012-01-11 21:35:09 -08:00
Mitchell Hashimoto
1e856f7c75
Remove unused configuration key
2012-01-11 21:30:59 -08:00
Mitchell Hashimoto
bfb52ba7dc
Top merges things in each key one by one by calling `merge`
2012-01-11 21:22:55 -08:00
Mitchell Hashimoto
d13dd482b5
Some Config::Top class tests
2012-01-11 21:09:52 -08:00
Mitchell Hashimoto
008132b3cb
Run each config proc only once
2012-01-11 20:59:21 -08:00
Mitchell Hashimoto
7c9c6e34ce
Change caching behavior of config procs for the config loader
2012-01-11 16:58:40 -08:00
Mitchell Hashimoto
43a9f0928a
Update CHANGELOG
2012-01-11 10:01:11 -08:00
Mitchell Hashimoto
fc7111734b
Clean up the Puppet provisioner a bit
2012-01-11 09:56:33 -08:00
Mitchell Hashimoto
73bff1b457
Fix up puppet provisioner a bit
2012-01-11 09:48:18 -08:00
Mitchell Hashimoto
eaf6ce7372
Verify shared folders for puppet
2012-01-11 09:29:30 -08:00
Mitchell Hashimoto
cb6020869f
Prompt for `reload` if shared folders aren't setup for Chef [GH-253]
2012-01-10 22:36:39 -08:00
Mitchell Hashimoto
bb2a473549
Added a `--provision-with` flag to specify provisioners to use. [GH-367]
2012-01-10 22:03:22 -08:00
Mitchell Hashimoto
18cdcb4330
Acceptance tests for chef solo, fixed a bug it found.
2012-01-10 21:08:43 -08:00
Mitchell Hashimoto
0c0d456db2
Add `--force` flag to `box add` [GH-631]
2012-01-10 20:37:33 -08:00
Mitchell Hashimoto
fe012e800f
Printing help due to invalid options should have error exit status
2012-01-10 20:30:18 -08:00
Mitchell Hashimoto
1aa73f7b70
Fix issue where "-c" was error checking...
2012-01-08 23:40:05 -08:00
Mitchell Hashimoto
ef37f692bd
Revert the check for duplicate Vagrantfiles.
...
This is just tricky with case sensitive/insensitive file systems.
Reverting since it doesn't seem worth it.
2012-01-08 23:15:18 -08:00
Mitchell Hashimoto
4f30a834d0
Tests for multivagrantfile being found
2012-01-08 23:04:23 -08:00
Mitchell Hashimoto
8aa4e58ea8
Check for conflicting DHCP servers
2012-01-08 20:33:12 -08:00
Mitchell Hashimoto
4e426249ed
Basic :dhcp configuration works.
2012-01-08 20:33:12 -08:00
Mitchell Hashimoto
8c00d1d652
Raise an error if multiple matching Vagrantfiles are found [GH-588]
2012-01-08 11:54:32 -08:00
Mitchell Hashimoto
89eb256f9d
Proper error handling if the shared folder cannot be created [GH-604]
2012-01-08 11:29:52 -08:00
Mitchell Hashimoto
9cb4597a27
:create flag on shared folders will create on host if it doesnt exist [GH-604]
2012-01-08 11:23:43 -08:00
Mitchell Hashimoto
ba5cd9b88a
Windows host
2012-01-08 11:14:01 -08:00
Mitchell Hashimoto
8d32002c02
Don't clear NFS exports on expected failure [GH-577]
2012-01-07 22:01:44 -08:00
Mitchell Hashimoto
27372ef313
Namespace ssh-config template
2012-01-07 21:56:14 -08:00
Mitchell Hashimoto
acbc0d4b28
Namespace provisioner templates
2012-01-07 21:55:08 -08:00
Mike Fiedler
fbf5237de2
missing require tempfile, and fixed a typo
2012-01-07 21:18:55 -08:00
Mitchell Hashimoto
d07f0f8dd2
Support VirtualBox 4.0
2012-01-07 21:16:40 -08:00
Mitchell Hashimoto
a94cf520c6
Log4r levels need to be defined before we can check for them
2012-01-07 21:16:40 -08:00
Mitchell Hashimoto
7954d4cba8
Driver forwarding to 4.1 works properly
2012-01-07 21:16:40 -08:00
Mitchell Hashimoto
5157cccaef
Delegate all API methods to the proper version driver
2012-01-07 21:16:40 -08:00
Mitchell Hashimoto
767ee2509e
VirtualBox base class for the driver.
2012-01-07 21:16:40 -08:00
Mitchell Hashimoto
cab625c06c
We should verify VirtualBox is detected before looking for the old VM
2012-01-07 21:16:28 -08:00
Mike Fiedler
e05bfb7efc
missing bracket closure fails rake tests
2012-01-07 21:16:28 -08:00
Mitchell Hashimoto
87b1a6660d
Handle invalid log levels more gracefully
2012-01-07 21:16:22 -08:00
Mitchell Hashimoto
a7bde74cf3
VirtualBox driver can handle Windows-style newlines
2012-01-07 21:16:09 -08:00
Mitchell Hashimoto
4b52c39733
More robust VBOX_INSTALL_PATH handling on Windows
2012-01-07 21:15:57 -08:00
Mitchell Hashimoto
75539c2abe
Default host class is the base class
2012-01-07 13:13:17 -08:00
Mitchell Hashimoto
d9f5cbce3e
Initialize the connection ivar for SSH
2012-01-07 11:57:46 -08:00
Mitchell Hashimoto
7fce25e858
Show `attempting graceful shutdown` message from action, not guest
2012-01-07 11:44:53 -08:00
Mitchell Hashimoto
0f580fd2c0
Re-use SSH connection
2012-01-07 11:38:27 -08:00
Mitchell Hashimoto
7d56dbb755
Uploaded files now use temporary files rather than StringIO
2012-01-06 21:42:25 -08:00
Mitchell Hashimoto
275ddae646
Convert everything to the new SSH API
2012-01-06 20:07:32 -08:00
Mitchell Hashimoto
7bdbec4229
Start switching the old SSH API to the new one
2012-01-06 20:07:32 -08:00
Mitchell Hashimoto
d094432238
No longer require `forwarded_port_key` setting, its gone
2012-01-06 20:07:32 -08:00
Mitchell Hashimoto
faaa763d50
SSH connect is now SSH `exec`
2012-01-06 20:07:32 -08:00
Mitchell Hashimoto
19c1340e40
Vagrant::SSH no longer handles actual communication with the VM
2012-01-06 20:07:32 -08:00
Mitchell Hashimoto
8577935121
Syntaxerror
2012-01-06 20:07:31 -08:00
Mitchell Hashimoto
3ffa533011
ssh-config now uses the new ssh_info method
2012-01-06 20:07:31 -08:00
Mitchell Hashimoto
7ed9f8bd73
SSH communication should inherit from Base
2012-01-06 20:07:31 -08:00
Mitchell Hashimoto
47a368fbfd
VM raises SSHPortNotDetected if ssh_info can't get the port
...
Also, I updated the wording on that error message a bit since it
turns out that it is possible through user error that there will
be no SSH port.
2012-01-06 20:07:31 -08:00
Mitchell Hashimoto
acaabd5aa3
Remove forwarded_port_key/destination from config, replace with guest_port
2012-01-06 20:07:31 -08:00
Mitchell Hashimoto
00a31ff27b
Communication abstraction. Started SSH.
2012-01-06 20:07:31 -08:00
Mitchell Hashimoto
396beb9faf
Require tempfile in shell provisioner
2012-01-06 17:36:51 -08:00
Mitchell Hashimoto
67aa4c3819
Get rid of unavailable API
2012-01-05 23:12:28 -08:00
Mitchell Hashimoto
586f506eff
Fix a terrible typo that causes vagrant ssh to fail
2012-01-05 23:08:20 -08:00
Mitchell Hashimoto
d0c85afd47
IdentityFile works again in ssh-config [GH-626]
2012-01-05 23:01:35 -08:00
Mitchell Hashimoto
79e8a6ef0a
Port forwarding definitions with the same guest port will override earlier
2012-01-05 22:58:38 -08:00
Mitchell Hashimoto
e85095d1bf
Subprocess uses readpartial on IO for Windows [GH-610]
...
Windows doesn't support read_nonblock.
2012-01-05 23:48:30 -08:00
Mitchell Hashimoto
467542ef8d
Use VBOX_INSTALL_PATH on Windows to find VBoxManage [GH-609]
2012-01-05 23:12:17 -08:00
Mitchell Hashimoto
323663c4fb
Handle MacPorts strange VirtualBox version formatting [GH-619]
2012-01-04 21:46:46 -08:00
Mitchell Hashimoto
fc3bb6ca92
Code style for RedHat network configurations
2012-01-04 21:43:14 -08:00
Mike Fiedler
a04fce880c
Changes to enable rhel/centos-style bridged & hostonly networking
2012-01-04 21:39:36 -08:00
Mitchell Hashimoto
026a551496
`vagrant ssh -p` is now plain mode
2012-01-04 21:28:30 -08:00
Mitchell Hashimoto
a6c3551064
Merge pull request #621 from bitprophet/clean-ssh-option
...
Allow 'vagrant ssh' to strip most non-port options.
2012-01-04 21:20:12 -08:00
Mitchell Hashimoto
ef1037ff7c
Cleanup puppet provisioner even more
2012-01-04 19:26:25 -08:00
Mitchell Hashimoto
36a59a89fc
Merge pull request #620 from LeftyBC/master
...
Fixup for variable scoping in the puppet provisioner
2012-01-04 19:10:35 -08:00
Elliot Pahl
9c89ed9c06
Fix vm state check in ssh-config.
2012-01-04 19:08:19 -08:00
Colin Moller
0466d76bd8
Merge remote branch 'mitchellh/master'
2012-01-04 16:50:22 -08:00
Mitchell Hashimoto
09e11ae792
Fix forwarded port map which still references "name"
2012-01-04 16:47:03 -08:00
Colin Moller
b572b7dbd6
Merge remote branch 'mitchellh/master'
2012-01-04 16:21:12 -08:00
Mitchell Hashimoto
175d95fcf1
Fix regex syntax for 1.8
2012-01-04 16:18:11 -08:00
Jeff Forcier
e646df5655
Tweak a variable name & help string
2012-01-04 12:47:53 -08:00
Jeff Forcier
72b609f0a6
Allow 'vagrant ssh' to strip most non-port options.
...
Adds a -p flag to 'vagrant ssh' which strips out username, private key
args, allowing the local user's ssh settings to take full effect.
2012-01-04 12:37:23 -08:00
Colin Moller
0f5f607767
Fix scoping for env and config.vm variables in the puppet provisioner.
2012-01-04 12:28:18 -08:00
Mitchell Hashimoto
a1b66f82aa
Consistently generate names for forwarded ports.
...
To do this, I convert the ports to base 32 strings in the format
of "guestport-hostport." This makes a consistent mapping we can use
to look up if the forwarded port is set.
2012-01-03 10:34:35 -08:00
Mitchell Hashimoto
b45286f780
Don't bother enabling/configuring network adapters if there are none
2012-01-03 10:24:31 -08:00
Mitchell Hashimoto
2d1ed88bcd
Forwarded ports no longer require a name paramter
2012-01-03 10:22:42 -08:00
Mitchell Hashimoto
aac9bb5ec5
Make adapter 1-based for forwarded ports as well
2012-01-03 10:11:07 -08:00
Mitchell Hashimoto
7982f01f2e
Check for adapter collisions
2012-01-03 09:34:32 -08:00
Mitchell Hashimoto
20edb5d05a
Error if no available network adapters are found
2012-01-03 08:01:26 -08:00
Mitchell Hashimoto
09945fe4f9
Better documentation and error messages for unsupported guest features
2012-01-03 07:50:01 -08:00
Mitchell Hashimoto
99d3565132
Delete old networking actions
2012-01-02 19:53:29 -08:00
Mitchell Hashimoto
97f7fa633d
Re-implement how networking is done internally
2012-01-02 19:51:38 -08:00
Mitchell Hashimoto
76a77432b8
Clear all network adapters during the boot process
2012-01-01 22:02:30 -08:00
Mitchell Hashimoto
22d042cb94
Vagrant now asks what adapter to bridge to
2012-01-01 00:05:47 -08:00
Mitchell Hashimoto
567c09df21
Allow a MAC address to be specified for bridges
2011-12-31 19:13:51 -08:00
Mitchell Hashimoto
c48a31d6bd
Fix template paths for other guests
2011-12-31 19:08:56 -08:00
Mitchell Hashimoto
474ac3a63d
Enabling bridged networks on Debian
2011-12-31 11:53:04 -08:00
Mitchell Hashimoto
42883cbd20
Bridged networking basics.
2011-12-31 11:35:09 -08:00
Mitchell Hashimoto
8f3a7ce22d
Rename Network action to HostOnlyNetwork
2011-12-31 01:04:06 -08:00
Mitchell Hashimoto
f7125b1dd7
Default host only adapters to #1 again
2011-12-31 00:55:37 -08:00
Mitchell Hashimoto
77b915f06a
Logging, and prepare code to automatically find next available adapter
2011-12-31 00:34:08 -08:00
Mitchell Hashimoto
b36e3c447e
Add a deprecation error for the old style of configuring host only networks
2011-12-30 23:39:16 -08:00
Mitchell Hashimoto
b5b3805157
Add validation once again for host only networks
2011-12-31 10:55:37 +09:00
Mitchell Hashimoto
c64f5e8d05
Refactor the Network action a bit
2011-12-31 05:03:17 +09:00
Mitchell Hashimoto
3f0bd6def4
Fix regex warning for Ruby 1.8.7
2011-12-31 04:22:44 +09:00
Mitchell Hashimoto
b66755cf26
Proper number of arguments for Puppet provisioner
2011-12-31 04:21:17 +09:00
Mitchell Hashimoto
0d2cf4bbe7
Upgrade to ChildProcess 0.2.4 for LaunchError
2011-12-26 19:55:10 -08:00
Mitchell Hashimoto
7e4d652702
Make export in general VBoxManage friendly
2011-12-26 19:06:44 -08:00
Mitchell Hashimoto
fbe984b32d
Check for package files before any exports or anything [GH-597]
2011-12-26 18:48:38 -08:00
Mitchell Hashimoto
6a1864011d
Require things as they're needed
2011-12-26 18:36:18 -08:00
Mitchell Hashimoto
ab0276c4a9
VM::Modify no longer exists
2011-12-26 18:35:19 -08:00
Mitchell Hashimoto
e0998b0b0f
Use proper UI with VM
2011-12-26 18:14:09 -08:00
Mitchell Hashimoto
4428daf344
A regex string can be passed to commands in Multi-VM
2011-12-26 18:12:02 -08:00
Mitchell Hashimoto
8f522225a1
Fix issue that could cause config loader to fail if no block given to a subvm
2011-12-26 18:07:39 -08:00
Mitchell Hashimoto
ad7f4c79ad
Make requiring a single VM target in a command more DRY
2011-12-26 17:59:18 -08:00
Mitchell Hashimoto
0887a18079
Make some fixes to get tests passing on Ruby 1.8.7
2011-12-26 17:45:55 -08:00
Mitchell Hashimoto
fd331ee785
Util::Busy calls the callbacks in reverse order
2011-12-26 17:03:29 -08:00
Mitchell Hashimoto
bfc85d7f14
Handle interrupts well with VirtualBox.
2011-12-26 17:00:41 -08:00
Mitchell Hashimoto
f65a6c3c6f
`vagrant ssh -c` stderr now goes to stderr on the host as well
2011-12-26 10:03:12 -08:00
Mitchell Hashimoto
e07280593d
`vagrant ssh -c` will now exit with the same exit status of the command [GH-598]
2011-12-26 09:58:10 -08:00
Mitchell Hashimoto
72b249fd19
Do port forwarding threshold check in the `call` method
2011-12-25 15:36:15 -08:00
Mitchell Hashimoto
ca938f041c
Check currently forwarded ports when looking for collisions [GH-606]
2011-12-25 13:13:01 -08:00
Mitchell Hashimoto
81ad053f8a
Check for port collisions after clearing forwarded ports on `up`
2011-12-25 10:18:49 -08:00
Mitchell Hashimoto
d80ff0a27f
Pull out port collision detection/correction into the CheckPortCollision middleware
2011-12-25 10:13:08 -08:00
Mitchell Hashimoto
e870d1b29e
Discarding state works with VBoxManage
2011-12-25 09:53:54 -08:00
Mitchell Hashimoto
76f605f08d
Nice error message if port collisions are detected on `resume` [GH-602]
2011-12-25 09:48:49 -08:00
Mitchell Hashimoto
cc9abc8b9b
Fix up some subprocess comments
2011-12-22 21:55:57 -08:00
Mitchell Hashimoto
c0fabbe2bd
Fix interrupted? call in boot
2011-12-22 21:50:20 -08:00
Mitchell Hashimoto
963bdff9fd
Use Vagrant::Util::Subprocess for acceptance tests
2011-12-22 21:46:43 -08:00
Mitchell Hashimoto
b72b70a845
DataStore: Remove the file_path check in commit
2011-12-22 21:20:31 -08:00
Mitchell Hashimoto
40fdab3de8
DataStore tests and slight modifications
2011-12-22 21:18:59 -08:00
Mitchell Hashimoto
40689b556b
Logging in the DataStore class
2011-12-22 20:46:03 -08:00
Mitchell Hashimoto
3cd262ed75
Unit tests for Vagrant::Action::Builder
2011-12-22 20:17:45 -08:00
Mitchell Hashimoto
9f498ccb06
Subprocess now works properly with Ruby 1.8.7
2011-12-22 16:22:41 -08:00
Mitchell Hashimoto
5e5e0f69dc
`vagrant ssh` works again
2011-12-22 13:48:22 -08:00
Mitchell Hashimoto
dfeafa3776
Fix halt issues and acceptance test associated with it
2011-12-22 13:38:30 -08:00
Mitchell Hashimoto
36632c4bb7
Handle the case properly where the VM in `.vagrant` doesn't exist anymore
2011-12-22 13:03:08 -08:00
Mitchell Hashimoto
3eede78876
Get rid of 64-bit Windows error since it should work now
2011-12-22 12:51:20 -08:00
Mitchell Hashimoto
e31ef01679
NAT checking for forwarded ports
2011-12-22 11:47:52 -08:00
Mitchell Hashimoto
1e21fdd67a
Do a block_given check on import so you can call it w/o a block
2011-12-22 11:31:47 -08:00
Mitchell Hashimoto
698ad0af7e
Import progress works again
2011-12-22 11:29:58 -08:00
Mitchell Hashimoto
4093e79027
Removed deprecation notice for chef_server to chef_client
2011-12-21 23:27:43 -08:00
Mitchell Hashimoto
ecbf7df859
Host only networks now work with VBoxManage
2011-12-21 22:27:06 -08:00
Mitchell Hashimoto
79460f6122
Subprocess: Check if data is empty after the process exits as well
2011-12-21 22:12:22 -08:00
Mitchell Hashimoto
271c3827a1
Subprocess: catch any stdout/stderr left over after process exits
2011-12-21 21:58:23 -08:00
Mitchell Hashimoto
63720cc750
Fix reload with VBoxManage
2011-12-21 16:48:19 -08:00
Mitchell Hashimoto
a3395f94ab
Catch and handle customization errors
2011-12-21 16:37:59 -08:00
Mitchell Hashimoto
e1d0ce19ce
Customizations are back in!
2011-12-21 16:25:58 -08:00
Mitchell Hashimoto
306945dd26
Nice error messages if VBoxManage command fails
2011-12-21 15:41:14 -08:00
Mitchell Hashimoto
0aae0dd588
Box verification works with VBoxManage
2011-12-21 15:34:51 -08:00
Mitchell Hashimoto
d030c62820
Remove unused classes from autoload
2011-12-21 15:25:20 -08:00
Mitchell Hashimoto
177eb828af
Remove customize action, this will need rethinking
2011-12-21 15:24:43 -08:00
Mitchell Hashimoto
7a70755362
Destroying unused network interfaces via VBoxManage
2011-12-21 15:17:10 -08:00
Mitchell Hashimoto
d2e33768f3
CleanMachineFolder action works with VBoxManage
2011-12-21 14:45:14 -08:00
Mitchell Hashimoto
4c7059eaf6
Remove virtualbox dep
2011-12-21 14:36:51 -08:00
Mitchell Hashimoto
8eb1770b9d
Fix issue where we may not get the full output in a subprocess
2011-12-21 14:28:43 -08:00
Mitchell Hashimoto
d5981978a1
Resuming works better
2011-12-21 14:15:03 -08:00
Mitchell Hashimoto
a6e5078e4b
VM suspending works
2011-12-21 14:12:35 -08:00
Mitchell Hashimoto
8360bcf61b
Fix guest loading w/ VBoxManage
2011-12-21 13:54:51 -08:00
Mitchell Hashimoto
9cb0578c64
VM halt works.
2011-12-21 13:41:10 -08:00
Mitchell Hashimoto
48ea8173c6
Lots more VBoxManage
2011-12-21 13:37:59 -08:00
Mitchell Hashimoto
7527f6b7b6
Check for guest additions right after import
2011-12-21 12:11:48 -08:00
Mitchell Hashimoto
a39df9f150
Forwarded ports
2011-12-20 22:28:47 -08:00
Mitchell Hashimoto
c59defa7e8
Drivers now take a UUID
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
a8e4e62264
Make more things VBoxManage compatible
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
96868e5d29
Import and destroy work with the new driver interface
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
2de7a1424d
Load VirtualBox VM in the VM class
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
9debf5abe9
Attach a driver to each VM. Use that to detect VirtualBox.
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
ee389c33f7
`vagrant --help` now works for Ruby 1.8.7 [GH-599]
2011-12-20 16:28:45 -08:00
Mitchell Hashimoto
6a191f968c
Fix autoload typo for redhat guest [GH-600]
2011-12-20 16:27:51 -08:00
Mitchell Hashimoto
f9b3e89373
Enable provisioning by default [GH-601]
2011-12-20 16:27:08 -08:00
Mitchell Hashimoto
a8f5ed1863
Require vagrant environments for some commands.
2011-12-18 13:26:15 -08:00
Mitchell Hashimoto
98df762f8c
`vagrant init` uses new OptParse based CLI
2011-12-17 21:06:00 -08:00
Mitchell Hashimoto
1770ad1ee5
"provision.enabled" is once again honored. [GH-591]
2011-12-17 20:28:45 -08:00
Mitchell Hashimoto
c2e3a3050a
Ruby 1.8.7 compatibility
2011-12-17 20:22:46 -08:00
Mitchell Hashimoto
9bdff4c507
Styling
2011-12-17 19:53:57 -08:00
Mitchell Hashimoto
e29c5436e1
Box commands
2011-12-17 19:52:48 -08:00
Mitchell Hashimoto
780722386b
`vagrant status`
2011-12-17 17:36:11 -08:00
Mitchell Hashimoto
1176c65138
`vagrant ssh-config`
2011-12-17 17:29:52 -08:00
Mitchell Hashimoto
e34f0a8af7
`vagrant ssh`
2011-12-17 17:24:02 -08:00
Mitchell Hashimoto
19adc3189d
`vagrant package`
2011-12-17 16:58:54 -08:00
Mitchell Hashimoto
bdc39aa2e0
Suspend command
2011-12-17 12:04:35 -08:00
Mitchell Hashimoto
91d19b91e4
Improved help output for `vagrant` cli
2011-12-17 12:02:19 -08:00
Mitchell Hashimoto
a327eadd5f
Fix a nomethoderror on a nil
2011-12-17 11:54:21 -08:00
Mitchell Hashimoto
c5ec4b4a30
Provision, reload, resume
2011-12-17 11:53:26 -08:00
Mitchell Hashimoto
6c7e88c3ec
`vagrant halt`
2011-12-17 11:14:56 -08:00
Mitchell Hashimoto
7a76fd7e05
Remove the 0.6.0 upgrade command. We're far passed that :)
2011-12-17 11:11:02 -08:00
Mitchell Hashimoto
45d07a8382
Remove old Thor base classes
2011-12-17 11:10:42 -08:00
Mitchell Hashimoto
e71007d47e
`vagrant destroy`
2011-12-17 11:05:49 -08:00
Mitchell Hashimoto
b292008f3b
Change parse_options a bit to automatically add help and detect invalid options
2011-12-17 09:25:46 -08:00
Mitchell Hashimoto
43cadfe830
`vagrant up`
2011-12-17 09:14:05 -08:00
Mitchell Hashimoto
7191a54ed7
Print help and exit on "-h"
2011-12-17 08:18:43 -08:00
Mitchell Hashimoto
a4a77dc420
Remove the old version command.
2011-12-16 23:39:49 -08:00
Mitchell Hashimoto
27491b554c
Remove thor from requirements. Start revamping Vagrant::CLI
2011-12-16 23:34:30 -08:00
Mitchell Hashimoto
5f567f30d8
Provisioner output is now colorized based on stdout/stderr [GH-595]
2011-12-16 17:55:12 -08:00
Mitchell Hashimoto
f37778c848
Don't output json_class with the config json
2011-12-16 17:38:19 -08:00
Mitchell Hashimoto
7157bd9cdb
Re-namespace messages for systems to the vagrant.guest
2011-12-15 21:07:43 -08:00
Mitchell Hashimoto
1fcca71ce9
Re-namespace all systems to the Vagrant::Guest module
2011-12-15 21:05:19 -08:00
Mitchell Hashimoto
5fe50c8b5d
Change config.vm.system to config.vm.guest. Rename internals.
2011-12-15 20:55:16 -08:00
Mitchell Hashimoto
eda286b476
Config classes are registered via a registry now
2011-12-15 20:32:33 -08:00
Mitchell Hashimoto
7ab6ab31f8
Another tweak to chef to get it to work with new system
2011-12-14 23:37:47 -08:00
Mitchell Hashimoto
345ee35e16
When import recovers, don't validate when calling destroy
2011-12-14 23:35:46 -08:00
Mitchell Hashimoto
a23ebf7220
Fix chef configuration
2011-12-14 23:31:21 -08:00
Mitchell Hashimoto
e602af8c3a
Convert chef provisioners to new format
2011-12-14 23:19:46 -08:00
Mitchell Hashimoto
e5303a82e0
Autoload provisioners.
2011-12-14 22:49:14 -08:00
Mitchell Hashimoto
b428072bb5
Provisioners use the registry. Cleaned up the way config classes are searched for.
2011-12-14 22:43:45 -08:00
Mitchell Hashimoto
9e4475cb77
Test running shell scripts inline
2011-12-14 19:02:10 -08:00
Mitchell Hashimoto
6dbade0fc6
Get shell provisioning working again, acceptance test to prove it
2011-12-13 23:45:56 -08:00
Mitchell Hashimoto
ee33588d10
Clean up system loading quite a bit
2011-12-12 00:03:28 -08:00
Mitchell Hashimoto
c66d846cb7
Fix issue which caused NFS to not work with new config
2011-12-11 23:30:17 -08:00
Mitchell Hashimoto
fd9b752938
Make host class available to all actions
2011-12-11 23:27:53 -08:00
Mitchell Hashimoto
daeb7ea726
Send new `id` element into NFS methods for hosts
2011-12-11 23:26:04 -08:00
Mitchell Hashimoto
cdc01c449d
Re-order things in vagrant.rb slightly
2011-12-11 23:24:23 -08:00
Mitchell Hashimoto
668bab0ba9
Better host loading scheme
2011-12-11 23:22:44 -08:00
Mitchell Hashimoto
b8d40ea463
Registry is enumerable
2011-12-11 18:29:42 -08:00
Mitchell Hashimoto
e201d9cacf
Rename action registry to just Vagrant::Registry
2011-12-11 18:22:06 -08:00
Mitchell Hashimoto
ad03163eff
Tweak timeouts so SSh detection works
2011-12-11 16:41:51 -08:00
Mitchell Hashimoto
48f0a50e61
More logging in SSH class
2011-12-11 16:39:36 -08:00
Mitchell Hashimoto
e5c2f38d7c
Fix validate calls to provisioners
2011-12-11 16:33:50 -08:00
Mitchell Hashimoto
05ae297fd2
Copy insecure private key to user owned directory [GH-580]
2011-12-11 16:32:25 -08:00
Mitchell Hashimoto
98b8d858c4
Error message for improperly packaged boxes [GH-198]
2011-12-10 21:49:00 -08:00
Mitchell Hashimoto
7d8f6e511b
Fix syntax error
2011-12-10 21:30:54 -08:00
Mitchell Hashimoto
f44f1831ef
Special error message if SCP is unavailable [GH-568]
2011-12-10 21:30:04 -08:00
Mitchell Hashimoto
98448d5557
Merge branch '089'
2011-12-10 21:11:36 -08:00
Mitchell Hashimoto
b67dc75dfc
v0.8.10
2011-12-10 21:08:13 -08:00
Mitchell Hashimoto
00c40f82b1
Return true on ssh up?
2011-12-10 21:07:45 -08:00
Mitchell Hashimoto
c4eeda2025
v0.8.9
2011-12-10 20:43:20 -08:00
Mitchell Hashimoto
b65cb54636
Remove the "echo hello" check because it does nothing.
2011-12-10 20:42:34 -08:00
Hedgehog
a4423270f7
sleeping with the fiSSHes?
2011-12-10 20:33:12 -08:00
Mitchell Hashimoto
99b43fbeb8
Use shutdown instead of `halt` [GH-575]
2011-12-10 20:29:58 -08:00
Mitchell Hashimoto
e9f8e4dc91
Revert 8bb6d375
since it actually didn't help at all.
2011-12-10 20:23:52 -08:00
Mitchell Hashimoto
5762775998
Reorganize little methods and remove unused methods
2011-12-10 20:22:44 -08:00
Mitchell Hashimoto
4006befe7f
Trivial whitespace change
2011-12-10 20:20:01 -08:00
Mitchell Hashimoto
069a1c1348
Try to actually create directory before showing home directory error
2011-12-10 17:37:18 -08:00
Mitchell Hashimoto
d9e2c8b788
Raise a nice error if home directory is not accessible
2011-12-10 17:14:07 -08:00
Mitchell Hashimoto
d05c6f9d61
Get regression working again
2011-12-10 16:38:01 -08:00
Mitchell Hashimoto
baba6af4ff
Resource prefixes in UI output work
2011-12-10 16:17:09 -08:00
Mitchell Hashimoto
40b9254d5a
Environment reloading works
2011-12-10 16:07:28 -08:00
Mitchell Hashimoto
a1d3f8b4dd
Fix typo to get networking working again
2011-12-10 14:27:59 -08:00
Mitchell Hashimoto
448e9429ac
Get rid of broken env.ui calls in actions
2011-12-10 14:23:22 -08:00
Mitchell Hashimoto
697fb7eaaf
Get rid of more env.env calls
2011-12-10 14:22:04 -08:00
Mitchell Hashimoto
9e58e45c69
Fix resume action to work properly
2011-12-10 14:18:40 -08:00
Mitchell Hashimoto
71c39126e5
Fix suspend action to work again
2011-12-10 14:15:18 -08:00
Mitchell Hashimoto
2a7f0d8a85
Return nil if no root path to determine dotfile
2011-12-10 13:56:34 -08:00
Mitchell Hashimoto
6093dcc26d
Fix systems dependence on env
2011-12-10 13:44:45 -08:00
Mitchell Hashimoto
ea7caebe02
Setup the default name for the VM
2011-12-10 13:28:03 -08:00
Mitchell Hashimoto
f2666a9b74
Config validation is back in.
2011-12-10 13:21:45 -08:00
Mitchell Hashimoto
5c6ca57409
Throw an error if a box already exists when calling box.add
2011-12-10 13:09:03 -08:00
Mitchell Hashimoto
2f85fe1d4f
Return proper dotfile path
2011-12-10 13:02:00 -08:00
Mitchell Hashimoto
93e5bc3969
Tweak actions for new runner
2011-12-10 12:52:42 -08:00
Mitchell Hashimoto
b4c5b854e2
SSH working with new changes
2011-12-10 12:49:35 -08:00
Mitchell Hashimoto
bfd93eef4e
Come a lot farther in getting `up` to work again
2011-12-10 09:54:23 -08:00
Mitchell Hashimoto
1758970a53
Fixing up VM actions to try to get them working again
2011-12-09 20:39:08 -08:00
Mitchell Hashimoto
739d5ffb5f
Lazy load attributes for runners. Get box repackage working.
2011-12-09 20:24:34 -08:00
Mitchell Hashimoto
d9321ed4d4
Box destroy works again
2011-12-09 18:06:34 -08:00
Mitchell Hashimoto
d92f3d8c6d
Box add works again with new env stuff
2011-12-09 17:33:30 -08:00
Mitchell Hashimoto
b878f1bd66
class => module Action
2011-12-09 17:23:27 -08:00
Mitchell Hashimoto
3edb9c2269
Move all autoloads for actions into action.rb
2011-12-09 17:19:13 -08:00
Mitchell Hashimoto
56663b5952
Remove dependence on Vagrant::Environment on downloaders
2011-12-09 15:18:43 -08:00
Mitchell Hashimoto
0304f78a84
Fix to runner to get interrupts working again
2011-12-09 14:56:56 -08:00
Mitchell Hashimoto
f261c0571f
Modify box download action to work with new runnerx
2011-12-09 14:55:24 -08:00
Mitchell Hashimoto
3c8261f4ac
Add :ui to the globals for the action runner
2011-12-09 14:50:42 -08:00
Mitchell Hashimoto
b31c3d458c
Action runner supports global parameters
2011-12-09 14:44:43 -08:00
Mitchell Hashimoto
bbb8f0ac2c
Integrate new action runner/registry into Vagrant::Environment
2011-12-09 14:39:39 -08:00
Mitchell Hashimoto
daf711fd80
Separate Vagrant::Action into Runner and Registry
2011-12-09 14:22:03 -08:00
Mitchell Hashimoto
5bfcbcba66
Remove step stuff. Failed experiment for now. Too radical for point release.
2011-12-09 13:40:49 -08:00
Mitchell Hashimoto
b5ae4672b7
Raise exception in edge case
2011-12-09 13:30:04 -08:00
Mitchell Hashimoto
2c73de0043
The proper enter/exit sequence is called for multisteps
2011-12-06 18:45:37 -08:00
Mitchell Hashimoto
822226cae4
MultiStep does not allow composing steps that do not work together
2011-12-06 18:31:07 -08:00
Mitchell Hashimoto
73761dc92a
MultiStep should do input/output validation
2011-12-06 18:19:18 -08:00
Mitchell Hashimoto
7d3746b292
Multistep can now take parameters from any arbitrary step prior.
2011-12-06 09:46:57 -08:00
Mitchell Hashimoto
c5eae41fd8
Revamp Step to be more like a Python with-context
2011-12-05 21:05:41 -08:00
Mitchell Hashimoto
683bbdaa3c
Implement multistep
2011-12-04 18:09:18 -08:00
Mitchell Hashimoto
49d299956f
Add the "Step" abstraction
2011-12-04 17:14:21 -08:00
Mitchell Hashimoto
833dbf8fc4
Remove box dependence on env
2011-12-04 14:06:05 -08:00
Mitchell Hashimoto
8801bc7b1b
Starting to revamp BoxCollection to not depend on env
2011-12-04 11:39:44 -08:00
Mitchell Hashimoto
cf7a5db7e7
More environment.rb cleanup
2011-12-04 11:24:18 -08:00
Mitchell Hashimoto
f8d628148c
Remove all environment `parent` references
2011-12-04 11:16:55 -08:00
Mitchell Hashimoto
e2977e8948
Make VM names symbols again, since they're accessed often.
2011-12-03 19:33:44 -08:00
Mitchell Hashimoto
b61d9a6d3d
load_vms. Broke so many things.
...
I've changed Vagrant::VM to be slightly more in line with what I
imagined. However, doing this change has definitely broken _everything_.
We now slowly must cobble back together based on this new API.
2011-12-03 19:30:42 -08:00
Mitchell Hashimoto
1921ce17e8
Propery load box configuration
2011-12-03 19:17:08 -08:00
Mitchell Hashimoto
99982fb26e
VM-specific configuration now works.
2011-12-03 19:05:50 -08:00
Mitchell Hashimoto
73a672cff1
load_config! is kind of working again.
...
Specifically: Global configuration load appears to be working. More
unit tests should reveal if proper VM configuration is loading.
2011-12-03 18:31:17 -08:00
Mitchell Hashimoto
cb5f6b57f4
Remove Vagrant 0.8.0 transition code.
2011-12-03 18:11:24 -08:00
Mitchell Hashimoto
02cc1447dc
Configuration files are only loaded once
2011-12-03 17:42:16 -08:00
Mitchell Hashimoto
15c56a1f4c
Configuration loads. Lots of refactor to do still.
2011-12-03 17:29:28 -08:00
Mitchell Hashimoto
1a8c4199b2
Introduce Config::Loader
...
Config::Loader will be the new class responsible for loading configuration
and replaces the previous dual-role "Vagrant::Config" played. While this
commit is very early-stage, once this new architecture is flushed out, it
will make loading, using, and extending configuration much easier and cleaner.
Additionally, I believe this will help post Vagrant 1.0 if multi-language
configuration is implemented.
2011-12-03 17:12:48 -08:00
Mitchell Hashimoto
e38e3cc652
Move VAGRANT_LOG logic into vagrant.rb so VAGRANT_LOG is always available
2011-12-03 17:12:07 -08:00
Mitchell Hashimoto
1355487a04
Environment UI class can now be set through the environment init
2011-12-03 16:07:34 -08:00
Mitchell Hashimoto
cb8d00b55f
Move the VM accessible check into more relevant actions
2011-12-03 15:37:13 -08:00
Mitchell Hashimoto
c37f16b754
Remove final logger reference
2011-12-01 21:56:56 -08:00
Mitchell Hashimoto
dd4acb1e3d
Convert remaining logger calls outside of environment to log4r
2011-12-01 21:56:56 -08:00
Mitchell Hashimoto
e4c0a0bf0a
Convert warden to use log4r
2011-12-01 21:56:56 -08:00
Mitchell Hashimoto
0a47c9d6fa
Make log4r a first class dependency as we start to switch to it
2011-12-01 21:56:56 -08:00
Mitchell Hashimoto
282bf37350
Get the tests passing
2011-12-01 21:56:55 -08:00
Mitchell Hashimoto
6ea3335de6
DRY up the new UI class a bit
2011-12-01 21:56:55 -08:00
Mitchell Hashimoto
d84ec88fae
Add color to the colored UI
2011-12-01 21:56:55 -08:00
Mitchell Hashimoto
af56c274c0
Add the "Basic" UI for non-colored messages
2011-12-01 21:56:55 -08:00
Mitchell Hashimoto
f519434285
Rip out Thor::Shell
2011-12-01 21:56:55 -08:00
Mitchell Hashimoto
9c59f0f357
Upgrade version for development on 0.9.0
2011-12-01 21:56:55 -08:00
Mitchell Hashimoto
d4da278f28
v0.8.8
2011-12-01 21:53:54 -08:00
Mitchell Hashimoto
723b3c06fb
Append folder name to chef solo cookbooks [GH-511]
2011-11-30 14:54:55 -08:00
Mitchell Hashimoto
27c83aef16
Make the default path to encrypted data bags `/tmp` [GH-512]
2011-11-30 14:26:13 -08:00
Mitchell Hashimoto
24895f2479
Update CHANGELOG
2011-11-30 12:52:05 -08:00
Michael Dellanoce
a221235307
Remove windows drive letter from path if running a chef solo provisioner on a Windows guest
2011-11-30 12:51:04 -08:00
Mitchell Hashimoto
c1a0b97067
Only check non-OSE versions for checking guest addition versions [GH-514]
2011-11-30 12:46:13 -08:00
Mitchell Hashimoto
8bb6d375f1
Use test SSH commands for additional verification SSH is "up"
2011-11-25 23:48:00 -07:00
Mitchell Hashimoto
15efdf5a1a
Remove complicated Net::SSH session caching... thing.x
2011-11-25 23:20:16 -07:00
Mitchell Hashimoto
331b5c20a8
Update CHANGELOG for GH-502
2011-11-24 21:58:40 -07:00
Darrin Wortlehock
4c01a87ab3
Adding support for 'no_proxy' environment variable to suppress proxy in http downloader
2011-11-24 21:54:35 -07:00
Mitchell Hashimoto
f6055f8711
Merge remote-tracking branch 'ody/debian/master/honor_config_setting'
2011-11-24 21:49:30 -07:00
John Watson
8a0a1bddb5
Proper support for NFS in FreeBSD
2011-11-24 21:45:23 -07:00
Eriksen Costa
82c679b9a5
Kernel.exec still failing in OS X Leopard [closes GH-544]
2011-11-24 21:32:44 -07:00
Mitchell Hashimoto
2bcd68d323
Slight tweaks for GH-556
2011-11-22 19:05:44 -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
5d684b9001
Reload the configuration for all VMs after downloading a box. Fixes GH-564
2011-11-21 22:39:12 -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
71e23bd27c
Remove GlobLoader from util.rb since it doesn't exist anymore
2011-11-13 13:19:16 -08:00
Mitchell Hashimoto
f83c1b3c27
Fix regression introduced with cab1e4e
2011-11-05 15:19:03 -07:00
Mitchell Hashimoto
cab1e4e49b
Make the file download the default for `vagrant box add`. Tests.
2011-11-03 21:56:38 -07:00
Justin Brown
0c2fc0cae2
Make init respect the env's cwd.
2011-10-30 22:48:35 -07:00
Dave Smith
971d406857
Use /etc/nodename for hostname; preferable for this situation
2011-10-30 22:40:21 -07:00
Dave Smith
be078aedc4
Add solaris support for host-only networks and setting the hostname
2011-10-30 22:40:10 -07:00
Ticean Bennett
dab80649b8
Added Basic Auth support to HTTP downloader.
2011-10-14 18:37:24 +02:00
Mitchell Hashimoto
28cc13ad38
Sort shared folders by length only if they have a guest path
2011-10-14 18:20:10 +02:00
Chris McClimans
ec68c0a655
michellh/vagrant#524
2011-10-14 18:15:00 +02:00
Mitchell Hashimoto
d4ff392be4
Fix wrong # of argument issue. [closes GH-518]
...
The second parameter actually is supposed to be options.
2011-10-14 17:19:16 +02:00
Cody Herriges
f9c485bf05
Should honor max_tries.
...
Identified another place where ssh.max_tries was not being used where
is likely should be.
2011-09-29 15:35:07 -07:00
Cody Herriges
48f3ce5880
Makes the execute method honor max_tries.
...
Vagrant::SSH.execute is hard coded for only 5 tries, this makes
starting Debian machines very unreliable. Debian will reset
networking when you create a new hostonly NIC or change the hostname
of the machine and occasionally the coming up part takes longer than
what is provided by 5 tries. Making this method honor the max_tries
config option will make it possible to avoid this.
2011-09-21 13:27:23 -07:00
Mitchell Hashimoto
1bcbaa6df2
up version for development
2011-09-13 13:25:09 -07:00
Mitchell Hashimoto
5716b8dafb
v0.8.7
2011-09-13 13:21:29 -07: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
b49553383c
Revert "Don't expand VM folders for Chef"
...
This reverts commit 2665231363
.
This actually reverted GH-431
2011-08-29 21:10:37 -07:00
Mitchell Hashimoto
f6e6d7e834
Up version for development
2011-08-28 21:00:51 -07:00
Mitchell Hashimoto
cf08262be4
v0.8.6
2011-08-28 20:59:17 -07:00
Mitchell Hashimoto
b3dc6ba7d0
Check for VM accessibility in ssh_config
2011-08-28 20:41:51 -07:00
Mitchell Hashimoto
c569c8b697
Accessibility checks on VM for `ssh`
2011-08-28 20:38:56 -07:00
Mitchell Hashimoto
cdfbe4cc31
`vagrant up` on created machines check for inaccessible machines
2011-08-28 20:35:45 -07:00
Mitchell Hashimoto
82d6d5357b
`vagrant provision` checks for inaccessible VMs
2011-08-28 20:34:59 -07:00
Mitchell Hashimoto
327a6f9d94
Add a check for VM accessibility before every action
2011-08-28 20:32:22 -07:00
Mitchell Hashimoto
2efe1f9135
Handle inaccessible VMs with "vagrant status"
2011-08-28 20:17:25 -07:00
Mitchell Hashimoto
ed422e1151
Fixes to help with inaccessible VMs and forwarded ports
2011-08-28 20:02:15 -07:00
Mitchell Hashimoto
e739e68e30
Look for "redhat-release" for Fedora
2011-08-28 14:13:54 -07:00
Mitchell Hashimoto
2665231363
Don't expand VM folders for Chef
2011-08-29 00:51:07 -07:00
Mitchell Hashimoto
14d1b987ae
Add validation to args for shell provisioner
2011-08-28 00:02:42 -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
0f0cb27e50
Use proper nfsd binary on Fedora [closes GH-450]
2011-08-27 23:47:13 -07:00
Mitchell Hashimoto
1c2f80fab4
Distro dispatch for Host classes
2011-08-27 23:39:02 -07:00
Mitchell Hashimoto
5f62231bac
Clear the line on box downloads [closes GH-476]
2011-08-27 20:35:52 -07:00
Mitchell Hashimoto
d2498cfa99
Up version for development
2011-08-27 20:15:14 -07:00
Mitchell Hashimoto
722ea85a6a
Remove "disk_image_format" config, since it isn't used. [closes GH-478]
2011-08-27 19:55:36 -07:00
Mitchell Hashimoto
fe072662fd
v0.8.5 - RubyGems bugs. Unbelievable.
2011-08-15 20:55:25 -07:00
Mitchell Hashimoto
e7f192ccc8
v0.8.4
...
RubyGems issue
2011-08-15 20:24:12 -07:00
Mitchell Hashimoto
547a056f80
v0.8.3
2011-08-15 20:17:52 -07:00
Mitchell Hashimoto
3c1b16f286
vagrant ssh -c no longer emits prefix and newlines [closes GH-462]
2011-08-14 13:51:20 -07:00
Lewis Marshall
25dee4ac6d
Default Vagrant::UI#clear_line to do nothing [closes GH-466]
...
This needs to be defined as it is used in Vagrant::Action::VM::Import#call
2011-08-13 18:55:38 -07:00
Mitchell Hashimoto
cf115c10b1
Fix errno not defined [closes GH-465]
2011-08-13 18:54:32 -07:00
Mitchell Hashimoto
3f9a2814c7
Clean up some of the UI output
2011-08-10 22:17:37 -07:00
Dan Carley
1ec225e052
Add "short" hostname to "/etc/hosts" mimicking Debian behaviour. [closes GH-456]
2011-08-09 23:25:55 -07:00
Mitchell Hashimoto
7df5cf6c9d
Fix some issues with the atomic counter and chef-solo
2011-08-03 21:28:29 -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
Greg Thornton
92bb5c423b
Changed data_bags_path and roles_path in chef-solo provisioner to strings rather than arrays. [closes GH-446]
2011-08-02 23:30:49 -07:00
Mitchell Hashimoto
9d7433cbe7
Chef client allow empty run list
2011-08-02 23:17:46 -07:00
Thomas Pelletier
860a458a9c
archlinux host only network support [closes GH-448]
2011-07-30 12:05:09 -07:00
Dave Simons
1bf3aa69ed
set hostname on archlinux [closes GH-439]
...
Signed-off-by: Dave Simons <dave@inuits.be>
2011-07-30 12:03:18 -07:00
Mitchell Hashimoto
f707431410
Fix remote URL chef solo runs. [closes GH-431]
2011-07-30 10:55:48 -07:00
Mitchell Hashimoto
0e7ccf86bc
Ignore "OSE" suffix when checking guest additions versions [closes GH-438]
2011-07-30 10:25:58 -07:00
Mitchell Hashimoto
2ca46ced57
Fix message when provision is run on halted machine [closes GH-447]
2011-07-30 09:58:29 -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
6217a91b5c
ssh: get proper $PATH for exec! [closes GH-426]
2011-07-25 21:22:16 -07:00
Mitchell Hashimoto
cd83a4a28f
Up version for development
2011-07-22 23:59:02 -07:00
Mitchell Hashimoto
30642dbd62
v0.8.2
2011-07-22 23:57:12 -07:00
Mitchell Hashimoto
14ca7ecc24
Better validation for networking configuration
2011-07-22 23:53:19 -07:00
Paul Nguyen
b92a814583
With puppet 2.7.x, the following warning [closes GH-421]
...
warning: Implicit invocation of 'puppet apply' by passing files (or flags) directly
to 'puppet' is deprecated, and will be removed in the 2.8 series. Please
invoke 'puppet apply' directly in the future.
Since puppet 2.6, 'puppet apply manifestfile.pp' is the preferred way to apply a puppet manifest file, instead of 'puppet manifestfile.pp'. The use of puppet without the apply option will be deprecated in 2.8.
Changed the 'commands' array to reflect the new syntax.
2011-07-22 23:30:48 -07:00
Mitchell Hashimoto
1cb613367d
Name the shared-folders logical name using atomic counter to allow multiple chef solo provisioners.
2011-07-22 23:09:37 -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
6300bebe72
Disable SSH caching for now
2011-07-21 14:55:03 -07:00
Mitchell Hashimoto
fddc058e43
Reconnect SSH if the session closes
2011-07-21 10:53:58 -07:00
Mitchell Hashimoto
0b34364881
Up version for development
2011-07-20 18:41:59 -07:00
Mitchell Hashimoto
ce553707d0
v0.8.1 - Fix Psych issue
2011-07-20 18:28:37 -07:00
Mitchell Hashimoto
8368d9c6d1
Up version for development
2011-07-20 17:53:20 -07:00
Mitchell Hashimoto
530c4f29e0
v0.8.0
2011-07-20 17:52:14 -07:00
Mitchell Hashimoto
667405c4d7
Require VirtualBox 4.1.x
2011-07-19 14:32:27 -07:00
Mitchell Hashimoto
92f4ab63da
Network: Use new 4.1.x attribute host_only_interface
2011-07-19 14:24:26 -07:00
Mitchell Hashimoto
b3f0242dc0
Nitpick loading of configuration
2011-07-15 18:46:04 -07:00
Mitchell Hashimoto
4c6673270a
Ruby 1.8 compatibility
2011-07-11 20:13:19 -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
0515d9a61e
Add more logging but default to it off for now until we add more later
2011-07-10 21:41:52 -07:00
Mitchell Hashimoto
ad36340674
Specify program names for previous logging locations
2011-07-10 16:50:26 -07:00
Mitchell Hashimoto
907c3b318a
Logging of `vagrant`, action running, and warden
2011-07-10 16:48:00 -07:00
Mitchell Hashimoto
be3f7ffbfc
Log all console output
2011-07-10 16:21:41 -07:00
Mitchell Hashimoto
8248679fab
Fix bug with loading Vagrantfiles with new case changing
2011-07-10 16:08:39 -07:00
Mitchell Hashimoto
11dc005d75
Basic logging
2011-07-10 15:57:28 -07:00
Mitchell Hashimoto
0db2ec9d43
Remove ResourceLogger and PlainLogger
2011-07-10 15:35:45 -07:00
Mitchell Hashimoto
050677b359
ResourceLogger doesn't need to be thread-safe. Vagrant is not multi-threaded.
2011-07-10 14:52:22 -07:00
Mitchell Hashimoto
aaa09749e4
Only get the home path on the root environment
2011-07-10 14:19:34 -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
a8af0f47d3
Vagrantfile created should be capitalized still
2011-07-09 15:23:03 -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
1cf379a1f0
Be smart about loading files in Vagrant::SSH
2011-07-09 11:21:37 -07:00
Mitchell Hashimoto
881045a85f
Find a way to autoload 'vagrant/ssh' since that is a slow loader.
...
This involved realizing that requiring 'openssl' in the context
of an autoload causes some strange exceptions down the road. See this
gist for the error: https://gist.github.com/dd0b105bf9edcb7daa85
2011-07-09 11:12:15 -07:00
Mitchell Hashimoto
8b2d4bfe92
Update CHANGELOG, minor style changes
2011-07-08 18:19:36 -07:00
Michael Linderman
5bf4efe071
Don't delete package file if package output exists
2011-07-08 18:18:04 -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
b876d9ed1d
Move MAC address UI output into the customize block
2011-07-08 00:56:52 -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
911a44523c
Create shared folders in VM customize block to reduce VirtualBox lock time.
2011-07-07 23:49:29 -07:00
Mitchell Hashimoto
1ecd04e0ac
Move port forwarding into customize block to run in a single VM lock.
2011-07-07 23:42:56 -07:00
Mitchell Hashimoto
17e86c40fc
Reload VM after running customization blocks
2011-07-07 23:41:19 -07:00