Commit Graph

1826 Commits

Author SHA1 Message Date
Seth Vargo 80851a887f Create an Adapter to bridge the APIs between SFTP and FTP libraries 2014-12-08 11:35:12 -08:00
Seth Vargo b90253ea8c Create ftp push config 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto fefaa8da71 pushes/harmony: use to_s.strip.empty? to check if app is set 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto 1705460880 pushes/harmony: expand dir relative to Vagrantfile root path 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto efffc5f2f7 push/harmony: basic push implementation 2014-12-08 11:35:11 -08:00
Mitchell Hashimoto 168715ad7d push/harmony: ability to set uploader path 2014-12-08 11:35:11 -08:00
Mitchell Hashimoto e7b0661a93 pushes/harmony: boilerplate, config 2014-12-08 11:35:11 -08:00
Seth Vargo 41ac448ba8 Add tests for Push config merging and finalizing 2014-12-08 11:35:11 -08:00
Seth Vargo 111a43552e Add tests for Environment#pushes and #Enviroment#push 2014-12-08 11:35:11 -08:00
Seth Vargo f3c35855f0 Add a newline because #ocd 2014-12-08 11:35:11 -08:00
Seth Vargo 7f6a4fa3bd Add tests for plugin manager push_configs 2014-12-08 11:35:11 -08:00
Seth Vargo 03b8105571 Super primitive implementation of Environment#push 2014-12-08 11:35:10 -08:00
Seth Vargo b6c5ca6b7a Add Push command and tests 2014-12-08 11:35:10 -08:00
Seth Vargo d79a0d52dd Do not use Enumerable in Registry
Calling methods like #first in Registry is misleading because it returns
a different result than registry.get(registry.keys.first).
2014-12-08 11:35:10 -08:00
Seth Vargo c0b107ff69 Add Registry#empty? to check if a registry has any items 2014-12-08 11:35:10 -08:00
Seth Vargo 2b03838fba Make Registry enumerable
Registry already responds to #each, so including the Enumerable module
gives us nice methods like #select and #collect fo' free!
2014-12-08 11:35:10 -08:00
Seth Vargo bc4bbb9fc0 Add #length and #size methods to Registry 2014-12-08 11:35:10 -08:00
Seth Vargo 60a8472891 Use a pushes registry instead of data hash 2014-12-08 11:35:09 -08:00
Seth Vargo 0e824cc471 Rename file push to noop push 2014-12-08 11:35:09 -08:00
Seth Vargo 8a7e546972 Add preliminary File pusher (incomplete) 2014-12-08 11:35:09 -08:00
Paul Hinze 25ff636ee2 providers/virtualbox: cleanup default vbox dhcp server
fixes #3083

Detect the presence of the default DHCP server that comes in a fresh
VirtualBox install and clean it up to prevent it from colliding with
Vagrant-managed network config.

In order to accomplish this, we:

 - add a `remove_dhcp_server` call to the virtualbox driver
 - fix dhcp options parsing to allow `:dhcp_{ip,lower,upper}`
   configuration options to make it through (so a user can override the
   removal behavior with some explicit configuration)
 - add the full `:network_name` to the details returned from
   `:read_dhcp_servers`, so we can have a durable value to pass to
   `:remove_dhcp_server`

Note that we do have to eat one more `VBoxManage list dhcpservers` for
each network interface to support this, but this seemed like a nominal
cost
2014-11-30 22:03:52 -06:00
Paul Hinze 24b6f21d1d providers/virtualbox: extract reading dhcpservers from hostonlyifs
This is just a refactor, no behavior change.

Instead of stitching together dhcpserver info in the structure returned
from `read_host_only_interfaces`, sprout a new driver method called
`read_dhcp_servers` to return that information separately.

This means that driver clients (well there's really only _one_ client in
`ProviderVirtualBox::Action::Network`) have to do a bit more work to get
interface and DHCP server information.

But this gives us (a) a cleaner and more consistent driver interface and
(b) groundwork for a fix for #3083, which will require interacting with
DHCP servers outside of the context of host-only interfaces.
2014-11-30 22:03:52 -06:00
Paul Hinze 703c1f153b providers/virtualbox: fix flaky test when rsync is not installed
test-only change

