Commit Graph

1483 Commits

Author SHA1 Message Date
Mitchell Hashimoto 35a19f829c provider/virtualbox: fix NFS tests on Windows 2014-01-15 11:48:07 -08:00
Mitchell Hashimoto e2ec46bb4d core: environment tests passing on Windows 2014-01-15 11:40:53 -08:00
Mitchell Hashimoto 7248797fa5 core: add test for fs_real_path on Windows 2014-01-15 11:32:53 -08:00
Mitchell Hashimoto 4fab57576b synced_folders/rsync: run hostpath through fs_real_path
This fixes issues with drive letter casing on Windows
2014-01-15 11:30:32 -08:00
Mitchell Hashimoto 8a56d0ae5e core: be sure to close tempfile handle so Windows can delete it 2014-01-15 11:24:03 -08:00
Mitchell Hashimoto aabe5124c4 core: don't test fork(1) on Windows 2014-01-15 11:12:13 -08:00
Mitchell Hashimoto 0fcce91d69 core: fix more cases where ".path" was being called on strings 2014-01-15 11:10:38 -08:00
Mitchell Hashimoto 008dd8e6e7 core: fix tests failing on WIndows dueo to bad temp dir gen 2014-01-15 11:09:00 -08:00
Mitchell Hashimoto e85e355ddb core: fix Windows failures on machine tests 2014-01-15 11:01:38 -08:00
Mitchell Hashimoto b386e1dbbd test: allow skipping certain tests on Windows 2014-01-15 10:54:50 -08:00
Mitchell Hashimoto 37e9553bf5 core: don't use Tempdir for tests, use Dir.mktmpdir
Tempdir didn't work on Windows, just spun forever.
2014-01-15 10:48:19 -08:00
Mitchell Hashimoto 2ca498a5dd provisioners/docker: build images using new DSL 2014-01-14 09:22:55 -08:00
Mitchell Hashimoto 31b239fba2 provisioners/docker: unit tests for config
/cc @fgrehm - I'm starting to unit test more and more of the plugins.
Just showing you an example because it is quite easy. :)
2014-01-14 08:27:34 -08:00
Mitchell Hashimoto 8d771de9ba Merge pull request #2820 from mitchellh/f-rsync-listen
`rsync-auto` command
2014-01-14 07:38:38 -08:00
Mitchell Hashimoto 04f1854840 synced_folders/rsync: unit tests for the callback, fix bug 2014-01-13 22:01:09 -08:00
Mitchell Hashimoto 9cf0387e00 core: interrupt in Cli exits with 1 2014-01-13 21:42:40 -08:00
Mitchell Hashimoto ae9b74464d core: MixinSyncedFolders#synced_folders does scoped hash override 2014-01-13 11:39:11 -08:00
Mitchell Hashimoto b4b62daf5c synced_folders/rsync: expand host paths relative to root path 2014-01-13 11:34:49 -08:00
Mitchell Hashimoto 309d12a16b synced_folders/rsync: `vagrant rsync` syncs the folders 2014-01-13 11:25:29 -08:00
Mitchell Hashimoto 59218ded68 synced_folders/rsync: move rsync logic out to helper 2014-01-13 11:01:50 -08:00
Mitchell Hashimoto 8bc36824bf commands/list-commands: lists all commands primary and non-primary 2014-01-11 09:32:13 -08:00
Mitchell Hashimoto 08b1aee00d core: default commands to primary 2014-01-11 09:15:14 -08:00
Mitchell Hashimoto f05388349c core: non-primary commands aren't shown in basic `vagrant -h` 2014-01-11 09:07:38 -08:00
Mitchell Hashimoto 13e9f8037a test: get all the tests passing with new CLI changes 2014-01-11 08:59:13 -08:00
Mitchell Hashimoto ad99b4f250 core: CLI understands new plugin definition format 2014-01-11 08:53:25 -08:00
Mitchell Hashimoto 4a99cdccdf core: allow command plugins to have options 2014-01-11 08:38:27 -08:00
Mitchell Hashimoto 7b2a0716f1 synced_folders/rsync: warn if password auth 2014-01-10 20:37:11 -08:00
Mitchell Hashimoto 60f3d224c9 synced_folders/rsync: can exclude files 2014-01-10 18:01:38 -08:00
Mitchell Hashimoto 2e3fcf576c synced_folders/rsync: allow guests to execute things before 2014-01-10 17:51:44 -08:00
Mitchell Hashimoto 38fbbb6c56 synced_folders/rsync: Initial commit working 2014-01-10 17:40:29 -08:00
Mitchell Hashimoto 213000fd3d core: update Registry tests to make sure #keys doesn't load 2014-01-10 16:20:33 -08:00
Mitchell Hashimoto fbcc08b3ee Merge pull request #2637 from johnbellone/patch-1
core: Update Registry with #keys method.
2014-01-10 16:19:53 -08:00
Mitchell Hashimoto 365bef0e61 core: use dummy provider in tests so VirtualBox isn't required 2014-01-10 15:48:42 -08:00
Mitchell Hashimoto 9a58caaf9c synced_folders/nfs: always prune [GH-2738] 2014-01-10 15:41:57 -08:00
Mitchell Hashimoto a48ef2ec97 core: more user-friendly errors for caps on guests 2014-01-09 10:24:25 -08:00
Mitchell Hashimoto ba5400b89b core: raise user-friendly errors if capabilities exception in Guest 2014-01-09 10:13:33 -08:00
Mitchell Hashimoto 9fe702a000 core: tests for Guest#name 2014-01-09 09:09:40 -08:00
Mitchell Hashimoto 68a355931c core: test that forking is allowed in a BatchAction 2014-01-08 21:43:46 -08:00
Mitchell Hashimoto 5e835f4201 Merge pull request #2792 from smoyer/redhat_hostname_patch
guests/redhat: use FQDN for hostname
2014-01-08 20:58:59 -08:00
Mitchell Hashimoto 7631a38601 core: refactor error initialization logic
/cc @tmatilai - This includes a test case for the symbol stuff, should
be okay now.
2014-01-08 19:53:43 -08:00
smoyer 3964298504 This was introduced in 1.4.1 with d26c147.
This PR sets the active hostname back to the name specified in the Vagrantfile (fqdn) and updates the unit tests.

