oxidized 0.29.1 → 0.37.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 (236) hide show
  1. checksums.yaml +4 -4
  2. data/.coderabbit.yaml +21 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +45 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
  5. data/.github/ISSUE_TEMPLATE/support-request.md +39 -0
  6. data/.github/workflows/codeql.yml +4 -4
  7. data/.github/workflows/publishdocker.yml +108 -13
  8. data/.github/workflows/ruby.yml +3 -12
  9. data/.github/workflows/stale.yml +6 -1
  10. data/.gitignore +2 -0
  11. data/.rubocop.yml +69 -13
  12. data/.rubocop_todo.yml +13 -143
  13. data/CHANGELOG.md +431 -4
  14. data/CONTRIBUTING.md +189 -0
  15. data/Dockerfile +89 -34
  16. data/README.md +59 -188
  17. data/Rakefile +58 -12
  18. data/bin/oxidized +2 -5
  19. data/docs/Configuration.md +382 -149
  20. data/docs/Creating-Models.md +262 -10
  21. data/docs/DeviceSimulation.md +196 -0
  22. data/docs/Docker.md +246 -0
  23. data/docs/Hooks.md +146 -51
  24. data/docs/Inputs.md +237 -0
  25. data/docs/Issues.md +123 -0
  26. data/docs/Model-Notes/APC.md +72 -0
  27. data/docs/Model-Notes/Cumulus.md +5 -0
  28. data/docs/Model-Notes/EatonNetwork.md +18 -0
  29. data/docs/Model-Notes/ExaLink.md +43 -0
  30. data/docs/Model-Notes/FSOS.md +17 -0
  31. data/docs/Model-Notes/Fortinet.md +75 -0
  32. data/docs/Model-Notes/GrandstreamHT8xx.md +8 -0
  33. data/docs/Model-Notes/HPEAruba.md +32 -0
  34. data/docs/Model-Notes/IvantiConnectSecure.md +59 -0
  35. data/docs/Model-Notes/OS6.md +10 -0
  36. data/docs/Model-Notes/README.md +1 -20
  37. data/docs/Model-Notes/RouterOS.md +28 -0
  38. data/docs/Model-Notes/SikluMHTG.md +7 -0
  39. data/docs/Model-Notes/TrueNAS.md +23 -0
  40. data/docs/Model-Notes/XGS4600-Zyxel.md +5 -0
  41. data/docs/ModelUnitTests.md +219 -0
  42. data/docs/Outputs.md +102 -5
  43. data/docs/Release.md +102 -0
  44. data/docs/Ruby-API.md +135 -2
  45. data/docs/Sources.md +34 -0
  46. data/docs/Supported-OS-Types.md +207 -270
  47. data/docs/Troubleshooting.md +43 -1
  48. data/extra/device2yaml.rb +259 -0
  49. data/extra/gitdiff-msteams.sh +32 -5
  50. data/extra/hooks/modelrules.rb +55 -0
  51. data/extra/hooks/modelrulesadvanced.rb +167 -0
  52. data/extra/hooks/srcipmap.rb +54 -0
  53. data/extra/nagios_check_failing_nodes.rb +1 -1
  54. data/extra/oxidized.runit +1 -1
  55. data/extra/rest_client.rb +5 -4
  56. data/extra/syslog.rb +11 -6
  57. data/lib/oxidized/cli/support.rb +152 -0
  58. data/lib/oxidized/cli.rb +21 -6
  59. data/lib/oxidized/config/vars.rb +33 -14
  60. data/lib/oxidized/config.rb +28 -17
  61. data/lib/oxidized/core.rb +50 -8
  62. data/lib/oxidized/hook/ciscosparkdiff.rb +11 -9
  63. data/lib/oxidized/hook/exec.rb +5 -4
  64. data/lib/oxidized/hook/githubrepo.rb +55 -18
  65. data/lib/oxidized/hook/noophook.rb +2 -2
  66. data/lib/oxidized/hook/slackdiff.rb +50 -14
  67. data/lib/oxidized/hook/xmppdiff.rb +9 -9
  68. data/lib/oxidized/hook.rb +68 -16
  69. data/lib/oxidized/input/cli.rb +8 -3
  70. data/lib/oxidized/input/debugtext.rb +40 -0
  71. data/lib/oxidized/input/debugyaml.rb +82 -0
  72. data/lib/oxidized/input/exec.rb +2 -11
  73. data/lib/oxidized/input/ftp.rb +2 -19
  74. data/lib/oxidized/input/http.rb +67 -17
  75. data/lib/oxidized/input/input.rb +35 -14
  76. data/lib/oxidized/input/scp.rb +27 -0
  77. data/lib/oxidized/input/ssh.rb +59 -83
  78. data/lib/oxidized/input/sshbase.rb +102 -0
  79. data/lib/oxidized/input/telnet.rb +20 -19
  80. data/lib/oxidized/input/tftp.rb +8 -8
  81. data/lib/oxidized/job.rb +18 -7
  82. data/lib/oxidized/jobs.rb +11 -1
  83. data/lib/oxidized/logger.rb +51 -0
  84. data/lib/oxidized/manager.rb +18 -17
  85. data/lib/oxidized/model/acos.rb +2 -1
  86. data/lib/oxidized/model/addpack.rb +26 -0
  87. data/lib/oxidized/model/adtran.rb +5 -1
  88. data/lib/oxidized/model/adva.rb +3 -3
  89. data/lib/oxidized/model/airfiber.rb +1 -1
  90. data/lib/oxidized/model/aos7.rb +11 -0
  91. data/lib/oxidized/model/aoscx.rb +37 -29
  92. data/lib/oxidized/model/aosw.rb +39 -29
  93. data/lib/oxidized/model/apc_aos.rb +7 -2
  94. data/lib/oxidized/model/apcaos.rb +39 -0
  95. data/lib/oxidized/model/aricentiss.rb +9 -2
  96. data/lib/oxidized/model/arubainstant.rb +93 -0
  97. data/lib/oxidized/model/asa.rb +11 -10
  98. data/lib/oxidized/model/asternos.rb +22 -0
  99. data/lib/oxidized/model/asyncos.rb +3 -3
  100. data/lib/oxidized/model/audiocodes.rb +2 -2
  101. data/lib/oxidized/model/awplus.rb +15 -12
  102. data/lib/oxidized/model/axos.rb +1 -1
  103. data/lib/oxidized/model/bdcom.rb +1 -0
  104. data/lib/oxidized/model/c4cmts.rb +1 -2
  105. data/lib/oxidized/model/ciscosma.rb +1 -1
  106. data/lib/oxidized/model/ciscosmb.rb +6 -1
  107. data/lib/oxidized/model/cnos.rb +13 -10
  108. data/lib/oxidized/model/comtrol.rb +1 -1
  109. data/lib/oxidized/model/comware.rb +5 -3
  110. data/lib/oxidized/model/cumulus.rb +14 -2
  111. data/lib/oxidized/model/defacto.rb +26 -0
  112. data/lib/oxidized/model/dellx.rb +1 -1
  113. data/lib/oxidized/model/dlink.rb +5 -2
  114. data/lib/oxidized/model/dlinknextgen.rb +55 -0
  115. data/lib/oxidized/model/dnos.rb +3 -0
  116. data/lib/oxidized/model/dslcommands.rb +93 -0
  117. data/lib/oxidized/model/dslsetup.rb +102 -0
  118. data/lib/oxidized/model/eatonnetwork.rb +70 -0
  119. data/lib/oxidized/model/edgecos.rb +3 -1
  120. data/lib/oxidized/model/edgeos.rb +7 -6
  121. data/lib/oxidized/model/edgeswitch.rb +3 -1
  122. data/lib/oxidized/model/efos.rb +41 -0
  123. data/lib/oxidized/model/eltex.rb +4 -2
  124. data/lib/oxidized/model/enterasys800.rb +2 -2
  125. data/lib/oxidized/model/enterprise_sonic.rb +46 -0
  126. data/lib/oxidized/model/eos.rb +3 -1
  127. data/lib/oxidized/model/exalink.rb +36 -0
  128. data/lib/oxidized/model/f5os.rb +17 -0
  129. data/lib/oxidized/model/fabricos.rb +2 -2
  130. data/lib/oxidized/model/fastiron.rb +5 -3
  131. data/lib/oxidized/model/firebrick.rb +2 -2
  132. data/lib/oxidized/model/firelinuxos.rb +13 -6
  133. data/lib/oxidized/model/firewareos.rb +10 -1
  134. data/lib/oxidized/model/fortigate.rb +160 -0
  135. data/lib/oxidized/model/fortios.rb +38 -48
  136. data/lib/oxidized/model/fsos.rb +46 -0
  137. data/lib/oxidized/model/gaiaos.rb +4 -4
  138. data/lib/oxidized/model/garderos.rb +38 -0
  139. data/lib/oxidized/model/grandstreamht8xx.rb +19 -0
  140. data/lib/oxidized/model/h3c.rb +1 -1
  141. data/lib/oxidized/model/ibos.rb +1 -0
  142. data/lib/oxidized/model/ingate.rb +47 -0
  143. data/lib/oxidized/model/ios.rb +57 -30
  144. data/lib/oxidized/model/iosxr.rb +2 -2
  145. data/lib/oxidized/model/ironware.rb +7 -5
  146. data/lib/oxidized/model/ivanti.rb +54 -0
  147. data/lib/oxidized/model/junos.rb +12 -5
  148. data/lib/oxidized/model/kornfeldos.rb +33 -0
  149. data/lib/oxidized/model/lenovonos.rb +2 -0
  150. data/lib/oxidized/model/linksyssrw.rb +3 -3
  151. data/lib/oxidized/model/linuxgeneric.rb +4 -2
  152. data/lib/oxidized/model/macros.rb +60 -0
  153. data/lib/oxidized/model/mimosab11.rb +34 -0
  154. data/lib/oxidized/model/ml66.rb +33 -0
  155. data/lib/oxidized/model/mlnxos.rb +18 -14
  156. data/lib/oxidized/model/model.rb +98 -103
  157. data/lib/oxidized/model/mtrlrfs.rb +1 -0
  158. data/lib/oxidized/model/ndms.rb +6 -0
  159. data/lib/oxidized/model/netgear.rb +14 -3
  160. data/lib/oxidized/model/netonix.rb +1 -1
  161. data/lib/oxidized/model/netscaler.rb +1 -1
  162. data/lib/oxidized/model/nodegrid.rb +1 -1
  163. data/lib/oxidized/model/nsxdfw.rb +31 -0
  164. data/lib/oxidized/model/nsxfirewall.rb +2 -1
  165. data/lib/oxidized/model/nxos.rb +20 -15
  166. data/lib/oxidized/model/ocnos.rb +42 -0
  167. data/lib/oxidized/model/onefinity.rb +18 -0
  168. data/lib/oxidized/model/openbsd.rb +1 -1
  169. data/lib/oxidized/model/opengear.rb +36 -1
  170. data/lib/oxidized/model/openwrt.rb +6 -6
  171. data/lib/oxidized/model/opnsense.rb +9 -1
  172. data/lib/oxidized/model/os6.rb +48 -0
  173. data/lib/oxidized/model/outputs.rb +5 -0
  174. data/lib/oxidized/model/panos.rb +2 -0
  175. data/lib/oxidized/model/perle.rb +41 -0
  176. data/lib/oxidized/model/pfsense.rb +9 -0
  177. data/lib/oxidized/model/powerconnect.rb +32 -11
  178. data/lib/oxidized/model/procurve.rb +6 -2
  179. data/lib/oxidized/model/qtech.rb +3 -1
  180. data/lib/oxidized/model/quantaos.rb +8 -6
  181. data/lib/oxidized/model/rgos.rb +33 -0
  182. data/lib/oxidized/model/riverbed.rb +104 -0
  183. data/lib/oxidized/model/routeros.rb +18 -11
  184. data/lib/oxidized/model/saos.rb +18 -1
  185. data/lib/oxidized/model/saos10.rb +38 -0
  186. data/lib/oxidized/model/siklu.rb +1 -1
  187. data/lib/oxidized/model/siklumhtg.rb +22 -0
  188. data/lib/oxidized/model/sixwind.rb +28 -0
  189. data/lib/oxidized/model/slxos.rb +3 -3
  190. data/lib/oxidized/model/smartbyte.rb +48 -0
  191. data/lib/oxidized/model/sonicos.rb +27 -20
  192. data/lib/oxidized/model/speedtouch.rb +1 -1
  193. data/lib/oxidized/model/sros.rb +3 -3
  194. data/lib/oxidized/model/srosmd.rb +1 -1
  195. data/lib/oxidized/model/supermicro.rb +1 -1
  196. data/lib/oxidized/model/telco.rb +1 -1
  197. data/lib/oxidized/model/tmos.rb +1 -0
  198. data/lib/oxidized/model/tnsr.rb +57 -0
  199. data/lib/oxidized/model/tplink.rb +5 -5
  200. data/lib/oxidized/model/trango.rb +4 -2
  201. data/lib/oxidized/model/truenas.rb +64 -3
  202. data/lib/oxidized/model/ucs.rb +1 -1
  203. data/lib/oxidized/model/unifiap.rb +144 -0
  204. data/lib/oxidized/model/uplinkolt.rb +46 -0
  205. data/lib/oxidized/model/voltaire.rb +1 -1
  206. data/lib/oxidized/model/voss.rb +3 -0
  207. data/lib/oxidized/model/vrp.rb +5 -1
  208. data/lib/oxidized/model/vyatta.rb +9 -3
  209. data/lib/oxidized/model/vyos.rb +37 -0
  210. data/lib/oxidized/model/xos.rb +10 -1
  211. data/lib/oxidized/model/zhoneolt.rb +4 -2
  212. data/lib/oxidized/model/zynos.rb +67 -3
  213. data/lib/oxidized/model/zynosadsl.rb +14 -0
  214. data/lib/oxidized/model/zynoscli.rb +1 -1
  215. data/lib/oxidized/model/zynosgs.rb +2 -0
  216. data/lib/oxidized/model/zynosmgs.rb +32 -0
  217. data/lib/oxidized/node.rb +99 -64
  218. data/lib/oxidized/nodes.rb +40 -19
  219. data/lib/oxidized/output/file.rb +80 -43
  220. data/lib/oxidized/output/git.rb +295 -151
  221. data/lib/oxidized/output/gitcrypt.rb +193 -185
  222. data/lib/oxidized/output/http.rb +63 -51
  223. data/lib/oxidized/output/output.rb +20 -4
  224. data/lib/oxidized/signals.rb +44 -0
  225. data/lib/oxidized/source/csv.rb +49 -49
  226. data/lib/oxidized/source/http.rb +76 -63
  227. data/lib/oxidized/source/jsonfile.rb +68 -0
  228. data/lib/oxidized/source/source.rb +73 -18
  229. data/lib/oxidized/source/sql.rb +71 -59
  230. data/lib/oxidized/version.rb +6 -4
  231. data/lib/oxidized/worker.rb +57 -29
  232. data/lib/oxidized.rb +4 -24
  233. data/lib/refinements.rb +21 -1
  234. data/oxidized.gemspec +45 -21
  235. metadata +248 -41
  236. data/lib/oxidized/model/timos.rb +0 -10