when rsync is not installed on the machine running the unit tests, the
prepare_nfs_settings tests end up calling the :nfs_installed capability
on the host, which fails on the fake host wired up in tests.

this adds some explicit stubbing to prevent the implicit assumption that
rsync is installed.
2014-11-30 22:03:27 -06:00
Gilles Cornu 1c884fa4e5 provisioners/ansible: Show Ansible command when VAGRANT_LOG=debug 2014-11-25 08:12:43 +01:00
Mitchell Hashimoto f8a2322459 core: only delete state if not created on initialize only
/cc @sethvargo
2014-11-10 16:29:19 -08:00
Seth Vargo 5b1211fc63 Merge pull request #4792 from mwrock/state_refresh_fix
fixes infinite loop in machine state call if provider calls machine.action
2014-11-10 12:24:24 -05:00
Seth Vargo f232dc38c9 Automatically install Chef when provisioning with Chef 2014-11-07 15:56:22 -05:00
Seth Vargo b7c03ddbe2 Update config tests to reflect new structure 2014-11-07 15:56:21 -05:00
Matt Wrock dc628cd722 fixes infinite loop in machine state call if provider calls machine.action 2014-11-06 08:51:47 -08:00
Seth Vargo 1464a63928 Merge pull request #4777 from voxik/remove-useless-expect-with
Remove useless expect_with
2014-11-04 09:29:29 -05:00
Vít Ondruch dff40a193d Remove useless expect_with.
This seems to be relict of old days and it just forces unnecessary
dependency on Ruby's test unit.
2014-11-04 10:01:32 +01:00
Seth Vargo 59eb0ad2e8 Add Chef Apply provisioner 2014-10-30 15:32:15 -04:00
Seth Vargo 3b416db299 Tabs -> Spaces 2014-10-30 13:43:26 -04:00
Seth Vargo f5b9044e39 Add tests for Chef Zero config 2014-10-30 13:43:26 -04:00
Seth Vargo a8a35757ee Add tests for Chef Solo config 2014-10-30 13:43:26 -04:00
Seth Vargo 9c56061fa9 Add tests for Chef Client config 2014-10-30 13:43:25 -04:00
Seth Vargo 8b3ec500c8 Remove :focus tag (accidentally left from previous commit) 2014-10-30 13:43:25 -04:00
Seth Vargo f009db6101 Add tests for Chef base Config 2014-10-30 13:43:25 -04:00
Mitchell Hashimoto f4dec575ed core: Vagrant::Util::Keypair for generating keypairs 2014-10-24 09:33:44 -07:00
Mitchell Hashimoto 97f9948fce core: provisioners are defined differently now 2014-10-23 18:40:14 -07:00
Mitchell Hashimoto 13dc1832b6 test: fix test for default provider 2014-10-23 16:41:24 -07:00
Mitchell Hashimoto b7478e09f3 core: clean up default logic 2014-10-23 15:59:27 -07:00
Mitchell Hashimoto 768d453739 core: Environment#default_provider can look into machines 2014-10-23 15:52:42 -07:00
Mitchell Hashimoto ad758bf69a core: prefer providers in the Vagrantfile [GH-3812] 2014-10-23 15:32:54 -07:00
Mitchell Hashimoto f0a73c7c05 core: call #state in any #action call [GH-4513] 2014-10-23 12:20:16 -07:00
Mitchell Hashimoto 4827469dee core: recognize more complex content types for json [GH-4525] 2014-10-23 11:26:56 -07:00
Mitchell Hashimoto 2856df79ac core: Vagrant.has_plugin? can take version requirements [GH-4650] 2014-10-23 10:52:02 -07:00
Mitchell Hashimoto f122ed756c Merge pull request #4571 from jperville/docker-provider-allow-multiple-links-to-same-backend
providers/docker: allow multiple links to same backend (different aliases)
2014-10-23 09:45:14 -07:00
Mitchell Hashimoto 5036d16461 update CHANGELOG 2014-10-23 09:15:47 -07:00
Mitchell Hashimoto 381f1332c8 Merge pull request #4670 from gildegoma/dry-check-ssh-perms
Check SSH key permissions in machine.ssh_info
2014-10-23 09:14:31 -07:00