kitchen-nodes 0.6.6 → 0.7.0
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 +4 -4
- data/.kitchen.yml +5 -0
- data/CHANGELOG.md +86 -0
- data/Gemfile +2 -2
- data/Rakefile +12 -0
- data/kitchen-nodes.gemspec +1 -0
- data/lib/kitchen/provisioner/finder/ssh.rb +1 -0
- data/lib/kitchen/provisioner/finder/winrm.rb +2 -2
- data/lib/kitchen/provisioner/nodes.rb +8 -1
- data/lib/kitchen/provisioner/nodes_version.rb +1 -1
- data/spec/unit/nodes_spec.rb +3 -1
- data/test/integration/node2/serverspec/default_spec.rb +5 -2
- metadata +18 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 914e2ddce98d8878bc2341631e67a37865a80398
|
4
|
+
data.tar.gz: bbedb84bb8903054635f693f46d1042d74cbc0d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6715ea6d9d65bd27b9fe74268e936a0af167b62881d915bd6b5ef5c645bf3b2d9bff5667610403e8ffc2381b52c03acaa8b1166ea4481d055e547f61ab74310e
|
7
|
+
data.tar.gz: b63538dac0dfd02f71ec9afbe794753583a89de3fffe79151448cfbfec2cc4f132c5d784b616d29285feef685ecb303204c205b19ad0438bf665ef10cf4a88c7
|
data/.kitchen.yml
CHANGED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,86 @@
|
|
1
|
+
# Change Log
|
2
|
+
|
3
|
+
## [0.7.0](https://github.com/mwrock/kitchen-nodes/tree/0.7.0) (2016-03-08)
|
4
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.6.6...0.7.0)
|
5
|
+
|
6
|
+
**Implemented enhancements:**
|
7
|
+
|
8
|
+
- Added support for windows 2008R2 [\#18](https://github.com/mwrock/kitchen-nodes/pull/18) ([johnsmyth](https://github.com/johnsmyth))
|
9
|
+
|
10
|
+
**Fixed bugs:**
|
11
|
+
|
12
|
+
- Fix device filtering breaking for IPv6 interfaces [\#15](https://github.com/mwrock/kitchen-nodes/pull/15) ([vervas](https://github.com/vervas))
|
13
|
+
|
14
|
+
## [v0.6.6](https://github.com/mwrock/kitchen-nodes/tree/v0.6.6) (2016-02-12)
|
15
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.6.5...v0.6.6)
|
16
|
+
|
17
|
+
**Fixed bugs:**
|
18
|
+
|
19
|
+
- kitchen-nodes fails serverspec test on 2012 node due to unpopulated IP address [\#11](https://github.com/mwrock/kitchen-nodes/issues/11)
|
20
|
+
- Shave extra newline off fqdn [\#13](https://github.com/mwrock/kitchen-nodes/pull/13) ([watkinsv-hp](https://github.com/watkinsv-hp))
|
21
|
+
|
22
|
+
## [v0.6.5](https://github.com/mwrock/kitchen-nodes/tree/v0.6.5) (2016-02-11)
|
23
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.6.4...v0.6.5)
|
24
|
+
|
25
|
+
**Fixed bugs:**
|
26
|
+
|
27
|
+
- kitchen-nodes provisioner needs kitchen-sync sftp finder [\#10](https://github.com/mwrock/kitchen-nodes/issues/10)
|
28
|
+
|
29
|
+
## [v0.6.4](https://github.com/mwrock/kitchen-nodes/tree/v0.6.4) (2016-01-27)
|
30
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.6.0...v0.6.4)
|
31
|
+
|
32
|
+
**Fixed bugs:**
|
33
|
+
|
34
|
+
- Error: Sandbox directory has not yet been created [\#9](https://github.com/mwrock/kitchen-nodes/issues/9)
|
35
|
+
|
36
|
+
## [v0.6.0](https://github.com/mwrock/kitchen-nodes/tree/v0.6.0) (2015-12-14)
|
37
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.5.0...v0.6.0)
|
38
|
+
|
39
|
+
**Implemented enhancements:**
|
40
|
+
|
41
|
+
- Expand the run\_list into the automatic=\>recipes attribute [\#8](https://github.com/mwrock/kitchen-nodes/pull/8) ([eherot](https://github.com/eherot))
|
42
|
+
|
43
|
+
## [v0.5.0](https://github.com/mwrock/kitchen-nodes/tree/v0.5.0) (2015-10-11)
|
44
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.4.1...v0.5.0)
|
45
|
+
|
46
|
+
**Implemented enhancements:**
|
47
|
+
|
48
|
+
- Feature/adding fqdn [\#7](https://github.com/mwrock/kitchen-nodes/pull/7) ([faja](https://github.com/faja))
|
49
|
+
|
50
|
+
## [v0.4.1](https://github.com/mwrock/kitchen-nodes/tree/v0.4.1) (2015-08-14)
|
51
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.4.0...v0.4.1)
|
52
|
+
|
53
|
+
## [v0.4.0](https://github.com/mwrock/kitchen-nodes/tree/v0.4.0) (2015-08-12)
|
54
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.3.4...v0.4.0)
|
55
|
+
|
56
|
+
## [v0.3.4](https://github.com/mwrock/kitchen-nodes/tree/v0.3.4) (2015-08-04)
|
57
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.3.3...v0.3.4)
|
58
|
+
|
59
|
+
## [v0.3.3](https://github.com/mwrock/kitchen-nodes/tree/v0.3.3) (2015-07-30)
|
60
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.3.2...v0.3.3)
|
61
|
+
|
62
|
+
**Implemented enhancements:**
|
63
|
+
|
64
|
+
- Update IP finder to work for CentOS 7.1 [\#6](https://github.com/mwrock/kitchen-nodes/pull/6) ([joerocklin](https://github.com/joerocklin))
|
65
|
+
|
66
|
+
## [v0.3.2](https://github.com/mwrock/kitchen-nodes/tree/v0.3.2) (2015-06-26)
|
67
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.3.1...v0.3.2)
|
68
|
+
|
69
|
+
**Fixed bugs:**
|
70
|
+
|
71
|
+
- Fix search\(\) for currently provisioned node [\#4](https://github.com/mwrock/kitchen-nodes/pull/4) ([ustuehler](https://github.com/ustuehler))
|
72
|
+
|
73
|
+
## [v0.3.1](https://github.com/mwrock/kitchen-nodes/tree/v0.3.1) (2015-05-11)
|
74
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.3.0...v0.3.1)
|
75
|
+
|
76
|
+
## [v0.3.0](https://github.com/mwrock/kitchen-nodes/tree/v0.3.0) (2015-05-10)
|
77
|
+
[Full Changelog](https://github.com/mwrock/kitchen-nodes/compare/v0.2.0...v0.3.0)
|
78
|
+
|
79
|
+
**Implemented enhancements:**
|
80
|
+
|
81
|
+
- Include .kitchen.yml attributes to the node file at 'normal' scope. [\#2](https://github.com/mwrock/kitchen-nodes/pull/2) ([jcejohnson](https://github.com/jcejohnson))
|
82
|
+
|
83
|
+
## [v0.2.0](https://github.com/mwrock/kitchen-nodes/tree/v0.2.0) (2015-04-21)
|
84
|
+
|
85
|
+
|
86
|
+
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
|
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'bundler/gem_tasks'
|
2
|
+
require 'github_changelog_generator/task'
|
2
3
|
require 'rspec/core/rake_task'
|
3
4
|
require 'rubocop/rake_task'
|
4
5
|
|
@@ -8,4 +9,15 @@ RuboCop::RakeTask.new(:style) do |task|
|
|
8
9
|
task.options << '--display-cop-names'
|
9
10
|
end
|
10
11
|
|
12
|
+
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
|
13
|
+
config.future_release = Kitchen::Provisioner::NODES_VERSION
|
14
|
+
config.enhancement_labels = ['enhancement']
|
15
|
+
config.bug_labels = ['bug']
|
16
|
+
config.exclude_labels = %w(duplicate question invalid wontfix no_changelog)
|
17
|
+
config.exclude_tags = [
|
18
|
+
'v0.1.0.dev', 'v0.2.0.dev', 'v0.2.0.dev.1',
|
19
|
+
'v0.2.0.dev.2', 'v0.2.0.dev.3', 'v0.2.0.dev.4',
|
20
|
+
'v0.6.4.dev', 'v0.6.3', 'v0.6.2', 'v0.6.1']
|
21
|
+
end
|
22
|
+
|
11
23
|
task default: [:test, :style]
|
data/kitchen-nodes.gemspec
CHANGED
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
|
|
24
24
|
|
25
25
|
spec.add_development_dependency 'bundler', '~> 1.3'
|
26
26
|
spec.add_development_dependency 'fakefs', '~> 0.4'
|
27
|
+
spec.add_development_dependency 'github_changelog_generator', '1.11.3'
|
27
28
|
spec.add_development_dependency 'rake'
|
28
29
|
spec.add_development_dependency 'rspec', '~> 3.2'
|
29
30
|
spec.add_development_dependency 'rubocop', '~> 0.37', '>= 0.37.1'
|
@@ -23,11 +23,11 @@ module Kitchen
|
|
23
23
|
|
24
24
|
def find_ips
|
25
25
|
out = @connection.node_execute(
|
26
|
-
'
|
26
|
+
'(ipconfig) -match \'IPv[46] Address\'')
|
27
27
|
data = []
|
28
28
|
out[:data].each do |out_data|
|
29
29
|
stdout = out_data[:stdout]
|
30
|
-
data <<
|
30
|
+
data << Regexp.last_match[1] if stdout.chomp =~ /:\s*(\S+)/
|
31
31
|
end
|
32
32
|
data
|
33
33
|
end
|
@@ -122,10 +122,17 @@ module Kitchen
|
|
122
122
|
def get_reachable_guest_address(state)
|
123
123
|
active_ips(instance.transport, state).each do |address|
|
124
124
|
next if address == '127.0.0.1'
|
125
|
-
return address if
|
125
|
+
return address if reachable?(address)
|
126
126
|
end
|
127
127
|
end
|
128
128
|
|
129
|
+
def reachable?(address)
|
130
|
+
Net::Ping::External.new.ping(address) ||
|
131
|
+
Net::Ping::TCP.new(address, 5985).ping ||
|
132
|
+
Net::Ping::TCP.new(address, 5986).ping ||
|
133
|
+
Net::Ping::TCP.new(address, 22).ping
|
134
|
+
end
|
135
|
+
|
129
136
|
def active_ips(transport, state)
|
130
137
|
# inject creds into state for legacy drivers
|
131
138
|
[:username, :password].each do |prop|
|
data/spec/unit/nodes_spec.rb
CHANGED
@@ -156,7 +156,7 @@ describe Kitchen::Provisioner::Nodes do
|
|
156
156
|
let(:transport) { Kitchen::Transport::Winrm.new }
|
157
157
|
|
158
158
|
before do
|
159
|
-
data = machine_ips.map { |ip| { stdout: "#{ip}\r\n" } }
|
159
|
+
data = machine_ips.map { |ip| { stdout: "IPv4 Address .: #{ip}\r\n" } }
|
160
160
|
data = data.insert(0, stdout: "\r\n")
|
161
161
|
allow_any_instance_of(Kitchen::Transport::Base::Connection).to(
|
162
162
|
receive(:node_execute).and_return(data: data)
|
@@ -172,6 +172,8 @@ describe Kitchen::Provisioner::Nodes do
|
|
172
172
|
|
173
173
|
context 'only the last ip is reachable' do
|
174
174
|
before do
|
175
|
+
allow_any_instance_of(Net::Ping::TCP).to receive(:ping)
|
176
|
+
.and_return(false)
|
175
177
|
allow_any_instance_of(Net::Ping::External).to receive(:ping)
|
176
178
|
.and_return(false)
|
177
179
|
allow_any_instance_of(Net::Ping::External).to receive(:ping)
|
@@ -44,8 +44,11 @@ describe 'other node' do
|
|
44
44
|
expect(ip).to match(/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/)
|
45
45
|
end
|
46
46
|
|
47
|
-
|
48
|
-
|
47
|
+
# Skip this test on the 2008 box bc its not sysprepped....
|
48
|
+
unless ENV['computername'] =~ /VAGRANT\-2008R2/i
|
49
|
+
describe command('hostname') do
|
50
|
+
its(:stdout) { should_not match(/#{Regexp.quote(fqdn)}/) }
|
51
|
+
end
|
49
52
|
end
|
50
53
|
|
51
54
|
if RUBY_PLATFORM =~ /mingw/
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-nodes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Wrock
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-03-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-ping
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0.4'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: github_changelog_generator
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 1.11.3
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 1.11.3
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rake
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -140,6 +154,7 @@ files:
|
|
140
154
|
- ".rubocop.yml"
|
141
155
|
- ".travis.yml"
|
142
156
|
- Berksfile
|
157
|
+
- CHANGELOG.md
|
143
158
|
- Gemfile
|
144
159
|
- LICENSE
|
145
160
|
- README.md
|
@@ -182,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
182
197
|
version: '0'
|
183
198
|
requirements: []
|
184
199
|
rubyforge_project:
|
185
|
-
rubygems_version: 2.
|
200
|
+
rubygems_version: 2.5.2
|
186
201
|
signing_key:
|
187
202
|
specification_version: 4
|
188
203
|
summary: A Test Kitchen Provisioner for Chef Nodes
|