summaryrefslogtreecommitdiff
path: root/lib/oxidized/model/awplus.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/oxidized/model/awplus.rb')
-rw-r--r--lib/oxidized/model/awplus.rb79
1 files changed, 39 insertions, 40 deletions
diff --git a/lib/oxidized/model/awplus.rb b/lib/oxidized/model/awplus.rb
index 1d8fbcd..7c88d60 100644
--- a/lib/oxidized/model/awplus.rb
+++ b/lib/oxidized/model/awplus.rb
@@ -1,27 +1,26 @@
class AWPlus < Oxidized::Model
+ # Allied Telesis Alliedware Plus Model#
+ # https://www.alliedtelesis.com/products/software/AlliedWare-Plus
- #Allied Telesis Alliedware Plus Model#
- #https://www.alliedtelesis.com/products/software/AlliedWare-Plus
-
prompt /^(\r?[\w.@:\/-]+[#>]\s?)$/
- comment '! '
+ comment '! '
- #Avoids needing "term length 0" to display full config file.
- expect /--More--/ do |data, re|
- send ' '
- data.sub re, ''
- end
+ # Avoids needing "term length 0" to display full config file.
+ expect /--More--/ do |data, re|
+ send ' '
+ data.sub re, ''
+ end
- #Removes gibberish pager output e.g. VT100 escape codes
+ # Removes gibberish pager output e.g. VT100 escape codes
cmd :all do |cfg|
cfg.gsub! /\e\[K/, '' # example how to handle pager - cleareol EL0
cfg.gsub! /\e\[7m\e\[m/, '' # example how to handle pager - Reverse SGR7
- cfg.gsub! /\r/, '' # Filters rogue ^M - see issue #415
+ cfg.gsub! /\r/, '' # Filters rogue ^M - see issue #415
cfg.each_line.to_a[1..-2].join
end
- #Remove passwords from config file.
- #Add vars "remove_secret: true" to global oxidized config file to enable.
+ # Remove passwords from config file.
+ # Add vars "remove_secret: true" to global oxidized config file to enable.
cmd :secret do |cfg|
cfg.gsub! /^(snmp-server community).*/, '\\1 <configuration removed>'
@@ -34,52 +33,52 @@ class AWPlus < Oxidized::Model
cfg
end
- #Adds "Show system" output to start of config.
+ # Adds "Show system" output to start of config.
cmd 'Show System' do |cfg|
- comment cfg.insert(0,"--------------------------------------------------------------------------------! \n")
- #Unhash below to write a comment in the config file.
- cfg.insert(0,"Starting: Show system cmd \n")
+ comment cfg.insert(0, "--------------------------------------------------------------------------------! \n")
+ # Unhash below to write a comment in the config file.
+ cfg.insert(0, "Starting: Show system cmd \n")
cfg << "\n \nEnding: show system cmd"
comment cfg << "\n--------------------------------------------------------------------------------! \n \n"
- #Removes the following lines from "show system" in output file. This ensures oxidized diffs are meaningful.
- comment cfg.each_line.reject { |line|
- line.match /^$\n/ or #Remove blank lines in "sh sys"
- line.match /System Status\s*.*/ or
- line.match /RAM\s*:.*/ or
- line.match /Uptime\s*:.*/ or
- line.match /Flash\s*:.*/ or
- line.match /Current software\s*:.*/ or
- line.match /Software version\s*:.*/ or
- line.match /Build date\s*:.*/ }.join
+ # Removes the following lines from "show system" in output file. This ensures oxidized diffs are meaningful.
+ comment cfg.each_line.reject { |line|
+ line.match /^$\n/ or # Remove blank lines in "sh sys"
+ line.match /System Status\s*.*/ or
+ line.match /RAM\s*:.*/ or
+ line.match /Uptime\s*:.*/ or
+ line.match /Flash\s*:.*/ or
+ line.match /Current software\s*:.*/ or
+ line.match /Software version\s*:.*/ or
+ line.match /Build date\s*:.*/
+ } .join
end
-
- #Actually get the devices running config#
+
+ # Actually get the devices running config#
cmd 'show running-config' do |cfg|
cfg
end
-
- #Config required for telnet to detect username prompt
+
+ # Config required for telnet to detect username prompt
cfg :telnet do
username /login:\s/
- end
+ end
- #Main login config
- cfg :telnet, :ssh do
+ # Main login config
+ cfg :telnet, :ssh do
post_login do
if vars :enable
send "enable\n"
expect /^Password:\s/
cmd vars(:enable) + "\r\n"
else
- cmd 'enable' # Required for Priv-Exec users without enable PW to be put into "enable mode".
+ cmd 'enable' # Required for Priv-Exec users without enable PW to be put into "enable mode".
end
-# cmd 'terminal length 0' #set so the entire config is output without intervention.
+ # cmd 'terminal length 0' #set so the entire config is output without intervention.
end
pre_logout do
-# cmd 'terminal no length' #Sets term length back to default on exit.
- send "exit\r\n"
+ # cmd 'terminal no length' #Sets term length back to default on exit.
+ send "exit\r\n"
end
- end
-
+ end
end