Mitchell Hashimoto
862414af12
core: lock around machine actions
2014-04-21 13:56:09 -07:00
Mitchell Hashimoto
d2e2ccb625
core: A function for diffing synced folders
2014-04-21 13:55:56 -07:00
Mitchell Hashimoto
81df70eee0
providers/docker: support building Dockerfiles
2014-04-21 13:55:54 -07:00
Mitchell Hashimoto
623386f13c
core: port collision detector can swap open port checker
2014-04-21 13:55:38 -07:00
Mitchell Hashimoto
fe0db9a63e
core: nicer way to assure array for pviate key path
2014-04-21 13:55:34 -07:00
Mitchell Hashimoto
af7f55f47e
core: When disabling, only disable the proper folders
2014-04-21 13:55:33 -07:00
Mitchell Hashimoto
05572955f6
core: log when disabling a synced folder
2014-04-21 13:55:32 -07:00
Mitchell Hashimoto
4df8636c38
core: instantiate all keys in a V2 config prior to merging
...
This forces everything to get a new instance, so we don't accidentally
overwrite any values across multiple machines.
2014-04-21 13:55:30 -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
cabacae4cb
core: return nil if cached synced folders file doesn't exist
2014-04-21 13:55:24 -07:00
Mitchell Hashimoto
4557ece4df
core: SyncedFolders middleware saves what it synced
2014-04-21 13:55:23 -07:00
Mitchell Hashimoto
794cd4f287
core: MixinSyncedFolders have methods for save/reading from cache
2014-04-21 13:55:22 -07:00
Mitchell Hashimoto
10e51eb141
providers/docker: initial sync folders working through proxy VM
2014-04-21 13:55:20 -07:00
Mitchell Hashimoto
3c9219b8c9
core: Builtin SyncedFolders accepts alternate config
2014-04-21 13:55:18 -07:00
Mitchell Hashimoto
0153e0ccbb
core: Machine#action_raw for calling raw callables
2014-04-21 13:55:17 -07:00
Mitchell Hashimoto
d8bdb62ed4
core: MixinSyncedFolders lets a custom config through
2014-04-21 13:55:15 -07:00
Mitchell Hashimoto
e119a5714a
core: add "disable" method for synced folders, deprecate "prepare"
2014-04-21 13:55:09 -07:00
Mitchell Hashimoto
901d3c3558
core: MachineIndex sets paths to nil if empty
2014-04-21 13:55:06 -07:00
Mitchell Hashimoto
98af7c7992
core: Machine sets the local data path of the machine index
2014-04-21 13:55:04 -07:00
Mitchell Hashimoto
646f0fa907
core: MachineIndex preserves the local data path for an env
2014-04-21 13:55:02 -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
aa1abdd1c4
core: SSHExec middleware can have ssh info overridden
2014-04-21 13:54:53 -07:00
Mitchell Hashimoto
2add94ee28
core: BatchAction can run arbitrary code
2014-04-21 13:54:46 -07:00
Mitchell Hashimoto
144c874b5a
providers/docker: process-level lock on copying default Vagrantfile
2014-04-21 13:54:40 -07:00
Mitchell Hashimoto
dc2f729fd3
core: Environment#lock is more useful now
2014-04-21 13:54:39 -07:00
Mitchell Hashimoto
32c9707aa1
core: MachineIndex cleans up machine lock files
2014-04-21 13:54:38 -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
d42d62ead1
core: MachineIndex#vagrant_env should silence warnings
2014-04-21 13:54:32 -07:00
Mitchell Hashimoto
2b07dec059
core: Use the MachineIndex#vagrant_env method
2014-04-21 13:54:31 -07:00
Mitchell Hashimoto
a4addd0e25
core: MachineIndex keeps track of Vagrantfile name
2014-04-21 13:54:30 -07:00
Mitchell Hashimoto
09ff31e3a3
commands/global-status: add --prune flag
2014-04-21 13:54:29 -07:00
Mitchell Hashimoto
df4dfc36e7
MachineIndex lock is a monitor to allow recursion
2014-04-21 13:54:28 -07:00
Mitchell Hashimoto
5f5d3d5ef0
core: MachineIndex more aggressively reloads data
2014-04-21 13:54:27 -07:00
Mitchell Hashimoto
9b22ccbd32
core: MachineIndex updates existing entry if name, provider, path match
2014-04-21 13:54:25 -07:00
Mitchell Hashimoto
72030d2180
Note provisioners that don't work on Windows guests
2014-04-21 13:54:02 -07:00
Mitchell Hashimoto
0dc40e1680
core: MachineIndex can have extra data attached to it
2014-04-21 13:53:38 -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
9dd9fff637
core: check if provider is usable when requesting a machine
2014-04-21 13:53:10 -07:00
Mitchell Hashimoto
bc2e3727a9
core: Add usable? check to providers
2014-04-21 13:53:07 -07:00
Mitchell Hashimoto
aad8e7f80d
core: provision "once" or "always" [GH-2421]
2014-04-21 13:52:30 -07:00
Mitchell Hashimoto
c4a4b998df
core: Test eager loading of WinRM
2014-04-21 13:51:51 -07:00
Mitchell Hashimoto
d608e0bdfd
Eager load WinRM
...
/cc @sneal - How is this? It is dirty, but at least then it doesn't have
a global performance impact on Vagrant if you're not using WinRM
2014-04-21 13:51:50 -07:00
Mitchell Hashimoto
cddd878656
core: Don't set index uuid file if data dir is nil
2014-04-21 13:51:28 -07:00
Mitchell Hashimoto
b38876ac50
core: pass along the UI class so we don't get a silent UI
2014-04-21 13:51:26 -07:00
Mitchell Hashimoto
4349800374
core: Silence ruby warnings when loading external machines
2014-04-21 13:51:25 -07:00
Mitchell Hashimoto
a0e9f46251
core: commands can use the IDs from anywhere to control
2014-04-21 13:51:24 -07:00
Mitchell Hashimoto
9a16af10ad
core: Use Machine#state wherever possible so we update the index
2014-04-21 13:51:23 -07:00
Mitchell Hashimoto
48cf2c38f7
core: MachineIndex is enumerable
2014-04-21 13:51:21 -07:00
Mitchell Hashimoto
13a4db391a
core: Machine updates state cache when querying state
2014-04-21 13:51:20 -07:00