metadata CHANGED
@@ -1,16 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oxidized
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.29.1
4
+ version: 0.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Saku Ytti
8
8
  - Samer Abdel-Hafez
9
9
  - Anton Aksola
10
- autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2023-04-24 00:00:00.000000000 Z
12
+ date: 1980-01-02 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: asetus
@@ -18,14 +17,14 @@ dependencies:
18
17
  requirements:
19
18
  - - "~>"
20
19
  - !ruby/object:Gem::Version
21
- version: '0.1'
20
+ version: '0.4'
22
21
  type: :runtime
23
22
  prerelease: false
24
23
  version_requirements: !ruby/object:Gem::Requirement
25
24
  requirements:
26
25
  - - "~>"
27
26
  - !ruby/object:Gem::Version
28
- version: '0.1'
27
+ version: '0.4'
29
28
  - !ruby/object:Gem::Dependency
30
29
  name: bcrypt_pbkdf
31
30
  requirement: !ruby/object:Gem::Requirement
@@ -54,20 +53,48 @@ dependencies:
54
53
  - - "~>"
55
54
  - !ruby/object:Gem::Version
56
55
  version: '1.2'
56
+ - !ruby/object:Gem::Dependency
57
+ name: net-ftp
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '0.2'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '0.2'
70
+ - !ruby/object:Gem::Dependency
71
+ name: net-http-digest_auth
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - "~>"
75
+ - !ruby/object:Gem::Version
76
+ version: '1.4'
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - "~>"
82
+ - !ruby/object:Gem::Version
83
+ version: '1.4'
57
84
  - !ruby/object:Gem::Dependency
