vagrant-windows 1.5.0 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +5 -0
- data/README.md +1 -1
- data/lib/vagrant-windows/communication/winrmcommunicator.rb +6 -2
- data/lib/vagrant-windows/monkey_patches/plugins/provisioners/puppet/provisioner/puppet.rb +0 -42
- data/lib/vagrant-windows/plugin.rb +2 -5
- data/lib/vagrant-windows/version.rb +1 -1
- metadata +4 -4
data/CHANGELOG.md
CHANGED
@@ -68,3 +68,8 @@
|
|
68
68
|
|
69
69
|
1.5.0
|
70
70
|
- Support for Parallels 8/9 VMs via vagrant-parallels plugin.
|
71
|
+
|
72
|
+
1.5.1
|
73
|
+
- Fixed issue 158 - Vagrant 1.4 broke the Puppet provisioner monkey patch. Removed configure method monkey patch.
|
74
|
+
- Fixed issue 162 - Set plugin name to 'vagrant-windows' to support has_plugin? method works.
|
75
|
+
- Reset winrmshell on error. When using the vSphere provider the hostname would not resolve.
|
data/README.md
CHANGED
@@ -147,7 +147,7 @@ Note - You need to ensure you specify a config.windows and a config.winrm in you
|
|
147
147
|
- The SQL Server installer uses a lot of resources, ensure WinRM Quota Management is properly configured to give it enough resources.
|
148
148
|
- See [COOK-1172](http://tickets.opscode.com/browse/COOK-1172) and http://stackoverflow.com/a/15235996/82906 for more information.
|
149
149
|
|
150
|
-
If all else fails try running [vagrant with debug logging](http://docs.vagrantup.com/v2/debugging.html), perhaps that will give
|
150
|
+
If all else fails try running [vagrant with debug logging](http://docs.vagrantup.com/v2/other/debugging.html), perhaps that will give
|
151
151
|
you enough insight to fix the problem or file an issue.
|
152
152
|
|
153
153
|
|
@@ -18,7 +18,7 @@ module VagrantWindows
|
|
18
18
|
def initialize(machine)
|
19
19
|
@windows_machine = VagrantWindows::WindowsMachine.new(machine)
|
20
20
|
@winrm_shell_factory = WinRMShellFactory.new(@windows_machine, WinRMFinder.new(@windows_machine))
|
21
|
-
|
21
|
+
|
22
22
|
@logger = Log4r::Logger.new("vagrant_windows::communication::winrmcommunicator")
|
23
23
|
@logger.debug("initializing WinRMCommunicator")
|
24
24
|
end
|
@@ -32,11 +32,15 @@ module VagrantWindows
|
|
32
32
|
|
33
33
|
@logger.info("WinRM is ready!")
|
34
34
|
return true
|
35
|
-
|
35
|
+
|
36
36
|
rescue Vagrant::Errors::VagrantError => e
|
37
37
|
# We catch a `VagrantError` which would signal that something went
|
38
38
|
# wrong expectedly in the `connect`, which means we didn't connect.
|
39
39
|
@logger.info("WinRM not up: #{e.inspect}")
|
40
|
+
# We reset the shell to trigger calling of winrm_finder again.
|
41
|
+
# This resolves a problem when using vSphere where the ssh_info was not refreshing
|
42
|
+
# thus never getting the correct hostname.
|
43
|
+
@winrmshell = nil
|
40
44
|
return false
|
41
45
|
end
|
42
46
|
|
@@ -13,15 +13,10 @@ module VagrantPlugins
|
|
13
13
|
# This patch is needed until Vagrant supports Puppet on Windows guests
|
14
14
|
provision_on_linux = instance_method(:provision)
|
15
15
|
run_puppet_apply_on_linux = instance_method(:run_puppet_apply)
|
16
|
-
configure_on_linux = instance_method(:configure)
|
17
16
|
|
18
17
|
define_method(:run_puppet_apply) do
|
19
18
|
is_windows? ? run_puppet_apply_on_windows() : run_puppet_apply_on_linux.bind(self).()
|
20
19
|
end
|
21
|
-
|
22
|
-
define_method(:configure) do |root_config|
|
23
|
-
is_windows? ? configure_on_windows(root_config) : configure_on_linux.bind(self).(root_config)
|
24
|
-
end
|
25
20
|
|
26
21
|
define_method(:provision) do
|
27
22
|
windows_machine = VagrantWindows::WindowsMachine.new(@machine)
|
@@ -91,43 +86,6 @@ module VagrantPlugins
|
|
91
86
|
end
|
92
87
|
end
|
93
88
|
|
94
|
-
def configure_on_windows(root_config)
|
95
|
-
# Calculate the paths we're going to use based on the environment
|
96
|
-
root_path = @machine.env.root_path
|
97
|
-
@expanded_manifests_path = @config.expanded_manifests_path(root_path)
|
98
|
-
@expanded_module_paths = @config.expanded_module_paths(root_path)
|
99
|
-
@manifest_file = File.join(manifests_guest_path, @config.manifest_file)
|
100
|
-
|
101
|
-
# Setup the module paths
|
102
|
-
@module_paths = []
|
103
|
-
@expanded_module_paths.each_with_index do |path, i|
|
104
|
-
@module_paths << [path, File.join(@config.temp_dir, "modules-#{i}")]
|
105
|
-
end
|
106
|
-
|
107
|
-
@logger.debug("Syncing folders from puppet configure")
|
108
|
-
@logger.debug("manifests_guest_path = #{manifests_guest_path}")
|
109
|
-
@logger.debug("expanded_manifests_path = #{@expanded_manifests_path}")
|
110
|
-
|
111
|
-
# Windows guest volume mounting fails without an "id" specified
|
112
|
-
# This hacks around that problem and allows the PS mount script to work
|
113
|
-
root_config.vm.synced_folder(
|
114
|
-
@expanded_manifests_path, manifests_guest_path,
|
115
|
-
:id => "v-manifests-1")
|
116
|
-
|
117
|
-
# Share the manifests directory with the guest
|
118
|
-
#root_config.vm.synced_folder(
|
119
|
-
# @expanded_manifests_path, manifests_guest_path)
|
120
|
-
|
121
|
-
# Share the module paths
|
122
|
-
count = 0
|
123
|
-
@module_paths.each do |from, to|
|
124
|
-
# Sorry for the cryptic key here, but VirtualBox has a strange limit on
|
125
|
-
# maximum size for it and its something small (around 10)
|
126
|
-
root_config.vm.synced_folder(from, to, :id => "v-modules-#{count}")
|
127
|
-
count += 1
|
128
|
-
end
|
129
|
-
end
|
130
|
-
|
131
89
|
def is_windows?
|
132
90
|
VagrantWindows::WindowsMachine.is_windows?(@machine)
|
133
91
|
end
|
@@ -43,11 +43,8 @@ require_relative "monkey_patches/plugins/provisioners/shell/provisioner"
|
|
43
43
|
|
44
44
|
module VagrantWindows
|
45
45
|
class Plugin < Vagrant.plugin("2")
|
46
|
-
name "
|
47
|
-
description
|
48
|
-
This plugin installs a provider that allows Vagrant to manage
|
49
|
-
Windows machines as guests.
|
50
|
-
DESC
|
46
|
+
name "vagrant-windows"
|
47
|
+
description "This plugin allows Vagrant to manage Windows guests."
|
51
48
|
|
52
49
|
config(:windows) do
|
53
50
|
require_relative "config/windows"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-windows
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2014-01-08 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: winrm
|
@@ -185,7 +185,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
185
185
|
version: '0'
|
186
186
|
segments:
|
187
187
|
- 0
|
188
|
-
hash: -
|
188
|
+
hash: -4320786780650999420
|
189
189
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
190
190
|
none: false
|
191
191
|
requirements:
|
@@ -194,7 +194,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
194
194
|
version: '0'
|
195
195
|
segments:
|
196
196
|
- 0
|
197
|
-
hash: -
|
197
|
+
hash: -4320786780650999420
|
198
198
|
requirements: []
|
199
199
|
rubyforge_project:
|
200
200
|
rubygems_version: 1.8.23
|