Setting it to the short name causes loads of problems while configuring the system. I've had issues with sudoers hostname matching, Weblogic certificate generation and a few others. Even if I changed all of the Chef recipes, the fqdn is set in /etc/sysconfig/network so the active hostname will switch to the fqdn after a reboot.
2014-01-08 17:49:54 -05:00
Mitchell Hashimoto 010874ffad core: has_plugin? uses the new plugin manager class to check for gems 2014-01-08 10:50:28 -08:00
Mitchell Hashimoto 09a425030b core: pass environment into all host caps 2014-01-07 20:34:33 -08:00
Mitchell Hashimoto 5e490e3746 Get tests to pass 2014-01-07 19:26:03 -08:00
Mitchell Hashimoto 93e365bb33 core: Vagrant::Environment uses new host settings 2014-01-07 19:11:08 -08:00
Mitchell Hashimoto 5922241fcb core: Modify plugin interfaces and API for hosts 2014-01-07 18:38:49 -08:00
Mitchell Hashimoto 04a5e6bcd2 core: Remove Vagrant::Hosts and add Vagrant::Host, a CapabilityHost 2014-01-07 18:34:19 -08:00
Mitchell Hashimoto c1d56da1ca core: get tests passing for changes 2014-01-07 16:29:05 -08:00
Mitchell Hashimoto 40babfc3f7 core: modify Guest to use new CapabilityHost mixin 2014-01-07 16:27:12 -08:00
Mitchell Hashimoto 1f760b2c48 core: pass extra args to detect? when detecting capability host 2014-01-07 16:26:58 -08:00
Mitchell Hashimoto b15cb22e3e core: errors expose their extra data 2014-01-07 16:15:32 -08:00
Mitchell Hashimoto 1f6095f912 core: Vagrant::CapabilityHost is a module for adding capabilities to
things
2014-01-07 16:12:12 -08:00
Mitchell Hashimoto 3f4058471c core: installing a plugin from a gem doesn't constrain it 2014-01-07 13:56:51 -08:00
Mitchell Hashimoto b353865da1 core: specific versions "0.1.0" don't equate to "= 0.1.0" 2014-01-07 10:13:30 -08:00
Mitchell Hashimoto 198e142794 commands/plugin: add more tests for installgem 2014-01-06 10:55:34 -08:00
Mitchell Hashimoto f612ec7549 core: support plugin sources, and mask Bundler errors 2014-01-05 23:13:49 -08:00
Mitchell Hashimoto 84ecca5c15 core: statefile can track sources, not sure if we'll use it though 2014-01-05 22:50:55 -08:00
Mitchell Hashimoto 35d711c91b commands/plugin: add tests for UpdateGems 2014-01-05 22:37:29 -08:00
Mitchell Hashimoto e231890e7e commands/plugin: UninstallPlugin tests 2014-01-05 21:10:43 -08:00
Mitchell Hashimoto bef7051943 commands/plugin: InstallGem tests 2014-01-05 21:08:55 -08:00
Mitchell Hashimoto aeb0d1a480 commands/plugin: fix plugin existence middleware, add tests 2014-01-05 20:57:55 -08:00
Mitchell Hashimoto 8904319beb commands/plugin: install version and entrypoints work 2014-01-05 20:47:02 -08:00
Mitchell Hashimoto fe8842c795 Fix failing tests 2014-01-05 16:54:10 -08:00
Mitchell Hashimoto 1eef75a715 commands/plugin: list uses PluginManager 2014-01-05 08:42:34 -08:00
Mitchell Hashimoto 8450f20e87 Move StateFile into Vagrant::Plugin core 2014-01-04 16:45:41 -08:00
Mitchell Hashimoto d98868d150 core: Vagrant.require_plugin is gone 2014-01-04 16:35:28 -08:00
Mitchell Hashimoto b3a9e6a088 insert_public_key cap, and use that if it exists 2014-01-03 11:13:21 -08:00
Mitchell Hashimoto e115322e78 core: accept passwords in ssh_info 2014-01-03 09:48:35 -08:00
Mitchell Hashimoto 2f7163386d providers/virtualbox: don't error when intnet set to "true" [GH-2751] 2014-01-03 08:31:14 -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 5d39cc381f Merge pull request #2694 from tmatilai/plugin-json-errors
core: show more informative error if plugin.json parsing fails
2013-12-28 13:12:59 -08:00
Teemu Matilainen e5032071f6 core: Vagrant.has_plugin? tries to match gem name first
Search primary from the list of gem names which have been loaded by
`Vagrant.require_plugin`. Fall back to matching registered plugin names.
2013-12-20 17:36:10 -03:00
Teemu Matilainen a5b84f413e core: More informative error if plugin.json parsing fails 2013-12-20 07:10:10 -03:00
Mitchell Hashimoto 4d7d47086f core: configure version can be an int [GH-2689] 2013-12-19 08:03:15 -08:00
John Bellone 8909018af6 Add unit tests for Registry#keys. 2013-12-16 18:16:19 -05:00
Charlie Huggard 0e2b7a7c0b Unit tests for ChangeHostName on Enterprise Linux 2013-12-16 01:57:11 -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 72398faeaf core: put shell quoting into its own util class, it is useful 2013-12-13 21:17:15 -08:00
Paul Hinze abe0731d2e guests/{ubuntu,debian}: fix change_host_name for trailing dots [GH-2610]
When `/etc/hosts` contained a FQDN with a trailing dot, the `\b` in the
sed expression would not match, since dot is not considered to be a word
character.