58
85
  name: net-ssh
59
86
  requirement: !ruby/object:Gem::Requirement
60
87
  requirements:
61
88
  - - "~>"
62
89
  - !ruby/object:Gem::Version
63
- version: '7.1'
90
+ version: '7.3'
64
91
  type: :runtime
65
92
  prerelease: false
66
93
  version_requirements: !ruby/object:Gem::Requirement
67
94
  requirements:
68
95
  - - "~>"
69
96
  - !ruby/object:Gem::Version
70
- version: '7.1'
97
+ version: '7.3'
71
98
  - !ruby/object:Gem::Dependency
72
99
  name: net-telnet
73
100
  requirement: !ruby/object:Gem::Requirement
@@ -82,6 +109,20 @@ dependencies:
82
109
  - - "~>"
83
110
  - !ruby/object:Gem::Version
84
111
  version: '0.2'
112
+ - !ruby/object:Gem::Dependency
113
+ name: psych
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - "~>"
117
+ - !ruby/object:Gem::Version
118
+ version: '5.0'
119
+ type: :runtime
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - "~>"
124
+ - !ruby/object:Gem::Version
125
+ version: '5.0'
85
126
  - !ruby/object:Gem::Dependency
86
127
  name: rugged
87
128
  requirement: !ruby/object:Gem::Requirement
