Commit Graph

2000 Commits

Author SHA1 Message Date
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
Mitchell Hashimoto 0094a58227 providers/docker: when building from Dockerfile, show image ID 2014-04-21 13:56:06 -07:00
Mitchell Hashimoto 052ee624bb providers/docker: forgot a file 2014-04-21 13:56:05 -07:00
Mitchell Hashimoto f78f72920c providers/docker: flatten stack so it runs at one point 2014-04-21 13:56:04 -07:00
Mitchell Hashimoto 067c1ca348 providers/docker: reuse action stacks where possible 2014-04-21 13:56:02 -07:00
Mitchell Hashimoto 67741ad902 providers/docker: fix ordering of removing built images 2014-04-21 13:56:01 -07:00
Mitchell Hashimoto e50eb6c7a9 providers/docker: default host VM doesn't sync folder 2014-04-21 13:56:00 -07:00
Mitchell Hashimoto 53017bccc8 command/rsync-auto: work with provisioner synced folders 2014-04-21 13:55:57 -07:00
Mitchell Hashimoto 16ae728b5f providers/docker: remove built image on reload and destroy 2014-04-21 13:55:55 -07:00
Mitchell Hashimoto 81df70eee0 providers/docker: support building Dockerfiles 2014-04-21 13:55:54 -07:00
Mitchell Hashimoto 3ba0ca3562 providers/docker: fix typo in translation 2014-04-21 13:55:52 -07:00
Mitchell Hashimoto 61388186e9 providers/docker: can set custom container name 2014-04-21 13:55:51 -07:00
Mitchell Hashimoto 58ddc66b9c providers/docker: can specify links 2014-04-21 13:55:50 -07:00
Mitchell Hashimoto 71d615212d providers/docker: can set environmental variables 2014-04-21 13:55:49 -07:00
Mitchell Hashimoto 0a3346c918 providers/docker: warning if synced folders change 2014-04-21 13:55:48 -07:00
Mitchell Hashimoto d1b3165545 providers/docker: cleaner action stacks 2014-04-21 13:55:47 -07:00
Mitchell Hashimoto 35d9256137 providers/docker: only provision if ssh (command) 2014-04-21 13:55:46 -07:00
Mitchell Hashimoto 81818f36fc providers/docker: graceful halt only if SSH is available 2014-04-21 13:55:45 -07:00
Mitchell Hashimoto 4a59c5c522 providers/docker: optimizing the action stacks... 2014-04-21 13:55:44 -07:00
Mitchell Hashimoto c0f5095783 providers/docker: wait for running state, error if not 2014-04-21 13:55:42 -07:00
Mitchell Hashimoto 09cc823065 providers/docker: warning with host VM about forwarded ports 2014-04-21 13:55:41 -07:00
Mitchell Hashimoto 19c9973a0d guests/linux: set a timeout on nc 2014-04-21 13:55:40 -07:00
Mitchell Hashimoto e578e91e3a providers/docker: implement port checker for remote machine 2014-04-21 13:55:39 -07:00
Mitchell Hashimoto 4dabfc1aff providers/docker: clean up forwarded port handling 2014-04-21 13:55:37 -07:00
Mitchell Hashimoto 6ea6ad3e08 providers/docker: only correct port collisions if not host VM 2014-04-21 13:55:36 -07:00
Mitchell Hashimoto 58a043e2aa providers/docker: upload the keys we need for SSH 2014-04-21 13:55:35 -07:00
Mitchell Hashimoto 447f407b0b providers/docker: use a mutex for intra-process lock 2014-04-21 13:55:31 -07:00
Mitchell Hashimoto 3edfe6deaf providers/docker: remove synced folders after docker rm 2014-04-21 13:55:28 -07:00
Mitchell Hashimoto cd38f891da providers/docker: disable synced folders on destroy 2014-04-21 13:55:27 -07:00
Mitchell Hashimoto 704ff98200 providers/docker: only sync folders if they're not already there 2014-04-21 13:55:26 -07:00
Mitchell Hashimoto 10e51eb141 providers/docker: initial sync folders working through proxy VM 2014-04-21 13:55:20 -07:00
Mitchell Hashimoto c1f14320bd providers/docker: process-level lock on host machine up 2014-04-21 13:55:13 -07:00
Mitchell Hashimoto afb61b1466 providers/virtualbox: synced folder supports the "disable" method 2014-04-21 13:55:12 -07:00
Mitchell Hashimoto e119a5714a core: add "disable" method for synced folders, deprecate "prepare" 2014-04-21 13:55:09 -07:00
Mitchell Hashimoto c3e6c794cd synced_folders/nfs: acquire process-level lock for export 2014-04-21 13:55:07 -07:00
Mitchell Hashimoto 7da9ad0fa6 commands/destroy: change exit codes [GH-811] 2014-04-21 13:55:01 -07:00
Mitchell Hashimoto a2a822c6e6 providers/docker: SSH action re-uses the communicator helpers 2014-04-21 13:54:58 -07:00
Mitchell Hashimoto 4477545d3f providers/docker: execute the proxied SSH in a shell 2014-04-21 13:54:57 -07:00
Mitchell Hashimoto e947960c09 providers/docker: use a custom communicator to go through host VM 2014-04-21 13:54:56 -07:00
Mitchell Hashimoto bdade7d5a6 providers/docker: notify when proxying SSH 2014-04-21 13:54:55 -07:00
Mitchell Hashimoto e714720052 providers/docker: `vagrant ssh` proxies through the host VM 2014-04-21 13:54:54 -07:00
Mitchell Hashimoto 6721d8e964 communicators/ssh: just use Ruby 2.0 features 2014-04-21 13:54:52 -07:00
Mitchell Hashimoto c220bfc27d providers/docker: TODO for me 2014-04-21 13:54:51 -07:00
Mitchell Hashimoto 56f9fdac21 commands/docker-logs: exit status 1 if no logs were retrieved 2014-04-21 13:54:49 -07:00
Mitchell Hashimoto eab553ad55 providers/docker: better comments 2014-04-21 13:54:48 -07:00
Mitchell Hashimoto cb95e8aaee commands/docker-logs: parallelize for multiple containers 2014-04-21 13:54:47 -07:00
Mitchell Hashimoto da0db72054 providers/docker: docker-attach => docker-logs 2014-04-21 13:54:45 -07:00
Mitchell Hashimoto 54de2e3c6f providers/docker: docker-attach command for following output 2014-04-21 13:54:44 -07:00
Mitchell Hashimoto b655b6d910 providers/docker: remove TODO 2014-04-21 13:54:41 -07:00
Mitchell Hashimoto 144c874b5a providers/docker: process-level lock on copying default Vagrantfile 2014-04-21 13:54:40 -07:00
Mitchell Hashimoto bed34a730b provisioners/docker: fix module name for new docker provider 2014-04-21 13:54:35 -07:00
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 2b07dec059 core: Use the MachineIndex#vagrant_env method 2014-04-21 13:54:31 -07:00
Mitchell Hashimoto 09ff31e3a3 commands/global-status: add --prune flag 2014-04-21 13:54:29 -07:00
Mitchell Hashimoto 7c8053cb2b hosts/windows: don't remove the rdp file, race condition 2014-04-21 13:54:21 -07:00
Mitchell Hashimoto 5b5f10e175 commands/rdp: config 2014-04-21 13:54:20 -07:00
Mitchell Hashimoto 3d0a2959cd commands/rdp: nicer output 2014-04-21 13:54:19 -07:00
Mitchell Hashimoto 8698ebeff6 hosts/windows: use the port when connecting 2014-04-21 13:54:18 -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 76a7c63f8b guests/windows: detect the port for RDP 2014-04-21 13:54:15 -07:00
Mitchell Hashimoto 7705ad76c6 guests/windows: use the public_address cap 2014-04-21 13:54:14 -07:00
Mitchell Hashimoto 993256643d guests/windows: rdp_info cap 2014-04-21 13:54:13 -07:00
Mitchell Hashimoto 0fa07637f9 commands/rdp: execute propre capabilities 2014-04-21 13:54:11 -07:00
Mitchell Hashimoto 746b568176 hosts/windows: rdp_client cap 2014-04-21 13:54:10 -07:00
Mitchell Hashimoto de7b4bbdc1 commands/rdp: basic skeleton 2014-04-21 13:54:09 -07:00
Mitchell Hashimoto 2929f7a853 provisoiners/chef: windows command builder 2014-04-21 13:54:08 -07:00
Mitchell Hashimoto 7022b1c29d provisioners/chef: command builder for Linux 2014-04-21 13:54:06 -07:00
Mitchell Hashimoto 909cda4bd1 provisioners/chef: reinit net shares on Windows guests 2014-04-21 13:54:05 -07:00
Mitchell Hashimoto 427d49402d provisioners/cfengine: fix typo 2014-04-21 13:54:04 -07:00
Mitchell Hashimoto 72030d2180 Note provisioners that don't work on Windows guests 2014-04-21 13:54:02 -07:00
Mitchell Hashimoto bd51c16700 provisioners/puppet: execute properly with WinRM 2014-04-21 13:54:00 -07:00
Mitchell Hashimoto 1a0cb9b4c1 privisioners/puppet: wait for reboot on Windows 2014-04-21 13:53:59 -07:00
Mitchell Hashimoto bec2cbbf4d provisioners/shell: check for winrm should be on machine config 2014-04-21 13:53:56 -07:00
Mitchell Hashimoto 4145aa6bcd privisioners/shell: wait for reboot if we can 2014-04-21 13:53:54 -07:00
Mitchell Hashimoto 4fc6fbeef6 privisioners/shell: fix syntax error 2014-04-21 13:53:53 -07:00
Mitchell Hashimoto 286fd2f2f8 provisioners/shell: friendly output if winrm shell provisioning 2014-04-21 13:53:52 -07:00
Mitchell Hashimoto bddc7928ad provisioner/shell: proper extension on temporary file 2014-04-21 13:53:50 -07:00
Mitchell Hashimoto 89671974cf provisioners/shell: handle comm output in a uniform way 2014-04-21 13:53:49 -07:00
Mitchell Hashimoto cde5d0bafb privisioners/shell: execute windows script 2014-04-21 13:53:48 -07:00
Mitchell Hashimoto aca8c4f8f3 provisioners/shelL: don't replace windows lineendings for WinRM 2014-04-21 13:53:47 -07:00
Mitchell Hashimoto 15fe061004 provisioners/shell: cause provision_winrm if winrm 2014-04-21 13:53:46 -07:00
Mitchell Hashimoto abd4185565 guests/freebsd: fix network name for vtnet 2014-04-21 13:53:45 -07:00
Mitchell Hashimoto 2057d513cb Update CHANGELOG 2014-04-21 13:53:44 -07:00
Maximilian Fischer a7b70dcf70 OpenBSD support for virtio interfaces
- When using KVM as provider you were not able to configure network
  interfaces that use virtio, because the interface name was strictly
  set to 'em'
