Commit Graph

854 Commits

Author SHA1 Message Date
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 3d0a2959cd commands/rdp: nicer output 2014-04-21 13:54:19 -07:00
Mitchell Hashimoto 5b960efcb1 commands/rdp: no need fo rthe guest cap 2014-04-21 13:54:17 -07:00
Mitchell Hashimoto 617cf630b1 commands/rdp: error if RDP info can't be detected 2014-04-21 13:54:16 -07:00
Mitchell Hashimoto 0fa07637f9 commands/rdp: execute propre capabilities 2014-04-21 13:54:11 -07:00
Mitchell Hashimoto de7b4bbdc1 commands/rdp: basic skeleton 2014-04-21 13:54:09 -07:00
Mitchell Hashimoto 72030d2180 Note provisioners that don't work on Windows guests 2014-04-21 13:54:02 -07:00
Mitchell Hashimoto 9dd9fff637 core: check if provider is usable when requesting a machine 2014-04-21 13:53:10 -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 aad8e7f80d core: provision "once" or "always" [GH-2421] 2014-04-21 13:52:30 -07:00
Mitchell Hashimoto f6fb9016a1 core: can specify a "post_up_message" [GH-1968] 2014-04-21 13:52:28 -07:00
Fabio Rehm 2d88e3a1c3 providers/docker: Remove unused locale parameter 2014-04-21 13:51:43 -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 a0e9f46251 core: commands can use the IDs from anywhere to control 2014-04-21 13:51:24 -07:00
Mitchell Hashimoto e14216da4e commands/global-status: initial go at it 2014-04-21 13:51:22 -07:00
Mitchell Hashimoto ac032db6a6 core: MachineIndex has precision locking for entries 2014-04-21 13:51:14 -07:00
Mitchell Hashimoto 016afc7922 core: Basic MachineIndex class, starting point 2014-04-21 13:51:13 -07:00
Mitchell Hashimoto d600e83e6d guests/windows: configure networks 2014-04-21 13:51:09 -07:00
Mitchell Hashimoto f07ee5754a core: Configurable communicator 2014-04-21 13:51:02 -07:00
Mitchell Hashimoto 2a8a04ebb9 communicators/winrm: initial import from vagrant-windows 2014-04-21 13:50:58 -07:00
Kenny Rasschaert fc95e77237 provisioners/salt: error if minion_config missing 2014-04-19 23:24:30 +02:00
Christian Berendt 8f96205d95 added missing newline in `box remove version listing`
The output of Errors::BoxRemoveMultiVersion is now like
the output of Errors::BoxRemoveVersionNotFound. I think
that's expected.

example output without this patch:

```
$ vagrant box remove berendt/ubuntu-14.04-amd64
You requested to remove the box 'berendt/ubuntu-14.04-amd64' with provider
'virtualbox'. This box has multiple versions. You must
explicitly specify which version you want to remove with
the `--box-version` flag.

Versions:  * 0.2.11
 * 0.2.12
 * 0.2.14
```

example output with this patch:

```
$ vagrant box remove berendt/ubuntu-14.04-amd64
You requested to remove the box 'berendt/ubuntu-14.04-amd64' with provider
'virtualbox'. This box has multiple versions. You must
explicitly specify which version you want to remove with
the `--box-version` flag. The available versions for this
box are:

 * 0.2.11
 * 0.2.12
 * 0.2.14
```
2014-04-14 20:49:17 +02:00
Mitchell Hashimoto 00962c7c2a commands/box/repackage: better error if box not found 2014-04-12 18:00:33 -07:00
Mitchell Hashimoto e972bbf32a synced_folders/rsync: change wording on no paths watching 2014-04-11 14:56:35 -07:00
Mitchell Hashimoto 75bc1c74b6 Merge pull request #3446 from brenttheisen/rsync_auto_nothing_to_watch_pr
command/rsync-auto: message and exit rsync-auto immediately if there is nothing to watch.
2014-04-11 14:53:42 -07:00
Brent Theisen 7b27fa31ce Print message and exit rsync-auto immediately if there is nothing to watch. 2014-04-11 16:49:58 -05:00
Abed Halawi 9ec7988f0d add translation message for docker building images 2014-04-11 19:43:51 +03:00
Mitchell Hashimoto dbbde8d63d Nitpick on messaging 2014-04-11 09:31:18 -07:00
Mitchell Hashimoto f8f38460c6 Merge pull request #3438 from berendt/show_version_when_removing_a_specific_box
print version when removing a specific box
2014-04-11 09:30:38 -07:00
Christian Berendt 6406b1e0c8 fixed spelling 2014-04-11 11:14:12 +02:00
Christian Berendt c43bd27ffe print version when removing a specific box
Example:

