octool 0.0.4 → 0.0.9
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/bin/octool +22 -5
- data/lib/octool.rb +2 -6
- data/lib/octool/constants.rb +1 -1
- data/lib/octool/parser.rb +42 -24
- data/lib/octool/ssp.rb +21 -4
- data/lib/octool/system.rb +45 -39
- data/lib/octool/version.rb +1 -1
- data/octool.rdoc +14 -2
- data/schemas/v1.0.1/certification.yaml +27 -0
- data/schemas/v1.0.1/component.yaml +60 -0
- data/schemas/v1.0.1/config.yaml +79 -0
- data/schemas/v1.0.1/standard.yaml +50 -0
- data/schemas/v1.0.2/certification.yaml +27 -0
- data/schemas/v1.0.2/component.yaml +60 -0
- data/schemas/v1.0.2/config.yaml +111 -0
- data/schemas/v1.0.2/standard.yaml +50 -0
- data/templates/ssp.erb +123 -35
- metadata +24 -6
- data/lib/octool/generated/certification.rb +0 -35
- data/lib/octool/generated/component.rb +0 -57
- data/lib/octool/generated/config.rb +0 -55
- data/lib/octool/generated/standard.rb +0 -55
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: octool
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Paul Morgan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-05-
|
11
|
+
date: 2020-05-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -92,6 +92,20 @@ dependencies:
|
|
92
92
|
- - '='
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: 2.19.0
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: json_pure
|
97
|
+
requirement: !ruby/object:Gem::Requirement
|
98
|
+
requirements:
|
99
|
+
- - '='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: 2.3.0
|
102
|
+
type: :runtime
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
requirements:
|
106
|
+
- - '='
|
107
|
+
- !ruby/object:Gem::Version
|
108
|
+
version: 2.3.0
|
95
109
|
- !ruby/object:Gem::Dependency
|
96
110
|
name: kwalify
|
97
111
|
requirement: !ruby/object:Gem::Requirement
|
@@ -147,10 +161,6 @@ files:
|
|
147
161
|
- bin/octool
|
148
162
|
- lib/octool.rb
|
149
163
|
- lib/octool/constants.rb
|
150
|
-
- lib/octool/generated/certification.rb
|
151
|
-
- lib/octool/generated/component.rb
|
152
|
-
- lib/octool/generated/config.rb
|
153
|
-
- lib/octool/generated/standard.rb
|
154
164
|
- lib/octool/parser.rb
|
155
165
|
- lib/octool/ssp.rb
|
156
166
|
- lib/octool/system.rb
|
@@ -160,6 +170,14 @@ files:
|
|
160
170
|
- schemas/v1.0.0/component.yaml
|
161
171
|
- schemas/v1.0.0/config.yaml
|
162
172
|
- schemas/v1.0.0/standard.yaml
|
173
|
+
- schemas/v1.0.1/certification.yaml
|
174
|
+
- schemas/v1.0.1/component.yaml
|
175
|
+
- schemas/v1.0.1/config.yaml
|
176
|
+
- schemas/v1.0.1/standard.yaml
|
177
|
+
- schemas/v1.0.2/certification.yaml
|
178
|
+
- schemas/v1.0.2/component.yaml
|
179
|
+
- schemas/v1.0.2/config.yaml
|
180
|
+
- schemas/v1.0.2/standard.yaml
|
163
181
|
- templates/ssp.erb
|
164
182
|
homepage: https://github.com/jumanjiman/octool
|
165
183
|
licenses:
|
@@ -1,35 +0,0 @@
|
|
1
|
-
require 'kwalify/util/hashlike'
|
2
|
-
|
3
|
-
module OCTool
|
4
|
-
|
5
|
-
|
6
|
-
class Certification
|
7
|
-
include Kwalify::Util::HashLike
|
8
|
-
def initialize(hash=nil)
|
9
|
-
if hash.nil?
|
10
|
-
return
|
11
|
-
end
|
12
|
-
@certification_key = hash['certification_key']
|
13
|
-
@name = hash['name']
|
14
|
-
@requires = (v=hash['requires']) ? v.map!{|e| e.is_a?(ControlID) ? e : ControlID.new(e)} : v
|
15
|
-
end
|
16
|
-
attr_accessor :certification_key # str
|
17
|
-
attr_accessor :name # str
|
18
|
-
attr_accessor :requires # seq
|
19
|
-
end
|
20
|
-
|
21
|
-
|
22
|
-
class ControlID
|
23
|
-
include Kwalify::Util::HashLike
|
24
|
-
def initialize(hash=nil)
|
25
|
-
if hash.nil?
|
26
|
-
return
|
27
|
-
end
|
28
|
-
@standard_key = hash['standard_key']
|
29
|
-
@control_key = hash['control_key']
|
30
|
-
end
|
31
|
-
attr_accessor :standard_key # str
|
32
|
-
attr_accessor :control_key # str
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|
@@ -1,57 +0,0 @@
|
|
1
|
-
require 'kwalify/util/hashlike'
|
2
|
-
|
3
|
-
module OCTool
|
4
|
-
|
5
|
-
|
6
|
-
class Component
|
7
|
-
include Kwalify::Util::HashLike
|
8
|
-
def initialize(hash=nil)
|
9
|
-
if hash.nil?
|
10
|
-
return
|
11
|
-
end
|
12
|
-
@name = hash['name']
|
13
|
-
@component_key = hash['component_key']
|
14
|
-
@description = hash['description']
|
15
|
-
@attestations = (v=hash['attestations']) ? v.map!{|e| e.is_a?(Attestation) ? e : Attestation.new(e)} : v
|
16
|
-
end
|
17
|
-
attr_accessor :name # str
|
18
|
-
attr_accessor :component_key # str
|
19
|
-
attr_accessor :description # str
|
20
|
-
attr_accessor :attestations # seq
|
21
|
-
end
|
22
|
-
|
23
|
-
|
24
|
-
class Attestation
|
25
|
-
include Kwalify::Util::HashLike
|
26
|
-
def initialize(hash=nil)
|
27
|
-
if hash.nil?
|
28
|
-
return
|
29
|
-
end
|
30
|
-
@summary = hash['summary']
|
31
|
-
@status = hash['status']
|
32
|
-
@date_verified = hash['date_verified']
|
33
|
-
@satisfies = (v=hash['satisfies']) ? v.map!{|e| e.is_a?(ControlID) ? e : ControlID.new(e)} : v
|
34
|
-
@narrative = hash['narrative']
|
35
|
-
end
|
36
|
-
attr_accessor :summary # str
|
37
|
-
attr_accessor :status # str
|
38
|
-
attr_accessor :date_verified # date
|
39
|
-
attr_accessor :satisfies # seq
|
40
|
-
attr_accessor :narrative # str
|
41
|
-
end
|
42
|
-
|
43
|
-
|
44
|
-
class ControlID
|
45
|
-
include Kwalify::Util::HashLike
|
46
|
-
def initialize(hash=nil)
|
47
|
-
if hash.nil?
|
48
|
-
return
|
49
|
-
end
|
50
|
-
@standard_key = hash['standard_key']
|
51
|
-
@control_key = hash['control_key']
|
52
|
-
end
|
53
|
-
attr_accessor :standard_key # text
|
54
|
-
attr_accessor :control_key # text
|
55
|
-
end
|
56
|
-
|
57
|
-
end
|
@@ -1,55 +0,0 @@
|
|
1
|
-
require 'kwalify/util/hashlike'
|
2
|
-
|
3
|
-
module OCTool
|
4
|
-
|
5
|
-
|
6
|
-
class Config
|
7
|
-
include Kwalify::Util::HashLike
|
8
|
-
def initialize(hash=nil)
|
9
|
-
if hash.nil?
|
10
|
-
return
|
11
|
-
end
|
12
|
-
@schema_version = hash['schema_version']
|
13
|
-
@name = hash['name']
|
14
|
-
@overview = hash['overview']
|
15
|
-
@maintainers = hash['maintainers']
|
16
|
-
@metadata = (v=hash['metadata']) && v.is_a?(Hash) ? Metadata.new(v) : v
|
17
|
-
@includes = (v=hash['includes']) ? v.map!{|e| e.is_a?(Include) ? e : Include.new(e)} : v
|
18
|
-
end
|
19
|
-
attr_accessor :schema_version # str
|
20
|
-
attr_accessor :name # str
|
21
|
-
attr_accessor :overview # str
|
22
|
-
attr_accessor :maintainers # seq
|
23
|
-
attr_accessor :metadata # map
|
24
|
-
attr_accessor :includes # seq
|
25
|
-
end
|
26
|
-
|
27
|
-
## Optional metadata.
|
28
|
-
class Metadata
|
29
|
-
include Kwalify::Util::HashLike
|
30
|
-
def initialize(hash=nil)
|
31
|
-
if hash.nil?
|
32
|
-
return
|
33
|
-
end
|
34
|
-
@abstract = hash['abstract']
|
35
|
-
@description = hash['description']
|
36
|
-
end
|
37
|
-
attr_accessor :abstract # str
|
38
|
-
attr_accessor :description # str
|
39
|
-
end
|
40
|
-
|
41
|
-
|
42
|
-
class Include
|
43
|
-
include Kwalify::Util::HashLike
|
44
|
-
def initialize(hash=nil)
|
45
|
-
if hash.nil?
|
46
|
-
return
|
47
|
-
end
|
48
|
-
@type = hash['type']
|
49
|
-
@path = hash['path']
|
50
|
-
end
|
51
|
-
attr_accessor :type # str
|
52
|
-
attr_accessor :path # str
|
53
|
-
end
|
54
|
-
|
55
|
-
end
|
@@ -1,55 +0,0 @@
|
|
1
|
-
require 'kwalify/util/hashlike'
|
2
|
-
|
3
|
-
module OCTool
|
4
|
-
|
5
|
-
|
6
|
-
class Standard
|
7
|
-
include Kwalify::Util::HashLike
|
8
|
-
def initialize(hash=nil)
|
9
|
-
if hash.nil?
|
10
|
-
return
|
11
|
-
end
|
12
|
-
@name = hash['name']
|
13
|
-
@standard_key = hash['standard_key']
|
14
|
-
@families = (v=hash['families']) ? v.map!{|e| e.is_a?(ControlFamily) ? e : ControlFamily.new(e)} : v
|
15
|
-
@controls = (v=hash['controls']) ? v.map!{|e| e.is_a?(Control) ? e : Control.new(e)} : v
|
16
|
-
end
|
17
|
-
attr_accessor :name # str
|
18
|
-
attr_accessor :standard_key # str
|
19
|
-
attr_accessor :families # seq
|
20
|
-
attr_accessor :controls # seq
|
21
|
-
end
|
22
|
-
|
23
|
-
|
24
|
-
class ControlFamily
|
25
|
-
include Kwalify::Util::HashLike
|
26
|
-
def initialize(hash=nil)
|
27
|
-
if hash.nil?
|
28
|
-
return
|
29
|
-
end
|
30
|
-
@family_key = hash['family_key']
|
31
|
-
@name = hash['name']
|
32
|
-
end
|
33
|
-
attr_accessor :family_key # str
|
34
|
-
attr_accessor :name # str
|
35
|
-
end
|
36
|
-
|
37
|
-
|
38
|
-
class Control
|
39
|
-
include Kwalify::Util::HashLike
|
40
|
-
def initialize(hash=nil)
|
41
|
-
if hash.nil?
|
42
|
-
return
|
43
|
-
end
|
44
|
-
@control_key = hash['control_key']
|
45
|
-
@family_key = hash['family_key']
|
46
|
-
@name = hash['name']
|
47
|
-
@description = hash['description']
|
48
|
-
end
|
49
|
-
attr_accessor :control_key # str
|
50
|
-
attr_accessor :family_key # str
|
51
|
-
attr_accessor :name # str
|
52
|
-
attr_accessor :description # str
|
53
|
-
end
|
54
|
-
|
55
|
-
end
|