oxidized 0.21.0 → 0.22.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.
Files changed (170) hide show
  1. checksums.yaml +5 -5
  2. data/.github/no-response.yml +13 -0
  3. data/.gitignore +3 -0
  4. data/.rubocop.yml +37 -0
  5. data/.rubocop_todo.yml +714 -0
  6. data/.travis.yml +7 -1
  7. data/CHANGELOG.md +341 -243
  8. data/Dockerfile +44 -16
  9. data/LICENSE +201 -0
  10. data/README.md +114 -82
  11. data/Rakefile +19 -0
  12. data/TODO.md +29 -23
  13. data/bin/oxidized +1 -2
  14. data/docs/Configuration.md +71 -31
  15. data/docs/Creating-Models.md +78 -0
  16. data/docs/Hooks.md +145 -41
  17. data/docs/Model-Notes/AireOS.md +12 -0
  18. data/docs/Model-Notes/ArbOS.md +12 -0
  19. data/docs/Model-Notes/Comware.md +14 -0
  20. data/docs/Model-Notes/EOS.md +9 -0
  21. data/docs/Model-Notes/JunOS.md +34 -0
  22. data/docs/Model-Notes/Netgear.md +68 -0
  23. data/docs/Model-Notes/README.md +19 -0
  24. data/docs/{VRP-Huawei.md → Model-Notes/VRP-Huawei.md} +10 -2
  25. data/docs/Model-Notes/XGS4600-Zyxel.md +39 -0
  26. data/docs/Outputs.md +27 -28
  27. data/docs/Ruby-API.md +38 -18
  28. data/docs/Sources.md +78 -16
  29. data/docs/Supported-OS-Types.md +171 -148
  30. data/extra/oxidized.logrotate +7 -0
  31. data/extra/oxidized.service +1 -1
  32. data/extra/rest_client.rb +4 -5
  33. data/extra/syslog.rb +16 -16
  34. data/lib/oxidized/cli.rb +3 -3
  35. data/lib/oxidized/config.rb +7 -4
  36. data/lib/oxidized/core.rb +3 -3
  37. data/lib/oxidized/hook.rb +64 -65
  38. data/lib/oxidized/hook/awssns.rb +2 -3
  39. data/lib/oxidized/hook/ciscosparkdiff.rb +49 -0
  40. data/lib/oxidized/hook/exec.rb +5 -5
  41. data/lib/oxidized/hook/githubrepo.rb +20 -14
  42. data/lib/oxidized/hook/slackdiff.rb +38 -19
  43. data/lib/oxidized/hook/xmppdiff.rb +58 -0
  44. data/lib/oxidized/input/cli.rb +5 -6
  45. data/lib/oxidized/input/ftp.rb +8 -7
  46. data/lib/oxidized/input/http.rb +39 -0
  47. data/lib/oxidized/input/ssh.rb +24 -22
  48. data/lib/oxidized/input/telnet.rb +38 -32
  49. data/lib/oxidized/jobs.rb +3 -4
  50. data/lib/oxidized/manager.rb +9 -4
  51. data/lib/oxidized/model/acos.rb +15 -16
  52. data/lib/oxidized/model/acsw.rb +3 -8
  53. data/lib/oxidized/model/aen.rb +1 -2
  54. data/lib/oxidized/model/aireos.rb +3 -5
  55. data/lib/oxidized/model/alteonos.rb +16 -18
  56. data/lib/oxidized/model/alvarion.rb +0 -4
  57. data/lib/oxidized/model/aos.rb +2 -4
  58. data/lib/oxidized/model/aos7.rb +2 -3
  59. data/lib/oxidized/model/aosw.rb +13 -15
  60. data/lib/oxidized/model/apc_aos.rb +0 -3
  61. data/lib/oxidized/model/arbos.rb +26 -0
  62. data/lib/oxidized/model/aricentiss.rb +51 -0
  63. data/lib/oxidized/model/asa.rb +33 -35
  64. data/lib/oxidized/model/asyncos.rb +41 -44
  65. data/lib/oxidized/model/audiocodes.rb +4 -8
  66. data/lib/oxidized/model/awplus.rb +84 -0
  67. data/lib/oxidized/model/boss.rb +6 -5
  68. data/lib/oxidized/model/br6910.rb +43 -45
  69. data/lib/oxidized/model/c4cmts.rb +3 -5
  70. data/lib/oxidized/model/cambium.rb +22 -0
  71. data/lib/oxidized/model/catos.rb +0 -2
  72. data/lib/oxidized/model/cisconga.rb +1 -3
  73. data/lib/oxidized/model/ciscosma.rb +37 -40
  74. data/lib/oxidized/model/ciscosmb.rb +7 -4
  75. data/lib/oxidized/model/comnetms.rb +43 -0
  76. data/lib/oxidized/model/comware.rb +9 -9
  77. data/lib/oxidized/model/coriant8600.rb +3 -5
  78. data/lib/oxidized/model/coriantgroove.rb +3 -5
  79. data/lib/oxidized/model/corianttmos.rb +1 -3
  80. data/lib/oxidized/model/cumulus.rb +26 -32
  81. data/lib/oxidized/model/datacom.rb +0 -2
  82. data/lib/oxidized/model/dcnos.rb +46 -0
  83. data/lib/oxidized/model/dlink.rb +1 -1
  84. data/lib/oxidized/model/dnos.rb +9 -5
  85. data/lib/oxidized/model/edgecos.rb +45 -0
  86. data/lib/oxidized/model/edgeos.rb +5 -3
  87. data/lib/oxidized/model/edgeswitch.rb +1 -3
  88. data/lib/oxidized/model/enterasys.rb +1 -3
  89. data/lib/oxidized/model/eos.rb +6 -8
  90. data/lib/oxidized/model/fabricos.rb +3 -5
  91. data/lib/oxidized/model/firewareos.rb +2 -5
  92. data/lib/oxidized/model/fortios.rb +21 -17
  93. data/lib/oxidized/model/ftos.rb +2 -4
  94. data/lib/oxidized/model/fujitsupy.rb +2 -4
  95. data/lib/oxidized/model/gaiaos.rb +6 -10
  96. data/lib/oxidized/model/gcombnps.rb +82 -0
  97. data/lib/oxidized/model/hatteras.rb +8 -5
  98. data/lib/oxidized/model/hirschmann.rb +8 -10
  99. data/lib/oxidized/model/hpebladesystem.rb +19 -17
  100. data/lib/oxidized/model/hpemsa.rb +0 -3
  101. data/lib/oxidized/model/ios.rb +54 -55
  102. data/lib/oxidized/model/iosxe.rb +5 -0
  103. data/lib/oxidized/model/iosxr.rb +1 -3
  104. data/lib/oxidized/model/ipos.rb +1 -3
  105. data/lib/oxidized/model/ironware.rb +12 -15
  106. data/lib/oxidized/model/isam.rb +4 -5
  107. data/lib/oxidized/model/junos.rb +8 -7
  108. data/lib/oxidized/model/masteros.rb +1 -3
  109. data/lib/oxidized/model/mlnxos.rb +3 -4
  110. data/lib/oxidized/model/model.rb +15 -7
  111. data/lib/oxidized/model/mtrlrfs.rb +1 -4
  112. data/lib/oxidized/model/ndms.rb +24 -0
  113. data/lib/oxidized/model/netgear.rb +3 -4
  114. data/lib/oxidized/model/netscaler.rb +0 -2
  115. data/lib/oxidized/model/nos.rb +1 -3
  116. data/lib/oxidized/model/nxos.rb +13 -3
  117. data/lib/oxidized/model/oneos.rb +6 -8
  118. data/lib/oxidized/model/openbsd.rb +76 -0
  119. data/lib/oxidized/model/opengear.rb +3 -5
  120. data/lib/oxidized/model/openwrt.rb +77 -0
  121. data/lib/oxidized/model/opnsense.rb +19 -0
  122. data/lib/oxidized/model/outputs.rb +1 -3
  123. data/lib/oxidized/model/panos.rb +1 -2
  124. data/lib/oxidized/model/pfsense.rb +9 -5
  125. data/lib/oxidized/model/planet.rb +8 -12
  126. data/lib/oxidized/model/powerconnect.rb +6 -9
  127. data/lib/oxidized/model/procurve.rb +18 -4
  128. data/lib/oxidized/model/quantaos.rb +3 -5
  129. data/lib/oxidized/model/routeros.rb +3 -2
  130. data/lib/oxidized/model/saos.rb +0 -1
  131. data/lib/oxidized/model/screenos.rb +3 -5
  132. data/lib/oxidized/model/sgos.rb +2 -3
  133. data/lib/oxidized/model/siklu.rb +0 -2
  134. data/lib/oxidized/model/slxos.rb +59 -0
  135. data/lib/oxidized/model/sros.rb +117 -0
  136. data/lib/oxidized/model/stoneos.rb +32 -0
  137. data/lib/oxidized/model/supermicro.rb +6 -41
  138. data/lib/oxidized/model/timos.rb +6 -114
  139. data/lib/oxidized/model/tmos.rb +1 -3
  140. data/lib/oxidized/model/tplink.rb +7 -11
  141. data/lib/oxidized/model/trango.rb +6 -7
  142. data/lib/oxidized/model/ucs.rb +0 -1
  143. data/lib/oxidized/model/voltaire.rb +3 -6
  144. data/lib/oxidized/model/voss.rb +1 -2
  145. data/lib/oxidized/model/vrp.rb +4 -5
  146. data/lib/oxidized/model/vyatta.rb +6 -4
  147. data/lib/oxidized/model/weos.rb +1 -3
  148. data/lib/oxidized/model/xos.rb +6 -5
  149. data/lib/oxidized/model/zhoneolt.rb +2 -2
  150. data/lib/oxidized/model/zynos.rb +1 -3
  151. data/lib/oxidized/model/zynoscli.rb +36 -0
  152. data/lib/oxidized/node.rb +11 -11
  153. data/lib/oxidized/node/stats.rb +15 -2
  154. data/lib/oxidized/nodes.rb +8 -8
  155. data/lib/oxidized/output/file.rb +41 -42
  156. data/lib/oxidized/output/git.rb +113 -115
  157. data/lib/oxidized/output/gitcrypt.rb +241 -242
  158. data/lib/oxidized/output/http.rb +23 -27
  159. data/lib/oxidized/output/output.rb +1 -2
  160. data/lib/oxidized/source/csv.rb +44 -45
  161. data/lib/oxidized/source/http.rb +52 -49
  162. data/lib/oxidized/source/source.rb +6 -7
  163. data/lib/oxidized/source/sql.rb +55 -51
  164. data/lib/oxidized/string.rb +3 -4
  165. data/lib/oxidized/version.rb +17 -1
  166. data/lib/oxidized/worker.rb +12 -3
  167. data/oxidized.gemspec +19 -13
  168. metadata +139 -51
  169. data/.ruby-version +0 -1
  170. data/Gemfile.lock +0 -44
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 4c68d3b3818ff8c011c232a2dda22bb14bdd0a30
4
- data.tar.gz: c7135e67bacb9cadef51dbaf1826c4f9a3923f4c
2
+ SHA256:
3
+ metadata.gz: b167d6b2d89382ddf8e5ad3cbcf503f10cf7224ef2d11c14123be2aa3caba5d3
4
+ data.tar.gz: 4296fe19998d6f687fcd71acb3bac178a13241b417f13e28c6faa5e94ea0b619
5
5
  SHA512:
6
- metadata.gz: f2aaa1f8ccf0d9cc2816309859c31bc3caf8c16cc0bd5abb34c94756823e461428cc19bcda619fe28980eeb379e3ad9c48c907e104d58b9e2a7f63c777f99c9a
7
- data.tar.gz: 1313b8e85f766be9e9605107a96a8fd8d11af350670ae1165496f7d702358faa160825af15b9d848c43d9014ac8325502305ad4f6f6aa633fc0032c6bd056e29
6
+ metadata.gz: 455ebad64a5b3decc7dacbb5a910e0a43a1227cce404a2cb8281a063bb73ad451d20d8a241b7bfb2334b9b2c58fa8955769c801d4246a4b81264d167e6fb6ecd
7
+ data.tar.gz: 87ea00dfd830d8aa5c778a1060c389508e47e303f46c04983b1705c84e17aef7ee9c2f3ccf4386e8803a04166ee351c486319ee5f4cbaef36b95d7e0f43ea5a8
@@ -0,0 +1,13 @@
1
+ # Configuration for probot-no-response - https://github.com/probot/no-response
2
+
3
+ # Number of days of inactivity before an Issue is closed for lack of response
4
+ daysUntilClose: 21
5
+ # Label requiring a response
6
+ responseRequiredLabel: user_pending
7
+ # Comment to post when closing an Issue for lack of response. Set to `false` to disable
8
+ closeComment: >
9
+ This issue has been automatically closed because there has been no response
10
+ to our request for more information from the original author. The information
11
+ that is currently in the issue is insufficient to take further action.
12
+ Feel free to re-open this issue if additional information becomes available,
13
+ or if you believe it has been closed in error.
data/.gitignore CHANGED
@@ -10,6 +10,9 @@
10
10
  /test/version_tmp/