$ vagrant box remove --box-version 0.2.9 berendt/ubuntu-14.04-amd64
Removing box 'berendt/ubuntu-14.04-amd64' with provider 'virtualbox' in version '0.2.9'...
2014-04-11 10:05:03 +02:00
Mitchell Hashimoto 41636a8a9c core: can't add boxes from network shares [GH-3279] 2014-04-09 14:15:26 -07:00
Mitchell Hashimoto d8ec7b02c4 commands/package: Nicer error if includes has symlinks [GH-3200] 2014-04-09 10:52:33 -07:00
Mitchell Hashimoto e748aadf4f core: give users chance to quit for upgrade [GH-3212] 2014-04-09 09:58:30 -07:00
Mitchell Hashimoto c02eae2279 providers/hyperv: verify cmdlet is available [GH-3398] 2014-04-09 09:30:17 -07:00
Mitchell Hashimoto 09a3409746 commands/rsync-auto: do an initial sync [GH-3327] 2014-04-09 09:09:42 -07:00
Mitchell Hashimoto 800cf7539b synced_folders/rsync: don't crash if comm error during rsync-auto [GH-3419] 2014-04-09 08:58:56 -07:00
Mitchell Hashimoto 7ade8f8ad4 Clean up the Vagrantfile template 2014-04-09 08:49:25 -07:00
Diego Zamboni 2e4bc44644 CFEngine example block in Vagrantfile template
Added an example block for the CFEngine provisioner to the Vagrantfile
template.
2014-04-07 18:39:50 -05:00
Mitchell Hashimoto 5f12126d32 core: network issues don't halt Vagrant during box update check [GH-3391] 2014-04-05 09:25:03 -07:00
Mitchell Hashimoto 0e46c5d9de core: Raise predictable error if box metadata downlaod fails 2014-04-05 09:20:03 -07:00
Mitchell Hashimoto e04ef90b3a Merge pull request #3207 from khiro/support_fedora_predictable_network_interface_names
guests/fedora: Fix a network configuration issue of Fedora [GH-1997]
2014-04-05 09:08:08 -07:00
Mitchell Hashimoto a1d9121852 synced_folders/smb: verify PowerShell v3 is running or later [GH-3257] 2014-04-02 09:45:42 -07:00
Mitchell Hashimoto 32d86ca42b core: don't allow version for old-style box [GH-3260] 2014-04-02 09:32:34 -07:00
Mitchell Hashimoto 36ad327ec1 core: ignore if box doesn't exist on update check [GH-3326] 2014-04-02 08:24:38 -07:00
Mitchell Hashimoto 097dd2917c core: better error when adding box with malformed version [GH-3332] 2014-04-01 22:48:52 -07:00
Mitchell Hashimoto 8195f7faab core: add test for removing box version [GH-3364]
/cc @berendt - Added a test
2014-04-01 21:47:51 -07:00
Mitchell Hashimoto 4c90a5d002 Merge pull request #3364 from berendt/fix_issue_3344
core: handle exception when removing a non existing box version
2014-04-01 21:42:43 -07:00
David Kuridža 15e3b7f068 add missing translation en.vagrant.commands.status.stopping 2014-04-01 14:44:38 +02:00
Christian Berendt 7d38d78fee handle exception when removing a non existinga box version
When trying to remove a not existing version of an existing box an
exception is thrown. The exception should be handled and some message
(box version 0.1.2 not available) should be printed.

With this patch the exception is handled correctly by using a newly
introduced exception BoxRemoveVersionNotFound.

Example output:

