Shawn Neal
068b5cf0b9
Move Windows symlink re-establishment after reboot into capability
...
This reduces the complexity and likelihood of provisioner bugs.
2014-04-30 17:36:36 -07:00
Mitchell Hashimoto
9c420b8738
providers/virtualbox: set proper mac address on priv net [GH-3588]
2014-04-30 17:09:29 -07:00
Mitchell Hashimoto
f80fdfa32a
privisoners/salt: proper bootstrap URL [GH-3583]
2014-04-30 15:32:20 -07:00
Mitchell Hashimoto
224ee8003d
Merge pull request #3585 from aspiers/backport-3277-old-virtualboxen
...
backport GH-3277 fix for missing interpolation to older drivers
2014-04-30 09:22:59 -07:00
Mitchell Hashimoto
df399d8610
providers/docker: use the proper class
2014-04-30 09:22:02 -07:00
Adam Spiers
082bf37df8
backport GH-3277 fix for missing interpolation to older drivers
...
The original fix for the "missing interpolation argument :stderr" bug
was in d4b3f226
, but it only addressed the driver for VirtualBox 4.3:
https://github.com/mitchellh/vagrant/issues/3277
This backports the fix to the drivers for VirtualBox 4.0, 4.1, and 4.2.
2014-04-30 16:06:20 +01:00
Mitchell Hashimoto
92df8cf6ae
Handle a lot of TODOs
2014-04-29 16:50:58 -07:00
Mitchell Hashimoto
b08c1a62ce
Removing some old files
2014-04-29 16:48:12 -07:00
Mitchell Hashimoto
19af4b70e6
providers/docker: with a pty, single target the docker-run cmd
2014-04-29 16:31:43 -07:00
Mitchell Hashimoto
0bb523ebb0
providers/docker: use ssh_run if asking for stdin on execute
2014-04-29 16:27:22 -07:00
Mitchell Hashimoto
e90e45a8fb
providers/docker: pty flag, not functional yet
2014-04-29 15:51:32 -07:00
Mitchell Hashimoto
ca5651a0b1
providers/docker: clearer options on docker-logs
2014-04-29 14:28:10 -07:00
Mitchell Hashimoto
013fc729a5
providers/docker: raise better error for local executor
2014-04-29 14:16:24 -07:00
Timothy Messier
513a9bf1ab
Set u+w perms on private keys in tmp dir.
...
This should allow additional `vagrant provision` calls to work when
using the salt provisioner and providing private keys. See #3542 .
2014-04-29 11:13:12 -04:00
Mitchell Hashimoto
ad961b24f5
commands/init: force flag [GH-3564]
2014-04-28 20:22:09 -07:00
Mitchell Hashimoto
90234dc32f
synced_folders/rsync: fix oddness on Windows
2014-04-28 14:49:33 -07:00
Mitchell Hashimoto
d7343c5b56
providers/docker: expand path to share relative to docker env
2014-04-28 11:08:58 -07:00
Mitchell Hashimoto
d7ecd99e2e
providers/docker: be more lenient about deleting built image
2014-04-28 09:36:55 -07:00
Mitchell Hashimoto
8ed5351dd1
providers/docker: destroy built image on up
2014-04-27 19:36:02 -07:00
Mitchell Hashimoto
27cd8886b3
providers/docker: cleaner reload
2014-04-27 19:27:11 -07:00
Mitchell Hashimoto
12d3e06f69
providers/docker: can docker-run non-existent containers
2014-04-27 19:22:14 -07:00
Mitchell Hashimoto
a2b4f31916
providers/docker: don't show cmd if one is not specified
2014-04-27 19:06:39 -07:00
Mitchell Hashimoto
685bdbf1f0
whitespace
2014-04-27 18:58:57 -07:00
Mitchell Hashimoto
c818a14072
providers/docker: expose ports
2014-04-27 18:37:25 -07:00
Mitchell Hashimoto
ff9de3586a
providers/docker: run_command doesn't need to actual setup host machine
2014-04-27 18:28:11 -07:00
Mitchell Hashimoto
a8822e84d2
providers/docker: fix some extranneous newlines in streamed output
2014-04-27 18:26:12 -07:00
Mitchell Hashimoto
f1e1617cfd
providers/docker: stream data for run
2014-04-27 18:23:31 -07:00
Mitchell Hashimoto
abf7c0526b
providers/docker: docker-run command starting points
2014-04-27 18:10:41 -07:00
Mitchell Hashimoto
2694f746a7
providers/virtualbox: no SSH info if not running
2014-04-27 17:26:24 -07:00
Mitchell Hashimoto
ac040102f9
Merge pull request #3544 from benesch/rsync-conservative-chown
...
synced_folders/rsync: only chown when necessary
2014-04-27 15:59:40 -07:00
Mitchell Hashimoto
8cdf8c7916
Merge pull request #3549 from javornikolov/fix-vbox-install-path-detect-on-windows
...
providers/virtualbox: Fix vbox install path detection on Windows 8
2014-04-27 15:56:37 -07:00
Mitchell Hashimoto
77fb6d73b8
Merge pull request #3552 from benesch/rsync-auto-handle-interrupt
...
command/rsync-auto: properly exit on interrupt
2014-04-27 15:54:22 -07:00
Mitchell Hashimoto
df86b18263
Update CHANGELOG, fix tests
2014-04-27 15:53:31 -07:00
Mitchell Hashimoto
617a85be06
Merge pull request #3553 from bclarkindy/rsync_ssh_proxy
...
synced_folders/rsync: Add SSH proxy_command functionality to rsync
2014-04-27 15:52:17 -07:00
Mitchell Hashimoto
91c7fb7749
Merge pull request #3554 from mitchellh/chef-provisioner-cleanup
...
provisioner/chef: Chef provisioner cleanup with Windows
2014-04-27 15:51:30 -07:00
Timothy Messier
adeaf29487
Fixed missing end to if
2014-04-27 12:36:01 -04:00
Timothy Messier
b93c6df956
The various `install` args should always be passed to salt-bootstrap.
...
Even when preforming config only, the install flags (i.e. -M, -S, -N),
are used by the bootstrap to determine which configs to copy.
This should help with #3542 and should supersede #3548 .
2014-04-27 12:34:24 -04:00
Shawn Neal
cf71634813
DRY'd up Chef command building
...
There's very little difference between the command building on Linux and Windows other than path formatting. All Chef provisioners support the --no-color argument now.
Added unit tests to verify changes.
2014-04-26 21:07:26 -07:00
Shawn Neal
ebca0e7e44
Fixed bug in CommandBuilderWindows
...
CommandBuilderWindows would not include the Chef binary in the command when the binary_path was specified in the config.
Backfilled unit tests for CommandBuilderWindows
2014-04-26 21:07:26 -07:00
Shawn Neal
68ce06561a
Removed old unused WinRM chef provisioner scripts
2014-04-26 21:07:26 -07:00
Shawn Neal
38c7203f92
Chef provisioner should utilize reboot capability
2014-04-26 21:07:26 -07:00
Shawn Neal
99ce95198b
First pass at integrating new WinRM elevated execution wrapper
...
- Removed a lot of the Windows special casing from Chef runs
- Don't attempt to use @config.binary_env since we don't properly pass this along to Chef
2014-04-26 21:07:26 -07:00
Shawn Neal
30b0399431
Use new Ruby hash initializer syntax
2014-04-26 21:07:26 -07:00
Shawn Neal
f18a397289
Allow WinRM commands to be run elevated via scheduled task
2014-04-26 21:07:26 -07:00
Shawn Neal
1dd081d866
Don't use interpolated strings for username and password
...
Its possible that usernames and passwords may contain special characters like $
2014-04-26 21:07:26 -07:00
Shawn Neal
045e06455a
Added WinRM elevated shell wrapper script
...
This script creates an immediately run scheduled task using fresh credentials. This is a generic implementation used by the Chef provisioners. The script gets around several limitations in WinRM.
1. Credential hopping
2. The non-default Administrator account sometimes doesn't have true Administrator access when run through WinRM even with UAC disabled.
In short, this script allows commands to run through WinRM just as if they were run directly on the box.
2014-04-26 21:07:26 -07:00
Nikhil Benesch
8fb49f10cc
command/rsync-auto: properly exit on interrupt
...
Currently, interrupting 'vagrant rsync-auto' once it's waiting for
filesystem events has no effect. Appears to be a deadlock related to
signal handlers in Ruby 2.0 [0].
Remove call to `thread.join` in signal handler. The handler doesn't
need to wait for `true` to be added to the queue; it just needs to
launch the thread.
[0]: https://bugs.ruby-lang.org/issues/7917
2014-04-26 16:24:25 -04:00
Brian.Clark
fb509ac8b7
Add ssh ProxyCommand functionality to rsync
2014-04-26 13:52:39 -04:00
jjshoe
7ef8477e43
provisioners/ansible: Don't run with two --limits
...
Conflicts:
test/unit/plugins/provisioners/ansible/provisioner_test.rb
2014-04-26 11:55:59 +02:00
Yavor Nikolov
2cbaa98751
Fix processing of VBOX_INSTALL_PATH
2014-04-26 11:05:32 +03:00
Nikhil Benesch
2df36892dd
synced_folders/rsync: only chown when necessary [GH-3525]
...
Run remote rsync as root to guarantee that rsync can write to guestpath.
This obviates the need to chown the guestpath to the SSH user prior to
sync.
This brings a substantial speedup (2x on a moderately-sized shared
folder) and properly triggers filesystem notifications on only the files
changed by a given sync.
2014-04-25 15:00:12 -04:00
Mitchell Hashimoto
6870de3f6d
core: add Vagrant.latest_version
2014-04-24 20:09:32 -07:00
Mitchell Hashimoto
63dffe3f92
commands/version: check latest version
2014-04-24 19:54:26 -07:00
Mitchell Hashimoto
ffdb276d4c
Merge pull request #3536 from shadowfax-chc/force-overwrite-salt-configs
...
provisioners/salt: force overwrite of salt configs and keys.
2014-04-24 19:14:40 -07:00
Mitchell Hashimoto
de6759f94d
Merge pull request #3538 from mitchellh/f-box-usage
...
Track box usage (local) to know if envs are using boxes
2014-04-24 10:42:02 -07:00
Timothy Messier
c4ae0badc3
Force overwrite of salt configs and keys.
...
This will tell the salt-bootstrap script to overwrite the master/minion
configs and/or keys each time provision is called. #3524 #3176
2014-04-24 11:56:54 -04:00
Shawn Neal
cad3dde760
Fixed whitespacing in command_filter and file_manager
2014-04-24 07:52:13 -07:00
Shawn Neal
afeb60c850
ivars should be alphabetized
2014-04-24 07:50:24 -07:00
Shawn Neal
d5d9918e48
Cleanup whitespace and comments in WinRM command filters
2014-04-24 07:49:19 -07:00
Shawn Neal
ab51a786ff
Extract execution_output method from WinRM comm execute
2014-04-23 21:49:28 -07:00
Shawn Neal
4a2a147926
Refactored WinRM test command filter
2014-04-23 21:15:05 -07:00
Shawn Neal
f44c795eed
Integrated WinRM command filter into communicator
...
*nix commands are now filtered out instead of being sent to the guest. This means the command_alias PowerShell script is no longer needed.
Moved the PowerShell exit code helper to the WinRM shell and changed it to always return an exit code.
2014-04-23 20:38:16 -07:00
Shawn Neal
1525aa0f78
Added WinRM grep command filter
...
This is needed because isn't available on Windows and Vagrant guest detection attempts to use grep for some OSs.
2014-04-23 20:37:15 -07:00
Shawn Neal
ac81841b01
test command should expand environment variables
...
'$Env:SystemRoot' does not expand
"$Env:SystemRoot" does expand
2014-04-23 18:26:45 -07:00
Shawn Neal
96ab8f60c5
Added WinRM command filters
...
These will be used to replace the guest side command_alias script that is sent with every communicator execute call. This avoids some uncessary remote calls to the guest, makes it unit testable, and allows larger PowerShell commands to be invoked.
2014-04-23 17:50:20 -07:00
Mitchell Hashimoto
e1c79c4692
commands/global-status: call proper method
2014-04-23 06:21:44 -07:00
Mitchell Hashimoto
5da77dee5c
commands/box/remove: add --force flag
2014-04-23 06:16:51 -07:00
Mitchell Hashimoto
eae3f3243e
Merge pull request #3517 from mitchellh/communicator-support-for-wql
...
communicator/winrm: Communicator support for wql
2014-04-23 06:02:24 -07:00
Mitchell Hashimoto
fbcc6d25b4
Merge pull request #3519 from mitchellh/windows-guest-file-manager
...
communicators/winrm: Windows guest file manager
2014-04-23 06:01:59 -07:00
Mitchell Hashimoto
e985308e9a
core: MachineIndex::Entry#valid? method and tests
2014-04-22 17:09:44 -07:00
Shawn Neal
5f4a900d8e
Add WinRM file transfer error and english text
2014-04-22 14:54:13 -07:00
Shawn Neal
f292232ca8
Added Windows guest file manager for recursive uploads
...
- Since WinRM uploads are so slow, MD5 content checking is used
2014-04-22 14:42:13 -07:00
Shawn Neal
62f5be49d5
Cleaner DHCP detection for Windows guests
2014-04-22 13:28:51 -07:00
Shawn Neal
728ec28f2d
Windows GuestNetwork directly uses the communicator
...
- Fixed slight Law of Demeter violation
- Make guest access through comm consistent
2014-04-22 11:54:34 -07:00
Shawn Neal
9177bd8a48
Added WQL support to Vagrant communicator execute
...
- Removed duplication for WQL specific commands
2014-04-22 11:29:22 -07:00
Shawn Neal
929e41aa5c
Backfilled unit tests for Windows guest support
...
- Fixed typo in helper test
- Removed extraneous machine.config prefix from Windows guest config validation
- Added WinRM communicator unit tests
- Added Windows guest capability unit tests
2014-04-22 11:03:37 -07:00
Mitchell Hashimoto
a47b85c8c4
synced_folders/rsync: add UserKnownHostsFile to /dev/null [GH-3511]
2014-04-21 20:39:48 -07:00
Mitchell Hashimoto
7cbef9b3d9
providers/docker: doesn't support NFS if b2d [GH-3510]
2014-04-21 20:38:10 -07:00
Mitchell Hashimoto
afd3f1ff43
synced_folders/nfs: can say functional is false explicitly
2014-04-21 20:37:14 -07:00
Mitchell Hashimoto
ec57a286cd
hosts/darwin: use a temp dir since Tempfile is deleted right away
2014-04-21 13:56:43 -07:00
Mitchell Hashimoto
db64fbf6ef
communicators/winrm: reload shell on reload so we get proper port
2014-04-21 13:56:42 -07:00
Mitchell Hashimoto
7ee9b7cd42
kernel/v2: make sure communicator is a symbol
2014-04-21 13:56:41 -07:00
Mitchell Hashimoto
b0b445fcac
hosts/darwin: rdp client support by subprocessing `open`
2014-04-21 13:56:40 -07:00
Mitchell Hashimoto
a205cf84a0
providers/virtualbox: don't require valid config on destroy [GH-1629]
2014-04-21 13:56:37 -07:00
Mitchell Hashimoto
4372ab034e
providers/virtualbox: merge customizations properly
2014-04-21 13:56:32 -07:00
Mitchell Hashimoto
568185c3e9
providers/docker: always copy the host VM Vagrantfile
2014-04-21 13:56:31 -07:00
Mitchell Hashimoto
22d9b0eeb2
guests/linux: unmount uses rmdir instead of rm -rf to avoid catastrophe
2014-04-21 13:56:30 -07:00
Mitchell Hashimoto
2e8f837f9b
providers/docker: fix exception typo
2014-04-21 13:56:29 -07:00
Mitchell Hashimoto
89b6336d21
providers/docker: retry sync_folders action
2014-04-21 13:56:28 -07:00
Mitchell Hashimoto
e38ae9b5c6
providers/docker: don't guard for image on create, since can come from build
2014-04-21 13:56:27 -07:00
Mitchell Hashimoto
1c3ee6ffa3
providers/docker: rebuild image if it doesn't exist
2014-04-21 13:56:26 -07:00
Mitchell Hashimoto
d837086572
providers/docker: get rid of mutex around Docker access, should be safe
2014-04-21 13:56:25 -07:00
Mitchell Hashimoto
aa13a43c69
providers/docker: its okay if no image file on destroy
2014-04-21 13:56:23 -07:00
Mitchell Hashimoto
1c7faae1ee
provisioners/*: prefix the output
2014-04-21 13:56:19 -07:00
Emilien Kenler
b77bd3e6bb
Unit test + vault password file existence check
2014-04-21 13:56:16 -07:00
Emilien Kenler
dd06dffe85
Ansible Vault support
...
Add the following options to the Ansible provisioner:
- ask_vault_pass
- vault_password_file
2014-04-21 13:56:15 -07:00
Mitchell Hashimoto
bad6537e86
kernel/v2: provider configs do proper merge logic for config
2014-04-21 13:56:14 -07:00
Mitchell Hashimoto
8171471628
providers/docker: make merge logic a bit more sensible
2014-04-21 13:56:13 -07:00
Mitchell Hashimoto
8a76c2bc76
providers/docker: can force a host VM optionally
2014-04-21 13:56:08 -07:00
Mitchell Hashimoto
79793ab130
providers/docker: config validation and specs
2014-04-21 13:56:07 -07:00