vagrant-windows-domain 1.3.1 → 1.3.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|