inspec_tools 1.3.0 → 1.3.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab5612bdc60b04a6dd7d8fd5d975ff5a3f76c6725aaa6a5f5b839e18c1220938
4
- data.tar.gz: e4cf768fa8cbebbe8c0a417cf103916026ca2083291f0bf78391ca23c5164410
3
+ metadata.gz: 4f6fb3f12bf3d1d567d33c0857ee766c293ebffea5c303f0b78d632f62d7fb6f
4
+ data.tar.gz: 28b8de24e295bd68f875322eea276b653bf9469612aa8ab14e3b9be27a02a9c7
5
5
  SHA512:
6
- metadata.gz: cbd6887370c90566a49dbcb9a954dd530fdb196017fe3b164dd5dcb2bb49549eb6ce840cb17093411dc8bab9a3201b4fe2e8f9a1083785584fb5134fdbeeec97
7
- data.tar.gz: 0db929f5f420127940b1ed1f90b37d9ea2dea25960d903eb56b65e707b960d6152d4eaeb95764d1c699ba7e0998d83c5bdded9798e6679ae6085a2fac98f50b0
6
+ metadata.gz: b8c3394b14798134b457678c801b1a9b328362eebf5a8832a70c2cf84d5a1b394a7fcca1a7c4245c3dd3dc7f4c2719f86b47993c75074601e148796bcf81e7e3
7
+ data.tar.gz: c34a859da673318768ac30c402492b3382903c214eb32497791e840c891acdab1d33a2ff4c76886609dbbb22f4df5ac9e793bee87d4bbf3a7edb5b377e0645dd
@@ -1,17 +1,92 @@
1
1
  # Change Log
2
2
 
