diff options
Diffstat (limited to 'lib/oxidized/model')
-rw-r--r-- | lib/oxidized/model/eos.rb | 22 | ||||
-rw-r--r-- | lib/oxidized/model/iosxr.rb | 41 |
2 files changed, 63 insertions, 0 deletions
diff --git a/lib/oxidized/model/eos.rb b/lib/oxidized/model/eos.rb new file mode 100644 index 0000000..e6e0bf1 --- /dev/null +++ b/lib/oxidized/model/eos.rb @@ -0,0 +1,22 @@ +class EOS < Oxidized::Model + + # Arista EOS model # + # need to add telnet support here .. # + + prompt /^[^\(]+\([^\)]+\)#/ + + comment '! ' + + cmd 'show inventory | no-more' do |cfg| + comment cfg + end + + cmd 'show running-config | no-more' do |cfg| + cfg + end + + cfg :telnet, :ssh do + pre_logout 'exit' + end + +end diff --git a/lib/oxidized/model/iosxr.rb b/lib/oxidized/model/iosxr.rb new file mode 100644 index 0000000..6bad8cd --- /dev/null +++ b/lib/oxidized/model/iosxr.rb @@ -0,0 +1,41 @@ +class IOSXR < Oxidized::Model + + # IOS XR model # + + comment '! ' + + cmd :all do |cfg| + cfg.each_line.to_a[2..-2].join + end + + cmd 'show inventory' do |cfg| + comment cfg + end + + cmd 'show platform' do |cfg| + comment cfg + end + + cmd 'show running-config' do |cfg| + cfg = cfg.each_line.to_a[3..-1].join + cfg + end + + cfg :telnet do + username /^Username:/ + password /^Password:/ + end + + cfg :telnet, :ssh do + post_login 'terminal length 0' + post_login 'terminal width 0' + if CFG.vars[:enable] and CFG.vars[:enable] != '' + post_login do + send "enable\n" + send CFG.vars[:enable] + "\n" + end + end + pre_logout 'exit' + end + +end |