@@ -96,6 +137,20 @@ dependencies:
96
137
  - - "~>"
97
138
  - !ruby/object:Gem::Version
98
139
  version: '1.6'
140
+ - !ruby/object:Gem::Dependency
141
+ name: semantic_logger
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - "~>"
145
+ - !ruby/object:Gem::Version
146
+ version: '4.17'
147
+ type: :runtime
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - "~>"
152
+ - !ruby/object:Gem::Version
153
+ version: '4.17'
99
154
  - !ruby/object:Gem::Dependency
100
155
  name: slop
101
156
  requirement: !ruby/object:Gem::Requirement
@@ -111,75 +166,87 @@ dependencies:
111
166
  - !ruby/object:Gem::Version
112
167
  version: '4.6'
113
168
  - !ruby/object:Gem::Dependency
114
- name: bundler
169
+ name: syslog
115
170
  requirement: !ruby/object:Gem::Requirement
116
171
  requirements:
117
172
  - - "~>"
118
173
  - !ruby/object:Gem::Version
119
- version: '2.2'
120
- type: :development
174
+ version: '0.3'
175
+ type: :runtime
121
176
  prerelease: false
122
177
  version_requirements: !ruby/object:Gem::Requirement
123
178
  requirements:
124
179
  - - "~>"
125
180
  - !ruby/object:Gem::Version
126
- version: '2.2'
181
+ version: '0.3'
127
182
  - !ruby/object:Gem::Dependency
128
- name: git
183
+ name: syslog_protocol
129
184
  requirement: !ruby/object:Gem::Requirement
130
185
  requirements:
131
186
  - - "~>"
132
187
  - !ruby/object:Gem::Version
133
- version: '1'
134
- type: :development
188
+ version: '0.9'
189
+ type: :runtime
135
190
  prerelease: false
136
191
  version_requirements: !ruby/object:Gem::Requirement
137
192
  requirements:
138
193
  - - "~>"
139
194
  - !ruby/object:Gem::Version
140
- version: '1'
195
+ version: '0.9'
141
196
  - !ruby/object:Gem::Dependency
142
197
  name: minitest
143
198
  requirement: !ruby/object:Gem::Requirement
144
199
  requirements:
145
- - - "~>"
200
+ - - ">="
146
201
  - !ruby/object:Gem::Version
147
202
  version: '5.18'
203
+ - - "<"
204
+ - !ruby/object:Gem::Version
205
+ version: '7'
148
206
  type: :development
149
207
  prerelease: false
150
208
  version_requirements: !ruby/object:Gem::Requirement
151
209
  requirements:
152
- - - "~>"
210
+ - - ">="
153
211
  - !ruby/object:Gem::Version
154
212
  version: '5.18'
213
+ - - "<"
214
+ - !ruby/object:Gem::Version
215
+ version: '7'
155
216
  - !ruby/object:Gem::Dependency
156
217
  name: mocha
157
218
  requirement: !ruby/object:Gem::Requirement
158
219
  requirements:
159
- - - "~>"
220
+ - - ">="
160
221
  - !ruby/object:Gem::Version
161
- version: '1.2'
222
+ version: '2.1'
223
+ - - "<"
224
+ - !ruby/object:Gem::Version
225
+ version: '4'
162
226
  type: :development
163
227
  prerelease: false
164
228
  version_requirements: !ruby/object:Gem::Requirement
165
229
  requirements:
166
- - - "~>"
230
+ - - ">="
167
231
  - !ruby/object:Gem::Version
168
- version: '1.2'
232
+ version: '2.1'
233
+ - - "<"
234
+ - !ruby/object:Gem::Version
235
+ version: '4'
169
236
  - !ruby/object:Gem::Dependency
170
237
  name: pry
171
238
  requirement: !ruby/object:Gem::Requirement
172
239
  requirements:
173
240
  - - "~>"
174
241
  - !ruby/object:Gem::Version
175
- version: 0.14.2
242
+ version: '0.15'
176
243
  type: :development
177
244
  prerelease: false
178
245
  version_requirements: !ruby/object:Gem::Requirement
179
246
  requirements:
180
247
  - - "~>"
181
248
  - !ruby/object:Gem::Version
182
- version: 0.14.2
249
+ version: '0.15'
183
250
  - !ruby/object:Gem::Dependency
