Commit Graph

1633 Commits

Author SHA1 Message Date
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