Commit Graph

436 Commits

Author SHA1 Message Date
Mitchell Hashimoto 61388186e9 providers/docker: can set custom container name 2014-04-21 13:55:51 -07:00
Mitchell Hashimoto 58ddc66b9c providers/docker: can specify links 2014-04-21 13:55:50 -07:00
Mitchell Hashimoto 71d615212d providers/docker: can set environmental variables 2014-04-21 13:55:49 -07:00
Mitchell Hashimoto 0a3346c918 providers/docker: warning if synced folders change 2014-04-21 13:55:48 -07:00
Mitchell Hashimoto d1b3165545 providers/docker: cleaner action stacks 2014-04-21 13:55:47 -07:00
Mitchell Hashimoto 35d9256137 providers/docker: only provision if ssh (command) 2014-04-21 13:55:46 -07:00
Mitchell Hashimoto 81818f36fc providers/docker: graceful halt only if SSH is available 2014-04-21 13:55:45 -07:00
Mitchell Hashimoto 4a59c5c522 providers/docker: optimizing the action stacks... 2014-04-21 13:55:44 -07:00
Mitchell Hashimoto c0f5095783 providers/docker: wait for running state, error if not 2014-04-21 13:55:42 -07:00
Mitchell Hashimoto 09cc823065 providers/docker: warning with host VM about forwarded ports 2014-04-21 13:55:41 -07:00
Mitchell Hashimoto e578e91e3a providers/docker: implement port checker for remote machine 2014-04-21 13:55:39 -07:00
Mitchell Hashimoto 4dabfc1aff providers/docker: clean up forwarded port handling 2014-04-21 13:55:37 -07:00
Mitchell Hashimoto 6ea6ad3e08 providers/docker: only correct port collisions if not host VM 2014-04-21 13:55:36 -07:00
Mitchell Hashimoto 58a043e2aa providers/docker: upload the keys we need for SSH 2014-04-21 13:55:35 -07:00
Mitchell Hashimoto 447f407b0b providers/docker: use a mutex for intra-process lock 2014-04-21 13:55:31 -07:00
Mitchell Hashimoto 3edfe6deaf providers/docker: remove synced folders after docker rm 2014-04-21 13:55:28 -07:00
Mitchell Hashimoto cd38f891da providers/docker: disable synced folders on destroy 2014-04-21 13:55:27 -07:00
Mitchell Hashimoto 704ff98200 providers/docker: only sync folders if they're not already there 2014-04-21 13:55:26 -07:00
Mitchell Hashimoto 10e51eb141 providers/docker: initial sync folders working through proxy VM 2014-04-21 13:55:20 -07:00
Mitchell Hashimoto c1f14320bd providers/docker: process-level lock on host machine up 2014-04-21 13:55:13 -07:00
Mitchell Hashimoto afb61b1466 providers/virtualbox: synced folder supports the "disable" method 2014-04-21 13:55:12 -07:00
Mitchell Hashimoto e119a5714a core: add "disable" method for synced folders, deprecate "prepare" 2014-04-21 13:55:09 -07:00
Mitchell Hashimoto a2a822c6e6 providers/docker: SSH action re-uses the communicator helpers 2014-04-21 13:54:58 -07:00
Mitchell Hashimoto 4477545d3f providers/docker: execute the proxied SSH in a shell 2014-04-21 13:54:57 -07:00
Mitchell Hashimoto e947960c09 providers/docker: use a custom communicator to go through host VM 2014-04-21 13:54:56 -07:00
Mitchell Hashimoto bdade7d5a6 providers/docker: notify when proxying SSH 2014-04-21 13:54:55 -07:00
Mitchell Hashimoto e714720052 providers/docker: `vagrant ssh` proxies through the host VM 2014-04-21 13:54:54 -07:00
Mitchell Hashimoto c220bfc27d providers/docker: TODO for me 2014-04-21 13:54:51 -07:00
Mitchell Hashimoto 56f9fdac21 commands/docker-logs: exit status 1 if no logs were retrieved 2014-04-21 13:54:49 -07:00
Mitchell Hashimoto eab553ad55 providers/docker: better comments 2014-04-21 13:54:48 -07:00
Mitchell Hashimoto cb95e8aaee commands/docker-logs: parallelize for multiple containers 2014-04-21 13:54:47 -07:00
Mitchell Hashimoto da0db72054 providers/docker: docker-attach => docker-logs 2014-04-21 13:54:45 -07:00
Mitchell Hashimoto 54de2e3c6f providers/docker: docker-attach command for following output 2014-04-21 13:54:44 -07:00
Mitchell Hashimoto b655b6d910 providers/docker: remove TODO 2014-04-21 13:54:41 -07:00
Mitchell Hashimoto 144c874b5a providers/docker: process-level lock on copying default Vagrantfile 2014-04-21 13:54:40 -07:00
Mitchell Hashimoto 8c7ab333a0 Squash the f-docker-hostmachine branch.
Initial work

