Mitchell Hashimoto
3aaa57cac9
kernel/v2: support merging properly
2014-02-03 21:30:01 +01:00
Mitchell Hashimoto
10d5416a90
kernel/v2: support overriding provisioner settings
2014-02-03 16:56:39 +01:00
Mitchell Hashimoto
debc14f883
kernel/v2: more tests
2014-02-03 16:42:47 +01:00
Mitchell Hashimoto
0e5840a14d
kernel/v2: test for some config
2014-02-03 16:40:02 +01:00
Mitchell Hashimoto
1d69e95c1c
provisioners/docker: config to disablize -d flag
2014-02-03 16:14:59 +01:00
Mitchell Hashimoto
f63ef395f1
Merge branch 'rsync_install' of https://github.com/tmatilai/vagrant into tmatilai-rsync_install
...
Conflicts:
plugins/guests/freebsd/plugin.rb
plugins/guests/netbsd/plugin.rb
plugins/guests/openbsd/plugin.rb
2014-02-03 12:12:49 +01:00
Teemu Matilainen
bc96a054be
provisioners/file: add unit tests for the provisioner
2014-02-01 01:23:57 -03:00
Teemu Matilainen
9771c8bd52
provisioners/file: Add unit tests for the config
2014-02-01 01:22:53 -03:00
Teemu Matilainen
ee2ae94c25
synced_folders/rsync: Install `rsync` on guest if needed
...
Add new `rsync_installed` and `rsync_install` guest capabilities
to detect and install `rsync`.
Also copy `rsync_pre` capability to all Unix guests.
2014-01-31 02:12:57 -03:00
Mitchell Hashimoto
78e7e2746f
core: fix machine tests with provider changes
2014-01-26 14:33:22 -08:00
Mitchell Hashimoto
a924a7b48c
core: provider capabilities
2014-01-26 14:15:06 -08:00
Mitchell Hashimoto
00530303fb
core: color success Ui green
2014-01-23 13:15:07 -08:00
Mitchell Hashimoto
2b9e7ca14e
core: merge default synced folders ,don't override [GH-2873]
2014-01-21 20:13:08 -08:00
Mitchell Hashimoto
e80552b6aa
core: if synced folder type is blank, use default
2014-01-21 20:10:32 -08:00
Mitchell Hashimoto
d81af187ea
core: add tests for MachineReadable and frozen strings
2014-01-21 12:13:54 -08:00
Mitchell Hashimoto
06f1ebf752
core: add more tests for MachineReadable UI
2014-01-21 12:11:53 -08:00
Mitchell Hashimoto
f2f58655e8
core: get rid of more references to scope, old terminology
2014-01-21 12:06:04 -08:00
Mitchell Hashimoto
a32e154e6e
core: use cleaner UI abstractions
2014-01-20 17:18:36 -08:00
Mitchell Hashimoto
fc86a10796
core: only bold when output is part of a machine
2014-01-20 16:37:06 -08:00
Mitchell Hashimoto
0eec9aa599
core: extensive tests for Vagrant::UI classes
2014-01-17 21:31:07 -08:00
Mitchell Hashimoto
f713e43b00
Fix tests for new UI methods
2014-01-17 21:03:02 -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
2dff1ac417
core: get tests passing on Windows, more tweaks
2014-01-15 21:30:47 -08:00
Mitchell Hashimoto
73b72deb0a
synced_folders/rsync: convert path to cygpath on Windows
2014-01-15 21:13:08 -08:00
Mitchell Hashimoto
285bda7a68
synced_folders/nfs: don't nfs_prune on hosts that don't support it
2014-01-15 20:28:27 -08:00
Mitchell Hashimoto
99a23242ec
core: tests for more shared_helpers
2014-01-15 18:31:58 -08:00
Mitchell Hashimoto
7dc4cbb785
core: tests for shared_helpers.rb
...
/cc @tmatilai
2014-01-15 18:06:33 -08:00
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
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
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
Fabio Rehm
61733bbfbf
core: Fix broken SSHExec spec
2013-11-29 00:26:42 -02:00
Paul Hinze
fef60242b0
provisioners/shell: fix validation for args [GH-1949]
...
The logic change in 57d4775140
introduced
a bug where neither strings nor arrays provided as `args` for shell
provisioners would pass validation.
This fixes that problem along with a few extras:
- split out arg validation into a private method
- update comment describing valid args
- add a few unit tests around config validation
2013-11-28 19:54:10 -06:00
Mitchell Hashimoto
1e7084e1e1
core: fix tests
2013-11-26 19:13:21 -08:00
Mitchell Hashimoto
45e09eb677
core: allow multiple private keys [GH-907]
2013-11-25 15:45:39 -08:00
Mitchell Hashimoto
8d99382993
core: allow custom callables in hooks
2013-11-24 21:07:11 -08:00
Mitchell Hashimoto
f5cc112a4b
core: allow hooks to send arbitrary data
2013-11-24 21:01:41 -08:00
phinze
688bca14f5
refactoring ubuntu/debian change_host_name
...
there's been a lot of churn around this code, so i figure it was worth
trying to clean it up.
- the methods were doing a lot, so make them into template methods with
one helper per step
- spread out /etc/hosts regexp into a couple of helper variables for
clarity
- remove handling for broken hostname implementations (like basing all
of the checks on name.split('.')[0]), since it seems reasonable to
remove code dedicated only to handling broken boxes
- DRY up the shared code between debian/ubuntu implementations, which
clarifies the differences as well
- add unit tests around the behavior; this will help us in the future
to separate flaws in our understanding from flaws in implementation
- includes a new DummyCommunicator in tests which should be useful in
supporting additional unit testing of this kind
- manually tested this on squeeze, wheezy, precise, quantal, raring,
and saucy successfully.
handles the issue in #2333
2013-11-24 11:46:12 -06:00
Mitchell Hashimoto
0506f47a4a
core: get tests passing again
2013-11-23 16:43:15 -08:00
Mitchell Hashimoto
1ea39ab605
Merge pull request #2437 from fgrehm/plugins-loaded-hook
...
core: plugins loaded hook with no vagrantfiles
2013-11-23 16:38:45 -08:00
Mitchell Hashimoto
1b8c3b62af
core: scope hash override synced folder settings
2013-11-23 13:38:15 -08:00
Mitchell Hashimoto
e9fd622406
core: vagrant version requirements in vagrantfile [GH-2322]
2013-11-23 12:23:34 -08:00
Mitchell Hashimoto
bf72c7cb5d
core: human friendly error for corrupt box metadata
2013-11-23 11:54:42 -08:00
Mitchell Hashimoto
ab70dc271b
core: verify explicit sf types are usable
2013-11-23 10:47:06 -08:00
Mitchell Hashimoto
125584aaf4
core: SyncedFolders middleware passes inoptions
2013-11-22 17:13:14 -08:00
Mitchell Hashimoto
93a4066339
core: SyncedFolders built-in middleware
2013-11-22 16:12:51 -08:00
Mitchell Hashimoto
97148379d2
providers/virtualbox: implement the synced folder plugin
2013-11-21 17:38:17 -08:00
Mitchell Hashimoto
ee0086ddee
core: Add synced_folder plugin type
2013-11-21 15:56:37 -08:00
Fabio Rehm
a0c1cc0231
core: Add spec for running environment hooks with a custom Action::Runner
2013-10-29 13:28:04 -02:00
Mitchell Hashimoto
225da651f8
core: Show error message if _key dynamically passed into error [GH-2328]
2013-10-05 09:21:38 -07:00
Mitchell Hashimoto
00f61e67e1
core: errors can use error_message to specify string error message
2013-10-01 21:45:05 -07:00
Paul Hinze
abe7830421
core: fix NoMethodError in Vagrant.has_plugin? [GH-1736]
2013-09-11 15:13:21 -05:00
Mitchell Hashimoto
77036c7eea
fix failing test
2013-09-06 00:13:32 -07:00
Mitchell Hashimoto
95aba27e59
core: VAGRANT_VAGRANTFILE affects only project vagrantfile [GH-2130]
2013-09-05 14:46:26 -07:00
Mitchell Hashimoto
283d2ae74b
fix broken test
2013-08-29 16:42:59 -07:00
Fabio Rehm
bf4131af17
Clean up downloader test a bit
2013-07-28 20:23:27 -03:00
Fabio Rehm
c7aed1a6a1
Provide a custom user agent header to cURL request so that URL shorteners are able to track the amount of downloads
2013-07-28 20:23:27 -03:00
Mitchell Hashimoto
7ef6c5d9d7
Unused config objects are finalized properly [GH-1877]
2013-07-23 17:36:48 -05:00
Mitchell Hashimoto
80f06605fb
config.vm.guest now forces guest setting again [GH-1800]
2013-06-09 13:17:23 -07:00