inspec 2.2.78 → 2.2.101
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/CHANGELOG.md +44 -14
- data/Rakefile +19 -0
- data/docs/profiles.md +106 -8
- data/examples/inheritance/inspec.yml +2 -1
- data/examples/profile/controls/gordon.rb +1 -1
- data/examples/profile/controls/meta.rb +2 -0
- data/examples/profile/inspec.yml +2 -1
- data/inspec.gemspec +3 -2
- data/lib/bundles/inspec-compliance/cli.rb +13 -1
- data/lib/bundles/inspec-compliance/http.rb +9 -18
- data/lib/bundles/inspec-compliance/target.rb +3 -3
- data/lib/fetchers/local.rb +60 -17
- data/lib/inspec.rb +4 -0
- data/lib/inspec/attribute_registry.rb +83 -0
- data/lib/inspec/base_cli.rb +10 -1
- data/lib/inspec/cli.rb +12 -1
- data/lib/inspec/control_eval_context.rb +13 -4
- data/lib/inspec/dependencies/cache.rb +1 -1
- data/lib/inspec/dependencies/dependency_set.rb +1 -1
- data/lib/inspec/dependencies/requirement.rb +2 -1
- data/lib/inspec/errors.rb +27 -0
- data/lib/inspec/file_provider.rb +38 -1
- data/lib/inspec/globals.rb +5 -0
- data/lib/inspec/impact.rb +34 -0
- data/lib/inspec/objects/attribute.rb +92 -7
- data/lib/inspec/profile.rb +33 -4
- data/lib/inspec/profile_context.rb +7 -7
- data/lib/inspec/profile_vendor.rb +21 -1
- data/lib/inspec/reporters/automate.rb +7 -2
- data/lib/inspec/reporters/cli.rb +12 -4
- data/lib/inspec/reporters/json.rb +3 -1
- data/lib/inspec/rspec_extensions.rb +12 -0
- data/lib/inspec/rule.rb +6 -1
- data/lib/inspec/runner.rb +2 -2
- data/lib/inspec/schema.rb +16 -2
- data/lib/inspec/version.rb +1 -1
- data/lib/resources/mysql_session.rb +1 -0
- metadata +30 -6
data/lib/inspec/schema.rb
CHANGED
@@ -42,6 +42,7 @@ module Inspec
|
|
42
42
|
'properties' => {
|
43
43
|
'name' => { 'type' => 'string' },
|
44
44
|
'release' => { 'type' => 'string' },
|
45
|
+
'target_id' => { 'type' => 'string', 'optional' => true },
|
45
46
|
},
|
46
47
|
}.freeze
|
47
48
|
|
@@ -200,9 +201,17 @@ module Inspec
|
|
200
201
|
},
|
201
202
|
}.freeze
|
202
203
|
|
204
|
+
# using a proc here so we can lazy load it when we need
|
205
|
+
PLATFORMS = lambda do
|
206
|
+
require 'train'
|
207
|
+
Train.create('mock').connection
|
208
|
+
Train::Platforms.export
|
209
|
+
end
|
210
|
+
|
203
211
|
LIST = {
|
204
212
|
'exec-json' => EXEC_JSON,
|
205
213
|
'exec-jsonmin' => EXEC_JSONMIN,
|
214
|
+
'platforms' => PLATFORMS,
|
206
215
|
}.freeze
|
207
216
|
|
208
217
|
def self.names
|
@@ -210,8 +219,13 @@ module Inspec
|
|
210
219
|
end
|
211
220
|
|
212
221
|
def self.json(name)
|
213
|
-
|
214
|
-
|
222
|
+
if !LIST.key?(name)
|
223
|
+
raise("Cannot find schema #{name.inspect}.")
|
224
|
+
elsif LIST[name].is_a?(Proc)
|
225
|
+
v = LIST[name].call
|
226
|
+
else
|
227
|
+
v = LIST[name]
|
228
|
+
end
|
215
229
|
JSON.dump(v)
|
216
230
|
end
|
217
231
|
end
|
data/lib/inspec/version.rb
CHANGED
@@ -72,6 +72,7 @@ module Inspec::Resources
|
|
72
72
|
|
73
73
|
def init_fallback
|
74
74
|
# support debian mysql administration login
|
75
|
+
return if inspec.platform.in_family?('windows')
|
75
76
|
debian = inspec.command('test -f /etc/mysql/debian.cnf && cat /etc/mysql/debian.cnf').stdout
|
76
77
|
return if debian.empty?
|
77
78
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: inspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.101
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dominik Richter
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: train
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: '1.4'
|
20
20
|
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 1.4.
|
22
|
+
version: 1.4.37
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: '1.4'
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 1.4.
|
32
|
+
version: 1.4.37
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: thor
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -84,14 +84,20 @@ dependencies:
|
|
84
84
|
requirements:
|
85
85
|
- - "~>"
|
86
86
|
- !ruby/object:Gem::Version
|
87
|
-
version: '1.
|
87
|
+
version: '1.2'
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: 1.2.2
|
88
91
|
type: :runtime
|
89
92
|
prerelease: false
|
90
93
|
version_requirements: !ruby/object:Gem::Requirement
|
91
94
|
requirements:
|
92
95
|
- - "~>"
|
93
96
|
- !ruby/object:Gem::Version
|
94
|
-
version: '1.
|
97
|
+
version: '1.2'
|
98
|
+
- - ">="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: 1.2.2
|
95
101
|
- !ruby/object:Gem::Dependency
|
96
102
|
name: rspec
|
97
103
|
requirement: !ruby/object:Gem::Requirement
|
@@ -288,6 +294,20 @@ dependencies:
|
|
288
294
|
- - ">="
|
289
295
|
- !ruby/object:Gem::Version
|
290
296
|
version: '0'
|
297
|
+
- !ruby/object:Gem::Dependency
|
298
|
+
name: multipart-post
|
299
|
+
requirement: !ruby/object:Gem::Requirement
|
300
|
+
requirements:
|
301
|
+
- - ">="
|
302
|
+
- !ruby/object:Gem::Version
|
303
|
+
version: '0'
|
304
|
+
type: :runtime
|
305
|
+
prerelease: false
|
306
|
+
version_requirements: !ruby/object:Gem::Requirement
|
307
|
+
requirements:
|
308
|
+
- - ">="
|
309
|
+
- !ruby/object:Gem::Version
|
310
|
+
version: '0'
|
291
311
|
description: InSpec provides a framework for creating end-to-end infrastructure tests.
|
292
312
|
You can use it for integration or even compliance testing. Create fully portable
|
293
313
|
test profiles and use them in your workflow to ensure stability and security. Integrate
|
@@ -579,6 +599,7 @@ files:
|
|
579
599
|
- lib/inspec.rb
|
580
600
|
- lib/inspec/archive/tar.rb
|
581
601
|
- lib/inspec/archive/zip.rb
|
602
|
+
- lib/inspec/attribute_registry.rb
|
582
603
|
- lib/inspec/backend.rb
|
583
604
|
- lib/inspec/base_cli.rb
|
584
605
|
- lib/inspec/cached_fetcher.rb
|
@@ -605,6 +626,8 @@ files:
|
|
605
626
|
- lib/inspec/formatters/base.rb
|
606
627
|
- lib/inspec/formatters/json_rspec.rb
|
607
628
|
- lib/inspec/formatters/show_progress.rb
|
629
|
+
- lib/inspec/globals.rb
|
630
|
+
- lib/inspec/impact.rb
|
608
631
|
- lib/inspec/library_eval_context.rb
|
609
632
|
- lib/inspec/log.rb
|
610
633
|
- lib/inspec/metadata.rb
|
@@ -651,6 +674,7 @@ files:
|
|
651
674
|
- lib/inspec/reporters/yaml.rb
|
652
675
|
- lib/inspec/require_loader.rb
|
653
676
|
- lib/inspec/resource.rb
|
677
|
+
- lib/inspec/rspec_extensions.rb
|
654
678
|
- lib/inspec/rule.rb
|
655
679
|
- lib/inspec/runner.rb
|
656
680
|
- lib/inspec/runner_mock.rb
|