You requested to remove the box 'berendt/alpine-2.7.5-amd64' with provider
'virtualbox' in version '0.0.2'. The box 'berendt/alpine-2.7.5-amd64'
exists but not in the specified version '0.0.2'.
Please double-check and try again.

The available versions for this box are: 0.1.0

Fixes issue #3344
2014-03-31 20:32:34 +02:00
khiro 9edb299c0d Fix a network configuration issue of Fedora [GH-1997]
Support Predictable Network Interface Names.
2014-03-14 15:12:51 +09:00
Mitchell Hashimoto 012c28606f kernel/v2: validate forwarded ports [GH-3187] 2014-03-13 08:32:05 -07:00
Mitchell Hashimoto 7d32aed01f Clarify error message on missing b ox 2014-03-12 09:38:52 -07:00
Mitchell Hashimoto 49471ffbf6 core: output when upgrading home path 2014-03-11 11:06:38 -07:00
Mitchell Hashimoto dabbb837fb Missing translation [GH-3130] 2014-03-11 11:01:07 -07:00
Mitchell Hashimoto eb9b85c388 core: UI#ask with no echo works even if noecho not supported [GH-3119] 2014-03-11 09:58:49 -07:00
Mitchell Hashimoto c9623a2a3f synced_folders/smb: ask for creds in prepare 2014-03-06 08:49:41 -08:00
Mitchell Hashimoto 4437bcd77f core: better error if attempting to uninstall system plugin 2014-03-03 15:05:32 -08:00
Mitchell Hashimoto 729f0f5db8 providrs/hyperv: ask for the vswitch to use 2014-02-27 08:13:18 -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 dd6f1083b0 synced_folders/smb: test for admin privileges 2014-02-27 08:13:07 -08:00
Mitchell Hashimoto a50421c54c synced_folders/smb: raise error if not windows 2014-02-27 08:13:06 -08:00
Mitchell Hashimoto 0fe4a4af26 synced_folders/smb: basically working 2014-02-27 08:13:05 -08:00
Mitchell Hashimoto 5d19285774 providers/hyperv: wait for IP on boot 2014-02-27 08:12:57 -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 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 a1609de7c0 Fix english typo 2014-02-26 08:09:27 -08:00
Mitchell Hashimoto 6c5179602c provisioners/salt: error if minion_config missing [GH-2893] 2014-02-24 07:58:12 -08:00
Mitchell Hashimoto 4c070a04d2 core: if can't communicate, force halt right away 2014-02-23 22:25:59 -08:00
Mitchell Hashimoto a667893cbf provisioners/shell: error if invalid encoding [GH-3000] 2014-02-23 21:50:53 -08:00
Teemu Matilainen 24f7d7b9eb Merge pull request #2975 from shanegibbs/chef-solo-role-path
Add support for multiple role paths in chef-solo >= 11.8.0
2014-02-21 23:58:10 -02:00
Teemu Matilainen fe1f7bf149 provisioners/chef: Fix loading of the custom configure file [GH-876] 2014-02-20 15:16:23 -03:00
Teemu Matilainen eea9c07029 provisioners/chef: set `encrypted_data_bag_secret` to `nil` if it's not uploaded
/cc @shanegibbs