184
251
  name: rake
185
252
  requirement: !ruby/object:Gem::Requirement
@@ -200,84 +267,152 @@ dependencies:
200
267
  requirements:
201
268
  - - "~>"
202
269
  - !ruby/object:Gem::Version
203
- version: 1.48.0
270
+ version: 1.86.0
204
271
  type: :development
205
272
  prerelease: false
206
273
  version_requirements: !ruby/object:Gem::Requirement
207
274
  requirements:
208
275
  - - "~>"
209
276
  - !ruby/object:Gem::Version
210
- version: 1.48.0
277
+ version: 1.86.0
211
278
  - !ruby/object:Gem::Dependency
212
279
  name: rubocop-minitest
213
280
  requirement: !ruby/object:Gem::Requirement
214
281
  requirements:
215
282
  - - "~>"
216
283
  - !ruby/object:Gem::Version
217
- version: 0.29.0
284
+ version: 0.39.1
218
285
  type: :development
219
286
  prerelease: false
220
287
  version_requirements: !ruby/object:Gem::Requirement
221
288
  requirements:
222
289
  - - "~>"
223
290
  - !ruby/object:Gem::Version
224
- version: 0.29.0
291
+ version: 0.39.1
225
292
  - !ruby/object:Gem::Dependency
226
293
  name: rubocop-rake
227
294
  requirement: !ruby/object:Gem::Requirement
228
295
  requirements:
229
296
  - - "~>"
230
297
  - !ruby/object:Gem::Version
231
- version: 0.6.0
298
+ version: 0.7.0
299
+ type: :development
300
+ prerelease: false
301
+ version_requirements: !ruby/object:Gem::Requirement
302
+ requirements:
303
+ - - "~>"
304
+ - !ruby/object:Gem::Version
305
+ version: 0.7.0
306
+ - !ruby/object:Gem::Dependency
307
+ name: rubocop-sequel
308
+ requirement: !ruby/object:Gem::Requirement
309
+ requirements:
310
+ - - "~>"
311
+ - !ruby/object:Gem::Version
312
+ version: 0.4.0
232
313
  type: :development
233
314
  prerelease: false
234
315
  version_requirements: !ruby/object:Gem::Requirement
235
316
  requirements:
236
317
  - - "~>"
237
318
  - !ruby/object:Gem::Version
238
- version: 0.6.0
319
+ version: 0.4.0
239
320
  - !ruby/object:Gem::Dependency
240
321
  name: simplecov
241
322
  requirement: !ruby/object:Gem::Requirement
242
323
  requirements:
243
324
  - - "~>"
244
325
  - !ruby/object:Gem::Version
245
- version: 0.22.0
326
+ version: '0.22'
246
327
  type: :development
247
328
  prerelease: false
248
329
  version_requirements: !ruby/object:Gem::Requirement
249
330
  requirements:
250
331
  - - "~>"
251
332
  - !ruby/object:Gem::Version
252
- version: 0.22.0
333
+ version: '0.22'
334
+ - !ruby/object:Gem::Dependency
335
+ name: git
336
+ requirement: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - ">="
339
+ - !ruby/object:Gem::Version
340
+ version: '2.0'
341
+ - - "<"
342
+ - !ruby/object:Gem::Version
343
+ version: '5'
344
+ type: :development
345
+ prerelease: false
346
+ version_requirements: !ruby/object:Gem::Requirement
347
+ requirements:
348
+ - - ">="
349
+ - !ruby/object:Gem::Version
350
+ version: '2.0'
351
+ - - "<"
352
+ - !ruby/object:Gem::Version
353
+ version: '5'
253
354
  - !ruby/object:Gem::Dependency
254
- name: simplecov-cobertura
355
+ name: net-scp
255
356
  requirement: !ruby/object:Gem::Requirement
256
357
  requirements:
257
358
  - - "~>"
258
359
  - !ruby/object:Gem::Version
259
- version: 2.1.0
360
+ version: '4.1'
260
361
  type: :development
261
362
  prerelease: false
262
363
  version_requirements: !ruby/object:Gem::Requirement
263
364
  requirements:
264
365
  - - "~>"
265
366
  - !ruby/object:Gem::Version
266
- version: 2.1.0
367
+ version: '4.1'
267
368
  - !ruby/object:Gem::Dependency
268
- name: simplecov-html
369
+ name: net-tftp
269
370
  requirement: !ruby/object:Gem::Requirement
270
371
  requirements:
271
372
  - - "~>"
272
373
  - !ruby/object:Gem::Version
273
- version: 0.12.3
374
+ version: 0.1.0
274
375
  type: :development
275
376
  prerelease: false
276
377
  version_requirements: !ruby/object:Gem::Requirement
277
378
  requirements:
278
379
  - - "~>"
279
380
  - !ruby/object:Gem::Version
280
- version: 0.12.3
381
+ version: 0.1.0
382
+ - !ruby/object:Gem::Dependency
383
+ name: oxidized-web
384
+ requirement: !ruby/object:Gem::Requirement
385
+ requirements:
386
+ - - ">="
387
+ - !ruby/object:Gem::Version
388
+ version: 0.17.1
389
+ type: :development
390
+ prerelease: false
391
+ version_requirements: !ruby/object:Gem::Requirement
392
+ requirements:
393
+ - - ">="
394
+ - !ruby/object:Gem::Version
395
+ version: 0.17.1
396
+ - !ruby/object:Gem::Dependency
397
+ name: sequel
398
+ requirement: !ruby/object:Gem::Requirement
399
+ requirements:
400
+ - - ">="
401
+ - !ruby/object:Gem::Version
402
+ version: 5.63.0
403
+ - - "<"
404
+ - !ruby/object:Gem::Version
405
+ version: '6'
406
+ type: :development
407
+ prerelease: false
408
+ version_requirements: !ruby/object:Gem::Requirement
409
+ requirements:
410
+ - - ">="
411
+ - !ruby/object:Gem::Version
412
+ version: 5.63.0
413
+ - - "<"
414
+ - !ruby/object:Gem::Version
415
+ version: '6'
281
416
  description: software to fetch configuration from network devices and store them
