Commit Graph

2896 Commits

Author SHA1 Message Date
Mitchell Hashimoto 44e379e961 core: Machine sets index entries on ID sets 2014-04-21 13:51:19 -07:00
Mitchell Hashimoto 8a6bdbf710 core: Environment#machine_index 2014-04-21 13:51:17 -07:00
Mitchell Hashimoto a29f5d7e01 core: Add MachineIndex#delete 2014-04-21 13:51:16 -07:00
Mitchell Hashimoto 69a290eb9d core: replace "-" in UUIDs with "" 2014-04-21 13:51:15 -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 f07ee5754a core: Configurable communicator 2014-04-21 13:51:02 -07:00
Ramon de la Fuente f6a5e20688 Add autostart as an option for vagrant boxes
Added specs for the environment and vagrantfile. Added a methd to retrieve
autostart_machine_names. Changed the plugin up/command to use autostart_machine_names
when no argument was given to the command.
2014-04-21 13:50:57 -07:00
Mitchell Hashimoto e05bfa979e core: remove temp file when done with box 2014-04-17 08:58:38 -07:00
Mitchell Hashimoto ec35190cfc core: use process.alive? to avoid exceptions 2014-04-13 14:24:25 -07:00
Mitchell Hashimoto 00962c7c2a commands/box/repackage: better error if box not found 2014-04-12 18:00:33 -07:00
Mitchell Hashimoto 2cb6a21a5a core: Fix tests, which found broken logic in synced folders 2014-04-11 16:28:38 -07:00
Mitchell Hashimoto 2b47478d6a core: all symlinks for synced folders are expanded [GH-3444] 2014-04-11 16:21:12 -07:00
Mitchell Hashimoto 3aad85fa30 style 2014-04-11 09:56:35 -07:00
Mitchell Hashimoto cd2c99972b core: No need to map! here 2014-04-11 09:32:25 -07:00
Mitchell Hashimoto 44d7c6849d Merge pull request #3441 from berendt/sort_versions_and_print_listing
commands/box/remove: sort versions and print them as listing
2014-04-11 09:32:08 -07:00
Christian Berendt 8dffbe5db8 sort versions and print them as listing
before this patch:

```
$ vagrant box remove --box-version 0.2.9 berendt/ubuntu-14.04-amd64
You requested to remove the box 'berendt/ubuntu-14.04-amd64' version '0.2.9' with
provider 'virtualbox', but that specific version of the box is
not install. Please double-check and try again. The available versions
for this box are:

0.2.11, 0.2.10
```

after this patch:

```
You requested to remove the box 'berendt/ubuntu-14.04-amd64' version '0.2.9' with
provider 'virtualbox', but that specific version of the box is
not install. Please double-check and try again. The available versions
for this box are:

 * 0.2.10
 * 0.2.11
```
2014-04-11 11:39:38 +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 1bef7dec61 Add comment to clarify 2014-04-05 09:37:59 -07:00
Mitchell Hashimoto 1cd266da9d core: randomize perm test filename 2014-04-05 09:36:55 -07: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 5b360d0990 core: BoxCollection#find version constraint can benil 2014-04-02 19:50:44 -07:00
Mitchell Hashimoto d1caf8c624 core: Allow direct box adding again 2014-04-02 19:45:49 -07:00
Mitchell Hashimoto 3371c37162 TemplateRenderer can take a new root [GH-3231] 2014-04-02 09:53:20 -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 af7a589231 core: outdated check checks local boxes [GH-3321] 2014-04-02 08:37:03 -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 8c8c6c132c core: lock prerelease gems 2014-04-01 22:28:33 -07:00
Mitchell Hashimoto 9c570adbd7 Merge pull request #3301 from mitchellh/fix-issue-3285
core: fix prerelease gem versions
2014-04-01 22:25:43 -07:00
Mitchell Hashimoto b6259c2ae9 core: Ignore if temporary box file doesn't exist when adding 2014-04-01 22:18:49 -07:00
Mitchell Hashimoto 666b270e0b core: can add boxes with spaces in paths [GH-3306] 2014-04-01 22:18:37 -07:00
Mitchell Hashimoto 7d0cbcb686 Merge pull request #3318 from ecoleman/patch-1
core: properly escape path in cygwin bash check
2014-04-01 22:02:29 -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
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
Eric Coleman f32a865abd Properly escape path in cygwin bash check
Quick attempt at properly fixing #3304
2014-03-25 18:36:05 -04:00
Shawn Neal 0a2992b92d Fixed issue 3285
When using prerelease gems we need to ensure we store the gem version otherwise Bundler won't use the correct gem version since prerelease gems are not available by default. By storing the gem version for prerelease gems, we allow Bundler to properly resolve prerelease gems and not give potentially confusing errors to Vagrant users using prerelease plugins.
2014-03-21 08:15:24 -07:00
Mitchell Hashimoto 846f942ff0 core: check for data_dir [GH-3208] 2014-03-14 14:04:00 -07:00
Jonas Stendahl d7320399e2 Fixed broken PowerShell scripts execution [GH-3192] 2014-03-14 12:42:28 +01:00
Mitchell Hashimoto 024056fc66 Set the Bundler UI only if we enable it [GH-3193] 2014-03-13 14:18:33 -07:00
Mitchell Hashimoto 513efa6739 core: Downloads with user/pass use curl -u flag [GH-3183] 2014-03-13 08:53:18 -07:00
Mitchell Hashimoto 8634cc309b core: error earlier if adding a path that doesn't exist 2014-03-12 20:33:12 -07:00
Mitchell Hashimoto 621369ebba core: Execute PowerShell scripts even with spaces in dir [GH-3100] 2014-03-12 19:49:45 -07:00
Mitchell Hashimoto 5863ffdf7b core: Windows paths work for box add [GH-3132] 2014-03-11 11:27:35 -07:00
Mitchell Hashimoto 49471ffbf6 core: output when upgrading home path 2014-03-11 11:06:38 -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 2a93b6c396 core: Assume box isn't metadata if > threshold [GH-3107] 2014-03-11 08:44:05 -07:00
Mitchell Hashimoto 122319834c core: Setup the tmp_path before calling setup_home_path [GH-3095] 2014-03-10 15:09:09 -07:00
Mitchell Hashimoto b6830639dd core: EINVAL is not a metadata URL 2014-03-10 14:33:30 -07:00
Mitchell Hashimoto ee23b87eb6 core: Private boxes authenticate metadata box URLs too 2014-03-09 19:24:54 -07:00
Mitchell Hashimoto 04a19e05ca synced_folders/rsync: convert to proper unix-style path [GH-3086] 2014-03-09 18:22:00 -07:00
Mitchell Hashimoto c6b07e10c9 core: Cygwin path conversion must replace slashes first 2014-03-07 22:56:47 -08:00
Mitchell Hashimoto 914d177346 core: Fix misleading wording in pre-rubygems [GH-3078] 2014-03-07 10:44:00 -08:00
Mitchell Hashimoto 4c9e6e46b2 provisioners/salt: don't use exteranl deep_merge [GH-2348] 2014-03-07 09:18:34 -08:00
Mitchell Hashimoto adc8151a4a core: the provision sentinel should be backwards compatible 2014-03-06 09:25:29 -08:00
Mitchell Hashimoto 79df69392f core: initialize synced folder class only once [GH-3067] 2014-03-06 08:35:21 -08:00
Mitchell Hashimoto 6fefef7538 core: packaging works again 2014-03-05 13:37:15 -08:00
Mitchell Hashimoto 7f2fe524b3 core: use default color by default (not white) 2014-03-05 10:19:53 -08:00
Mitchell Hashimoto 3348b5d7a6 core: set default server URL 2014-03-05 07:20:52 -08:00
Mitchell Hashimoto c098a3296b core: safer dup checks for synced folders 2014-03-03 20:38:59 -08:00
Mitchell Hashimoto 4437bcd77f core: better error if attempting to uninstall system plugin 2014-03-03 15:05:32 -08:00
Mitchell Hashimoto b5637da6c4 core: plugin manager marks system gems as system 2014-03-03 14:55:34 -08:00
Mitchell Hashimoto 7710fd16fa core: load system plugins if they are installed 2014-03-03 09:44:29 -08:00
Mitchell Hashimoto 616bf15df5 core: Vagrant.installer_embedded_dir 2014-03-03 09:37:22 -08:00
Bernhard Morgenstern 9f612402e9 Read box file in binary mode for checksum 2014-03-02 02:31:29 +01:00
Mitchell Hashimoto a858257ffe core: duplicate URL array when authing so we don't mess up original 2014-03-01 12:32:58 +01:00
Mitchell Hashimoto 5018e4d8a4 core: checksums supported when adding box from metadata 2014-03-01 12:03:22 +01:00
Mitchell Hashimoto 23bd397cb8 core: BoxMetadata supports checksums 2014-03-01 11:59:16 +01:00
Mitchell Hashimoto ce350fe872 core: box checksums just work properly again for direct box adds 2014-03-01 11:54:37 +01:00
Mitchell Hashimoto 7926f7f051 core: box URLs can be authenticated by hooking 2014-03-01 11:38:04 +01:00
Mitchell Hashimoto 736bd8d34e core: remove unused variable from Message builtin 2014-02-28 05:17:52 -06:00
Mitchell Hashimoto c735e81e4d core: expand IsState to support inversions 2014-02-27 08:13:12 -08:00
Mitchell Hashimoto e93038fd0e providers/hyperv: suspend/resume 2014-02-27 08:13:11 -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 a1958ee12f providers/hyperv: shuffle things around 2014-02-27 08:12:48 -08:00
Mitchell Hashimoto 6b17783688 synced_folders/nfs: unavailable on Windows 2014-02-27 08:11:50 -08:00
Mitchell Hashimoto 5f1caf3ada core: re-ask if confirmation bad input [GH-3027] 2014-02-26 08:01:45 -08:00
Mitchell Hashimoto dfee3f8445 core: default URL will be https 2014-02-25 21:39:32 -08:00
Mitchell Hashimoto b8676a65dd core: Vagrant.server_url should default if empty 2014-02-25 21:39:05 -08:00
Lucas Heinlen e530108b6a Do not to_s the machine id if it is nil
When destroying a machine, the machine id is set to nil, the to_s causes it to be set to empty string.  This can cause inconsistent behavior in anything (such as plugins) that tests the machine id.
2014-02-24 15:43:58 -05:00
Mitchell Hashimoto 4c070a04d2 core: if can't communicate, force halt right away 2014-02-23 22:25:59 -08:00
Mitchell Hashimoto 8bb0094113 Avoid locking in trap context 2014-02-23 22:22:18 -08:00
Mitchell Hashimoto a667893cbf provisioners/shell: error if invalid encoding [GH-3000] 2014-02-23 21:50:53 -08:00
Mitchell Hashimoto 399a3e48da core: provisioner sentinel should check machine ID 2014-02-23 21:23:31 -08:00
Mitchell Hashimoto 0e3b3d654d Depend on ChildProcess 0.5.0, fix bugs 2014-02-18 11:15:19 -08:00
Mitchell Hashimoto 4f89bdb947 core: disable parallelization if only one action 2014-02-15 16:37:27 -08:00
Mitchell Hashimoto 4e90aa7824 core: copy all sub-directories in a box properly
This avoids an Errno::EACCES on windows, although I'm really unsure why.
2014-02-15 15:55:33 -08:00
Mitchell Hashimoto a4f64d0148 core: ui can hide details 2014-02-13 21:09:02 -08:00
Mitchell Hashimoto d2d96a0726 core: keep process group for SSH childprocess 2014-02-13 16:45:45 -08:00
Mitchell Hashimoto 5fb64dfca2 core: use Process#wait since childprocess bug is fixed 2014-02-13 07:40:33 -08:00
Mitchell Hashimoto 8bfb4bda2b core: make sure any Subprocess exits no matter what 2014-02-12 21:35:54 -08:00
Mitchell Hashimoto 42fa0a6540 core: poll for process exit on SSH#exec with subprocess 2014-02-12 21:31:05 -08:00
Mitchell Hashimoto 79581df71b core: chomp the version so we can echo into it 2014-02-12 15:01:12 -08:00
Mitchell Hashimoto 2c72c32df0 core: Modify Bundler settings to work with restricted permissions
This includes two changes:

1. Change the Vagrant requirement to use the "= VERSION" constraint.
   The "path:" previously requires write permission in the directory
   of the gemspec, which we don't have in installers.

2. Set a BUNDLE_APP_CONFIG and BUNDLE_PATH setting. By setting this,
   Bundler won't ask for sudo password. Bundler never actually needs it;
   it is just overly aggressive in thinking it does.
2014-02-12 14:24:17 -08:00
Mitchell Hashimoto 06a7c88316 core: HandleBox keeps the same machine instance 2014-02-11 16:06:03 -08:00