Fix this by regexp-escaping the hostname search, and matching the end of
the line on optional space followed by additional characters.

Also add some tests that extract the regexp used by sed and verify that
it does what we want. These will hopefully serve us in the future if we
ever need to test additional edge cases.
2013-12-09 18:56:45 -06:00
Mitchell Hashimoto ba18d98d45 core: improve guest type detection
/cc @fgrehm - I figured you might be interested in this. :)
2013-12-08 11:14:18 -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 47b99d9bb8 test/acceptance: don't have the context show up as a component 2013-12-05 21:44:19 -08:00
Mitchell Hashimoto 5a0fdec789 test/acceptance: set the VBOX_USER_HOME 2013-12-05 13:39:33 -08:00
Mitchell Hashimoto dbfce21e05 Start acceptance test config stuff 2013-12-05 13:19:15 -08:00
Mitchell Hashimoto 944130b8c6 move test/acceptance to test/acceptance_old 2013-12-04 15:35:50 -08:00
Mitchell Hashimoto d354cdda4a core: request users upgrade plugins if they're old 2013-12-04 11:43:39 -08:00
Mitchell Hashimoto 236141ba90 commands/plugin: old state files default to 0 for vagrant version 2013-12-04 11:29:17 -08:00
Mitchell Hashimoto 39b2539ec7 commands/plugin: state file keeps track of the Vagrant version 2013-12-04 11:17:48 -08:00
Mitchell Hashimoto b2844d420d commands/plugin: tests for state file 2013-12-04 10:50:19 -08:00
Paul Hinze ec97a45125 commands/ssh-config: fix for multiple private keys
since we merged multiple private keys, the :private_key_path item of
ssh_info now comes back as an array. the ssh-config command had not yet
been updated to handle this properly.

here we fix that oversight and add a few unit tests around the config
generation.
2013-12-04 09:33:27 -06:00
Mitchell Hashimoto 1a51f42ee7 core: update rspec, fix deprecations 2013-12-03 18:42:21 -08:00
Mitchell Hashimoto c04fa5e54e core: clean up tests for synced folder built-ins 2013-12-03 18:30:59 -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
Mitchell Hashimoto d2bc1dbc3b Merge pull request #2560 from phinze/vbox-nfs-dhcp-support
providers/virtualbox: support DHCP interfaces for NFS
2013-12-03 11:49:54 -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
Fabio Rehm aff26b832d core: Retrofit some test for Method support on Action::Runner 2013-12-02 22:26:51 -02:00
Emiliano Ticci 578393ac8e Add cleanup routine to synced folder plugin implementation 2013-12-02 11:19:09 +01:00
Paul Hinze 4daa21e0b1 guests/debian: remove empty test file added by mistake 2013-12-01 09:49:31 -05:00
Mitchell Hashimoto 7c25a23352 core: get tests passing cleanly on Ruby 2.0.0 2013-11-30 16:21:19 -08:00
Mitchell Hashimoto 3c06e9458c Merge pull request #2556 from phinze/fix-shell-array-args-validation
provisioners/shell: fix validation for args [GH-1949]
2013-11-29 00:01:19 -08:00