vagrant-windows-domain 1.3.1 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.travis.yml +5 -8
- data/Gemfile +0 -3
- data/README.md +12 -0
- data/development/Vagrantfile +2 -1
- data/lib/vagrant-windows-domain/config.rb +14 -0
- data/lib/vagrant-windows-domain/provisioner.rb +4 -6
- data/lib/vagrant-windows-domain/templates/runner.ps1.erb +42 -8
- data/lib/vagrant-windows-domain/version.rb +1 -1
- data/spec/provisioner/config_spec.rb +1 -0
- data/spec/provisioner/provisioner_spec.rb +6 -19
- data/vagrant-windows-domain.gemspec +6 -6
- metadata +15 -51
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: cc9e56200816c6d1f4aa73806bedc10976d0471c643102f54e82c44bdb78432e
|
4
|
+
data.tar.gz: 4186ece3f5539020fe90cdb3bb961f825101fd23167349bc7eee834b49f56005
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 95f644aef3a5df4fbd5b5262cf30c5b6ed4e2aa266c99055b093d0978cda1055ff38cfea14cc6bb351f7107b0e2ba827a82843cc97bc2a7dc354271126da2855
|
7
|
+
data.tar.gz: 7733d4aa00ff3e45779f1c66c3901e3fd7b431ae81e807701a3ce098db8e725f8ce88fcd4d1993dc05379326723277a5868a5fcb787fadff04fd8a301104a945
|
data/.travis.yml
CHANGED
@@ -1,12 +1,9 @@
|
|
1
1
|
language: ruby
|
2
2
|
before_install:
|
3
|
-
-
|
4
|
-
- gem uninstall bundler --all --executables
|
5
|
-
- gem install bundler --version 1.12.5
|
6
|
-
- gem install bundler --version 1.12.5
|
3
|
+
- gem install bundler
|
7
4
|
rvm:
|
8
|
-
- 2.
|
9
|
-
- 2.
|
5
|
+
- 2.5.1
|
6
|
+
- 2.4.4
|
10
7
|
- ruby-head
|
11
8
|
matrix:
|
12
9
|
allow_failures:
|
@@ -14,7 +11,7 @@ matrix:
|
|
14
11
|
fast_finish: true
|
15
12
|
env:
|
16
13
|
matrix:
|
17
|
-
- VAGRANT_VERSION=
|
14
|
+
- VAGRANT_VERSION=v2.1.5
|
18
15
|
global:
|
19
16
|
secure: bs4ezY+1Wksy8hH3nymPJ3AL99mpXULVc/AIh16JetEYw1850QkX7r4gQukMlcyByKUhxucjDLid0Y+KDH5kGMM16QjrVQGhAnUQzMoLD2qPbAaxDCUqpCJtFEEQKYxJvFvEK8a5SQzAsTVG4sgABQ/MllsIIH0FjkWgFtH6050=
|
20
|
-
script: bundle
|
17
|
+
script: bundle exec rake test:unit
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -47,6 +47,18 @@ config.vm.provision :windows_domain do |domain|
|
|
47
47
|
# If not supplied the plugin will prompt the user during provisioning to provide one.
|
48
48
|
domain.password = "iprobablyshouldntusethisfield"
|
49
49
|
|
50
|
+
# IP address of primary DNS server
|
51
|
+
#
|
52
|
+
# Specifies the IP address you want assigned as the primary DNS server for the primary nic.
|
53
|
+
# If not supplied, the nic's primary dns server will be assigned dynamically.
|
54
|
+
domain.primary_dns = "8.8.8.8"
|
55
|
+
|
56
|
+
#IP address of the secondary DNS server
|
57
|
+
#
|
58
|
+
# Specifies the IP address you want assigned as the secondary DNS server for the primary nic
|
59
|
+
# If not supplied, the nic's secondary dns server will be assigned dynamically.
|
60
|
+
domain.secondary_dns = "8.8.4.4"
|
61
|
+
|
50
62
|
# The set of Advanced options to pass when joining the Domain.
|
51
63
|
#
|
52
64
|
# See (https://technet.microsoft.com/en-us/library/hh849798.aspx) for detail, these are generally not required.
|
data/development/Vagrantfile
CHANGED
@@ -13,7 +13,8 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
|
13
13
|
config.vm.box = "mfellows/windows2012r2"
|
14
14
|
config.vm.guest = :windows
|
15
15
|
config.vm.communicator = "winrm"
|
16
|
-
|
16
|
+
#ALlows for vagrant to successfully connect to destination machine with winrm
|
17
|
+
config.vm.network :forwarded_port, guest: 5985, host: 55985 #, id: "winrm", auto_correct: true
|
17
18
|
|
18
19
|
config.vm.provider "virtualbox" do |v|
|
19
20
|
v.gui = true
|
@@ -40,6 +40,16 @@ module VagrantPlugins
|
|
40
40
|
# The default value is the default OU for machine objects in the domain.
|
41
41
|
attr_accessor :ou_path
|
42
42
|
|
43
|
+
# IP address of primary DNS server
|
44
|
+
#
|
45
|
+
# Specifies the IP address you want assigned as the primary DNS server for the primary nic
|
46
|
+
attr_accessor :primary_dns
|
47
|
+
|
48
|
+
#IP address of the secondary DNS server
|
49
|
+
#
|
50
|
+
# Specifies the IP address you want assigned as the secondary DNS server for the primary nic
|
51
|
+
attr_accessor :secondary_dns
|
52
|
+
|
43
53
|
# Performs an unsecure join to the specified domain.
|
44
54
|
#
|
45
55
|
# When this option is used username/password are not required
|
@@ -56,6 +66,8 @@ module VagrantPlugins
|
|
56
66
|
@password = UNSET_VALUE
|
57
67
|
@join_options = {}
|
58
68
|
@ou_path = UNSET_VALUE
|
69
|
+
@primary_dns = UNSET_VALUE
|
70
|
+
@secondary_dns = UNSET_VALUE
|
59
71
|
@unsecure = UNSET_VALUE
|
60
72
|
@rename = UNSET_VALUE
|
61
73
|
@logger = Log4r::Logger.new("vagrant::vagrant_windows_domain")
|
@@ -75,6 +87,8 @@ module VagrantPlugins
|
|
75
87
|
@password = nil if @password == UNSET_VALUE || @password == ""
|
76
88
|
@join_options = [] if @join_options == UNSET_VALUE
|
77
89
|
@ou_path = nil if @ou_path == UNSET_VALUE
|
90
|
+
@primary_dns = nil if @primary_dns == UNSET_VALUE
|
91
|
+
@secondary_dns = nil if @secondary_dns == UNSET_VALUE
|
78
92
|
@unsecure = false if @unsecure == UNSET_VALUE
|
79
93
|
@rename = true if @rename == UNSET_VALUE
|
80
94
|
end
|
@@ -107,7 +107,7 @@ module VagrantPlugins
|
|
107
107
|
restart_guest
|
108
108
|
|
109
109
|
@logger.debug("Need to reboot to join the domain correctly - 2nd reboot")
|
110
|
-
restart_guest
|
110
|
+
#restart_guest
|
111
111
|
end
|
112
112
|
end
|
113
113
|
end
|
@@ -157,7 +157,7 @@ module VagrantPlugins
|
|
157
157
|
result = leave_domain
|
158
158
|
if result
|
159
159
|
@logger.debug("Need to reboot to leave the domain correctly")
|
160
|
-
restart_guest
|
160
|
+
#restart_guest
|
161
161
|
end
|
162
162
|
end
|
163
163
|
else
|
@@ -215,6 +215,8 @@ module VagrantPlugins
|
|
215
215
|
domain: @config.domain,
|
216
216
|
computer_name: @config.computer_name,
|
217
217
|
ou_path: @config.ou_path,
|
218
|
+
primary_dns: @config.primary_dns,
|
219
|
+
secondary_dns: @config.secondary_dns,
|
218
220
|
add_to_domain: add_to_domain,
|
219
221
|
unsecure: @config.unsecure,
|
220
222
|
rename: @config.rename,
|
@@ -246,10 +248,6 @@ module VagrantPlugins
|
|
246
248
|
params["-Credential $credentials"] = nil
|
247
249
|
end
|
248
250
|
|
249
|
-
if @config.computer_name != nil && @config.computer_name != @old_computer_name
|
250
|
-
params["-NewName"] = "'#{@config.computer_name}'"
|
251
|
-
end
|
252
|
-
|
253
251
|
if @config.ou_path
|
254
252
|
params["-OUPath"] = "'#{@config.ou_path}'"
|
255
253
|
end
|
@@ -17,8 +17,11 @@ function Repair-OpenSSHPasswd(){
|
|
17
17
|
$passwd | Set-Content $passwdPath -Encoding Ascii
|
18
18
|
}
|
19
19
|
}
|
20
|
-
|
20
|
+
<% if options[:computer_name] != nil %>
|
21
21
|
$computerName='<%= options[:computer_name] %>'
|
22
|
+
<% else %>
|
23
|
+
$computerName = $env:COMPUTERNAME
|
24
|
+
<% end %>
|
22
25
|
<% if options[:username] != nil && options[:unsecure] != true %>
|
23
26
|
$domain='<%= options[:domain] %>'
|
24
27
|
$username='<%= options[:username] %>'
|
@@ -26,14 +29,45 @@ $password='<%= options[:password] %>'
|
|
26
29
|
$secpasswd = ConvertTo-SecureString $password -AsPlainText -Force
|
27
30
|
$credentials = New-Object System.Management.Automation.PSCredential ($username, $secpasswd)
|
28
31
|
<% end %>
|
32
|
+
|
29
33
|
<% if options[:add_to_domain] === true %>
|
30
34
|
if (Test-PartOfDomain -computerName $computerName -domain $domain){
|
31
35
|
throw "$computerName already part of domain $domain"
|
32
36
|
} else {
|
37
|
+
#If a value is provided for the Primary_DNS variable in the vagrantfile, powershell will attempt to determine if the string is a valid IP and will statically set the primary dns server of the vm's nic if it is.
|
38
|
+
<% if options[:primary_dns] != nil %>
|
39
|
+
$prim = '<%= options[:primary_dns] %>'
|
40
|
+
If ($prim -match "^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$")
|
41
|
+
{
|
42
|
+
$wmi = Get-WmiObject -ComputerName $env:COMPUTERNAME -Namespace "root\CIMV2" -Class "Win32_NetworkAdapterconfiguration" -Filter 'IPENABLED=TRUE' -Impersonation Impersonate -ErrorAction Stop | Where-Object { $_.DefaultIPGateway }
|
43
|
+
$currdns = $wmi.DNSServerSearchOrder
|
44
|
+
$wmi.SetDNSServerSearchOrder(@($prim, $currdns[1]))
|
45
|
+
}
|
46
|
+
else
|
47
|
+
{
|
48
|
+
throw "Invalid IP address provided"
|
49
|
+
}
|
50
|
+
<% end %>
|
51
|
+
|
52
|
+
#If a value is provided for the Secondary_DNS variable in the vagrantfile, powershell will attempt to determine if the string is a valid IP and will statically set the secondary dns server of the vm's nic if it is.
|
53
|
+
<% if options[:secondary_dns] != nil %>
|
54
|
+
$sec = '<%= options[:secondary_dns] %>'
|
55
|
+
If ($sec -match "^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$")
|
56
|
+
{
|
57
|
+
$wmi = Get-WmiObject -ComputerName $env:COMPUTERNAME -Namespace "root\CIMV2" -Class "Win32_NetworkAdapterconfiguration" -Filter 'IPENABLED=TRUE' -Impersonation Impersonate -ErrorAction Stop | Where-Object { $_.DefaultIPGateway }
|
58
|
+
$currdns = $wmi.DNSServerSearchOrder
|
59
|
+
$wmi.SetDNSServerSearchOrder(@($currdns[0], $sec))
|
60
|
+
}
|
61
|
+
else
|
62
|
+
{
|
63
|
+
throw "Invalid IP address provided"
|
64
|
+
}
|
65
|
+
<% end %>
|
66
|
+
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory private
|
33
67
|
Add-Computer <%= options[:parameters] %> -Verbose -Force -PassThru
|
34
|
-
|
68
|
+
|
35
69
|
# Rename computer separately: Fixes GH issue #11
|
36
|
-
<% if options[:
|
70
|
+
<% if options[:computer_name] != nil %>
|
37
71
|
$completed = $false
|
38
72
|
while ( -not $completed) {
|
39
73
|
try {
|
@@ -56,10 +90,10 @@ if (Test-PartOfDomain -computerName $computerName -domain $domain){
|
|
56
90
|
|
57
91
|
# Fix vagrant-windows GH-129, if there's an existing scheduled
|
58
92
|
# reboot cancel it so shutdown succeeds
|
59
|
-
|
93
|
+
#&shutdown /a
|
60
94
|
|
61
95
|
# Force shutdown the machine now
|
62
|
-
|
96
|
+
#&shutdown /r /t 0 /c "Vagrant Halt" /f /d p:4:1
|
63
97
|
}
|
64
98
|
<% else %>
|
65
99
|
if (!(Test-JoinedToADomain)) {
|
@@ -67,12 +101,12 @@ if (!(Test-JoinedToADomain)) {
|
|
67
101
|
} else {
|
68
102
|
Remove-Computer <%= options[:parameters] %> -Workgroup 'WORKGROUP' -Verbose -Force -PassThru
|
69
103
|
Repair-OpenSSHPasswd
|
70
|
-
|
104
|
+
#removed the shutdown of the vm when disjoining it from the domain since, as the vm is about to be destroyed anyway, so there is no use for it.
|
71
105
|
# Fix vagrant-windows GH-129, if there's an existing scheduled
|
72
106
|
# reboot cancel it so shutdown succeeds
|
73
|
-
|
107
|
+
#&shutdown /a
|
74
108
|
|
75
109
|
# Force shutdown the machine now
|
76
|
-
|
110
|
+
#&shutdown /r /t 0 /c "Vagrant Halt" /f /d p:4:1
|
77
111
|
}
|
78
112
|
<% end %>
|
@@ -74,11 +74,11 @@ describe VagrantPlugins::WindowsDomain::Provisioner do
|
|
74
74
|
allow(communicator).to receive(:upload)
|
75
75
|
allow(ui).to receive(:info)
|
76
76
|
expect(communicator).to receive(:test)
|
77
|
-
expect(vm).to receive(:boot_timeout).
|
77
|
+
expect(vm).to receive(:boot_timeout).once
|
78
78
|
expect(communicator).to receive(:sudo).with("powershell -ExecutionPolicy Bypass -OutputFormat Text -file c:/tmp/vagrant-windows-domain-runner.ps1", {:elevated=>true, :error_check=>true, :error_key=>nil, :good_exit=>0, :shell=>:powershell})
|
79
79
|
expect(communicator).to receive(:sudo).with("del c:/tmp/vagrant-windows-domain-runner.ps1")
|
80
|
-
expect(machine).to receive(:action).with(:reload, {:provision_ignore_sentinel=>false, :lock=>false}).
|
81
|
-
expect(communicator).to receive(:ready?).and_return(true).
|
80
|
+
expect(machine).to receive(:action).with(:reload, {:provision_ignore_sentinel=>false, :lock=>false}).once
|
81
|
+
expect(communicator).to receive(:ready?).and_return(true).once
|
82
82
|
subject.restart_sleep_duration = 0
|
83
83
|
subject.provision
|
84
84
|
expect(subject.old_computer_name).to eq("myoldcomputername")
|
@@ -88,11 +88,11 @@ describe VagrantPlugins::WindowsDomain::Provisioner do
|
|
88
88
|
allow(communicator).to receive(:upload)
|
89
89
|
allow(ui).to receive(:info)
|
90
90
|
expect(communicator).to receive(:test)
|
91
|
-
expect(vm).to receive(:boot_timeout).
|
91
|
+
expect(vm).to receive(:boot_timeout).once
|
92
92
|
expect(communicator).to receive(:sudo).with("powershell -ExecutionPolicy Bypass -OutputFormat Text -file c:/tmp/vagrant-windows-domain-runner.ps1", {:elevated=>true, :error_check=>true, :error_key=>nil, :good_exit=>0, :shell=>:powershell})
|
93
93
|
expect(communicator).to receive(:sudo).with("del c:/tmp/vagrant-windows-domain-runner.ps1")
|
94
|
-
expect(machine).to receive(:action). with(:reload, {:provision_ignore_sentinel=>false, :lock=>false}).
|
95
|
-
expect(communicator).to receive(:ready?).and_return(true).
|
94
|
+
expect(machine).to receive(:action). with(:reload, {:provision_ignore_sentinel=>false, :lock=>false}).once
|
95
|
+
expect(communicator).to receive(:ready?).and_return(true).once
|
96
96
|
subject.restart_sleep_duration = 0
|
97
97
|
subject.provision
|
98
98
|
end
|
@@ -190,17 +190,10 @@ describe VagrantPlugins::WindowsDomain::Provisioner do
|
|
190
190
|
it "should leave domain when a `vagrant destroy` is issued" do
|
191
191
|
allow(machine).to receive(:communicate).and_return(communicator)
|
192
192
|
expect(communicator).to receive(:test).and_return(true)
|
193
|
-
expect(vm).to receive(:boot_timeout)
|
194
193
|
expect(communicator).to receive(:upload)
|
195
194
|
expect(communicator).to receive(:sudo).with("powershell -ExecutionPolicy Bypass -OutputFormat Text -file c:/tmp/vagrant-windows-domain-runner.ps1", {:elevated=>true, :error_check=>true, :error_key=>nil, :good_exit=>0, :shell=>:powershell}).and_yield(:stdout, "deleted")
|
196
195
|
expect(ui).to receive(:info).with("\"Running Windows Domain Provisioner\"")
|
197
196
|
expect(ui).to receive(:info).with("deleted", {:color=>:green, :new_line=>false, :prefix=>false})
|
198
|
-
expect(ui).to receive(:say).with(:info, "Restarting computer for updates to take effect.")
|
199
|
-
expect(machine).to receive(:action). with(:reload, {:provision_ignore_sentinel=>false, :lock=>false})
|
200
|
-
expect(ui).to_not receive(:say)
|
201
|
-
expect(ui).to_not receive(:ask)
|
202
|
-
expect(communicator).to receive(:ready?).and_return(true)
|
203
|
-
subject.restart_sleep_duration = 0
|
204
197
|
|
205
198
|
subject.destroy
|
206
199
|
end
|
@@ -220,18 +213,12 @@ describe VagrantPlugins::WindowsDomain::Provisioner do
|
|
220
213
|
allow(machine).to receive(:communicate).and_return(communicator)
|
221
214
|
allow(machine).to receive(:env).and_return(env)
|
222
215
|
|
223
|
-
expect(vm).to receive(:boot_timeout)
|
224
216
|
expect(communicator).to receive(:test).and_return(true)
|
225
217
|
expect(communicator).to receive(:upload)
|
226
218
|
expect(communicator).to receive(:sudo).with("powershell -ExecutionPolicy Bypass -OutputFormat Text -file c:/tmp/vagrant-windows-domain-runner.ps1", {:elevated=>true, :error_check=>true, :error_key=>nil, :good_exit=>0, :shell=>:powershell}).and_yield(:stdout, "deleted")
|
227
219
|
expect(ui).to receive(:info).with(any_args).twice
|
228
220
|
expect(ui).to receive(:ask).with("Please enter your domain password (output will be hidden): ", {:echo=>false}).and_return("myusername")
|
229
221
|
expect(ui).to receive(:ask).with("Please enter your domain username: ")
|
230
|
-
expect(ui).to receive(:say).with(:info, "Restarting computer for updates to take effect.")
|
231
|
-
expect(machine).to receive(:action). with(:reload, {:provision_ignore_sentinel=>false, :lock=>false})
|
232
|
-
expect(communicator).to receive(:ready?).and_return(true)
|
233
|
-
subject.restart_sleep_duration = 0
|
234
|
-
|
235
222
|
subject.destroy
|
236
223
|
end
|
237
224
|
|
@@ -19,10 +19,10 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
21
|
spec.add_development_dependency "rake"
|
22
|
-
spec.add_development_dependency "bundler"
|
23
|
-
spec.add_development_dependency "coveralls"
|
24
|
-
spec.add_development_dependency "rspec-core"
|
25
|
-
spec.add_development_dependency "rspec-expectations"
|
26
|
-
spec.add_development_dependency "rspec-mocks"
|
27
|
-
spec.add_development_dependency "rspec-its"
|
22
|
+
spec.add_development_dependency "bundler"
|
23
|
+
spec.add_development_dependency "coveralls"
|
24
|
+
spec.add_development_dependency "rspec-core"
|
25
|
+
spec.add_development_dependency "rspec-expectations"
|
26
|
+
spec.add_development_dependency "rspec-mocks"
|
27
|
+
spec.add_development_dependency "rspec-its"
|
28
28
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-windows-domain
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Fellows
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-09-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -30,120 +30,84 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
34
|
-
- - "<="
|
35
|
-
- !ruby/object:Gem::Version
|
36
|
-
version: 1.12.5
|
33
|
+
version: '0'
|
37
34
|
type: :development
|
38
35
|
prerelease: false
|
39
36
|
version_requirements: !ruby/object:Gem::Requirement
|
40
37
|
requirements:
|
41
38
|
- - ">="
|
42
39
|
- !ruby/object:Gem::Version
|
43
|
-
version:
|
44
|
-
- - "<="
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version: 1.12.5
|
40
|
+
version: '0'
|
47
41
|
- !ruby/object:Gem::Dependency
|
48
42
|
name: coveralls
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
50
44
|
requirements:
|
51
|
-
- - "~>"
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: 0.8.10
|
54
45
|
- - ">="
|
55
46
|
- !ruby/object:Gem::Version
|
56
|
-
version: 0
|
47
|
+
version: '0'
|
57
48
|
type: :development
|
58
49
|
prerelease: false
|
59
50
|
version_requirements: !ruby/object:Gem::Requirement
|
60
51
|
requirements:
|
61
|
-
- - "~>"
|
62
|
-
- !ruby/object:Gem::Version
|
63
|
-
version: 0.8.10
|
64
52
|
- - ">="
|
65
53
|
- !ruby/object:Gem::Version
|
66
|
-
version: 0
|
54
|
+
version: '0'
|
67
55
|
- !ruby/object:Gem::Dependency
|
68
56
|
name: rspec-core
|
69
57
|
requirement: !ruby/object:Gem::Requirement
|
70
58
|
requirements:
|
71
|
-
- - "~>"
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
version: 3.4.2
|
74
59
|
- - ">="
|
75
60
|
- !ruby/object:Gem::Version
|
76
|
-
version:
|
61
|
+
version: '0'
|
77
62
|
type: :development
|
78
63
|
prerelease: false
|
79
64
|
version_requirements: !ruby/object:Gem::Requirement
|
80
65
|
requirements:
|
81
|
-
- - "~>"
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
version: 3.4.2
|
84
66
|
- - ">="
|
85
67
|
- !ruby/object:Gem::Version
|
86
|
-
version:
|
68
|
+
version: '0'
|
87
69
|
- !ruby/object:Gem::Dependency
|
88
70
|
name: rspec-expectations
|
89
71
|
requirement: !ruby/object:Gem::Requirement
|
90
72
|
requirements:
|
91
|
-
- - "~>"
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: 3.4.0
|
94
73
|
- - ">="
|
95
74
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
75
|
+
version: '0'
|
97
76
|
type: :development
|
98
77
|
prerelease: false
|
99
78
|
version_requirements: !ruby/object:Gem::Requirement
|
100
79
|
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: 3.4.0
|
104
80
|
- - ">="
|
105
81
|
- !ruby/object:Gem::Version
|
106
|
-
version:
|
82
|
+
version: '0'
|
107
83
|
- !ruby/object:Gem::Dependency
|
108
84
|
name: rspec-mocks
|
109
85
|
requirement: !ruby/object:Gem::Requirement
|
110
86
|
requirements:
|
111
|
-
- - "~>"
|
112
|
-
- !ruby/object:Gem::Version
|
113
|
-
version: 3.4.1
|
114
87
|
- - ">="
|
115
88
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
89
|
+
version: '0'
|
117
90
|
type: :development
|
118
91
|
prerelease: false
|
119
92
|
version_requirements: !ruby/object:Gem::Requirement
|
120
93
|
requirements:
|
121
|
-
- - "~>"
|
122
|
-
- !ruby/object:Gem::Version
|
123
|
-
version: 3.4.1
|
124
94
|
- - ">="
|
125
95
|
- !ruby/object:Gem::Version
|
126
|
-
version:
|
96
|
+
version: '0'
|
127
97
|
- !ruby/object:Gem::Dependency
|
128
98
|
name: rspec-its
|
129
99
|
requirement: !ruby/object:Gem::Requirement
|
130
100
|
requirements:
|
131
|
-
- - "~>"
|
132
|
-
- !ruby/object:Gem::Version
|
133
|
-
version: 1.2.0
|
134
101
|
- - ">="
|
135
102
|
- !ruby/object:Gem::Version
|
136
|
-
version:
|
103
|
+
version: '0'
|
137
104
|
type: :development
|
138
105
|
prerelease: false
|
139
106
|
version_requirements: !ruby/object:Gem::Requirement
|
140
107
|
requirements:
|
141
|
-
- - "~>"
|
142
|
-
- !ruby/object:Gem::Version
|
143
|
-
version: 1.2.0
|
144
108
|
- - ">="
|
145
109
|
- !ruby/object:Gem::Version
|
146
|
-
version:
|
110
|
+
version: '0'
|
147
111
|
description: Adds and Removes Windows Guests from a Windows Domain, as part of the
|
148
112
|
standard machine lifecycle.
|
149
113
|
email:
|
@@ -193,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
193
157
|
version: '0'
|
194
158
|
requirements: []
|
195
159
|
rubyforge_project:
|
196
|
-
rubygems_version: 2.
|
160
|
+
rubygems_version: 2.7.7
|
197
161
|
signing_key:
|
198
162
|
specification_version: 4
|
199
163
|
summary: Windows Domain Provisioner for Vagrant
|