diff options
-rw-r--r-- | README.md | 1 | ||||
-rw-r--r-- | lib/oxidized/model/comware.rb | 41 |
2 files changed, 42 insertions, 0 deletions
@@ -57,6 +57,7 @@ Oxidized is a network device configration backup tool. Its a RANCID replacment! * Extreme Networks XOS * Force10 FTOS * FortiGate FortiOS + * HP Comware (HP A-series, H3C, 3Com) * HP ProCurve * Huawei VRP * Juniper JunOS diff --git a/lib/oxidized/model/comware.rb b/lib/oxidized/model/comware.rb new file mode 100644 index 0000000..c09a128 --- /dev/null +++ b/lib/oxidized/model/comware.rb @@ -0,0 +1,41 @@ +class Comware < Oxidized::Model + # HP (A-series)/H3C/3Com Comware + + prompt /^(<[\w.-]+>)$/ + comment '# ' + + # example how to handle pager + #expect /^\s*---- More ----$/ do |data, re| + # send ' ' + # data.sub re, '' + #end + + cmd :all do |cfg| + #cfg.gsub! /^.*\e\[42D/, '' # example how to handle pager + cfg.each_line.to_a[1..-2].join + end + + cfg :telnet do + username /^Username:$/ + password /^Password:$/ + end + + cfg :telnet, :ssh do + post_login 'screen-length disable' + post_login 'undo terminal monitor' + pre_logout 'quit' + end + + cmd 'display version' do |cfg| + cfg = cfg.each_line.select {|l| not l.match /uptime/ }.join + comment cfg + end + + cmd 'display device' do |cfg| + comment cfg + end + + cmd 'display current-configuration' do |cfg| + cfg + end +end |