commands/up: make sure all names to with_target_vms are strings

providers/docker: create a docker host VM if needed

providers/docker: executor abstraction for driver to eventually support remote

providers/docker: vagrant executor

providers/docker: support creating the machine

providers/docker: status works if host VM is gone

providers/docker: use start fence to get real docker output

core: Call preserves stack ordering

core: support Message post option

providers/docker: Guard some features with HasSSH checks

providers/docker: much better messaging around create/destroy

providers/docker: output the container ID on create

providers/docker: copy the hostmachine Vagrantfile to the data dir

providers/docker: should make host machine before any up action

providers/docker: HandleBox before the host machine

providers/virtualbox: functional_vboxsf to disable vboxsf

providers/virtualbox: synced folder usable method should take 2 args

providers/docker: default machine name to :default
2014-04-21 13:54:33 -07:00
Mitchell Hashimoto ba1676b232 providers/hyperv: fix tests and bug with usable? 2014-04-21 13:53:36 -07:00
Mitchell Hashimoto 740652aef9 providers/hyperv: usable test 2014-04-21 13:53:09 -07:00
Mitchell Hashimoto 967f7bce1a providers/virtualbox: usability test 2014-04-21 13:53:08 -07:00
Mitchell Hashimoto f2bd6988b6 providers/docker: boxes are optional 2014-04-21 13:53:06 -07:00
Mitchell Hashimoto ab2cae2379 providers/docker: synced folder usable? raises error, tests
/cc @fgrehm
2014-04-21 13:53:05 -07:00
Mitchell Hashimoto 2e13feb130 providers/docker: Clean up config and make a spec 2014-04-21 13:53:04 -07:00
Fabio Rehm e51c5530d7 providers/docker: Remove retryable around `docker run` as it seems that it is no longer needed 2014-04-21 13:51:48 -07:00
Fabio Rehm d705c48ef3 providers/docker: Implement public_address capability for `vagrant share` 2014-04-21 13:51:47 -07:00
Fabio Rehm c0aa05c62a providers/docker: Handle forwarded port collisions 2014-04-21 13:51:46 -07:00
Fabio Rehm e5375715ef providers/docker: Update driver to docker 0.9 2014-04-21 13:51:45 -07:00
Fabio Rehm de588ba82c providers/docker: Remove old README 2014-04-21 13:51:44 -07:00
Fabio Rehm 46cbeb38f0 providers/docker: Make use of Action::Builtin::IsState and remove provider specific actions 2014-04-21 13:51:42 -07:00
Fabio Rehm 29f2d9b09d providers/docker: Remove custom Action::Message 2014-04-21 13:51:41 -07:00
Fabio Rehm 15605b1a81 providers/docker: Switch to new HandleBox middleware 2014-04-21 13:51:39 -07:00
Fabio Rehm eaa4be8869 providers/docker: Remove Vagrant::Action shortcuts as we are on core now 2014-04-21 13:51:38 -07:00
Fabio Rehm c09ce4bbbd providers/docker: Add description 2014-04-21 13:51:37 -07:00
Fabio Rehm 87d2f35718 providers/docker: Get rid of some explicit requires in favor of autoloading 2014-04-21 13:51:35 -07:00
Fabio Rehm 3325bce2d0 providers/docker: Lazy load locales 2014-04-21 13:51:34 -07:00
Fabio Rehm 8c8826fe09 providers/docker: Get rid of vagrant version check from old plugin 2014-04-21 13:51:33 -07:00
Fabio Rehm e79df6caaa providers/docker: Move code out of lib dir so that Vagrant can pick it up 2014-04-21 13:51:32 -07:00
Fabio Rehm 5a60e568ce providers/docker: Import code from https://github.com/fgrehm/docker-provider with some initial tweaks 2014-04-21 13:51:31 -07:00
Mitchell Hashimoto 9a16af10ad core: Use Machine#state wherever possible so we update the index 2014-04-21 13:51:23 -07:00
Mitchell Hashimoto 7ccf7fadf2 providers/virtualbox: make ID os-friendly for Windows 2014-04-21 13:51:12 -07:00
Mitchell Hashimoto d600e83e6d guests/windows: configure networks 2014-04-21 13:51:09 -07:00
Jing Chan 97c8919f26 Small fix to hyper-v provision action 2014-04-17 17:48:03 -04:00
Mitchell Hashimoto 7749b8fba4 providers/hyperv: provision action [GH-3494] 2014-04-17 13:59:13 -07:00
Mitchell Hashimoto b97c509c15 Remove this, supposed to be in vagrant-next 2014-04-10 13:43:15 -07:00
Mitchell Hashimoto f47213f9b2 guests/coreos: docker_daemon_running cap [GH-3425] 2014-04-10 13:42:12 -07:00
Mitchell Hashimoto c02eae2279 providers/hyperv: verify cmdlet is available [GH-3398] 2014-04-09 09:30:17 -07:00
Mitchell Hashimoto 18658fc6fb Merge pull request #3337 from MSOpenTech/fix-issue-3336
providers/hyperv: HyperV provider resume. GH-3336
2014-04-01 21:58:33 -07:00
Oscar Renalias 8f4ae68f56 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x, including internal networks 2014-03-31 21:32:12 +03:00
Oscar Renalias 094be9dc50 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x, including internal networks 2014-03-31 21:31:51 +03:00
Oscar Renalias cd6f24b2d9 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x 2014-03-31 20:36:24 +03:00
Oscar Renalias 0314453f46 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x 2014-03-31 20:36:16 +03:00
Ramakrishnan 41e1a7e0e4 HyperV provider resume. GH-3336
Fix for vagrant resume command for HyperV provider. Fixed the variable
name in action builder block.
2014-03-27 13:04:28 +05:30
Mitchell Hashimoto d4b3f226dd providers/virtualbox: fix missing interpolation [GH-3277] 2014-03-20 17:57:17 -07:00
Mitchell Hashimoto a8fa2d5ffe providers/virtualbox: import progress works on Windows 2014-03-12 20:02:05 -07:00
Marc Schlaich 5694c7dc2f providers/virtualbox: retry list vms [GH-2831] 2014-03-12 16:23:32 +01:00
Mitchell Hashimoto 0f70ce7e46 providers/virtualbox: style nitpick 2014-03-11 08:48:33 -07:00
Mitchell Hashimoto 6a5fee0191 providers/virtualbox: add post-comm customize step [GH-3080] 2014-03-09 21:35:53 -07:00
Mitchell Hashimoto cf5528b813 providers/hyperv: ssh_info doesn't need a dedicated action stack 2014-03-06 12:27:05 -08:00
Mitchell Hashimoto 75754019a9 providers/hyperv: fix the class name 2014-03-06 11:01:52 -08:00
Mitchell Hashimoto 074ea02b82 providers/hyperv: public_address cap 2014-03-06 11:01:19 -08:00
Mitchell Hashimoto 1ccedcd2cb providers/hyperv: update driver stuff 2014-03-06 08:58:31 -08:00
Mitchell Hashimoto d1dc010073 Merge pull request #3068 from MSOpenTech/driver-methods
provider/hyperv: move to Driver based model
2014-03-06 08:52:01 -08:00
Mitchell Hashimoto 0037d2c767 providers/hyperv: validate IP address returned [GH-3069] 2014-03-06 07:35:46 -08:00
Mitchell Hashimoto 35adc6063b providers/hyperv: add test for windows guests 2014-03-05 18:50:31 -08:00
Mitchell Hashimoto 9120339dc7 providers/hyperv: set the hostname 2014-02-28 18:58:41 +01:00
Mitchell Hashimoto 729f0f5db8 providrs/hyperv: ask for the vswitch to use 2014-02-27 08:13:18 -08:00
Mitchell Hashimoto 3ddc63c88f providers/hyperv: add script to read switches 2014-02-27 08:13:17 -08:00
Mitchell Hashimoto da58f7bdc0 providers/hyperv: remove bad reference to file 2014-02-27 08:13:16 -08:00
Mitchell Hashimoto bdcb92ed07 providers/hyperv: disable parallelism 2014-02-27 08:13:15 -08:00
Mitchell Hashimoto 39bf9db651 providers/hyperv: remove unused config 2014-02-27 08:13:15 -08:00
Mitchell Hashimoto d1bdfe492b providers/hyperv: style 2014-02-27 08:13:14 -08:00
Mitchell Hashimoto af4bc18c14 providers/hyperv: use IsState and Message built-ins everywhere 2014-02-27 08:13:13 -08:00
Mitchell Hashimoto e93038fd0e providers/hyperv: suspend/resume 2014-02-27 08:13:11 -08:00
Mitchell Hashimoto ef71729c24 providers/hyperv: remove nonexistent action 2014-02-27 08:13:10 -08:00
Mitchell Hashimoto 760f3d9b7b providers/hyperv: that synced folder stuff can go 2014-02-27 08:13:09 -08:00
Mitchell Hashimoto 41bc86c490 providers/hyperv: clean up provider since we moved out SMB 2014-02-27 08:13:08 -08:00
Mitchell Hashimoto 0fe4a4af26 synced_folders/smb: basically working 2014-02-27 08:13:05 -08:00
Mitchell Hashimoto 31abc3f4a3 providers/hyperv: fix file format to unix 2014-02-27 08:13:04 -08:00
Mitchell Hashimoto ea871ec9ef providers/hyperv: change wording to look a bit better 2014-02-27 08:13:03 -08:00
Mitchell Hashimoto 4c810a879a providers/hyperv: clone the disk 2014-02-27 08:13:02 -08:00
Mitchell Hashimoto d8e4482f2c providers/hyperv: enable provisioning 2014-02-27 08:13:01 -08:00
Mitchell Hashimoto d4ec3b5dfc providers/hyperv: reset machine ID if machine deleted outside 2014-02-27 08:13:00 -08:00
Mitchell Hashimoto faf906c057 providers/hyperv: wait for communicator on boot 2014-02-27 08:12:59 -08:00
Mitchell Hashimoto 9fa4549105 providers/hyperv: remove unused var 2014-02-27 08:12:58 -08:00
Mitchell Hashimoto 5d19285774 providers/hyperv: wait for IP on boot 2014-02-27 08:12:57 -08:00
Mitchell Hashimoto 64abd95c6f providers/hyperv: use HandleBox middleware 2014-02-27 08:12:57 -08:00
Mitchell Hashimoto 27688a183b providers/hyperv: destroy 2014-02-27 08:12:56 -08:00
Mitchell Hashimoto 7c0948c81d providers/hyperv: clean up status script 2014-02-27 08:12:55 -08:00
Mitchell Hashimoto 88247797d4 providers/hyperv: more cleanup 2014-02-27 08:12:54 -08:00
Mitchell Hashimoto fe93b0d2a5 providers/hyperv: more checks on machine import 2014-02-27 08:12:53 -08:00
Mitchell Hashimoto 784a5b2e32 providers/hyperv: all sorts of tests to verify Windows/admins 2014-02-27 08:12:51 -08:00
Mitchell Hashimoto ab4390eb67 providers/hyperv: clean up driver error handling quite a bit 2014-02-27 08:12:51 -08:00
Mitchell Hashimoto fb7dd73d95 providers/hyperv: better errors 2014-02-27 08:12:49 -08:00
Mitchell Hashimoto a1958ee12f providers/hyperv: shuffle things around 2014-02-27 08:12:48 -08:00
Mitchell Hashimoto 3d8971b15f providers/hyper-v: cleanup 2014-02-27 08:12:47 -08:00
Mitchell Hashimoto ca24d60d8f providers/hyperv: initial commit
Initial work done by MS Open Tech
2014-02-27 08:12:46 -08:00
Mitchell Hashimoto 3324756e12 providers/virtualbox: don't log in trap context 2014-02-23 22:09:15 -08:00
Mitchell Hashimoto d0cd2464b2 providers/virtualbox: only clear forwarded ports if there are any 2014-02-13 21:04:56 -08:00
Mitchell Hashimoto b1bed68bed providers/virtualbox: cap to read forwarded ports 2014-02-13 16:34:34 -08:00
Mitchell Hashimoto 8d3afa73d2 providers/virtualbox: config to skip guest additions check 2014-02-08 18:35:09 -08:00
Mitchell Hashimoto 1a5ad9f3d5 providers/virtualbox: check for outdated on any start 2014-02-05 21:20:17 -08:00
Mitchell Hashimoto bfca65b098 core: better output for BoxCheckOutdated 2014-02-05 21:20:16 -08:00
Mitchell Hashimoto 4cedd590d9 providers/virtualbox: use new HandleBox middleware 2014-02-05 21:20:05 -08:00
Mitchell Hashimoto 56e85bc989 Merge pull request #2906 from frosario/cable_connected
providers/virtualbox: connect cable for bridged networking
2014-02-03 03:05:16 -08:00
Freddie Rosario ccf14bb398 Applying bugfix for cableconnected issue to earlier releases of virtualbox 4.x series 2014-01-28 11:05:44 -05:00
Freddie Rosario cd0c7dfbd9 Bugfix for github issue 2890.
Changing default behavior of vagrant up to enable "cableconnected" on bridged network devices
2014-01-28 10:54:39 -05:00
Mitchell Hashimoto ea77194384 providers/virtualbox: more detailed output 2014-01-17 21:03:01 -08:00
Mitchell Hashimoto 5b449c8000 providers/virtualbox: many `detail` level output 2014-01-17 21:03:00 -08:00
Mitchell Hashimoto dd33a26422 providers/virtualbox: network config uses proper format, tests [GH-2854] 2014-01-17 09:53:02 -08:00
Mitchell Hashimoto eecba611a4 providers/virtualbox: validate missing keys [GH-2831] 2014-01-16 09:43:31 -08:00
Mitchell Hashimoto eae2edf063 providers/virtualbox: retry list hostonlyifs [GH-2831] 2014-01-15 19:55:31 -08:00
Mike Fiedler 9679eccb06 extend Virtualbox convenince methods
In the vein of #2426, I too can never remember syntax, and end up
hunting for either an exisiting Vagrantfile or starting to dig up
details.
2014-01-10 12:41:23 -05:00
Mitchell Hashimoto 2f7163386d providers/virtualbox: don't error when intnet set to "true" [GH-2751] 2014-01-03 08:31:14 -08:00
Mitchell Hashimoto 3f2d3886b2 providers/virtualbox: fix package [GH-2739] 2014-01-02 10:09:05 -08:00
Mitchell Hashimoto 7141be065a Merge pull request #2674 from phinze/static-nfs-guest-ips
core: problems with using VirtualBox guest properties for reading NFS Guest IP
2013-12-31 11:00:23 -08:00
Mitchell Hashimoto 54f4cffc00 providers/virtualbox: export after checking if package exists [GH-2380] 2013-12-31 08:45:56 -08:00
Paul Hinze fc66ec1660 providers/virtualbox: allow and prefer static guest IPs for NFS
Since vbox guest properties are proving to be less reliable than we had
hoped, bring back the static config parsing mechanism for finding a
guest IP to hand to NFS. If we find a static IP (or set of IPs) we'll
use that instead of trying to probe guest properties.

