test-kitchen 3.3.1 → 3.4.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/Gemfile +1 -7
- data/lib/kitchen/lifecycle_hook/base.rb +6 -4
- data/lib/kitchen/loader/yaml.rb +1 -8
- data/lib/kitchen/platform_filter.rb +72 -0
- data/lib/kitchen/plugin_base.rb +0 -1
- data/lib/kitchen/provisioner/chef/policyfile.rb +0 -1
- data/lib/kitchen/provisioner/shell.rb +0 -1
- data/lib/kitchen/suite.rb +4 -2
- data/lib/kitchen/version.rb +1 -1
- data/test-kitchen.gemspec +11 -11
- metadata +98 -97
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fb6ceb9a2ef6ae7f76a3edad93e1f74e035c5b7c4187e3385dd02787faec5535
|
|
4
|
+
data.tar.gz: b8ffaa1abdad8faf9e76ca894c552972a7ce054925ef28cb29f8318cfd21657e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9180f058a260d94acb55c5739a8a1994f57bb0238bc9e0d00081a0904bbda0a1ba9ebc41a538ab3c4d89f505f4fb638eb759f163a17c73aa2625d18f1752dd56
|
|
7
|
+
data.tar.gz: 9b8c843a1d4875f11df5f1d21537d3e1c30ae882dbfcb060d1c4210e2db40782f14e8f68aff406bc7c45ed95bd109f181206b16210897e2757f35cc22f08dc03
|
data/Gemfile
CHANGED
|
@@ -5,17 +5,11 @@ gemspec
|
|
|
5
5
|
|
|
6
6
|
group :integration do
|
|
7
7
|
gem "berkshelf"
|
|
8
|
-
gem "kitchen-inspec"
|
|
9
8
|
gem "kitchen-dokken"
|
|
9
|
+
gem "kitchen-inspec"
|
|
10
10
|
gem "kitchen-vagrant"
|
|
11
11
|
end
|
|
12
12
|
|
|
13
|
-
group :debug do
|
|
14
|
-
gem "pry", "~>0.12"
|
|
15
|
-
gem "pry-byebug"
|
|
16
|
-
gem "pry-stack_explorer"
|
|
17
|
-
end
|
|
18
|
-
|
|
19
13
|
group :chefstyle do
|
|
20
14
|
gem "chefstyle", "2.2.2"
|
|
21
15
|
end
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
require_relative "../platform_filter"
|
|
2
|
+
|
|
1
3
|
module Kitchen
|
|
2
4
|
class LifecycleHook
|
|
3
5
|
class Base
|
|
@@ -59,14 +61,14 @@ module Kitchen
|
|
|
59
61
|
lifecycle_hooks.state_file
|
|
60
62
|
end
|
|
61
63
|
|
|
62
|
-
# @return [Array<
|
|
64
|
+
# @return [Array<PlatformFilter>] names of excluded platforms
|
|
63
65
|
def excludes
|
|
64
|
-
@excludes ||= hook.fetch(:excludes, [])
|
|
66
|
+
@excludes ||= PlatformFilter.convert(hook.fetch(:excludes, []))
|
|
65
67
|
end
|
|
66
68
|
|
|
67
|
-
# @return [Array<
|
|
69
|
+
# @return [Array<PlatformFilter>] names of only included platforms
|
|
68
70
|
def includes
|
|
69
|
-
@includes ||= hook.fetch(:includes, [])
|
|
71
|
+
@includes ||= PlatformFilter.convert(hook.fetch(:includes, []))
|
|
70
72
|
end
|
|
71
73
|
|
|
72
74
|
# @return [String]
|
data/lib/kitchen/loader/yaml.rb
CHANGED
|
@@ -352,14 +352,7 @@ module Kitchen
|
|
|
352
352
|
def parse_yaml_string(string, file_name)
|
|
353
353
|
return {} if string.nil? || string.empty?
|
|
354
354
|
|
|
355
|
-
result =
|
|
356
|
-
if Gem::Requirement.new(">= 3.1.0").satisfied_by?(Gem::Version.new(Psych::VERSION))
|
|
357
|
-
# ruby >= 2.6.0
|
|
358
|
-
::YAML.safe_load(string, permitted_classes: [Symbol], permitted_symbols: [], aliases: true) || {}
|
|
359
|
-
else
|
|
360
|
-
# ruby < 2.6.0
|
|
361
|
-
::YAML.safe_load(string, [Symbol], [], true) || {}
|
|
362
|
-
end
|
|
355
|
+
result = ::YAML.safe_load(string, permitted_classes: [Symbol], permitted_symbols: [], aliases: true) || {}
|
|
363
356
|
unless result.is_a?(Hash)
|
|
364
357
|
raise UserError, "Error parsing #{file_name} as YAML " \
|
|
365
358
|
"(Result of parse was not a Hash, but was a #{result.class}).\n" \
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Author:: Baptiste Courtois (<b.courtois@criteo.com>)
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2021, Baptiste Courtois
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
|
|
18
|
+
module Kitchen
|
|
19
|
+
# A wrapper on Regexp and strings to mix them in platform filters.
|
|
20
|
+
#
|
|
21
|
+
# This should handle backward compatibility in most cases were
|
|
22
|
+
# platform are matched against a filters array using Array.include?
|
|
23
|
+
#
|
|
24
|
+
# This wrapper does not work if filters arrays are converted to Set.
|
|
25
|
+
#
|
|
26
|
+
# @author Baptiste Courtois <b.courtois@criteo.com>
|
|
27
|
+
class PlatformFilter
|
|
28
|
+
# Pattern used to determine whether a filter should be handled as a Regexp
|
|
29
|
+
REGEXP_LIKE_PATTERN = %r{^/(?<pattern>.*)/(?<options>[ix]*)$}.freeze
|
|
30
|
+
|
|
31
|
+
# Converts platform filters into an array of PlatformFilter handling both strings and Regexp.
|
|
32
|
+
# A string "looks-like" a regexp if it starts by / and end by / + Regexp options i or x
|
|
33
|
+
#
|
|
34
|
+
# @return [Array] filters with regexp-like string converted to PlatformRegexpFilter
|
|
35
|
+
def self.convert(filters)
|
|
36
|
+
::Kernel.Array(filters).map do |filter|
|
|
37
|
+
if (match = filter.match(REGEXP_LIKE_PATTERN))
|
|
38
|
+
options = match["options"].include?("i") ? ::Regexp::IGNORECASE : 0
|
|
39
|
+
options |= ::Regexp::EXTENDED if match["options"].include?("x")
|
|
40
|
+
filter = ::Regexp.new(match["pattern"], options)
|
|
41
|
+
end
|
|
42
|
+
new(filter)
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# @return [Regexp] value of this filter
|
|
47
|
+
attr_reader :value
|
|
48
|
+
|
|
49
|
+
# Constructs a new filter.
|
|
50
|
+
#
|
|
51
|
+
# @param [Regexp,String] value of the filter
|
|
52
|
+
def initialize(value)
|
|
53
|
+
raise ::ArgumentError, "PlatformFilter#new requires value to be a String or a Regexp" unless value.is_a?(::Regexp) || value.is_a?(::String)
|
|
54
|
+
|
|
55
|
+
@value = value
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# Override of the equality operator to check whether the wrapped Regexp match the given object.
|
|
59
|
+
#
|
|
60
|
+
# @param [Object] other object to compare to
|
|
61
|
+
# @return [Boolean] whether the objects are equal or the wrapped Regexp matches the given string or symbol
|
|
62
|
+
def ==(other)
|
|
63
|
+
if @value.is_a?(::Regexp) && (other.is_a?(::String) || other.is_a?(::Symbol))
|
|
64
|
+
@value =~ other
|
|
65
|
+
else
|
|
66
|
+
other == @value
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
alias eq? ==
|
|
71
|
+
end
|
|
72
|
+
end
|
data/lib/kitchen/plugin_base.rb
CHANGED
data/lib/kitchen/suite.rb
CHANGED
|
@@ -15,6 +15,8 @@
|
|
|
15
15
|
# See the License for the specific language governing permissions and
|
|
16
16
|
# limitations under the License.
|
|
17
17
|
|
|
18
|
+
require_relative "platform_filter"
|
|
19
|
+
|
|
18
20
|
module Kitchen
|
|
19
21
|
# A logical configuration representing a test case or fixture that will be
|
|
20
22
|
# executed on a platform.
|
|
@@ -41,8 +43,8 @@ module Kitchen
|
|
|
41
43
|
@name = options.fetch(:name) do
|
|
42
44
|
raise ClientError, "Suite#new requires option :name"
|
|
43
45
|
end
|
|
44
|
-
@excludes = options.fetch(:excludes, [])
|
|
45
|
-
@includes = options.fetch(:includes, [])
|
|
46
|
+
@excludes = PlatformFilter.convert(options.fetch(:excludes, []))
|
|
47
|
+
@includes = PlatformFilter.convert(options.fetch(:includes, []))
|
|
46
48
|
end
|
|
47
49
|
end
|
|
48
50
|
end
|
data/lib/kitchen/version.rb
CHANGED
data/test-kitchen.gemspec
CHANGED
|
@@ -20,33 +20,33 @@ Gem::Specification.new do |gem|
|
|
|
20
20
|
gem.executables = %w{kitchen}
|
|
21
21
|
gem.require_paths = ["lib"]
|
|
22
22
|
|
|
23
|
-
gem.required_ruby_version = ">= 2.
|
|
23
|
+
gem.required_ruby_version = ">= 2.7"
|
|
24
24
|
|
|
25
|
+
gem.add_dependency "bcrypt_pbkdf", "~> 1.0" # ed25519 ssh key support
|
|
26
|
+
gem.add_dependency "chef-utils", ">= 16.4.35"
|
|
27
|
+
gem.add_dependency "ed25519", "~> 1.2" # ed25519 ssh key support
|
|
28
|
+
gem.add_dependency "mixlib-install", "~> 3.6"
|
|
25
29
|
gem.add_dependency "mixlib-shellout", ">= 1.2", "< 4.0"
|
|
26
|
-
gem.add_dependency "net-scp", ">= 1.1", "<
|
|
27
|
-
gem.add_dependency "net-ssh", ">= 2.9", "<
|
|
30
|
+
gem.add_dependency "net-scp", ">= 1.1", "< 5.0" # pinning until we can confirm 4+ works
|
|
31
|
+
gem.add_dependency "net-ssh", ">= 2.9", "< 8.0" # pinning until we can confirm 8+ works
|
|
28
32
|
gem.add_dependency "net-ssh-gateway", ">= 1.2", "< 3.0" # pinning until we can confirm 3+ works
|
|
29
|
-
gem.add_dependency "ed25519", "~> 1.2" # ed25519 ssh key support
|
|
30
|
-
gem.add_dependency "bcrypt_pbkdf", "~> 1.0" # ed25519 ssh key support
|
|
31
33
|
gem.add_dependency "thor", ">= 0.19", "< 2.0"
|
|
32
|
-
gem.add_dependency "mixlib-install", "~> 3.6"
|
|
33
34
|
gem.add_dependency "winrm", "~> 2.0"
|
|
34
35
|
gem.add_dependency "winrm-elevated", "~> 1.0"
|
|
35
36
|
gem.add_dependency "winrm-fs", "~> 1.1"
|
|
36
|
-
gem.add_dependency "chef-utils", ">= 16.4.35"
|
|
37
37
|
# Required to run the Chef provisioner local license check for remote systems
|
|
38
38
|
# TK is not under Chef EULA
|
|
39
39
|
gem.add_dependency "license-acceptance", ">= 1.0.11", "< 3.0" # pinning until we can confirm 3+ works
|
|
40
40
|
|
|
41
|
-
gem.add_development_dependency "rb-readline"
|
|
42
41
|
gem.add_development_dependency "bundler"
|
|
43
42
|
gem.add_development_dependency "rake"
|
|
43
|
+
gem.add_development_dependency "rb-readline"
|
|
44
44
|
|
|
45
45
|
gem.add_development_dependency "aruba", ">= 0.11", "< 3.0"
|
|
46
|
+
gem.add_development_dependency "countloc", "~> 0.4"
|
|
47
|
+
gem.add_development_dependency "cucumber", ">= 2.1", "< 8.0"
|
|
46
48
|
gem.add_development_dependency "fakefs", "~> 1.0"
|
|
49
|
+
gem.add_development_dependency "maruku", "~> 0.6"
|
|
47
50
|
gem.add_development_dependency "minitest", "~> 5.3", "< 5.16"
|
|
48
51
|
gem.add_development_dependency "mocha", "~> 1.1"
|
|
49
|
-
gem.add_development_dependency "cucumber", ">= 2.1", "< 8.0"
|
|
50
|
-
gem.add_development_dependency "countloc", "~> 0.4"
|
|
51
|
-
gem.add_development_dependency "maruku", "~> 0.6"
|
|
52
52
|
end
|
metadata
CHANGED
|
@@ -1,15 +1,71 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: test-kitchen
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Fletcher Nichol
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2022-
|
|
11
|
+
date: 2022-10-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: bcrypt_pbkdf
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '1.0'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '1.0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: chef-utils
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: 16.4.35
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: 16.4.35
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: ed25519
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '1.2'
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - "~>"
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '1.2'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: mixlib-install
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '3.6'
|
|
62
|
+
type: :runtime
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '3.6'
|
|
13
69
|
- !ruby/object:Gem::Dependency
|
|
14
70
|
name: mixlib-shellout
|
|
15
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -39,7 +95,7 @@ dependencies:
|
|
|
39
95
|
version: '1.1'
|
|
40
96
|
- - "<"
|
|
41
97
|
- !ruby/object:Gem::Version
|
|
42
|
-
version: '
|
|
98
|
+
version: '5.0'
|
|
43
99
|
type: :runtime
|
|
44
100
|
prerelease: false
|
|
45
101
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -49,7 +105,7 @@ dependencies:
|
|
|
49
105
|
version: '1.1'
|
|
50
106
|
- - "<"
|
|
51
107
|
- !ruby/object:Gem::Version
|
|
52
|
-
version: '
|
|
108
|
+
version: '5.0'
|
|
53
109
|
- !ruby/object:Gem::Dependency
|
|
54
110
|
name: net-ssh
|
|
55
111
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -59,7 +115,7 @@ dependencies:
|
|
|
59
115
|
version: '2.9'
|
|
60
116
|
- - "<"
|
|
61
117
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: '
|
|
118
|
+
version: '8.0'
|
|
63
119
|
type: :runtime
|
|
64
120
|
prerelease: false
|
|
65
121
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -69,7 +125,7 @@ dependencies:
|
|
|
69
125
|
version: '2.9'
|
|
70
126
|
- - "<"
|
|
71
127
|
- !ruby/object:Gem::Version
|
|
72
|
-
version: '
|
|
128
|
+
version: '8.0'
|
|
73
129
|
- !ruby/object:Gem::Dependency
|
|
74
130
|
name: net-ssh-gateway
|
|
75
131
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -90,34 +146,6 @@ dependencies:
|
|
|
90
146
|
- - "<"
|
|
91
147
|
- !ruby/object:Gem::Version
|
|
92
148
|
version: '3.0'
|
|
93
|
-
- !ruby/object:Gem::Dependency
|
|
94
|
-
name: ed25519
|
|
95
|
-
requirement: !ruby/object:Gem::Requirement
|
|
96
|
-
requirements:
|
|
97
|
-
- - "~>"
|
|
98
|
-
- !ruby/object:Gem::Version
|
|
99
|
-
version: '1.2'
|
|
100
|
-
type: :runtime
|
|
101
|
-
prerelease: false
|
|
102
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
103
|
-
requirements:
|
|
104
|
-
- - "~>"
|
|
105
|
-
- !ruby/object:Gem::Version
|
|
106
|
-
version: '1.2'
|
|
107
|
-
- !ruby/object:Gem::Dependency
|
|
108
|
-
name: bcrypt_pbkdf
|
|
109
|
-
requirement: !ruby/object:Gem::Requirement
|
|
110
|
-
requirements:
|
|
111
|
-
- - "~>"
|
|
112
|
-
- !ruby/object:Gem::Version
|
|
113
|
-
version: '1.0'
|
|
114
|
-
type: :runtime
|
|
115
|
-
prerelease: false
|
|
116
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
117
|
-
requirements:
|
|
118
|
-
- - "~>"
|
|
119
|
-
- !ruby/object:Gem::Version
|
|
120
|
-
version: '1.0'
|
|
121
149
|
- !ruby/object:Gem::Dependency
|
|
122
150
|
name: thor
|
|
123
151
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -138,20 +166,6 @@ dependencies:
|
|
|
138
166
|
- - "<"
|
|
139
167
|
- !ruby/object:Gem::Version
|
|
140
168
|
version: '2.0'
|
|
141
|
-
- !ruby/object:Gem::Dependency
|
|
142
|
-
name: mixlib-install
|
|
143
|
-
requirement: !ruby/object:Gem::Requirement
|
|
144
|
-
requirements:
|
|
145
|
-
- - "~>"
|
|
146
|
-
- !ruby/object:Gem::Version
|
|
147
|
-
version: '3.6'
|
|
148
|
-
type: :runtime
|
|
149
|
-
prerelease: false
|
|
150
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
151
|
-
requirements:
|
|
152
|
-
- - "~>"
|
|
153
|
-
- !ruby/object:Gem::Version
|
|
154
|
-
version: '3.6'
|
|
155
169
|
- !ruby/object:Gem::Dependency
|
|
156
170
|
name: winrm
|
|
157
171
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -194,20 +208,6 @@ dependencies:
|
|
|
194
208
|
- - "~>"
|
|
195
209
|
- !ruby/object:Gem::Version
|
|
196
210
|
version: '1.1'
|
|
197
|
-
- !ruby/object:Gem::Dependency
|
|
198
|
-
name: chef-utils
|
|
199
|
-
requirement: !ruby/object:Gem::Requirement
|
|
200
|
-
requirements:
|
|
201
|
-
- - ">="
|
|
202
|
-
- !ruby/object:Gem::Version
|
|
203
|
-
version: 16.4.35
|
|
204
|
-
type: :runtime
|
|
205
|
-
prerelease: false
|
|
206
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
207
|
-
requirements:
|
|
208
|
-
- - ">="
|
|
209
|
-
- !ruby/object:Gem::Version
|
|
210
|
-
version: 16.4.35
|
|
211
211
|
- !ruby/object:Gem::Dependency
|
|
212
212
|
name: license-acceptance
|
|
213
213
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -229,7 +229,7 @@ dependencies:
|
|
|
229
229
|
- !ruby/object:Gem::Version
|
|
230
230
|
version: '3.0'
|
|
231
231
|
- !ruby/object:Gem::Dependency
|
|
232
|
-
name:
|
|
232
|
+
name: bundler
|
|
233
233
|
requirement: !ruby/object:Gem::Requirement
|
|
234
234
|
requirements:
|
|
235
235
|
- - ">="
|
|
@@ -243,7 +243,7 @@ dependencies:
|
|
|
243
243
|
- !ruby/object:Gem::Version
|
|
244
244
|
version: '0'
|
|
245
245
|
- !ruby/object:Gem::Dependency
|
|
246
|
-
name:
|
|
246
|
+
name: rake
|
|
247
247
|
requirement: !ruby/object:Gem::Requirement
|
|
248
248
|
requirements:
|
|
249
249
|
- - ">="
|
|
@@ -257,7 +257,7 @@ dependencies:
|
|
|
257
257
|
- !ruby/object:Gem::Version
|
|
258
258
|
version: '0'
|
|
259
259
|
- !ruby/object:Gem::Dependency
|
|
260
|
-
name:
|
|
260
|
+
name: rb-readline
|
|
261
261
|
requirement: !ruby/object:Gem::Requirement
|
|
262
262
|
requirements:
|
|
263
263
|
- - ">="
|
|
@@ -291,101 +291,101 @@ dependencies:
|
|
|
291
291
|
- !ruby/object:Gem::Version
|
|
292
292
|
version: '3.0'
|
|
293
293
|
- !ruby/object:Gem::Dependency
|
|
294
|
-
name:
|
|
294
|
+
name: countloc
|
|
295
295
|
requirement: !ruby/object:Gem::Requirement
|
|
296
296
|
requirements:
|
|
297
297
|
- - "~>"
|
|
298
298
|
- !ruby/object:Gem::Version
|
|
299
|
-
version: '
|
|
299
|
+
version: '0.4'
|
|
300
300
|
type: :development
|
|
301
301
|
prerelease: false
|
|
302
302
|
version_requirements: !ruby/object:Gem::Requirement
|
|
303
303
|
requirements:
|
|
304
304
|
- - "~>"
|
|
305
305
|
- !ruby/object:Gem::Version
|
|
306
|
-
version: '
|
|
306
|
+
version: '0.4'
|
|
307
307
|
- !ruby/object:Gem::Dependency
|
|
308
|
-
name:
|
|
308
|
+
name: cucumber
|
|
309
309
|
requirement: !ruby/object:Gem::Requirement
|
|
310
310
|
requirements:
|
|
311
|
-
- - "
|
|
311
|
+
- - ">="
|
|
312
312
|
- !ruby/object:Gem::Version
|
|
313
|
-
version: '
|
|
313
|
+
version: '2.1'
|
|
314
314
|
- - "<"
|
|
315
315
|
- !ruby/object:Gem::Version
|
|
316
|
-
version: '
|
|
316
|
+
version: '8.0'
|
|
317
317
|
type: :development
|
|
318
318
|
prerelease: false
|
|
319
319
|
version_requirements: !ruby/object:Gem::Requirement
|
|
320
320
|
requirements:
|
|
321
|
-
- - "
|
|
321
|
+
- - ">="
|
|
322
322
|
- !ruby/object:Gem::Version
|
|
323
|
-
version: '
|
|
323
|
+
version: '2.1'
|
|
324
324
|
- - "<"
|
|
325
325
|
- !ruby/object:Gem::Version
|
|
326
|
-
version: '
|
|
326
|
+
version: '8.0'
|
|
327
327
|
- !ruby/object:Gem::Dependency
|
|
328
|
-
name:
|
|
328
|
+
name: fakefs
|
|
329
329
|
requirement: !ruby/object:Gem::Requirement
|
|
330
330
|
requirements:
|
|
331
331
|
- - "~>"
|
|
332
332
|
- !ruby/object:Gem::Version
|
|
333
|
-
version: '1.
|
|
333
|
+
version: '1.0'
|
|
334
334
|
type: :development
|
|
335
335
|
prerelease: false
|
|
336
336
|
version_requirements: !ruby/object:Gem::Requirement
|
|
337
337
|
requirements:
|
|
338
338
|
- - "~>"
|
|
339
339
|
- !ruby/object:Gem::Version
|
|
340
|
-
version: '1.
|
|
340
|
+
version: '1.0'
|
|
341
341
|
- !ruby/object:Gem::Dependency
|
|
342
|
-
name:
|
|
342
|
+
name: maruku
|
|
343
343
|
requirement: !ruby/object:Gem::Requirement
|
|
344
344
|
requirements:
|
|
345
|
-
- - "
|
|
346
|
-
- !ruby/object:Gem::Version
|
|
347
|
-
version: '2.1'
|
|
348
|
-
- - "<"
|
|
345
|
+
- - "~>"
|
|
349
346
|
- !ruby/object:Gem::Version
|
|
350
|
-
version: '
|
|
347
|
+
version: '0.6'
|
|
351
348
|
type: :development
|
|
352
349
|
prerelease: false
|
|
353
350
|
version_requirements: !ruby/object:Gem::Requirement
|
|
354
351
|
requirements:
|
|
355
|
-
- - "
|
|
356
|
-
- !ruby/object:Gem::Version
|
|
357
|
-
version: '2.1'
|
|
358
|
-
- - "<"
|
|
352
|
+
- - "~>"
|
|
359
353
|
- !ruby/object:Gem::Version
|
|
360
|
-
version: '
|
|
354
|
+
version: '0.6'
|
|
361
355
|
- !ruby/object:Gem::Dependency
|
|
362
|
-
name:
|
|
356
|
+
name: minitest
|
|
363
357
|
requirement: !ruby/object:Gem::Requirement
|
|
364
358
|
requirements:
|
|
365
359
|
- - "~>"
|
|
366
360
|
- !ruby/object:Gem::Version
|
|
367
|
-
version: '
|
|
361
|
+
version: '5.3'
|
|
362
|
+
- - "<"
|
|
363
|
+
- !ruby/object:Gem::Version
|
|
364
|
+
version: '5.16'
|
|
368
365
|
type: :development
|
|
369
366
|
prerelease: false
|
|
370
367
|
version_requirements: !ruby/object:Gem::Requirement
|
|
371
368
|
requirements:
|
|
372
369
|
- - "~>"
|
|
373
370
|
- !ruby/object:Gem::Version
|
|
374
|
-
version: '
|
|
371
|
+
version: '5.3'
|
|
372
|
+
- - "<"
|
|
373
|
+
- !ruby/object:Gem::Version
|
|
374
|
+
version: '5.16'
|
|
375
375
|
- !ruby/object:Gem::Dependency
|
|
376
|
-
name:
|
|
376
|
+
name: mocha
|
|
377
377
|
requirement: !ruby/object:Gem::Requirement
|
|
378
378
|
requirements:
|
|
379
379
|
- - "~>"
|
|
380
380
|
- !ruby/object:Gem::Version
|
|
381
|
-
version: '
|
|
381
|
+
version: '1.1'
|
|
382
382
|
type: :development
|
|
383
383
|
prerelease: false
|
|
384
384
|
version_requirements: !ruby/object:Gem::Requirement
|
|
385
385
|
requirements:
|
|
386
386
|
- - "~>"
|
|
387
387
|
- !ruby/object:Gem::Version
|
|
388
|
-
version: '
|
|
388
|
+
version: '1.1'
|
|
389
389
|
description: Test Kitchen is an integration tool for developing and testing infrastructure
|
|
390
390
|
code and software on isolated target platforms.
|
|
391
391
|
email:
|
|
@@ -440,6 +440,7 @@ files:
|
|
|
440
440
|
- lib/kitchen/login_command.rb
|
|
441
441
|
- lib/kitchen/metadata_chopper.rb
|
|
442
442
|
- lib/kitchen/platform.rb
|
|
443
|
+
- lib/kitchen/platform_filter.rb
|
|
443
444
|
- lib/kitchen/plugin.rb
|
|
444
445
|
- lib/kitchen/plugin_base.rb
|
|
445
446
|
- lib/kitchen/provisioner.rb
|
|
@@ -513,14 +514,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
513
514
|
requirements:
|
|
514
515
|
- - ">="
|
|
515
516
|
- !ruby/object:Gem::Version
|
|
516
|
-
version: '2.
|
|
517
|
+
version: '2.7'
|
|
517
518
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
518
519
|
requirements:
|
|
519
520
|
- - ">="
|
|
520
521
|
- !ruby/object:Gem::Version
|
|
521
522
|
version: '0'
|
|
522
523
|
requirements: []
|
|
523
|
-
rubygems_version: 3.3.
|
|
524
|
+
rubygems_version: 3.3.16
|
|
524
525
|
signing_key:
|
|
525
526
|
specification_version: 4
|
|
526
527
|
summary: Test Kitchen is an integration tool for developing and testing infrastructure
|