282
417
  email:
283
418
  - saku@ytti.fi
@@ -289,6 +424,10 @@ extensions: []
289
424
  extra_rdoc_files: []
290
425
  files:
291
426
  - ".codeclimate.yml"
427
+ - ".coderabbit.yaml"
428
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
429
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
430
+ - ".github/ISSUE_TEMPLATE/support-request.md"
292
431
  - ".github/PULL_REQUEST_TEMPLATE.md"
293
432
  - ".github/dependabot.yml"
294
433
  - ".github/workflows/codeql.yml"
@@ -299,6 +438,7 @@ files:
299
438
  - ".rubocop.yml"
300
439
  - ".rubocop_todo.yml"
301
440
  - CHANGELOG.md
441
+ - CONTRIBUTING.md
302
442
  - Dockerfile
303
443
  - Gemfile
304
444
  - LICENSE
@@ -309,14 +449,26 @@ files:
309
449
  - bin/oxidized
310
450
  - docs/Configuration.md
311
451
  - docs/Creating-Models.md
452
+ - docs/DeviceSimulation.md
453
+ - docs/Docker.md
312
454
  - docs/Hooks.md
455
+ - docs/Inputs.md
456
+ - docs/Issues.md
313
457
  - docs/Model-Notes/ADVA.md
458
+ - docs/Model-Notes/APC.md
314
459
  - docs/Model-Notes/AireOS.md
315
460
  - docs/Model-Notes/ArbOS.md
316
461
  - docs/Model-Notes/Comware.md
317
462
  - docs/Model-Notes/Cumulus.md
318
463
  - docs/Model-Notes/EOS.md
464
+ - docs/Model-Notes/EatonNetwork.md
465
+ - docs/Model-Notes/ExaLink.md
466
+ - docs/Model-Notes/FSOS.md
467
+ - docs/Model-Notes/Fortinet.md
468
+ - docs/Model-Notes/GrandstreamHT8xx.md
469
+ - docs/Model-Notes/HPEAruba.md
319
470
  - docs/Model-Notes/IOS.md
471
+ - docs/Model-Notes/IvantiConnectSecure.md
320
472
  - docs/Model-Notes/JunOS.md
321
473
  - docs/Model-Notes/LenovoNOS.md
322
474
  - docs/Model-Notes/LinksysSRW.md
@@ -324,19 +476,29 @@ files:
324
476
  - docs/Model-Notes/Netgear.md
325
477
  - docs/Model-Notes/Nokia.md
326
478
  - docs/Model-Notes/OS10.md
479
+ - docs/Model-Notes/OS6.md
327
480
  - docs/Model-Notes/PanOS_API.md
328
481
  - docs/Model-Notes/README.md
482
+ - docs/Model-Notes/RouterOS.md
483
+ - docs/Model-Notes/SikluMHTG.md
329
484
  - docs/Model-Notes/SmartAX-Huawei.md
485
+ - docs/Model-Notes/TrueNAS.md
330
486
  - docs/Model-Notes/VRP-Huawei.md
331
487
  - docs/Model-Notes/Viptela.md
332
488
  - docs/Model-Notes/XGS4600-Zyxel.md
489
+ - docs/ModelUnitTests.md
333
490
  - docs/Outputs.md
491
+ - docs/Release.md
334
492
  - docs/Ruby-API.md
335
493
  - docs/Sources.md
336
494
  - docs/Supported-OS-Types.md
337
495
  - docs/Troubleshooting.md
338
496
  - extra/auto-reload-config.runit
497
+ - extra/device2yaml.rb
339
498
  - extra/gitdiff-msteams.sh
499
+ - extra/hooks/modelrules.rb
500
+ - extra/hooks/modelrulesadvanced.rb
501
+ - extra/hooks/srcipmap.rb
340
502
  - extra/nagios_check_failing_nodes.rb
341
503
  - extra/oxidized-report-git-commits
342
504
  - extra/oxidized-ubuntu.haproxy
@@ -355,6 +517,7 @@ files:
355
517
  - extra/update-ca-certificates.runit
356
518
  - lib/oxidized.rb
357
519
  - lib/oxidized/cli.rb
520
+ - lib/oxidized/cli/support.rb
358
521
  - lib/oxidized/config.rb
359
522
  - lib/oxidized/config/vars.rb
360
523
  - lib/oxidized/core.rb
@@ -367,19 +530,25 @@ files:
367
530
  - lib/oxidized/hook/slackdiff.rb
368
531
  - lib/oxidized/hook/xmppdiff.rb
369
532
  - lib/oxidized/input/cli.rb
533
+ - lib/oxidized/input/debugtext.rb
534
+ - lib/oxidized/input/debugyaml.rb
370
535
  - lib/oxidized/input/exec.rb
371
536
  - lib/oxidized/input/ftp.rb
372
537
  - lib/oxidized/input/http.rb
373
538
  - lib/oxidized/input/input.rb
539
+ - lib/oxidized/input/scp.rb
374
540
  - lib/oxidized/input/ssh.rb
541
+ - lib/oxidized/input/sshbase.rb
375
542
  - lib/oxidized/input/telnet.rb
376
543
  - lib/oxidized/input/tftp.rb
377
544
  - lib/oxidized/job.rb