11
11
  /tmp/
12
12
  .idea/
13
+ Gemfile.lock
14
+ .ruby-version
15
+ .sass-cache/
13
16
 
14
17
  # Used by dotenv library to load environment variables.
15
18
  # .env
@@ -0,0 +1,37 @@
1
+ inherit_from: .rubocop_todo.yml
2
+
3
+ AllCops:
4
+ Include:
5
+ - Rakefile
6
+
7
+ StringLiterals:
8
+ Enabled: false
9
+
10
+ LineLength:
11
+ Enabled: false
12
+
13
+ # Stick to verbose until https://bugs.ruby-lang.org/issues/10177 is closed.
14
+ Style/PreferredHashMethods:
15
+ EnforcedStyle: verbose
16
+
17
+ Style/Not:
18
+ Enabled: false
19
+
20
+ # comply with @ytti's exacting specifications
21
+ Style/CommandLiteral:
22
+ EnforcedStyle: percent_x
23
+
24
+ Style/FormatString:
25
+ EnforcedStyle: percent
26
+
27
+ Style/FormatStringToken:
28
+ EnforcedStyle: unannotated
29
+
30
+ Style/RescueModifier:
31
+ Enabled: false
32
+
33
+ # Do not attempt to police vendored code, and exclude special cases
34
+ AllCops:
35
+ Exclude:
36
+ - 'vendor/**/*'
37
+ - 'lib/oxidized/input/tftp.rb'
@@ -0,0 +1,714 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2018-06-03 10:03:33 +0200 using RuboCop version 0.55.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 1
10
+ # Configuration parameters: Include.
11
+ # Include: **/*.gemspec
12
+ Gemspec/RequiredRubyVersion:
13
+ Exclude:
14
+ - 'oxidized.gemspec'
15
+
16
+ # Offense count: 4
17
+ Lint/AmbiguousBlockAssociation:
18
+ Exclude:
19
+ - 'lib/oxidized/model/model.rb'
20
+ - 'lib/oxidized/model/nos.rb'
21
+
22
+ # Offense count: 681
23
+ Lint/AmbiguousRegexpLiteral:
24
+ Enabled: false
25
+
26
+ # Offense count: 8
27
+ # Configuration parameters: AllowSafeAssignment.
28
+ Lint/AssignmentInCondition:
29
+ Exclude:
30
+ - 'extra/syslog.rb'
31
+ - 'lib/oxidized/input/ssh.rb'
32
+ - 'lib/oxidized/input/telnet.rb'
33
+ - 'lib/oxidized/node.rb'
34
+ - 'lib/oxidized/nodes.rb'
35
+
36
+ # Offense count: 4
37
+ # Cop supports --auto-correct.
38
+ Lint/DeprecatedClassMethods:
39
+ Exclude:
40
+ - 'lib/oxidized/cli.rb'
41
+ - 'lib/oxidized/output/file.rb'
42
+ - 'lib/oxidized/output/gitcrypt.rb'
43
+
44
+ # Offense count: 3
45
+ Lint/HandleExceptions:
46
+ Exclude:
47
+ - 'lib/oxidized/input/ssh.rb'
48
+ - 'lib/oxidized/input/telnet.rb'
49
+ - 'lib/oxidized/nodes.rb'
50
+
51
+ # Offense count: 2
52
+ Lint/LiteralAsCondition:
53
+ Exclude:
54
+ - 'extra/syslog.rb'
55
+ - 'lib/oxidized/core.rb'
56
+
57
+ # Offense count: 4
58
+ Lint/ParenthesesAsGroupedExpression:
59
+ Exclude:
60
+ - 'lib/oxidized/input/ssh.rb'
61
+ - 'lib/oxidized/model/aricentiss.rb'
62
+ - 'lib/oxidized/model/asa.rb'
63
+ - 'lib/oxidized/model/ios.rb'
64
+
65
+ # Offense count: 3
66
+ Lint/ShadowingOuterLocalVariable:
67
+ Exclude:
68
+ - 'lib/oxidized/model/fortios.rb'
69
+ - 'lib/oxidized/model/planet.rb'
70
+
71
+ # Offense count: 10
72
+ Lint/UnderscorePrefixedVariableName:
73
+ Exclude:
74
+ - 'lib/oxidized/input/cli.rb'
75
+ - 'lib/oxidized/manager.rb'
76
+ - 'lib/oxidized/model/model.rb'
77
+ - 'lib/oxidized/nodes.rb'
78
+
79
+ # Offense count: 2
80
+ # Cop supports --auto-correct.
81
+ # Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
82
+ Lint/UnusedBlockArgument:
83
+ Exclude:
84
+ - 'lib/oxidized/hook/githubrepo.rb'
85
+
86
+ # Offense count: 7
87
+ # Cop supports --auto-correct.
88
+ # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods.
89
+ Lint/UnusedMethodArgument:
90
+ Exclude:
91
+ - 'lib/oxidized/core.rb'
92
+ - 'lib/oxidized/hook.rb'
93
+ - 'lib/oxidized/output/file.rb'
94
+
95
+ # Offense count: 13
96
+ Lint/UselessAssignment:
97
+ Exclude:
98
+ - 'lib/oxidized/model/cumulus.rb'
99
+ - 'lib/oxidized/model/edgeos.rb'
100
+ - 'lib/oxidized/model/gaiaos.rb'
101
+ - 'lib/oxidized/model/mlnxos.rb'
102
+ - 'lib/oxidized/model/openbsd.rb'
103
+ - 'lib/oxidized/model/procurve.rb'
104
+ - 'lib/oxidized/model/trango.rb'
105
+ - 'lib/oxidized/model/voltaire.rb'
106
+ - 'lib/oxidized/model/vyatta.rb'
107
+ - 'lib/oxidized/model/zhoneolt.rb'
108
+ - 'lib/oxidized/output/gitcrypt.rb'
109
+ - 'lib/oxidized/output/http.rb'
110
+ - 'lib/oxidized/source/csv.rb'
111
+
112
+ # Offense count: 1
113
+ # Configuration parameters: CheckForMethodsWithNoSideEffects.
114
+ Lint/Void:
115
+ Exclude:
116
+ - 'lib/oxidized/model/voss.rb'
117
+
118
+ # Offense count: 63
119
+ Metrics/AbcSize:
120
+ Max: 84
121
+
122
+ # Offense count: 19
123
+ # Configuration parameters: CountComments, ExcludedMethods.
124
+ Metrics/BlockLength:
125
+ Max: 142
126
+
127
+ # Offense count: 2
128
+ # Configuration parameters: CountBlocks.
129
+ Metrics/BlockNesting:
130
+ Max: 4
131
+
132
+ # Offense count: 7
133
+ # Configuration parameters: CountComments.
134
+ Metrics/ClassLength:
135
+ Max: 210
136
+
137
+ # Offense count: 14
138
+ Metrics/CyclomaticComplexity:
139
+ Max: 28
140
+
141
+ # Offense count: 56
142
+ # Configuration parameters: CountComments.
143
+ Metrics/MethodLength:
144
+ Max: 76
145
+
146
+ # Offense count: 2
147
+ # Configuration parameters: CountKeywordArgs.
148
+ Metrics/ParameterLists:
149
+ Max: 6
150
+
151
+ # Offense count: 15
152
+ Metrics/PerceivedComplexity:
153
+ Max: 32
154
+
155
+ # Offense count: 1
156
+ Naming/AccessorMethodName:
157
+ Exclude:
158
+ - 'lib/oxidized/string.rb'
159
+
160
+ # Offense count: 1
161
+ Naming/ClassAndModuleCamelCase:
162
+ Exclude:
163
+ - 'lib/oxidized/model/apc_aos.rb'
164
+
165
+ # Offense count: 8
166
+ Naming/ConstantName:
167
+ Exclude:
168
+ - 'extra/rest_client.rb'
169
+ - 'lib/oxidized/config.rb'
170
+ - 'lib/oxidized/hook.rb'
171
+ - 'lib/oxidized/input/ftp.rb'
172
+ - 'lib/oxidized/input/input.rb'
173
+ - 'lib/oxidized/input/ssh.rb'
174
+ - 'lib/oxidized/input/telnet.rb'
175
+
176
+ # Offense count: 1
177
+ Naming/MemoizedInstanceVariableName:
178
+ Exclude:
179
+ - 'lib/oxidized/string.rb'
180
+
181
+ # Offense count: 3
182
+ # Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist, MethodDefinitionMacros.
183
+ # NamePrefix: is_, has_, have_
184
+ # NamePrefixBlacklist: is_, has_, have_
185
+ # NameWhitelist: is_a?
186
+ # MethodDefinitionMacros: define_method, define_singleton_method
187
+ Naming/PredicateName:
188
+ Exclude:
189
+ - 'spec/**/*'
190
+ - 'lib/oxidized/node.rb'
191
+ - 'lib/oxidized/worker.rb'
192
+
193
+ # Offense count: 11
194
+ # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
195
+ # AllowedNames: io, id, to, by, on, in, at
196
+ Naming/UncommunicativeMethodParamName:
197
+ Exclude:
198
+ - 'extra/syslog.rb'
199
+ - 'lib/oxidized/input/cli.rb'
200
+ - 'lib/oxidized/input/telnet.rb'
201
+ - 'lib/oxidized/model/model.rb'
202
+
203
+ # Offense count: 1
204
+ # Cop supports --auto-correct.
205
+ Performance/Casecmp:
206
+ Exclude:
207
+ - 'lib/oxidized/manager.rb'
208
+
209
+ # Offense count: 57
210
+ # Cop supports --auto-correct.
211
+ Performance/RedundantMatch:
212
+ Enabled: false
213
+
214
+ # Offense count: 2
215
+ # Cop supports --auto-correct.
216
+ # Configuration parameters: MaxKeyValuePairs.
217
+ Performance/RedundantMerge:
218
+ Exclude:
219
+ - 'lib/oxidized/hook/exec.rb'
220
+ - 'lib/oxidized/input/telnet.rb'
221
+
222
+ # Offense count: 6
223
+ # Cop supports --auto-correct.
224
+ Performance/StringReplacement:
225
+ Exclude:
226
+ - 'lib/oxidized/model/awplus.rb'
227
+ - 'lib/oxidized/model/comware.rb'
228
+ - 'lib/oxidized/model/sros.rb'
229
+
230
+ # Offense count: 1
231
+ Security/Eval:
232
+ Exclude:
233
+ - 'Rakefile'
234
+
235
+ # Offense count: 1
236
+ # Cop supports --auto-correct.
237
+ # Configuration parameters: AutoCorrect.
238
+ Security/JSONLoad:
239
+ Exclude:
240
+ - 'extra/nagios_check_failing_nodes.rb'
241
+
242
+ # Offense count: 5
243
+ Security/Open:
244
+ Exclude:
245
+ - 'extra/syslog.rb'
246
+ - 'lib/oxidized/cli.rb'
247
+ - 'lib/oxidized/node.rb'
248
+ - 'lib/oxidized/output/file.rb'
249
+ - 'lib/oxidized/source/csv.rb'
250
+
251
+ # Offense count: 3
252
+ # Cop supports --auto-correct.
253
+ # Configuration parameters: EnforcedStyle.
254
+ # SupportedStyles: prefer_alias, prefer_alias_method
255
+ Style/Alias:
256
+ Exclude:
257
+ - 'lib/oxidized/node.rb'
258
+ - 'lib/oxidized/nodes.rb'
259
+
260
+ # Offense count: 46
261
+ # Cop supports --auto-correct.
262
+ # Configuration parameters: EnforcedStyle.
263
+ # SupportedStyles: always, conditionals
264
+ Style/AndOr:
265
+ Enabled: false
266
+
267
+ # Offense count: 3
268
+ # Cop supports --auto-correct.
269
+ # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods.
270
+ # SupportedStyles: line_count_based, semantic, braces_for_chaining
271
+ # ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
272
+ # FunctionalMethods: let, let!, subject, watch
273
+ # IgnoredMethods: lambda, proc, it
274
+ Style/BlockDelimiters:
275
+ Exclude:
276
+ - 'lib/oxidized/model/aricentiss.rb'
277
+ - 'lib/oxidized/model/hatteras.rb'
278
+
279
+ # Offense count: 4
280
+ # Cop supports --auto-correct.
281
+ # Configuration parameters: EnforcedStyle.
282
+ # SupportedStyles: braces, no_braces, context_dependent
283
+ Style/BracesAroundHashParameters:
284
+ Exclude:
285
+ - 'lib/oxidized/hook/githubrepo.rb'
286
+ - 'lib/oxidized/input/telnet.rb'
287
+ - 'lib/oxidized/model/procurve.rb'
288
+ - 'lib/oxidized/output/http.rb'
289
+
290
+ # Offense count: 3
291
+ Style/CaseEquality:
292
+ Exclude:
293
+ - 'lib/oxidized/input/telnet.rb'
294
+ - 'lib/oxidized/model/model.rb'
295
+
296
+ # Offense count: 4
297
+ # Cop supports --auto-correct.
298
+ # Configuration parameters: AutoCorrect, EnforcedStyle.
299
+ # SupportedStyles: nested, compact
300
+ Style/ClassAndModuleChildren:
301
+ Exclude:
302
+ - 'lib/oxidized/config/vars.rb'
303
+ - 'lib/oxidized/input/telnet.rb'
304
+ - 'lib/oxidized/nodes.rb'
305
+
306
+ # Offense count: 1
307
+ # Cop supports --auto-correct.
308
+ # Configuration parameters: EnforcedStyle.
309
+ # SupportedStyles: is_a?, kind_of?
310
+ Style/ClassCheck:
311
+ Exclude:
312
+ - 'lib/oxidized/input/telnet.rb'
313
+
314
+ # Offense count: 2
315
+ Style/ClassVars:
316
+ Exclude:
317
+ - 'lib/oxidized.rb'
318
+
319
+ # Offense count: 4
320
+ # Cop supports --auto-correct.
321
+ Style/ColonMethodCall:
322
+ Exclude:
323
+ - 'lib/oxidized/input/ssh.rb'
324
+ - 'lib/oxidized/input/telnet.rb'
325
+
326
+ # Offense count: 1
327
+ Style/CommentedKeyword:
328
+ Exclude:
329
+ - 'lib/oxidized/input/telnet.rb'
330
+
331
+ # Offense count: 2
332
+ # Cop supports --auto-correct.
333
+ # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
334
+ # SupportedStyles: assign_to_condition, assign_inside_condition
335
+ Style/ConditionalAssignment:
336
+ Exclude:
337
+ - 'lib/oxidized/hook/githubrepo.rb'
338
+ - 'lib/oxidized/model/model.rb'
339
+
340
+ # Offense count: 150
341
+ Style/Documentation:
342
+ Enabled: false
343
+
344
+ # Offense count: 2
345
+ Style/DoubleNegation:
346
+ Exclude:
347
+ - 'lib/oxidized/cli.rb'
348
+ - 'lib/oxidized/hook/exec.rb'
349
+
350
+ # Offense count: 1
351
+ # Cop supports --auto-correct.
352
+ # Configuration parameters: EnforcedStyle.
353
+ # SupportedStyles: compact, expanded
354
+ Style/EmptyMethod:
355
+ Exclude:
356
+ - 'lib/oxidized/hook.rb'
357
+
358
+ # Offense count: 1
359
+ # Cop supports --auto-correct.
360
+ Style/ExpandPathArguments:
361
+ Exclude:
362
+ - 'bin/console'
363
+
364
+ # Offense count: 13
365
+ # Configuration parameters: MinBodyLength.
366
+ Style/GuardClause:
367
+ Exclude:
368
+ - 'lib/oxidized/cli.rb'
369
+ - 'lib/oxidized/input/cli.rb'
370
+ - 'lib/oxidized/jobs.rb'
371
+ - 'lib/oxidized/nodes.rb'
372
+ - 'lib/oxidized/output/file.rb'
373
+ - 'lib/oxidized/output/git.rb'
374
+ - 'lib/oxidized/output/gitcrypt.rb'
375
+ - 'lib/oxidized/output/http.rb'
376
+ - 'lib/oxidized/source/http.rb'
377
+ - 'lib/oxidized/source/sql.rb'
378
+ - 'lib/oxidized/string.rb'
379
+
380
+ # Offense count: 97
381
+ # Cop supports --auto-correct.
382
+ # Configuration parameters: EnforcedStyle, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
383
+ # SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
384
+ Style/HashSyntax:
385
+ Enabled: false
386
+
387
+ # Offense count: 1
388
+ Style/IfInsideElse:
389
+ Exclude:
390
+ - 'lib/oxidized/output/file.rb'
391
+
392
+ # Offense count: 42
393
+ # Cop supports --auto-correct.
394
+ Style/IfUnlessModifier:
395
+ Enabled: false
396
+
397
+ # Offense count: 1
398
+ Style/IfUnlessModifierOfIfUnless:
399
+ Exclude:
400
+ - 'lib/oxidized/input/ssh.rb'
401
+
402
+ # Offense count: 2
403
+ # Cop supports --auto-correct.
404
+ Style/InfiniteLoop:
405
+ Exclude:
406
+ - 'extra/syslog.rb'
407
+ - 'lib/oxidized/core.rb'
408
+
409
+ # Offense count: 1
410
+ # Cop supports --auto-correct.
411
+ Style/LineEndConcatenation:
412
+ Exclude:
413
+ - 'lib/oxidized/hook.rb'
414
+
415
+ # Offense count: 137
416
+ # Cop supports --auto-correct.
417
+ # Configuration parameters: EnforcedStyle.
418
+ # SupportedStyles: require_parentheses, require_no_parentheses, require_no_parentheses_except_multiline
419
+ Style/MethodDefParentheses:
420
+ Enabled: false
421
+
422
+ # Offense count: 2
423
+ # Cop supports --auto-correct.
424
+ Style/MultilineIfThen:
425
+ Exclude:
426
+ - 'lib/oxidized/model/aricentiss.rb'
427
+
428
+ # Offense count: 9
429
+ # Cop supports --auto-correct.
430
+ Style/MutableConstant:
431
+ Exclude:
432
+ - 'extra/syslog.rb'
433
+ - 'lib/oxidized/hook.rb'
434
+ - 'lib/oxidized/input/ftp.rb'
435
+ - 'lib/oxidized/input/input.rb'
436
+ - 'lib/oxidized/input/ssh.rb'
437
+ - 'lib/oxidized/input/telnet.rb'
438
+ - 'lib/oxidized/version.rb'
439
+
440
+ # Offense count: 8
441
+ # Cop supports --auto-correct.
442
+ # Configuration parameters: EnforcedStyle.
443
+ # SupportedStyles: both, prefix, postfix
444
+ Style/NegatedIf:
445
+ Exclude:
446
+ - 'lib/oxidized/model/ios.rb'
447
+ - 'lib/oxidized/node.rb'
448
+ - 'lib/oxidized/output/git.rb'
449
+ - 'lib/oxidized/output/gitcrypt.rb'
450
+ - 'lib/oxidized/worker.rb'
451
+
452
+ # Offense count: 2
453
+ # Cop supports --auto-correct.
454
+ # Configuration parameters: EnforcedStyle, MinBodyLength.
455
+ # SupportedStyles: skip_modifier_ifs, always
456
+ Style/Next:
457
+ Exclude:
458
+ - 'lib/oxidized/model/trango.rb'
459
+ - 'lib/oxidized/output/git.rb'
460
+
461
+ # Offense count: 1
462
+ # Cop supports --auto-correct.
463
+ Style/NilComparison:
464
+ Exclude:
465
+ - 'lib/oxidized/input/ssh.rb'
466
+
467
+ # Offense count: 1
468
+ # Cop supports --auto-correct.
469
+ # Configuration parameters: EnforcedOctalStyle.
470
+ # SupportedOctalStyles: zero_with_o, zero_only
471
+ Style/NumericLiteralPrefix:
472
+ Exclude:
473
+ - 'lib/oxidized/output/git.rb'
474
+
475
+ # Offense count: 6
476
+ # Cop supports --auto-correct.
477
+ # Configuration parameters: AutoCorrect, EnforcedStyle.
478
+ # SupportedStyles: predicate, comparison
479
+ Style/NumericPredicate:
480
+ Exclude:
481
+ - 'spec/**/*'
482
+ - 'lib/oxidized/cli.rb'
483
+ - 'lib/oxidized/core.rb'
484
+ - 'lib/oxidized/jobs.rb'
485
+ - 'lib/oxidized/nodes.rb'
486
+ - 'lib/oxidized/worker.rb'
487
+
488
+ # Offense count: 1
489
+ # Cop supports --auto-correct.
490
+ Style/OrAssignment:
491
+ Exclude:
492
+ - 'lib/oxidized/manager.rb'
493
+
494
+ # Offense count: 5
495
+ # Cop supports --auto-correct.
496
+ Style/ParallelAssignment:
497
+ Exclude:
498
+ - 'extra/syslog.rb'
499
+ - 'lib/oxidized/hook/exec.rb'
500
+ - 'lib/oxidized/node.rb'
501
+ - 'lib/oxidized/output/git.rb'
502
+ - 'lib/oxidized/output/gitcrypt.rb'
503
+
504
+ # Offense count: 4
505
+ # Cop supports --auto-correct.
506
+ # Configuration parameters: AllowSafeAssignment.
507
+ Style/ParenthesesAroundCondition:
508
+ Exclude:
509
+ - 'lib/oxidized/model/ios.rb'
510
+ - 'lib/oxidized/model/powerconnect.rb'
511
+ - 'lib/oxidized/source/http.rb'
512
+
513
+ # Offense count: 6
514
+ # Cop supports --auto-correct.
515
+ # Configuration parameters: PreferredDelimiters.
516
+ Style/PercentLiteralDelimiters:
517
+ Exclude:
518
+ - 'lib/oxidized/config.rb'
519
+ - 'lib/oxidized/input/ssh.rb'
520
+
521
+ # Offense count: 22
522
+ # Cop supports --auto-correct.
523
+ Style/PerlBackrefs:
524
+ Exclude:
525
+ - 'lib/oxidized/model/acos.rb'
526
+ - 'lib/oxidized/model/aos7.rb'
527
+ - 'lib/oxidized/model/ios.rb'
528
+ - 'lib/oxidized/model/junos.rb'
529
+ - 'lib/oxidized/model/powerconnect.rb'
530
+
531
+ # Offense count: 1
532
+ # Cop supports --auto-correct.
533
+ Style/Proc:
534
+ Exclude:
535
+ - 'lib/oxidized/hook/githubrepo.rb'
536
+
537
+ # Offense count: 10
538
+ # Cop supports --auto-correct.
539
+ Style/RedundantBegin:
540
+ Exclude:
541
+ - 'lib/oxidized/input/telnet.rb'
542
+ - 'lib/oxidized/manager.rb'
543
+ - 'lib/oxidized/output/git.rb'
544
+ - 'lib/oxidized/output/gitcrypt.rb'
545
+
546
+ # Offense count: 4
547
+ # Cop supports --auto-correct.
548
+ Style/RedundantParentheses:
549
+ Exclude:
550
+ - 'lib/oxidized/model/aricentiss.rb'
551
+ - 'lib/oxidized/model/ios.rb'
552
+ - 'lib/oxidized/model/powerconnect.rb'
553
+
554
+ # Offense count: 2
555
+ # Cop supports --auto-correct.
556
+ # Configuration parameters: AllowMultipleReturnValues.
557
+ Style/RedundantReturn:
558
+ Exclude:
559
+ - 'lib/oxidized/node.rb'
560
+ - 'lib/oxidized/output/file.rb'
561
+
562
+ # Offense count: 5
563
+ # Cop supports --auto-correct.
564
+ Style/RedundantSelf:
565
+ Exclude:
566
+ - 'lib/oxidized/hook.rb'
567
+ - 'lib/oxidized/node.rb'
568
+ - 'lib/oxidized/nodes.rb'
569
+
570
+ # Offense count: 31
571
+ # Cop supports --auto-correct.
572
+ # Configuration parameters: EnforcedStyle, AllowInnerSlashes.
573
+ # SupportedStyles: slashes, percent_r, mixed
574
+ Style/RegexpLiteral:
575
+ Enabled: false
576
+
577
+ # Offense count: 19
578
+ # Cop supports --auto-correct.
579
+ # Configuration parameters: EnforcedStyle.
580
+ # SupportedStyles: implicit, explicit
581
+ Style/RescueStandardError:
582
+ Exclude:
583
+ - 'bin/oxidized'
584
+ - 'extra/rest_client.rb'
585
+ - 'extra/syslog.rb'
586
+ - 'lib/oxidized/cli.rb'
587
+ - 'lib/oxidized/config.rb'
588
+ - 'lib/oxidized/hook.rb'
589
+ - 'lib/oxidized/hook/exec.rb'
590
+ - 'lib/oxidized/node.rb'
591
+ - 'lib/oxidized/output/git.rb'
592
+ - 'lib/oxidized/output/gitcrypt.rb'
593
+ - 'lib/oxidized/worker.rb'
594
+
595
+ # Offense count: 10
596
+ # Cop supports --auto-correct.
597
+ # Configuration parameters: AllowAsExpressionSeparator.
598
+ Style/Semicolon:
599
+ Exclude:
600
+ - 'lib/oxidized/model/ios.rb'
601
+ - 'lib/oxidized/output/git.rb'
602
+ - 'lib/oxidized/output/gitcrypt.rb'
603
+
604
+ # Offense count: 1
605
+ # Cop supports --auto-correct.
606
+ # Configuration parameters: EnforcedStyle.
607
+ # SupportedStyles: use_perl_names, use_english_names
608
+ Style/SpecialGlobalVars:
609
+ Exclude:
610
+ - 'lib/oxidized/cli.rb'
611
+
612
+ # Offense count: 1
613
+ Style/StructInheritance:
614
+ Exclude:
615
+ - 'lib/oxidized/hook.rb'
616
+
617
+ # Offense count: 1
618
+ # Cop supports --auto-correct.
619
+ # Configuration parameters: MinSize.
620
+ # SupportedStyles: percent, brackets
621
+ Style/SymbolArray:
622
+ EnforcedStyle: brackets
623
+
624
+ # Offense count: 6
625
+ # Cop supports --auto-correct.
626
+ # Configuration parameters: IgnoredMethods.
627
+ # IgnoredMethods: respond_to, define_method
628
+ Style/SymbolProc:
629
+ Exclude:
630
+ - 'lib/oxidized/model/datacom.rb'
631
+ - 'lib/oxidized/model/hpebladesystem.rb'
632
+ - 'lib/oxidized/model/junos.rb'
633
+ - 'lib/oxidized/model/outputs.rb'
634
+ - 'lib/oxidized/nodes.rb'
635
+
636
+ # Offense count: 3
637
+ # Cop supports --auto-correct.
638
+ # Configuration parameters: EnforcedStyleForMultiline.
639
+ # SupportedStylesForMultiline: comma, consistent_comma, no_comma
640
+ Style/TrailingCommaInArguments:
641
+ Exclude:
642
+ - 'lib/oxidized/hook/exec.rb'
643
+ - 'lib/oxidized/output/git.rb'
644
+
645
+ # Offense count: 4
646
+ # Cop supports --auto-correct.
647
+ # Configuration parameters: EnforcedStyleForMultiline.
648
+ # SupportedStylesForMultiline: comma, consistent_comma, no_comma
649
+ Style/TrailingCommaInArrayLiteral:
650
+ Exclude:
651
+ - 'lib/oxidized/input/input.rb'
652
+ - 'lib/oxidized/input/ssh.rb'
653
+
654
+ # Offense count: 11
655
+ # Cop supports --auto-correct.
656
+ # Configuration parameters: EnforcedStyleForMultiline.
657
+ # SupportedStylesForMultiline: comma, consistent_comma, no_comma
658
+ Style/TrailingCommaInHashLiteral:
659
+ Exclude:
660
+ - 'extra/syslog.rb'
661
+ - 'lib/oxidized/config.rb'
662
+ - 'lib/oxidized/input/ftp.rb'
663
+ - 'lib/oxidized/input/input.rb'
664
+ - 'lib/oxidized/input/ssh.rb'
665
+ - 'lib/oxidized/node.rb'
666
+ - 'lib/oxidized/node/stats.rb'
667
+
668
+ # Offense count: 2
669
+ # Cop supports --auto-correct.
670
+ # Configuration parameters: AllowNamedUnderscoreVariables.
671
+ Style/TrailingUnderscoreVariable:
672
+ Exclude:
673
+ - 'lib/oxidized/node.rb'
674
+ - 'lib/oxidized/output/git.rb'
675
+
676
+ # Offense count: 3
677
+ # Cop supports --auto-correct.
678
+ # Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, IgnoreClassMethods, Whitelist.
679
+ # Whitelist: to_ary, to_a, to_c, to_enum, to_h, to_hash, to_i, to_int, to_io, to_open, to_path, to_proc, to_r, to_regexp, to_str, to_s, to_sym
680
+ Style/TrivialAccessors:
681
+ Exclude:
682
+ - 'lib/oxidized/cli.rb'
683
+ - 'lib/oxidized/input/ssh.rb'
684
+ - 'lib/oxidized/model/model.rb'
685
+
686
+ # Offense count: 2
687
+ # Cop supports --auto-correct.
688
+ Style/UnneededInterpolation:
689
+ Exclude:
690
+ - 'bin/oxidized'
691
+ - 'lib/oxidized/cli.rb'
692
+
693
+ # Offense count: 1
694
+ # Cop supports --auto-correct.
695
+ # Configuration parameters: WordRegex.
696
+ # SupportedStyles: percent, brackets
697
+ Style/WordArray:
698
+ EnforcedStyle: percent
699
+ MinSize: 3
700
+
701
+ # Offense count: 4
702
+ # Cop supports --auto-correct.
703
+ Style/ZeroLengthPredicate:
704
+ Exclude:
705
+ - 'lib/oxidized/core.rb'
706
+ - 'lib/oxidized/input/telnet.rb'
707
+ - 'lib/oxidized/model/ciscosmb.rb'
708
+ - 'lib/oxidized/output/git.rb'
709
+
710
+ # Offense count: 300
711
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
712
+ # URISchemes: http, https
713
+ Metrics/LineLength:
714
+ Max: 283