Fixes #2984
2014-02-16 18:14:56 -03:00
Shane Gibbs 8e3dbce137 Add backwards compatibility for older versions of chef that do not support multiple role paths. 2014-02-15 11:09:06 +13:00
Mitchell Hashimoto ed5e544e63 communicators/ssh: more verbose output about waiting for SSH 2014-02-13 20:59:26 -08:00
Lukasz Jastrzebski 654870a185 Fixing ssh_config proxy_command is not included 2014-02-09 16:27:32 -08:00
Mitchell Hashimoto 647563edaf core: shorthand boxes must be foo/bar formatted, better errors 2014-02-05 21:20:31 -08:00
Mitchell Hashimoto 7a6d1a3ff1 commands/box: update command can update a specific box now 2014-02-05 21:20:23 -08:00
Mitchell Hashimoto 386938f0b1 commands/box: update looks prettier on output 2014-02-05 21:20:22 -08:00
Mitchell Hashimoto cf9004241e core: output what we're updating and what we're not 2014-02-05 21:20:21 -08:00
Mitchell Hashimoto 43157fba18 core: output the version that is added with BoxAdd 2014-02-05 21:20:20 -08:00
Mitchell Hashimoto 88b64f93a4 commands/box: "update" command 2014-02-05 21:20:19 -08:00
Mitchell Hashimoto 61a1082d65 core: BoxCheckOutdated is *much* simpler, unified logic, tests 2014-02-05 21:20:18 -08:00
Mitchell Hashimoto bfca65b098 core: better output for BoxCheckOutdated 2014-02-05 21:20:16 -08:00
Mitchell Hashimoto 8cc16d14fa core: BoxCheckOutdated checks locally 2014-02-05 21:20:13 -08:00
Mitchell Hashimoto e537e02d9d core: BoxCheckOutdated can check if a box is outdated 2014-02-05 21:20:11 -08:00
Mitchell Hashimoto f2509f5c65 commands/box: outdated command to find outdated boxes 2014-02-05 21:20:10 -08:00
Mitchell Hashimoto e9afe386c1 core: remove BoxUpgradeRequired exception 2014-02-05 21:20:06 -08:00
Mitchell Hashimoto 2ea6f92a6c core: Cleaner output for BoxAdd 2014-02-05 21:20:03 -08:00
Mitchell Hashimoto d40ff9c390 kernel_v2: test for box_url 2014-02-05 21:20:01 -08:00
Mitchell Hashimoto f0607c6df0 core: BoxAdd supports multiple URLs properly 2014-02-05 21:19:59 -08:00
Mitchell Hashimoto 38248c240c core: BoxAdd errors if name doesn't match metadata 2014-02-05 21:19:58 -08:00
Mitchell Hashimoto a115750401 core: HandleBox works with metadata boxes 2014-02-05 21:19:52 -08:00
Mitchell Hashimoto b2fa785d07 core: Environment loads proper version of box 2014-02-05 21:19:51 -08:00
Mitchell Hashimoto 7e847a36b6 core: update error message for shorthand is bad 2014-02-05 21:19:50 -08:00
Mitchell Hashimoto d08866e9f3 core: nicer error if shorthand can't be found 2014-02-05 21:19:49 -08:00
Mitchell Hashimoto 1bd3275b3b core: output the expanded URL 2014-02-05 21:19:48 -08:00
Mitchell Hashimoto b71cde6b99 core: make box add UI much icer 2014-02-05 21:19:44 -08:00
Mitchell Hashimoto c7fc9d1d46 core: BoxRemove works, tests 2014-02-05 21:19:42 -08:00
Mitchell Hashimoto 29da748702 commands/box/remove: update for new syntax 2014-02-05 21:19:41 -08:00
Mitchell Hashimoto f9c9559320 core: ask what provider to use if multiple providers 2014-02-05 21:19:38 -08:00
Mitchell Hashimoto acc57a3c18 core: clarify output for boxadd error message 2014-02-05 21:19:36 -08:00
Mitchell Hashimoto 8f0f0506d6 core: BoxAdd requires name if old-style box 2014-02-05 21:19:32 -08:00
Mitchell Hashimoto 75cffe53d1 core: BoxAdd checks if box already exists for metadata
unless force
2014-02-05 21:19:28 -08:00
Mitchell Hashimoto ee139eb79d core: more output for box adding 2014-02-05 21:19:22 -08:00
Mitchell Hashimoto 5b075fa34e core: BoxAdd adds matching provider even if lower version 2014-02-05 21:19:20 -08:00
Mitchell Hashimoto 7d44cd61c9 core: BoxAdd can add from metadata, version constraints, more 2014-02-05 21:19:18 -08:00
Mitchell Hashimoto 8abcc6e5f2 core: BoxMetadata can read the JSON description 2014-02-05 21:19:15 -08:00
Mitchell Hashimoto 87a85488d1 core: all box collection tests pass 2014-02-05 21:19:09 -08:00
Mitchell Hashimoto 6cddb92407 core: error if newer home dir version is detected 2014-02-05 21:19:05 -08:00
Mitchell Hashimoto a03bc763f9 core: tests around the environment setup_version 2014-02-05 21:19:01 -08:00
Daniel Bachhuber 8def6bf07f Fix typo in sentence 2014-02-03 13:10:28 -08: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
Mitchell Hashimoto 3c10bf7721 communicators/ssh: better error message 2014-02-03 12:09:13 +01:00
Mitchell Hashimoto ac439852ff kernel/v2: allow IPs to end in ".1" [GH-2914] 2014-02-03 12:02:14 +01:00
Teemu Matilainen e634cdc824 guests: rename LinuxShellExpandFailed error to ShellExpandFailed
Make the error generic for all guests (`DarwinShellExpandFailed` didn't
even exist) and not tied to synced folder.
2014-02-02 17:26:54 -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 09955be2cd provisioners/docker: configure auto start properly for new Docker
[GH-2874]
2014-01-21 20:52:27 -08: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 83245e6b2a core: Within a Bundler env, don't manage Bundler 2014-01-17 09:39:20 -08:00
Mitchell Hashimoto 53347abbca Merge pull request #2819 from stoned/guest-netbsd
Add NetBSD guest support
2014-01-16 10:37:54 -08:00
Mitchell Hashimoto 0f9ec27018 commands/init: update template to use strings, not symbols 2014-01-16 09:46:41 -08:00
Mitchell Hashimoto c3d0903f85 synced_folders/rsync: output directory under watch for rsync-auto 2014-01-16 09:11:41 -08:00
Mitchell Hashimoto f4f97740fb core: update translation to help Windows more 2014-01-15 20:24:39 -08:00
Mitchell Hashimoto b3de12702a Merge branch 'add_building_local_dockerfiles' of https://github.com/jpfuentes2/vagrant into jpfuentes2-add_building_local_dockerfiles 2014-01-14 08:17:44 -08:00
Stoned Elipot 10169f8e99 Add NetBSD guest support 2014-01-14 07:25:35 +01:00
Mitchell Hashimoto 9cf0387e00 core: interrupt in Cli exits with 1 2014-01-13 21:42:40 -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 7b2a0716f1 synced_folders/rsync: warn if password auth 2014-01-10 20:37:11 -08:00
Mitchell Hashimoto 55b0dffd36 synced_folders/rsync: output what is being excluded 2014-01-10 18:06:16 -08:00
Mitchell Hashimoto 38fbbb6c56 synced_folders/rsync: Initial commit working 2014-01-10 17:40:29 -08:00
Mitchell Hashimoto 91380c0650 synced_folders/nfs: automatically install NFS client if possible
If guests have the following capabilities, automatic NFS client
installation will be done:

  * nfs_client_installed - Checks if the NFS client is installed
  * nfs_client_install - Install the NFS client