378
545
  - lib/oxidized/jobs.rb
546
+ - lib/oxidized/logger.rb
379
547
  - lib/oxidized/manager.rb
380
548
  - lib/oxidized/model/acmepacket.rb
381
549
  - lib/oxidized/model/acos.rb
382
550
  - lib/oxidized/model/acsw.rb
551
+ - lib/oxidized/model/addpack.rb
383
552
  - lib/oxidized/model/adtran.rb
384
553
  - lib/oxidized/model/adva.rb
385
554
  - lib/oxidized/model/aen.rb
@@ -393,9 +562,12 @@ files:
393
562
  - lib/oxidized/model/aoscx.rb
394
563
  - lib/oxidized/model/aosw.rb
395
564
  - lib/oxidized/model/apc_aos.rb
565
+ - lib/oxidized/model/apcaos.rb
396
566
  - lib/oxidized/model/arbos.rb
397
567
  - lib/oxidized/model/aricentiss.rb
568
+ - lib/oxidized/model/arubainstant.rb
398
569
  - lib/oxidized/model/asa.rb
570
+ - lib/oxidized/model/asternos.rb
399
571
  - lib/oxidized/model/asyncos.rb
400
572
  - lib/oxidized/model/audiocodes.rb
401
573
  - lib/oxidized/model/audiocodesmp.rb
@@ -424,30 +596,43 @@ files:
424
596
  - lib/oxidized/model/cumulus.rb
425
597
  - lib/oxidized/model/datacom.rb
426
598
  - lib/oxidized/model/dcnos.rb
599
+ - lib/oxidized/model/defacto.rb
427
600
  - lib/oxidized/model/dellx.rb
428
601
  - lib/oxidized/model/dlink.rb
602
+ - lib/oxidized/model/dlinknextgen.rb
429
603
  - lib/oxidized/model/dnos.rb
604
+ - lib/oxidized/model/dslcommands.rb
605
+ - lib/oxidized/model/dslsetup.rb
606
+ - lib/oxidized/model/eatonnetwork.rb
430
607
  - lib/oxidized/model/eciapollo.rb
431
608
  - lib/oxidized/model/edgecos.rb
432
609
  - lib/oxidized/model/edgeos.rb
433
610
  - lib/oxidized/model/edgeswitch.rb
611
+ - lib/oxidized/model/efos.rb
434
612
  - lib/oxidized/model/eltex.rb
435
613
  - lib/oxidized/model/enterasys.rb
436
614
  - lib/oxidized/model/enterasys800.rb
615
+ - lib/oxidized/model/enterprise_sonic.rb
437
616
  - lib/oxidized/model/eos.rb
617
+ - lib/oxidized/model/exalink.rb
618
+ - lib/oxidized/model/f5os.rb
438
619
  - lib/oxidized/model/fabricos.rb
439
620
  - lib/oxidized/model/fastiron.rb
440
621
  - lib/oxidized/model/fiberdriver.rb
441
622
  - lib/oxidized/model/firebrick.rb
442
623
  - lib/oxidized/model/firelinuxos.rb
443
624
  - lib/oxidized/model/firewareos.rb
625
+ - lib/oxidized/model/fortigate.rb
444
626
  - lib/oxidized/model/fortios.rb
445
627
  - lib/oxidized/model/fortiwlc.rb
628
+ - lib/oxidized/model/fsos.rb
446
629
  - lib/oxidized/model/ftos.rb
447
630
  - lib/oxidized/model/fujitsupy.rb
448
631
  - lib/oxidized/model/gaiaos.rb
632
+ - lib/oxidized/model/garderos.rb
449
633
  - lib/oxidized/model/gcombnps.rb
450
634
  - lib/oxidized/model/grandstream.rb
635
+ - lib/oxidized/model/grandstreamht8xx.rb
451
636
  - lib/oxidized/model/h3c.rb
452
637
  - lib/oxidized/model/hatteras.rb
453
638
  - lib/oxidized/model/hios.rb
@@ -457,18 +642,24 @@ files:
457
642
  - lib/oxidized/model/hpmsm.rb
458
643
  - lib/oxidized/model/ibos.rb
459
644
  - lib/oxidized/model/icotera.rb
645
+ - lib/oxidized/model/ingate.rb
460
646
  - lib/oxidized/model/ios.rb
461
647
  - lib/oxidized/model/iosxe.rb
462
648
  - lib/oxidized/model/iosxr.rb
463
649
  - lib/oxidized/model/ipos.rb
464
650
  - lib/oxidized/model/ironware.rb
465
651
  - lib/oxidized/model/isam.rb
652
+ - lib/oxidized/model/ivanti.rb
466
653
  - lib/oxidized/model/junos.rb
654
+ - lib/oxidized/model/kornfeldos.rb
467
655
  - lib/oxidized/model/lancom.rb
468
656
  - lib/oxidized/model/lenovonos.rb
469
657
  - lib/oxidized/model/linksyssrw.rb
470
658
  - lib/oxidized/model/linuxgeneric.rb
659
+ - lib/oxidized/model/macros.rb
471
660
  - lib/oxidized/model/masteros.rb
661
+ - lib/oxidized/model/mimosab11.rb
662
+ - lib/oxidized/model/ml66.rb
472
663
  - lib/oxidized/model/mlnxos.rb
473
664
  - lib/oxidized/model/model.rb
474
665
  - lib/oxidized/model/mtrlrfs.rb
@@ -480,17 +671,22 @@ files:
480
671
  - lib/oxidized/model/nodegrid.rb
481
672
  - lib/oxidized/model/nos.rb
482
673
  - lib/oxidized/model/nsxconfig.rb
