compliance_engine 0.1.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 +7 -0
- data/.rspec +3 -0
- data/.rubocop.yml +623 -0
- data/CHANGELOG.md +5 -0
- data/Gemfile +22 -0
- data/README.md +31 -0
- data/Rakefile +12 -0
- data/TODO.md +19 -0
- data/exe/compliance_engine +6 -0
- data/lib/compliance_engine/ce.rb +7 -0
- data/lib/compliance_engine/ces.rb +40 -0
- data/lib/compliance_engine/check.rb +38 -0
- data/lib/compliance_engine/checks.rb +22 -0
- data/lib/compliance_engine/cli.rb +76 -0
- data/lib/compliance_engine/collection.rb +132 -0
- data/lib/compliance_engine/component.rb +251 -0
- data/lib/compliance_engine/control.rb +7 -0
- data/lib/compliance_engine/controls.rb +22 -0
- data/lib/compliance_engine/data.rb +426 -0
- data/lib/compliance_engine/data_loader/file.rb +35 -0
- data/lib/compliance_engine/data_loader/json.rb +17 -0
- data/lib/compliance_engine/data_loader/yaml.rb +17 -0
- data/lib/compliance_engine/data_loader.rb +45 -0
- data/lib/compliance_engine/environment_loader/zip.rb +24 -0
- data/lib/compliance_engine/environment_loader.rb +31 -0
- data/lib/compliance_engine/module_loader.rb +62 -0
- data/lib/compliance_engine/profile.rb +13 -0
- data/lib/compliance_engine/profiles.rb +22 -0
- data/lib/compliance_engine/version.rb +24 -0
- data/lib/compliance_engine.rb +25 -0
- data/sig/compliance_engine.rbs +4 -0
- metadata +145 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module ComplianceEngine
|
4
|
+
VERSION = '0.1.0'
|
5
|
+
|
6
|
+
# Handle supported compliance data versions
|
7
|
+
class Version
|
8
|
+
# Verify that the version is supported
|
9
|
+
#
|
10
|
+
# @param [String] version The version to verify
|
11
|
+
def initialize(version)
|
12
|
+
raise 'Missing version' if version.nil?
|
13
|
+
raise "Unsupported version '#{version}'" unless version == '2.0.0'
|
14
|
+
@version = version
|
15
|
+
end
|
16
|
+
|
17
|
+
# Convert the version to a string
|
18
|
+
#
|
19
|
+
# @return [String]
|
20
|
+
def to_s
|
21
|
+
@version
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'compliance_engine/version'
|
4
|
+
require 'compliance_engine/data'
|
5
|
+
|
6
|
+
# Work with compliance data
|
7
|
+
module ComplianceEngine
|
8
|
+
class Error < StandardError; end
|
9
|
+
|
10
|
+
# Open compliance data
|
11
|
+
#
|
12
|
+
# @param [Array<String>] paths The paths to the compliance data files
|
13
|
+
# @return [ComplianceEngine::Data]
|
14
|
+
def self.open(*paths)
|
15
|
+
Data.new(*paths)
|
16
|
+
end
|
17
|
+
|
18
|
+
# Open compliance data
|
19
|
+
#
|
20
|
+
# @param [Array<String>] paths The paths to the compliance data files
|
21
|
+
# @return [ComplianceEngine::Data]
|
22
|
+
def self.new(*paths)
|
23
|
+
Data.new(*paths)
|
24
|
+
end
|
25
|
+
end
|
metadata
ADDED
@@ -0,0 +1,145 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: compliance_engine
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Steven Pritchard
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2024-12-03 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: deep_merge
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.2'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.2'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: thor
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.3'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.3'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: irb
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.14'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.14'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: semantic_puppet
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.1'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '1.1'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rubyzip
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '2.3'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '2.3'
|
83
|
+
description:
|
84
|
+
email:
|
85
|
+
- steve@sicura.us
|
86
|
+
executables:
|
87
|
+
- compliance_engine
|
88
|
+
extensions: []
|
89
|
+
extra_rdoc_files: []
|
90
|
+
files:
|
91
|
+
- ".rspec"
|
92
|
+
- ".rubocop.yml"
|
93
|
+
- CHANGELOG.md
|
94
|
+
- Gemfile
|
95
|
+
- README.md
|
96
|
+
- Rakefile
|
97
|
+
- TODO.md
|
98
|
+
- exe/compliance_engine
|
99
|
+
- lib/compliance_engine.rb
|
100
|
+
- lib/compliance_engine/ce.rb
|
101
|
+
- lib/compliance_engine/ces.rb
|
102
|
+
- lib/compliance_engine/check.rb
|
103
|
+
- lib/compliance_engine/checks.rb
|
104
|
+
- lib/compliance_engine/cli.rb
|
105
|
+
- lib/compliance_engine/collection.rb
|
106
|
+
- lib/compliance_engine/component.rb
|
107
|
+
- lib/compliance_engine/control.rb
|
108
|
+
- lib/compliance_engine/controls.rb
|
109
|
+
- lib/compliance_engine/data.rb
|
110
|
+
- lib/compliance_engine/data_loader.rb
|
111
|
+
- lib/compliance_engine/data_loader/file.rb
|
112
|
+
- lib/compliance_engine/data_loader/json.rb
|
113
|
+
- lib/compliance_engine/data_loader/yaml.rb
|
114
|
+
- lib/compliance_engine/environment_loader.rb
|
115
|
+
- lib/compliance_engine/environment_loader/zip.rb
|
116
|
+
- lib/compliance_engine/module_loader.rb
|
117
|
+
- lib/compliance_engine/profile.rb
|
118
|
+
- lib/compliance_engine/profiles.rb
|
119
|
+
- lib/compliance_engine/version.rb
|
120
|
+
- sig/compliance_engine.rbs
|
121
|
+
homepage: https://sicura.us/
|
122
|
+
licenses: []
|
123
|
+
metadata:
|
124
|
+
homepage_uri: https://sicura.us/
|
125
|
+
source_code_uri: https://github.com/simp/rubygem-simp-compliance_engine
|
126
|
+
post_install_message:
|
127
|
+
rdoc_options: []
|
128
|
+
require_paths:
|
129
|
+
- lib
|
130
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
131
|
+
requirements:
|
132
|
+
- - ">="
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: 2.7.0
|
135
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - ">="
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '0'
|
140
|
+
requirements: []
|
141
|
+
rubygems_version: 3.1.6
|
142
|
+
signing_key:
|
143
|
+
specification_version: 4
|
144
|
+
summary: Parser for Sicura Compliance Engine data
|
145
|
+
test_files: []
|