2014-04-21 13:53:42 -07:00
Mitchell Hashimoto 96971194bc update CHANGELOG 2014-04-21 13:53:41 -07:00
Doug Stevenson cc343d1a7d Add config for FreeBSD guest plugin. Allow device to be configurable 2014-04-21 13:53:39 -07:00
Mitchell Hashimoto ba1676b232 providers/hyperv: fix tests and bug with usable? 2014-04-21 13:53:36 -07:00
Mitchell Hashimoto 1c29c39f1b core: generalize the autostart stuff so we don't have a bunch of specials 2014-04-21 13:53:35 -07:00
Mitchell Hashimoto d7a009f447 style 2014-04-21 13:53:34 -07:00
Mitchell Hashimoto 740652aef9 providers/hyperv: usable test 2014-04-21 13:53:09 -07:00
Mitchell Hashimoto 967f7bce1a providers/virtualbox: usability test 2014-04-21 13:53:08 -07:00
Mitchell Hashimoto f2bd6988b6 providers/docker: boxes are optional 2014-04-21 13:53:06 -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 2e13feb130 providers/docker: Clean up config and make a spec 2014-04-21 13:53:04 -07:00
Mitchell Hashimoto 61ffa53134 kernel/v2: boxes can be optional if a provider says so
/cc @fgrehm - For the DOcker provider, we can now make boxes optional. :)
No more dummy boxes!
2014-04-21 13:53:03 -07:00
Mitchell Hashimoto 316aaa69fe kernel/v2: box setting should be new-style 2014-04-21 13:53:01 -07:00
Mitchell Hashimoto ac5a0cf326 commands/ssh-config: work without target into multi-machine env [GH-2844] 2014-04-21 13:52:59 -07:00
Mitchell Hashimoto 485422640e core: delete the preserve_order option so it doesn't invalidate 2014-04-21 13:52:31 -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 e51c5530d7 providers/docker: Remove retryable around `docker run` as it seems that it is no longer needed 2014-04-21 13:51:48 -07:00
Fabio Rehm d705c48ef3 providers/docker: Implement public_address capability for `vagrant share` 2014-04-21 13:51:47 -07:00
Fabio Rehm c0aa05c62a providers/docker: Handle forwarded port collisions 2014-04-21 13:51:46 -07:00
Fabio Rehm e5375715ef providers/docker: Update driver to docker 0.9 2014-04-21 13:51:45 -07:00
Fabio Rehm de588ba82c providers/docker: Remove old README 2014-04-21 13:51:44 -07:00
Fabio Rehm 46cbeb38f0 providers/docker: Make use of Action::Builtin::IsState and remove provider specific actions 2014-04-21 13:51:42 -07:00
Fabio Rehm 29f2d9b09d providers/docker: Remove custom Action::Message 2014-04-21 13:51:41 -07:00
Fabio Rehm 15605b1a81 providers/docker: Switch to new HandleBox middleware 2014-04-21 13:51:39 -07:00
Fabio Rehm eaa4be8869 providers/docker: Remove Vagrant::Action shortcuts as we are on core now 2014-04-21 13:51:38 -07:00
Fabio Rehm c09ce4bbbd providers/docker: Add description 2014-04-21 13:51:37 -07:00
Fabio Rehm 87d2f35718 providers/docker: Get rid of some explicit requires in favor of autoloading 2014-04-21 13:51:35 -07:00
Fabio Rehm 3325bce2d0 providers/docker: Lazy load locales 2014-04-21 13:51:34 -07:00
Fabio Rehm 8c8826fe09 providers/docker: Get rid of vagrant version check from old plugin 2014-04-21 13:51:33 -07:00
Fabio Rehm e79df6caaa providers/docker: Move code out of lib dir so that Vagrant can pick it up 2014-04-21 13:51:32 -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
Fabio Rehm efc1122c42 provisioners/docker: Change to VagrantPlugins::DockerProvisioner namespace 2014-04-21 13:51:30 -07:00
Mitchell Hashimoto 47b5a3fcdb communicators/winrm: silence warnings loading winrm
/cc @sneal - I silenced warnings using the built-in util. Also, can you
see if we load here if that load error goes away?
2014-04-21 13:51:27 -07:00
Mitchell Hashimoto 9a16af10ad core: Use Machine#state wherever possible so we update the index 2014-04-21 13:51:23 -07:00
Mitchell Hashimoto e14216da4e commands/global-status: initial go at it 2014-04-21 13:51:22 -07:00
Mitchell Hashimoto 7ccf7fadf2 providers/virtualbox: make ID os-friendly for Windows 2014-04-21 13:51:12 -07:00
Mitchell Hashimoto a908b191b0 guests/windows: fix network configuring 2014-04-21 13:51:11 -07:00
Mitchell Hashimoto d600e83e6d guests/windows: configure networks 2014-04-21 13:51:09 -07:00
Mitchell Hashimoto d86a9ecade guests/windows: fix invalid templating 2014-04-21 13:51:08 -07:00
Mitchell Hashimoto b81f430f31 guests/windows: initial vagrant-windows extraction 2014-04-21 13:51:06 -07:00
Mitchell Hashimoto 7223e29330 communicators/winrm: fix powershell execution 2014-04-21 13:51:05 -07:00
Mitchell Hashimoto 21ac0810fd communicators/winrm: more tests 2014-04-21 13:51:04 -07:00
Mitchell Hashimoto bb9f0aef32 communicators/winrm: autodetect port based on forwarded ports 2014-04-21 13:51:03 -07:00
Mitchell Hashimoto 40d89cf5ea kernel/v2: configurable communicator (doesn't do anything yet) 2014-04-21 13:51:01 -07:00
Mitchell Hashimoto eebebd8837 communicators/winrm: Config unit tests (a little) 2014-04-21 13:50:59 -07:00
Mitchell Hashimoto 2a8a04ebb9 communicators/winrm: initial import from vagrant-windows 2014-04-21 13:50:58 -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
Kenny Rasschaert fc95e77237 provisioners/salt: error if minion_config missing 2014-04-19 23:24:30 +02:00
Mitchell Hashimoto ceb90c5aac command/rsync-auto: proper require 2014-04-18 21:17:08 -07:00
Jing Chan 97c8919f26 Small fix to hyper-v provision action 2014-04-17 17:48:03 -04:00
Mitchell Hashimoto 7749b8fba4 providers/hyperv: provision action [GH-3494] 2014-04-17 13:59:13 -07:00
Nikhil Benesch ee5d8e2358 guests/linux: rsync chown if either user or group incorrect [GH-3485] 2014-04-15 16:55:49 -04:00
Mitchell Hashimoto d0b0d5635c provisioners/docker: debian install should apt-get update 2014-04-15 13:04:07 -07:00
Mitchell Hashimoto 544f404037 provisioners/docker: configure autostart works if OS can't check status 2014-04-15 12:18:37 -07:00
Mitchell Hashimoto ac8d54132b provisioners/docker: UPDATE CHANGELOG 2014-04-15 12:15:14 -07:00
Henry Hsu 91555d0a86 Fixes not enough time for docker restart before continuing on to next
provisioning step
2014-04-15 11:32:05 -07:00
Mitchell Hashimoto 20473fe4ca core: allow overriding default SSH port [GH-3474] 2014-04-15 10:37:08 -07:00
Mitchell Hashimoto ae8be9356e commands/box/update: show current version [GH-3467] 2014-04-14 18:55:22 -07:00
Mitchell Hashimoto 0fc7d59222 guests/coreos: fix test for docker daemon running 2014-04-14 17:01:00 -07:00
Mitchell Hashimoto 8a9bbdb71a provisioners/docker: fix linux cap for daemon running 2014-04-14 17:00:12 -07:00
Mitchell Hashimoto 88683221f4 synced_folders/rsync: force NIO4R_PURE 2014-04-14 10:18:50 -07:00
Mitchell Hashimoto 00962c7c2a commands/box/repackage: better error if box not found 2014-04-12 18:00:33 -07:00
Mitchell Hashimoto adca39b471 commands/box/repackage: works with new stuff [GH-3372] 2014-04-12 17:57:51 -07:00
Mitchell Hashimoto 77c286f1af Merge pull request #3452 from berendt/box_update_sort_versions
command/box/update: update from latest version
2014-04-12 15:25:22 -07:00
Gilles Cornu 7ed17ae9ed provisioners/ansible: use strict boolean options
With this change, the ansible provisioner fully complies with
the current user documentation.
2014-04-12 13:48:15 +02:00
Christian Berendt 764c007a93 When there are multiple versions of a box are available it should be checked if an update is available for the highest version.
Example:

There are version 0.2.10 and 0.2.11 available. The latest update is version 0.2.12.

```
berendt/ubuntu-14.04-amd64          (virtualbox, 0.2.10)
berendt/ubuntu-14.04-amd64          (virtualbox, 0.2.11)
```

Without this patch it will be checked if a higher version than 0.2.10 is available.

```
Checking for updates to 'berendt/ubuntu-14.04-amd64'
Version constraints: > 0.2.10
Provider: virtualbox
Updating 'berendt/ubuntu-14.04-amd64' with provider 'virtualbox' from version
'0.2.10' to '0.2.12'...
Loading metadata for box 'https://vagrantcloud.com/berendt/ubuntu-14.04-amd64'
Adding box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for provider: virtualbox
Downloading: https://vagrantcloud.com/berendt/ubuntu-14.04-amd64/version/23/provider/virtualbox.box
Successfully added box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for 'virtualbox'!
```

with this patch it will be checked if a higher version than 0.2.11 is available (the expected behaviour).

```
Checking for updates to 'berendt/ubuntu-14.04-amd64'
Version constraints: > 0.2.11
Provider: virtualbox
Updating 'berendt/ubuntu-14.04-amd64' with provider 'virtualbox' from version
'0.2.11' to '0.2.12'...
Loading metadata for box 'https://vagrantcloud.com/berendt/ubuntu-14.04-amd64'
Adding box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for provider: virtualbox
Downloading: https://vagrantcloud.com/berendt/ubuntu-14.04-amd64/version/23/provider/virtualbox.box
Successfully added box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for 'virtualbox'!
```
2014-04-12 11:03:04 +02:00
Mitchell Hashimoto 1144217e2d Merge pull request #3436 from gildegoma/ansible-inventory-path
provisioners/ansible: refer to directory that contains the generated inventory file
2014-04-11 21:16:14 -07:00
Mitchell Hashimoto 374d1c495a provisioners/docker: auto-assigned name shouldn't have / [GH-3216] 2014-04-11 18:50:02 -07:00
Mitchell Hashimoto ad8d133293 communicators/ssh: throttle warnings [GH-3442] 2014-04-11 16:17:17 -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
Mitchell Hashimoto 77c92d0d11 communicators/ssh: only show warnings after a few attempts [GH-3442] 2014-04-11 14:36:19 -07:00
Gilles Cornu 0098b7604d provisioners/ansible: refer to inventory directory
By referring the directory that contains the generated inventory file,
users can easily provide more settings with additional files stored in
the same directory.
2014-04-11 08:20:32 +02:00
Mitchell Hashimoto b97c509c15 Remove this, supposed to be in vagrant-next 2014-04-10 13:43:15 -07:00
Mitchell Hashimoto f47213f9b2 guests/coreos: docker_daemon_running cap [GH-3425] 2014-04-10 13:42:12 -07:00
Mitchell Hashimoto 541ebd8935 kernel/v2: clear ID field so its not passed to provisioner [GH-3424] 2014-04-10 08:42:11 -07:00
Mitchell Hashimoto e5d1d681d9 Update CHANGELOG 2014-04-09 14:17:51 -07:00
Bernhard Morgenstern 247a2470c0 Fixed error with empty shell provisioner
`read` returns nil on empty files, so the call to `valid_encoding` fails.
2014-04-09 22:56:15 +02:00
Mitchell Hashimoto 9529dd8cde guests/linux: rsync chown group if owner now set [GH-3223] 2014-04-09 11:03:24 -07:00
Mitchell Hashimoto b20ff91784 guests/linux: SMB mounts with symbol passwords work [GH-3202] 2014-04-09 10:46:56 -07:00
Mitchell Hashimoto a6725710d3 guests/linux: don't show SMB password in plaintext on error [GH-3203] 2014-04-09 10:42:39 -07:00
Mitchell Hashimoto 83c38b9278 command/rsync-auto: use newer listen gem [GH-3249] 2014-04-09 09:48:11 -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
timcooper 1c12609fdb Encapsulate path for smb powershell script 2014-04-07 17:45:29 +01:00
timcooper 902202aad9 Fixed typo in smb errors on error_key call 2014-04-07 17:21:24 +01:00
Mitchell Hashimoto e46f8925bb Merge pull request #3382 from ndemonner/fix-fedora
guests/fedora: fix hostname setting
2014-04-05 09:09:39 -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 bb967265df synced_folders/rsync: style 2014-04-05 09:05:39 -07:00
Steffen Müller 32f25b6a0d synced_folders/rsync: enable override of default chmod flag
fixed new file creation to follow guest's umask on Windows by default
2014-04-05 11:11:55 +02:00
Nick DeMonner 65ce0ebe97 Fix hostname change 2014-04-04 07:20:17 -07:00
Nick DeMonner b240d40303 Merge branch 'support_fedora_predictable_network_interface_names' of https://github.com/khiro/vagrant into fix-fedora 2014-04-04 07:17:45 -07:00
Mitchell Hashimoto d1caf8c624 core: Allow direct box adding again 2014-04-02 19:45:49 -07:00
Mitchell Hashimoto 3302bd535f kernel/v2: check if type is set before validation 2014-04-02 15:19:36 -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 2e0142168e synced_folders/rsync: set chmod flag by default on Windows [GH-3256] 2014-04-02 09:07:00 -07:00
Mitchell Hashimoto 4f5d5fbc9b Merge pull request #3292 from skinofstars/master
hosts/linux: don't hard code exportfs path
2014-04-01 22:32:08 -07:00
Mitchell Hashimoto cc99719717 Merge pull request #3293 from emyl/machine-readable-plugin-list
Add machine readable output for `vagrant plugin list` command
2014-04-01 22:29:21 -07:00
Mitchell Hashimoto d45eb1f183 commands/box: show version 2014-04-01 22:04:49 -07:00
Mitchell Hashimoto e7277f5e83 Merge pull request #3316 from berendt/issue_3313
commands/box: display version by default when listing boxes
2014-04-01 22:04:08 -07:00
Mitchell Hashimoto a74a57ddf6 Merge pull request #3323 from mattoxbeckman/fix/master/reload-arch-udev-rules
guests/arch: Fix for issue #3322, a followup to issue #2591.
2014-04-01 22:01:12 -07:00
Mitchell Hashimoto 18658fc6fb Merge pull request #3337 from MSOpenTech/fix-issue-3336
providers/hyperv: HyperV provider resume. GH-3336
2014-04-01 21:58:33 -07:00
Mitchell Hashimoto 84f7c019f9 kernel/v2: allow private network type to be a string [GH-3349] 2014-04-01 21:57:23 -07:00
Mitchell Hashimoto d337890f1a Merge pull request #3354 from Coffee-fan/master
synced_folders/smb: properly remove shares
2014-04-01 21:53:44 -07:00
Mitchell Hashimoto 188d3c394f Merge pull request #3355 from miurahr/fix_ssh_utf8
core: force SSH to be ASCII
2014-04-01 21:52:39 -07:00
Mitchell Hashimoto 9fc2c717a2 Merge pull request #3356 from pmenglund/docker_deprecated_arguments
provisioners/docker: fix deprecated docker arguments
2014-04-01 21:51:24 -07:00
Mitchell Hashimoto d2056863de Merge branch 'fix-suse-shutdown-not-found' of github.com:philippfranke/vagrant into philippfranke-fix-suse-shutdown-not-found
Conflicts:
	CHANGELOG.md
2014-04-01 21:50:32 -07:00
Oscar Renalias 8f4ae68f56 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x, including internal networks 2014-03-31 21:32:12 +03:00
Oscar Renalias 094be9dc50 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x, including internal networks 2014-03-31 21:31:51 +03:00
Oscar Renalias cd6f24b2d9 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x 2014-03-31 20:36:24 +03:00
Oscar Renalias 0314453f46 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x 2014-03-31 20:36:16 +03:00
Philipp Franke 5180f4b647 guests/suse: fix error on shutdown 2014-03-30 18:28:23 +02:00
Martin Englund 53194f8e12 fix deprecated docker arguments 2014-03-29 22:49:52 -07:00
Hiroshi Miura a7cc402258 vagrant ssh accept utf8, fix #2744
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
2014-03-30 12:15:53 +09:00
Pierre Jacomet 4d4c85b944 Fix for HyperV provider fails when recreating shares on Vagrant reload #3353 2014-03-29 18:15:24 -07:00
Ramakrishnan 41e1a7e0e4 HyperV provider resume. GH-3336
Fix for vagrant resume command for HyperV provider. Fixed the variable
name in action builder block.
2014-03-27 13:04:28 +05:30
Mattox Beckman 17a3dff77f This is a followup to issue #2591.
Arch linux will rename its eth0 device unless an empty file is placed in `/etc/udev/rules.d/`.
In order for the new rules to take effect, we need call `udevadm control --reload`.
2014-03-25 20:44:42 -05:00
Christian Berendt 50bf36e747 display version by default when listing boxes
example usage:

$ vagrant box list
berendt/ubuntu-14.04-amd64 (virtualbox) [0.1.3]
berendt/ubuntu-14.04-amd64 (virtualbox) [0.1.4]
berendt/ubuntu-14.04-amd64 (virtualbox) [0.1.5]

related to issue #3313
2014-03-25 18:45:13 +01:00
Emiliano Ticci 08e7a76962 Add machine readable output for `vagrant plugin list` command 2014-03-23 13:09:16 +01:00
Kevin Carmody 17c171559f Update nfs.rb
Make call to exportfs just use the system path.
2014-03-22 21:07:45 +00:00
Mitchell Hashimoto f7adeadf8d communicators/ssh: change wording on retry 2014-03-21 17:48:03 -07:00
Mitchell Hashimoto d4b3f226dd providers/virtualbox: fix missing interpolation [GH-3277] 2014-03-20 17:57:17 -07:00
Mitchell Hashimoto 9fc5540841 guests/debian: don't return from block [GH-3283] 2014-03-20 17:52:31 -07:00
Mitchell Hashimoto 600d01d792 Merge pull request #3102 from sax/smartos
guests/smartos
2014-03-20 17:50:20 -07:00
Mitchell Hashimoto aaee1058e3 Merge pull request #3272 from pbitty/fix_provision_config
core: allow provisioner plugins to register without config
2014-03-20 17:42:12 -07:00
Mark Harrison 43f732b32d Add mount_nfs_folder capability to omnios guests
Refs issue #3280
2014-03-20 17:06:49 -04:00
Paulo Bittencourt 1f694d4978 kernel/v2: allow provisioner plugins to register without config 2014-03-19 17:37:52 -04:00
Mitchell Hashimoto 30f6c7ba60 Merge pull request #3242 from uwej711/patch-1
synced_folders/smb work for non-english windows
2014-03-19 09:31:06 -07:00
Andy Clarke 26e0c85488 Fix SMB shared folder mount error with password containing symbols. 2014-03-17 17:38:34 -04:00
Uwe Jäger 3dd03d7efc Make shared folder type smb work for non-english windows
the grant "Everyone,Full" does not work on localized versions of windows, in German it is "Jeder" in Spanish "Todos". Also the net share command returns localized texts, so the -Match does not work for non-english Windows. 

I could not test exactly that version, copied relevant bits from my modified lokal version.
2014-03-17 15:11:45 +01:00
Mitchell Hashimoto b6cd952fc4 commands/status: target for machine readable [GH-3218] 2014-03-14 13:05:24 -07:00
Mitchell Hashimoto 862d9315ce synced_folders/smb: hash ID so it is short enough [GH-3219] 2014-03-14 13:03:11 -07: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 ca00ad8257 guests/linux: one more time 2014-03-13 09:48:53 -07:00
Mitchell Hashimoto 3c02caf811 guests/linux: check for proper owner [GH-3186] 2014-03-13 09:48:22 -07:00
Mitchell Hashimoto 00d73eabda guests/linux: rsync only chown if invalid user/group [GH-3186] 2014-03-13 09:47:34 -07:00
Mitchell Hashimoto 012c28606f kernel/v2: validate forwarded ports [GH-3187] 2014-03-13 08:32:05 -07:00
Eric Saxby f36d372b32 Resolve confusion around SmartOS rsync_pre
rsync should *always* be pre-installed in SmartOS (global and local zones), as
it's part of the kernel. Previous commits incorrectly attributed #rsync_install
to running rsync, rather than to installing the rsync command.
2014-03-12 22:35:32 -07:00
Mitchell Hashimoto b0f8d050f0 provisioners/salt: style nitpicks 2014-03-12 20:04:57 -07:00
Mitchell Hashimoto a8fa2d5ffe providers/virtualbox: import progress works on Windows 2014-03-12 20:02:05 -07:00
Mitchell Hashimoto 56dd0e8531 synced_folders/rsync: don't watch excluded paths [GH-3159] 2014-03-12 19:40:18 -07:00
Mitchell Hashimoto a6eafd6a12 synced_folders/rsync: execute rsync_post cap if it exists [GH-3163] 2014-03-12 18:43:59 -07:00
Mitchell Hashimoto ec0234349a Merge pull request #3167 from xraj/bugfix/linux-nfs-exports-regex
hosts/linux: Fix Linux NFS exports pruning due to bad `sed` expression
2014-03-12 18:36:58 -07:00
cuberri 5ef0d881d0 add rsync_install capability to tinycore guest 2014-03-13 01:41:52 +01:00
Russell Jackson a3c94ab910 Fix Linux NFS exports pruning due to bad `sed` expression
The mount id is a file path which will contain forward slashes. A
previous attempt (although notably missing in the Linux host plugin) at
fixing this used `String.gsub` to escape the forward slashes; however,
the solution that eventually made its way into the 1.5 release uses
`Regexp.escape` which doesn't escape forward slashes.

The Ruby `Regexp.escape` method does not escape forward slashes because
they are not RE meta-characters; their special meaning is specific to
sed expressions as delimiters. To avoid the issue entirely, we can use
an alternative delimiter by prefixing the address expression with a
backslash with the desired delimiter character following.

Use control character (ASCII code point `0x01`) as expression delimiter
so it is very unlikely an identifier will have a conflicting character
within it.
2014-03-12 12:25:53 -07:00
Mitchell Hashimoto 8172fbbd6d Merge branch 'patch-1' of https://github.com/schlamar/vagrant into schlamar-patch-1
Conflicts:
	CHANGELOG.md
2014-03-12 08:45:35 -07:00
Marc Schlaich 5694c7dc2f providers/virtualbox: retry list vms [GH-2831] 2014-03-12 16:23:32 +01:00
Matt Way 16d093dc8a use global namespace for class IO naming conflict 2014-03-12 07:52:11 -04:00
Mitchell Hashimoto 32adbf9e58 Merge pull request #3112 from Krazylee/fix-typo
core: fix timout typo
2014-03-11 09:30:53 -07:00
Mitchell Hashimoto 24d8067c7b Merge pull request #3126 from bbinet/fix-salt-provisioning
provisioners/salt: allow master key with no minion key
2014-03-11 09:05:50 -07:00
Mitchell Hashimoto 5a3a501455 provisioners/ansible: request SSH info within provisoin [GH-3111] 2014-03-11 09:03:23 -07:00
Mitchell Hashimoto 0f70ce7e46 providers/virtualbox: style nitpick 2014-03-11 08:48:33 -07:00
Bruno Binet 9625957203 Fix salt provisioning validation
(mismatch between minion/master)
2014-03-11 15:18:24 +01:00
krazyLee fb4cb4636e fix timout typo 2014-03-11 17:27:47 +08:00
Eric Saxby 330642fa42 Smartos guest capabilities includes rsync_pre 2014-03-11 01:25:08 -07:00
Eric Saxby 31da3860e5 Add unit tests for smartos compatibility 2014-03-10 18:52:20 -07:00
Mitchell Hashimoto 171b7c76d7 kernel/v1: provisioner upgrade works properly [GH-3092] 2014-03-10 13:44:24 -07:00
Eric Saxby a0fee69d04 Add SmartOS detection and mount plugins 2014-03-10 11:52:55 -07:00
Mitchell Hashimoto 6a5fee0191 providers/virtualbox: add post-comm customize step [GH-3080] 2014-03-09 21:35:53 -07:00
Mitchell Hashimoto 04a19e05ca synced_folders/rsync: convert to proper unix-style path [GH-3086] 2014-03-09 18:22:00 -07:00
Gilles Cornu 1d09fc4a79 provisioners/ansible: add new option raw_ssh_args
Since the Ansible provisioner now potentially exports ANSIBLE_SSH_ARGS
variable, it is fair to allow to extend the content of this environment
variable (`ssh_args` parameters from ansible.cfg file have lower
priority)
2014-03-09 22:47:24 +01:00
Gilles Cornu 1c0bc20d21 Ansible: Re-enable ControlPersist defaults when ANSIBLE_SSH_ARGS is used
Solve problem discussed in [GH-2952]
2014-03-09 22:41:36 +01:00
Mitchell Hashimoto fa537740c6 provisioners/shell: use detail level output for running 2014-03-08 14:43:35 -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 686786a4c2 Merge pull request #3073 from gildegoma/ansible-fixes
provisioners/ansible: Disable host key checking by default
2014-03-06 21:35:25 -08:00
Gilles Cornu 1d328f7021 provisioners/ansible: Disable host key checking
Close #3060
2014-03-06 23:55:08 +01:00
Mitchell Hashimoto cf5528b813 providers/hyperv: ssh_info doesn't need a dedicated action stack 2014-03-06 12:27:05 -08:00
Mitchell Hashimoto c8e02ddd78 synced_folders/rsync: rsync__auto options 2014-03-06 12:18:13 -08:00
Mitchell Hashimoto d4511131b4 synced_folders/rsync: allow custom args [GH-3070] 2014-03-06 11:27:58 -08:00
Mitchell Hashimoto 75754019a9 providers/hyperv: fix the class name 2014-03-06 11:01:52 -08:00
Mitchell Hashimoto 074ea02b82 providers/hyperv: public_address cap 2014-03-06 11:01:19 -08:00
Mitchell Hashimoto 1ccedcd2cb providers/hyperv: update driver stuff 2014-03-06 08:58:31 -08:00
Mitchell Hashimoto d1dc010073 Merge pull request #3068 from MSOpenTech/driver-methods
provider/hyperv: move to Driver based model
2014-03-06 08:52:01 -08:00
Mitchell Hashimoto c9623a2a3f synced_folders/smb: ask for creds in prepare 2014-03-06 08:49:41 -08:00
Mitchell Hashimoto 46b5f0d22b synced_folders/smb: set recursive ACL for folders 2014-03-06 08:30:04 -08:00
Mitchell Hashimoto 0037d2c767 providers/hyperv: validate IP address returned [GH-3069] 2014-03-06 07:35:46 -08:00
Mitchell Hashimoto 35adc6063b providers/hyperv: add test for windows guests 2014-03-05 18:50:31 -08:00
Mitchell Hashimoto cae4a1c554 guests/redhat: force remove files so it works with pty 2014-03-05 16:22:55 -08:00
Mitchell Hashimoto ada5e8bf7f provisioners/docker: actual auto assign name logic 2014-03-04 07:32:25 -08:00
Mitchell Hashimoto 857b989c47 provisioners/docker: setting to not auto assign name 2014-03-04 07:31:13 -08:00
Mitchell Hashimoto f333b00f91 Merge pull request #3051 from mattes/patch-1
provisioners/docker: set param -name automatically (docker run)
2014-03-04 07:27:19 -08:00
Mitchell Hashimoto 5db58d6a33 commands/plugin: list notes system gems 2014-03-03 14:57:42 -08:00
Matthias Kadenbach 8f76d5e2cd added as ``args << `` 2014-03-03 16:30:42 +01:00
Matthias Kadenbach f6db54b2dc Set param -name automatically (docker run)
``-name`` ist needed for linking containers, i.e. see http://docs.docker.io/en/latest/use/working_with_links_names/#working-with-links-names
2014-03-03 14:20:33 +01:00
Mitchell Hashimoto 179a9244df Merge pull request #3043 from mitchellh/f-hyperv
Hyper-V and SMB
2014-02-28 21:37:05 +01:00
Mitchell Hashimoto 9120339dc7 providers/hyperv: set the hostname 2014-02-28 18:58:41 +01:00
Gilles Cornu cf8bfb2347 Ansible: Refactor handling of SSH vars/attributes
Avoid repetitions by using (sometimes lazy loaded) instance attributes
2014-02-28 09:07:52 +01:00
Gilles Cornu db490c5da5 Ansible: force 'ssh' connection only when needed
Remain in 'smart' mode, unless Multiple SSH identities or SSH-Forwarding
are in use.
2014-02-28 09:07:51 +01:00
Bryan Hunt 9480edf05a Ansible: Support SSH-Forwarding
Credits: Problem was originally reported in
dba02f3526
by @picsolvebryan
2014-02-28 09:07:51 +01:00
Gilles Cornu ca1e30d405 Ansible: Support multiple private keys
Note that this feature requires to force `--connection=ssh`. This is not
a big deal as `paramiko` mode is deprecated and in most cases `smart`
mode enables `ssh` mode.
2014-02-28 09:07:51 +01:00
Gilles Cornu a62d28fd7f provisioners/ansible: remove an unused variable
Sorry, I missed that point in GH-2991 review.

[ci skip]
2014-02-28 09:00:05 +01:00
Mitchell Hashimoto a1b29ca82b Merge pull request #2991 from gildegoma/review-pr2926
provisioner/ansible: Ansible single inventory file
2014-02-27 11:30:12 -08:00
Mitchell Hashimoto 1724d499dc synced_folders/smb: higher priority than things like NFS and rsync 2014-02-27 08:13:39 -08:00
Mitchell Hashimoto 729f0f5db8 providrs/hyperv: ask for the vswitch to use 2014-02-27 08:13:18 -08:00
Mitchell Hashimoto 3ddc63c88f providers/hyperv: add script to read switches 2014-02-27 08:13:17 -08:00
Mitchell Hashimoto da58f7bdc0 providers/hyperv: remove bad reference to file 2014-02-27 08:13:16 -08:00
Mitchell Hashimoto bdcb92ed07 providers/hyperv: disable parallelism 2014-02-27 08:13:15 -08:00
Mitchell Hashimoto 39bf9db651 providers/hyperv: remove unused config 2014-02-27 08:13:15 -08:00
Mitchell Hashimoto d1bdfe492b providers/hyperv: style 2014-02-27 08:13:14 -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 ef71729c24 providers/hyperv: remove nonexistent action 2014-02-27 08:13:10 -08:00
Mitchell Hashimoto 760f3d9b7b providers/hyperv: that synced folder stuff can go 2014-02-27 08:13:09 -08:00
Mitchell Hashimoto 41bc86c490 providers/hyperv: clean up provider since we moved out SMB 2014-02-27 08:13:08 -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 31abc3f4a3 providers/hyperv: fix file format to unix 2014-02-27 08:13:04 -08:00
Mitchell Hashimoto ea871ec9ef providers/hyperv: change wording to look a bit better 2014-02-27 08:13:03 -08:00
Mitchell Hashimoto 4c810a879a providers/hyperv: clone the disk 2014-02-27 08:13:02 -08:00
Mitchell Hashimoto d8e4482f2c providers/hyperv: enable provisioning 2014-02-27 08:13:01 -08:00
Mitchell Hashimoto d4ec3b5dfc providers/hyperv: reset machine ID if machine deleted outside 2014-02-27 08:13:00 -08:00
Mitchell Hashimoto faf906c057 providers/hyperv: wait for communicator on boot 2014-02-27 08:12:59 -08:00
Mitchell Hashimoto 9fa4549105 providers/hyperv: remove unused var 2014-02-27 08:12:58 -08:00
Mitchell Hashimoto 5d19285774 providers/hyperv: wait for IP on boot 2014-02-27 08:12:57 -08:00
Mitchell Hashimoto 64abd95c6f providers/hyperv: use HandleBox middleware 2014-02-27 08:12:57 -08:00
Mitchell Hashimoto 27688a183b providers/hyperv: destroy 2014-02-27 08:12:56 -08:00
Mitchell Hashimoto 7c0948c81d providers/hyperv: clean up status script 2014-02-27 08:12:55 -08:00
Mitchell Hashimoto 88247797d4 providers/hyperv: more cleanup 2014-02-27 08:12:54 -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 ab4390eb67 providers/hyperv: clean up driver error handling quite a bit 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 3d8971b15f providers/hyper-v: cleanup 2014-02-27 08:12:47 -08:00
Mitchell Hashimoto ca24d60d8f providers/hyperv: initial commit
Initial work done by MS Open Tech
2014-02-27 08:12:46 -08:00
Mitchell Hashimoto 6b17783688 synced_folders/nfs: unavailable on Windows 2014-02-27 08:11:50 -08:00
Mitchell Hashimoto c877fc27a7 communicators/ssh: call ready? when waiting
This lets things like the SSH key go in
2014-02-26 11:35:41 -08:00
Mitchell Hashimoto d14f3e0a56 hosts/bsd: make directories unique when exporting 2014-02-26 08:04:21 -08:00
Mitchell Hashimoto 12c740898c provisioners/puppet: append module path (default) [GH-2677] 2014-02-24 08:09:24 -08:00
Mitchell Hashimoto 32c45aa70b Revert "Merge pull request #2677 from purpleidea/fix_puppet_apply"
This reverts commit 9ac4ec85dd, reversing
changes made to 8dbad22d72.
2014-02-24 08:07:57 -08:00
Mitchell Hashimoto 6c5179602c provisioners/salt: error if minion_config missing [GH-2893] 2014-02-24 07:58:12 -08:00
Gilles Cornu 1cd2fe56a0 ansible: generate inventory in .vagrant/... 2014-02-24 16:52:38 +01:00
Mitchell Hashimoto 7abcea35b8 hosts/linux: escape regular expression for prune NFS exports [GH-2934] 2014-02-24 07:51:06 -08:00
Mitchell Hashimoto 67a0d3d5f1 communicators/ssh: rescue/show correct error messages 2014-02-23 22:31:37 -08:00
Mitchell Hashimoto 3324756e12 providers/virtualbox: don't log in trap context 2014-02-23 22:09:15 -08:00
Mitchell Hashimoto a667893cbf provisioners/shell: error if invalid encoding [GH-3000] 2014-02-23 21:50:53 -08:00
Mitchell Hashimoto 5ebe007ddc Merge pull request #3005 from ajw0100/fix-salt-options-error
provisioners/salt: Fix "options are only allowed before install arguments" error.
2014-02-23 21:25:42 -08:00
Jon Topper 7b30e557cd hosts/bsd: sort NFS exports to avoid false validation errors [GH-2927]
With a synced folder configuration like so:

 synced_folder ".", "/vagrant", :nfs => true
 synced_folder "#{ENV['HOME']}/mirror", "/mirror", :nfs => true
 synced_folder ENV['HOME'], "/home/#{ENV['USER']}", :nfs => true

on OSX, vagrant writes two overlapping exports to /etc/exports
which then fail the export check.

Iterating through the list of folders lexically builds a correct, single
exports entry.

Signed-off-by: Teemu Matilainen <teemu.matilainen@iki.fi>
2014-02-21 23:43:11 -03:00
Teemu Matilainen 7d90191212 provisioners/chef: DRY up `environment` and `node_name` configuration 2014-02-21 23:28:46 -03: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
A.J. Welch 9f0efc19a9 Fix "options are only allowed before install arguments" error.
This reverts feb748f488 and 7cd7077467. `bootstrap_options` is
meant for flag options such as `-D`. This is demonstrated in the
example Vagrantfile from the original plugin:
github.com/saltstack/salty-vagrant/blob/develop/example/complete/Vagrantfile
Flag options must be appended to the options string before install
args such as `install_type` and `install_args`.
2014-02-19 20:24:05 -08:00
Teemu Matilainen 807c879ac8 Merge pull request #2845 from tmatilai/chef_data_bag_secret
provisioners/chef: DRY and unify encrypted data bag secret handling
2014-02-19 00:54:57 -02:00
Mitchell Hashimoto 75dcc828ad kernel/v2: fix error where options could be not hash 2014-02-18 10:41:14 -08: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
Gilles Cornu 709f3f4e6f provisioners/ansible: Change --limit behaviours
- The implicit default limit is always set
- ansible.limit as an empty string won't disable the default limit, but
  will be passed as "--limit=" argument and ansible-playbook will return
  an error (provided host list is empty)
2014-02-16 11:39:15 +01:00
Gilles Cornu c2663f5d30 provisioners/ansible: Fix Group Management
- Support arbitrary depth of "groups of groups of ... groups"
- Skip ':vars' suffix, but allow group names with ':' (yes, Ansible
  accepts this character)
- Like for groups of machines, groups of groups can result "empty", but
  it is not an issue for Ansible. Recursive filter on the group tree is
  a bit hard to implement, and don't brind real added value at Vagrant
  level.
2014-02-16 11:20:00 +01:00
Teemu Matilainen ad34d474bc provisioners/chef: DRY and unify encrypted data bag secret handling
Pull up encrypted data bag secret management into the base classes, thus
also unifying the functionality.

Especially this complements the issues:
  * Upload the secret to provisioning path also with chef-solo [GH-1246]
  * Delete the secret also with chef-client [GH-2712]
  * Remove the secret before uploading also with chef-client [GH-1111]
2014-02-15 22:46:48 -03:00
Eugene Ware 85d2f24607 more robust coreos checking 2014-02-15 15:50:11 +11:00
Eugene Ware 2d01691e0a detect latest version of coreos 2014-02-15 15:03:06 +11:00
Mitchell Hashimoto 8c9fde41e9 provisioners/shell: clean up fixnum handling 2014-02-14 12:43:27 -08:00
Ryan Uber 509e29043a Added handling of fixnum values for shell provisioner options both as the value
of `args` itself and as an element inside of an `args` array. Added validation
around passing in arrays for arguments. Just knowing that it is an array is not
enough, because arrays can contain any other type.
2014-02-14 11:47:36 -08:00
Shane Gibbs 5600bd1067 Add support for multiple role paths in chef-solo 2014-02-14 21:48:18 +13:00
Mitchell Hashimoto d0cd2464b2 providers/virtualbox: only clear forwarded ports if there are any 2014-02-13 21:04:56 -08:00
Mitchell Hashimoto 2fe2fe79ed communicators/ssh: properly allow errors through while waiting 2014-02-13 21:04:41 -08:00
Mitchell Hashimoto ed5e544e63 communicators/ssh: more verbose output about waiting for SSH 2014-02-13 20:59:26 -08:00
Mitchell Hashimoto 14b27ae215 communicators/ssh: cache ssh_info
This lowers the number of subprocesses with VirtualBox quite a bit.
2014-02-13 20:34:51 -08:00
Mitchell Hashimoto b1bed68bed providers/virtualbox: cap to read forwarded ports 2014-02-13 16:34:34 -08:00
Mitchell Hashimoto e909b91bfd guests/linux: public key insertion is more robust
contents can have newlines (or not)
2014-02-12 22:11:33 -08:00
Mitchell Hashimoto 12b2572687 kernel/v2: capture error if provider config is bad [GH-2959] 2014-02-11 11:55:04 -08:00
Mitchell Hashimoto dd9dd5127c Merge pull request #2948 from gnawhleinad/master
command/*: clean up usage
2014-02-10 09:02:32 -08:00
Lukasz Jastrzebski 654870a185 Fixing ssh_config proxy_command is not included 2014-02-09 16:27:32 -08:00
Mitchell Hashimoto 8d3afa73d2 providers/virtualbox: config to skip guest additions check 2014-02-08 18:35:09 -08:00
gnawhleinad fbcac2978e clean up usage 2014-02-08 00:20:50 -08:00
Mitchell Hashimoto 8c85e57db1 guests/linux: proper logic on ro 2014-02-07 16:04:36 -08:00
Mitchell Hashimoto fcf2d42717 Merge pull request #2946 from mhahn/fix/master/2945
Fix #2945: Reference correct options variable
2014-02-07 16:03:48 -08:00
Mitchell Hashimoto 8e9ceeaf5c core: Machine has reference to Vagrantfile 2014-02-07 09:16:55 -08:00
Mitchell Hashimoto cdf1d7f318 core: get rid of all uses of config_global 2014-02-06 20:22:15 -08:00
Michael Hahn d68544a906 Ensure options[:mount_options] is defined before checking if it includes key 2014-02-06 14:06:47 -08:00
Michael Hahn 3631b250b7 Fix #2945: Reference correct options variable 2014-02-06 13:59:56 -08:00
Mitchell Hashimoto 848fe5d166 kernel/v2: check for box updates by default
/cc @pearkes @armon
2014-02-05 21:20:33 -08:00
Mitchell Hashimoto 85aa7db17e commands/box: repackage tests 2014-02-05 21:20:29 -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 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 1a5ad9f3d5 providers/virtualbox: check for outdated on any start 2014-02-05 21:20:17 -08:00
Mitchell Hashimoto bfca65b098 core: better output for BoxCheckOutdated 2014-02-05 21:20:16 -08:00
Mitchell Hashimoto b5157df2cc core: BoxCheckOutdated only runs if told to 2014-02-05 21:20:14 -08:00
Mitchell Hashimoto d78194654d core: ability to hide success UI 2014-02-05 21:20:12 -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 4cedd590d9 providers/virtualbox: use new HandleBox middleware 2014-02-05 21:20:05 -08:00
Mitchell Hashimoto d40ff9c390 kernel_v2: test for box_url 2014-02-05 21:20:01 -08:00
Mitchell Hashimoto b2fa785d07 core: Environment loads proper version of box 2014-02-05 21:19:51 -08:00
Mitchell Hashimoto b71cde6b99 core: make box add UI much icer 2014-02-05 21:19:44 -08:00
Mitchell Hashimoto c1d5c8f33c commands/box: remove has --box-version flag 2014-02-05 21:19:43 -08:00