674
+ - lib/oxidized/model/nsxdfw.rb
483
675
  - lib/oxidized/model/nsxfirewall.rb
484
676
  - lib/oxidized/model/nxos.rb
677
+ - lib/oxidized/model/ocnos.rb
678
+ - lib/oxidized/model/onefinity.rb
485
679
  - lib/oxidized/model/oneos.rb
486
680
  - lib/oxidized/model/openbsd.rb
487
681
  - lib/oxidized/model/opengear.rb
488
682
  - lib/oxidized/model/openwrt.rb
489
683
  - lib/oxidized/model/opnsense.rb
490
684
  - lib/oxidized/model/os10.rb
685
+ - lib/oxidized/model/os6.rb
491
686
  - lib/oxidized/model/outputs.rb
492
687
  - lib/oxidized/model/panos.rb
493
688
  - lib/oxidized/model/panos_api.rb
689
+ - lib/oxidized/model/perle.rb
494
690
  - lib/oxidized/model/pfsense.rb
495
691
  - lib/oxidized/model/planet.rb
496
692
  - lib/oxidized/model/powerconnect.rb
@@ -499,13 +695,19 @@ files:
499
695
  - lib/oxidized/model/qtech.rb
500
696
  - lib/oxidized/model/quantaos.rb
501
697
  - lib/oxidized/model/raisecom.rb
698
+ - lib/oxidized/model/rgos.rb
699
+ - lib/oxidized/model/riverbed.rb
502
700
  - lib/oxidized/model/routeros.rb
503
701
  - lib/oxidized/model/saos.rb
702
+ - lib/oxidized/model/saos10.rb
504
703
  - lib/oxidized/model/screenos.rb
505
704
  - lib/oxidized/model/sgos.rb
506
705
  - lib/oxidized/model/siklu.rb
706
+ - lib/oxidized/model/siklumhtg.rb
707
+ - lib/oxidized/model/sixwind.rb
507
708
  - lib/oxidized/model/slxos.rb
508
709
  - lib/oxidized/model/smartax.rb
710
+ - lib/oxidized/model/smartbyte.rb
509
711
  - lib/oxidized/model/smartcs.rb
510
712
  - lib/oxidized/model/sonicos.rb
511
713
  - lib/oxidized/model/speedtouch.rb
@@ -516,17 +718,20 @@ files:
516
718
  - lib/oxidized/model/swos.rb
517
719
  - lib/oxidized/model/tdre.rb
518
720
  - lib/oxidized/model/telco.rb
519
- - lib/oxidized/model/timos.rb
520
721
  - lib/oxidized/model/tmos.rb
722
+ - lib/oxidized/model/tnsr.rb
521
723
  - lib/oxidized/model/tplink.rb
522
724
  - lib/oxidized/model/trango.rb
523
725
  - lib/oxidized/model/truenas.rb
524
726
  - lib/oxidized/model/ucs.rb
727
+ - lib/oxidized/model/unifiap.rb
728
+ - lib/oxidized/model/uplinkolt.rb
525
729
  - lib/oxidized/model/viptela.rb
526
730
  - lib/oxidized/model/voltaire.rb
527
731
  - lib/oxidized/model/voss.rb
528
732
  - lib/oxidized/model/vrp.rb
529
733
  - lib/oxidized/model/vyatta.rb
734
+ - lib/oxidized/model/vyos.rb
530
735
  - lib/oxidized/model/weos.rb
531
736
  - lib/oxidized/model/xos.rb
532
737
  - lib/oxidized/model/yamaha.rb
@@ -534,8 +739,10 @@ files:
534
739
  - lib/oxidized/model/zteolt.rb
535
740
  - lib/oxidized/model/zy1308.rb
536
741
  - lib/oxidized/model/zynos.rb
742
+ - lib/oxidized/model/zynosadsl.rb
537
743
  - lib/oxidized/model/zynoscli.rb
538
744
  - lib/oxidized/model/zynosgs.rb
745
+ - lib/oxidized/model/zynosmgs.rb
539
746
  - lib/oxidized/node.rb
540
747
  - lib/oxidized/node/stats.rb
541
748
  - lib/oxidized/nodes.rb
@@ -544,8 +751,10 @@ files:
544
751
  - lib/oxidized/output/gitcrypt.rb
545
752
  - lib/oxidized/output/http.rb
546
753
  - lib/oxidized/output/output.rb
754
+ - lib/oxidized/signals.rb
547
755
  - lib/oxidized/source/csv.rb
548
756
  - lib/oxidized/source/http.rb
757
+ - lib/oxidized/source/jsonfile.rb
549
758
  - lib/oxidized/source/source.rb
550
759
  - lib/oxidized/source/sql.rb
551
760
  - lib/oxidized/version.rb
@@ -557,7 +766,6 @@ licenses:
557
766
  - Apache-2.0
558
767
  metadata:
559
768
  rubygems_mfa_required: 'true'
560
- post_install_message:
561
769
  rdoc_options: []
562
770
  require_paths:
563
771
  - lib
@@ -572,8 +780,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
572
780
  - !ruby/object:Gem::Version
573
781
  version: '0'
574
782
  requirements: []
575
- rubygems_version: 3.4.10
576
- signing_key:
783
+ rubygems_version: 3.6.7
577
784
  specification_version: 4
578
785
  summary: feeble attempt at rancid
579
786
  test_files: []
@@ -1,10 +0,0 @@
1
- # Backward compatibility shim for deprecated model `timos`.
2
- # Migrate your source from `timos` to `sros`.
3
-
4
- require_relative 'sros'
5
-
6
- TiMOS = SROS
7
-
8
- Oxidized.logger.warn "Using deprecated model timos, use sros instead."
9
-
10
- # Deprecated