Support is already in for Debian, Ubuntu, RedHat, CentOS, and Fedora
2014-01-09 16:58:20 -08:00
Mitchell Hashimoto 23c08eae9c Fix up translations 2014-01-09 10:04:31 -08:00
Mitchell Hashimoto 396511b389 core: Remove unused error classes 2014-01-09 10:03:28 -08:00
Mitchell Hashimoto b087352a14 Remove unused translations and errors thanks to @glebm 2014-01-09 09:38: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
Teemu Matilainen 481924c46d provisioners/docker: Add missing I18n key [GH-2774]
Also sort the docker keys alphabetically.
2014-01-08 22:01:22 -03:00
Mitchell Hashimoto 7c995caae5 core: Catch plugin load errors and show them to the user ina friendly way 2014-01-08 14:45:43 -08:00
Mitchell Hashimoto e2af545182 kernel/v2: a host always exists, remove dumb check 2014-01-07 21:20:28 -08:00
Mitchell Hashimoto 4cec8b48d9 hosts/freebsd: convert 2014-01-07 21:01:03 -08:00
Mitchell Hashimoto 93e365bb33 core: Vagrant::Environment uses new host settings 2014-01-07 19:11:08 -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 f612ec7549 core: support plugin sources, and mask Bundler errors 2014-01-05 23:13:49 -08:00
Mitchell Hashimoto 0117521744 commands/plugin: vagrant update is fancier now (see website docs) 2014-01-05 22:33:05 -08:00
Mitchell Hashimoto 561e65ec72 commands/plugin: list shows version constraints and entrypoints 2014-01-05 21:16:41 -08:00