Skip to content

Commit 8e747e1

Browse files
yurenkovYurenkov Mikhail
authored andcommitted
New model for KornfeldOS
1 parent 2ba0ed6 commit 8e747e1

File tree

3 files changed

+35
-0
lines changed

3 files changed

+35
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
1010
- junos: add unit test (@systeembeheerder)
1111
- apc_aos: support for scp (@robertcheramy)
1212
- config: allow model_map and group_map keys to be regexp. Fixes #3360 (@ytti)
13+
- model for Kornfeld Operating System(@yurenkov)
1314

1415
### Changed
1516
- sonicos: accept policy message. Fixes #3339 (@Steve-M-C, @robertcheramy)

docs/Supported-OS-Types.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@
116116
|IP Infusion |OcNOS |[ocnos](/lib/oxidized/model/ocnos.rb)
117117
|Juniper |JunOS |[junos](/lib/oxidized/model/junos.rb) | |[MX/QFX/EX/SRX/J Series](Model-Notes/JunOS.md)
118118
| |ScreenOS (Netscreen) |[screenos](/lib/oxidized/model/screenos.rb)
119+
|Kornfeld |KornfeldOS |[kornfeldos](/lib/oxidized/model/kornfeldos.rb)
119120
|LANCOM Systems GmbH |LCOS |[lancom](/lib/oxidized/model/lancom.rb)
120121
|Lenovo |Lenovo Network OS |[lenovonos](/lib/oxidized/model/lenovonos.rb) | |[Lenovo Network OS](Model-Notes/LenovoNOS.md)
121122
|Linkys |SRW |[linksyssrw](/lib/oxidized/model/linksyssrw.rb) | |[LinksysSRW](Model-Notes/LinksysSRW.md)

lib/oxidized/model/kornfeldos.rb

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
class KornfeldOS < Oxidized::Model
2+
using Refinements
3+
4+
# For switches running Kornfeld OS
5+
#
6+
# Tested with : Kornfeld D1156 and Kornfeld D2132
7+
8+
comment '# '
9+
10+
cmd :all do |cfg|
11+
cfg.gsub! /^% Invalid input detected at '\^' marker\.$|^\s+\^$/, ''
12+
cfg.each_line.to_a[2..-2].join
13+
end
14+
15+
cmd 'show version | except REPOSITORY | except docker | except Uptime' do |cfg|
16+
comment cfg
17+
end
18+
19+
cmd 'show platform firmware' do |cfg|
20+
comment cfg
21+
end
22+
23+
cmd 'show running-configuration' do |cfg|
24+
cfg.each_line.to_a[0..-1].join
25+
end
26+
27+
cfg :ssh do
28+
username /^Login:/
29+
password /^Password:/
30+
post_login 'terminal length 0'
31+
pre_logout 'exit'
32+
end
33+
end

0 commit comments

Comments
 (0)