This retains NFS support for DHCP interfaces while regaining the
reliability that we previously had when static IPs were required.
2013-12-28 17:01:08 -06:00
Mitchell Hashimoto c1141dded3 providers/virtualbox: don't clear /etc/exports on BSDs for NFS [GH-2645] 2013-12-13 22:03:14 -08:00
Mitchell Hashimoto 2c65d247da core: Allow options to be passed down into SF cleanup 2013-12-06 16:40:24 -08:00
Mitchell Hashimoto 55931d507e Merge branch 'nfs-sync-folder-cleanup' of https://github.com/emyl/vagrant into emyl-nfs-sync-folder-cleanup
Conflicts:
	plugins/providers/virtualbox/action.rb
2013-12-06 15:06:34 -08:00
Mitchell Hashimoto b65462faf1 providers/virtualbox: resume should wait for boot 2013-12-06 13:21:07 -08:00
Mitchell Hashimoto 0d02ada43b providers/virtualbox: only clear shared folders if we have a VM 2013-12-05 13:39:23 -08:00
Teemu Matilainen 897fde3274 Add missing argument to ProviderVirtualBox::SyncedFolder#driver call
GH-2577 missed passing the `machine` to the `driver` method.
2013-12-05 00:21:16 -03:00
Emiliano Ticci 07bbca426e NFS/VBox: remove dedicated cleanup action in favour of native routine. 2013-12-04 12:29:09 +01:00
Emiliano Ticci c95fc4e27c VirtualBox shared folders: remove dedicated cleanup action in favour of native routine. 2013-12-04 12:22:01 +01:00
Mitchell Hashimoto 832a5ef70b providers/virtualbox: clean up synced folders on destroy 2013-12-03 18:44:37 -08:00
Mitchell Hashimoto ca521887eb Merge pull request #2561 from emyl/synced-folder-cleanup-v2
core: Enhance the synced folder plugin implementation with a cleanup routine
2013-12-03 18:08:42 -08:00
Paul Hinze c25172d0f7 providers/virtualbox: support DHCP interfaces for NFS
Previously, we required a host-only interface with a static IP for NFS
to work in VirtualBox, because we needed access to the guest's IP in
order to properly configure mount commands.

After boot, VirtualBox exposes the IP addresses of a guest's network
adapters via the "guestproperty" interface.

This adds support for reading VirtualBox guest properties to the
VirtualBox driver and utilizes that support to prepare NFS settings,
which removes the necessity for a static IP for NFS to work.

In this commit we also start building out scaffolding for unit testing
vbox actions and drivers.

Test plan:
 - Prepare a Vagrantfile with the following:
   * private network with type: :dhcp
   * synced folder with nfs: true
 - Boot a VM from this Vagrantfile using the virtualbox provider
 - Machine should boot successfully with working synced folder
2013-12-03 10:21:28 -05:00
Emiliano Ticci 578393ac8e Add cleanup routine to synced folder plugin implementation 2013-12-02 11:19:09 +01:00
Mitchell Hashimoto 602505a136 providers/virtualbox: some validation around internal networks 2013-11-25 11:25:10 -08:00
Mitchell Hashimoto 2d957cdaab providers/virtualbox: internal networks [GH-2020] 2013-11-25 11:13:46 -08:00