3
- All notable changes to this project will be documented in this file.
4
- This project *tries* to adhere to [Semantic Versioning](http://semver.org/), even before v1.0.
3
+ ## [v1.3.4](https://github.com/mitre/inspec_tools/tree/v1.3.4) (2019-05-01)
4
+ [Full Changelog](https://github.com/mitre/inspec_tools/compare/v1.1.6...v1.3.4)
5
5
 
6
- ## [1.0.1]
7
- - Initial internal release.
6
+ **Closed issues:**
8
7
 
9
- ## [1.1.0]
10
- - This gem was refactored using the [CLI Template](https://github.com/tongueroo/cli-template), a generator tool that builds a starter CLI project.
11
- - Initial public release
8
+ - Needed app is missing [\#49](https://github.com/mitre/inspec_tools/issues/49)
9
+ - 2018 b79e5c3 [\#48](https://github.com/mitre/inspec_tools/issues/48)
12
10
 
13
- ## [1.1.4]
14
- - Replaced Docsplit and pdf2text gems, which rely on command-line tools with pdf-reader gem, which does not
11
+ **Merged pull requests:**
15
12
 
16
- ## [1.1.5]
17
- - Updated gemspec to make some required gem versions more permissive
13
+ - Metadata docs and tools [\#55](https://github.com/mitre/inspec_tools/pull/55) ([samcornwell](https://github.com/samcornwell))
14
+ - Fix bugs introduced by \#51 \(STIGViewer PR\) [\#52](https://github.com/mitre/inspec_tools/pull/52) ([samcornwell](https://github.com/samcornwell))
15
+ - Enhancements to meet working with STIGViewer as well as tracking some custom metadata when converting from xccdf2inspec and inspec2ckl [\#51](https://github.com/mitre/inspec_tools/pull/51) ([kevin-j-smith](https://github.com/kevin-j-smith))
16
+ - Add modules summary, compliance [\#45](https://github.com/mitre/inspec_tools/pull/45) ([rx294](https://github.com/rx294))
17
+
18
+ ## [v1.1.6](https://github.com/mitre/inspec_tools/tree/v1.1.6) (2018-12-13)
19
+ [Full Changelog](https://github.com/mitre/inspec_tools/compare/v1.1.5...v1.1.6)
20
+
21
+ ## [v1.1.5](https://github.com/mitre/inspec_tools/tree/v1.1.5) (2018-12-11)
22
+ [Full Changelog](https://github.com/mitre/inspec_tools/compare/v1.1.2...v1.1.5)
23
+
24
+ **Implemented enhancements:**
25
+
26
+ - Add help for the gem usage and or ruby usage [\#7](https://github.com/mitre/inspec_tools/issues/7)
27
+ - add sub-help command output to match README and document each function [\#6](https://github.com/mitre/inspec_tools/issues/6)
28
+
29
+ **Fixed bugs:**
30
+
31
+ - Add help for the gem usage and or ruby usage [\#7](https://github.com/mitre/inspec_tools/issues/7)
32
+ - add sub-help command output to match README and document each function [\#6](https://github.com/mitre/inspec_tools/issues/6)
33
+
34
+ **Closed issues:**
35
+
36
+ - add rubocop integration or PRs [\#34](https://github.com/mitre/inspec_tools/issues/34)
37
+ - Do we want to expose the --cci flag in the example as it is now not needed by default given it is in the /data directory [\#29](https://github.com/mitre/inspec_tools/issues/29)
38
+ - fix the subcommands help so it works as expected [\#28](https://github.com/mitre/inspec_tools/issues/28)
39
+ - THOR CLI: xccdf2inspec for example was giving me a hard time about the order of -x or --xccdf or --cci or -c and the order they were in - the docs on it seems to give two sets of directions [\#27](https://github.com/mitre/inspec_tools/issues/27)
40
+ - do we have to do anything special for including CIS Benchmarks? [\#21](https://github.com/mitre/inspec_tools/issues/21)
41
+ - clean up debug statements [\#20](https://github.com/mitre/inspec_tools/issues/20)
42
+ - Give attribution for files in /data [\#19](https://github.com/mitre/inspec_tools/issues/19)
43
+ - add copyright statements if necessary [\#15](https://github.com/mitre/inspec_tools/issues/15)
44
+ - check /examples/sample\_json to see if any of the results are sensitive [\#14](https://github.com/mitre/inspec_tools/issues/14)
45
+
46
+ **Merged pull requests:**
47
+
48
+ - replaced docsplit with pdf-reader [\#43](https://github.com/mitre/inspec_tools/pull/43) ([robthew](https://github.com/robthew))
49
+ - Updated remove dir statement [\#41](https://github.com/mitre/inspec_tools/pull/41) ([robthew](https://github.com/robthew))
50
+ - Added appveyor config [\#40](https://github.com/mitre/inspec_tools/pull/40) ([robthew](https://github.com/robthew))
51
+ - Travis test [\#39](https://github.com/mitre/inspec_tools/pull/39) ([robthew](https://github.com/robthew))
52
+ - Add rubocop to the process [\#35](https://github.com/mitre/inspec_tools/pull/35) ([aaronlippold](https://github.com/aaronlippold))
53
+ - \* added refernces to external data sources [\#30](https://github.com/mitre/inspec_tools/pull/30) ([aaronlippold](https://github.com/aaronlippold))
54
+
55
+ ## [v1.1.2](https://github.com/mitre/inspec_tools/tree/v1.1.2) (2018-11-08)
56
+ [Full Changelog](https://github.com/mitre/inspec_tools/compare/v1.1.1...v1.1.2)
57
+
58
+ ## [v1.1.1](https://github.com/mitre/inspec_tools/tree/v1.1.1) (2018-11-08)
59
+ [Full Changelog](https://github.com/mitre/inspec_tools/compare/v1.1.0...v1.1.1)
60
+
61
+ ## [v1.1.0](https://github.com/mitre/inspec_tools/tree/v1.1.0) (2018-11-08)
62
+ [Full Changelog](https://github.com/mitre/inspec_tools/compare/v1.0.0...v1.1.0)
63
+
64
+ **Fixed bugs:**
65
+
66
+ - Remove unneeded `exe` dir if we are going to standardize on `bin`and update the `.gemspec` file [\#25](https://github.com/mitre/inspec_tools/issues/25)
67
+
68
+ **Closed issues:**
69
+
70
+ - when you When build the gem and install it - the command `inspec\_tools` does not seem to install into the path [\#26](https://github.com/mitre/inspec_tools/issues/26)
71
+ - Add MITRE Copyright to the end of the README.md [\#23](https://github.com/mitre/inspec_tools/issues/23)
72
+ - Update email addresses to MITRE addresses [\#18](https://github.com/mitre/inspec_tools/issues/18)
73
+ - update readme.md [\#17](https://github.com/mitre/inspec_tools/issues/17)
74
+ - update inspec\_tools.gemspec [\#16](https://github.com/mitre/inspec_tools/issues/16)
75
+ - update license to apache 2.0 [\#13](https://github.com/mitre/inspec_tools/issues/13)
76
+ - Separate Files defaults to \[False\] [\#10](https://github.com/mitre/inspec_tools/issues/10)
77
+ - Rename repository to 'inspec\_tools' [\#9](https://github.com/mitre/inspec_tools/issues/9)
78
+
79
+ **Merged pull requests:**
80
+
81
+ - Cleanup Debug Statetements [\#12](https://github.com/mitre/inspec_tools/pull/12) ([yarick](https://github.com/yarick))
82
+ - Change default separated\_files setting to default to true [\#11](https://github.com/mitre/inspec_tools/pull/11) ([yarick](https://github.com/yarick))
83
+ - Cleanup [\#8](https://github.com/mitre/inspec_tools/pull/8) ([robthew](https://github.com/robthew))
84
+ - Unification [\#5](https://github.com/mitre/inspec_tools/pull/5) ([dromazmj](https://github.com/dromazmj))
85
+ - \* Adds functionality for inspec2csv [\#4](https://github.com/mitre/inspec_tools/pull/4) ([dromazmj](https://github.com/dromazmj))
86
+ - Md/pdf [\#3](https://github.com/mitre/inspec_tools/pull/3) ([dromazmj](https://github.com/dromazmj))
87
+ - Md/csv2inspec [\#2](https://github.com/mitre/inspec_tools/pull/2) ([dromazmj](https://github.com/dromazmj))
88
+ - Writes code in the inspec util to output an inspec json to a directory [\#1](https://github.com/mitre/inspec_tools/pull/1) ([dromazmj](https://github.com/dromazmj))
89
+
90
+
91
+
92
+ \* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
data/README.md CHANGED
@@ -4,6 +4,9 @@ InspecTools supplies several CLI tools to convert to and from InSpec format.
4
4
 
5
5
  The inspec_tools support the following modules:
6
6
 
7
+ - generate_map
8
+ - generate_ckl_metadata
9
+ - generate_inspec_metadata
7
10
  - compliance
8
11
  - summary
9
12
  - csv2inspec
@@ -54,6 +57,30 @@ xccdf_results = tool.to_xccdf(attribs_json)
54
57
  On the Command Line, `inspec_tools help` will print a listing of all the command with a short description.
55
58
  For detailed help on any command, run `inspec_tools help [COMMAND]`. Help can also be called with the `-h, --help` flags after any command, like `inspec_tools xccdf2inspec -h`.
56
59
 
60
+ ## generate_map
61
+
62
+ This command will generate a `mapping.xml` file that can be passed in to the `csv2inspec` command with the `-m` option.
63
+
64
+ ```
65
+ USAGE: inspec_tools generate_map
66
+ ```
67
+
68
+ ## generate_ckl_metadata
69
+
70
+ This command will generate a `metadata.json` file that can be passed in to the `inspec2ckl` command with the `-m` option.
71
+
72
+ ```
73
+ USAGE: inspec_tools generate_ckl_metadata
74
+ ```
75
+
76
+ ## generate_inspec_metadata
77
+
78
+ This command will generate a `metadata.json` file that can be passed in to the `xccdf2inspec` command with the `-m` option.
79
+
80
+ ```
81
+ USAGE: inspec_tools generate_inspec_metadata
82
+ ```
83
+
57
84
  ## compliance
58
85
 
59
86
  compliance parses an inspec results json to check if the compliance level meets a specified threshold.
@@ -129,6 +156,7 @@ FLAGS:
129
156
  -o --output <profile-path> : path to the InSpec profile output (default: profile) [optional]
130
157
  -f --format [ruby | hash] : the format you would like (default: ruby) [optional]
131
158
  -s --separate-files [true | false] : output the resulting controls as one or mutiple files (default: true) [optional]
159
+ -m --metadata <metadata-json> : path to json file with additional metadata for the inspec.yml file [optional]
132
160
  -r --replace-tags <array> : A case-sensitive, comma separated list to replace tags with a $ if found in a group rules description tag [optional]
133
161
 
134
162
  example: inspec_tools xccdf2inspec -x xccdf_file.xml -a attributes.yml -o myprofile -f ruby -s false
@@ -168,14 +196,6 @@ FLAGS:
168
196
  example: inspec_tools csv2inspec -c stig.csv -m map.yml -o mydir -f ruby -s true # To map stig.csv to InSpec via map.yml
169
197
  ```
170
198
 
171
- ### generate_map
172
-
173
- This command will generate a `mapping.xml` file that can be passed in to the `csv2inspec` command with the `--m` option.
174
-
175
- ```
176
- USAGE: inspec_tools generate_map
177
- ```
178
-
179
199
  ## inspec2csv
180
200
 
181
201
  Convert an InSpec json to a csv file
@@ -201,6 +221,7 @@ USAGE: inspec_tools inspec2ckl [OPTIONS] -j <inspec-json> -o <results-ckl>
201
221
  FLAGS:
202
222
  -j --inspec-json <inspec-json> : path to InSpec results json file
203
223
  -o --output <results-ckl> : path to output checklist file
224
+ -m --metadata <metadata-json> : path to json file with additional metadata for the checklist file [optional]
204
225
  -V --verbose : verbose run [optional]
205
226
 
206
227
  example: inspec_tools inspec2ckl -j results.json -o output.ckl
@@ -121,6 +121,45 @@ module InspecTools
121
121
  myfile.close
122
122
  end
123
123
 
124
+ desc 'generate_ckl_metadata', 'Generate metadata file that can be passed to inspec2ckl'
125
+ def generate_ckl_metadata
126
+ metadata = {}
127
+
128
+ metadata['stigid'] = ask('STID ID: ')
129
+ metadata['role'] = ask('Role: ')
130
+ metadata['type'] = ask('Type: ')
131
+ metadata['hostname'] = ask('Hostname: ')
132
+ metadata['ip'] = ask('IP Address: ')
133
+ metadata['mac'] = ask('MAC Address: ')
134
+ metadata['fqdn'] = ask('FQDN: ')
135
+ metadata['tech_area'] = ask('Tech Area: ')
136
+ metadata['target_key'] = ask('Target Key: ')
137
+ metadata['web_or_database'] = ask('Web or Database: ')
138
+ metadata['web_db_site'] = ask('Web DB Site: ')
139
+ metadata['web_db_instance'] = ask('Web DB Instance: ')
140
+
141
+ metadata.delete_if { |_key, value| value.empty? }
142
+ File.open('metadata.json', 'w') do |f|
143
+ f.write(metadata.to_json)
144
+ end
145
+ end
146
+
147
+ desc 'generate_inspec_metadata', 'Generate mapping file that can be passed to xccdf2inspec'
148
+ def generate_inspec_metadata
149
+ metadata = {}
150
+
151
+ metadata['maintainer'] = ask('Maintainer: ')
152
+ metadata['copyright'] = ask('Copyright: ')
153
+ metadata['copyright_email'] = ask('Copyright Email: ')
154
+ metadata['license'] = ask('License: ')
155
+ metadata['version'] = ask('Version: ')
156
+
157
+ metadata.delete_if { |_key, value| value.empty? }
158
+ File.open('metadata.json', 'w') do |f|
159
+ f.write(metadata.to_json)
160
+ end
161
+ end
162
+
124
163
  desc 'summary', 'summary parses an inspec results json to create a summary json'
125
164
  long_desc Help.text(:summary)
126
165
  option :inspec_json, required: true, aliases: '-j'
@@ -184,7 +184,7 @@ module InspecTools
184
184
  asset.host_fqdn = generate_fqdn
185
185
  asset.tech_area = !@metadata['tech_area'].nil? ? @metadata['tech_area'] : ''
186
186
  asset.target_key = !@metadata['target_key'].nil? ? @metadata['target_key'] : ''
187
- asset.web_or_database = !@metadata['web_or_databae'].nil? ? @metadata['web_or_database'] : '0'
187
+ asset.web_or_database = !@metadata['web_or_database'].nil? ? @metadata['web_or_database'] : '0'
188
188
  asset.web_db_site = !@metadata['web_db_site'].nil? ? @metadata['web_db_site'] : ''
189
189
  asset.web_db_instance = !@metadata['web_db_instance'].nil? ? @metadata['web_db_instance'] : ''
190
190
  asset
@@ -1,3 +1,3 @@
1
1
  module InspecTools
2
- VERSION = '1.3.0'.freeze
2
+ VERSION = '1.3.5'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inspec_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Thew
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: exe
13
13
  cert_chain: []
14
- date: 2019-04-17 00:00:00.000000000 Z
14
+ date: 2019-05-01 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: colorize