Sha256: 93e458fd79ee701aa9982f026bc78544b4474e7d9c446f610ea968c8191a6094
Contents?: true
Size: 1.31 KB
Versions: 1
Compression:
Stored size: 1.31 KB
Contents
class XOS < Oxidized::Model # Extreme Networks XOS prompt /^\s?\*?\s?[-\w]+\s?[-\w.~]+(:\d+)? [#>] $/ comment '# ' cmd :all do |cfg| # xos inserts leading \r characters and other trailing white space. # this deletes extraneous \r and trailing white space. cfg.each_line.to_a[1..-2].map { |line| line.delete("\r").rstrip }.join("\n") + "\n" end cmd 'show version' do |cfg| comment cfg end cmd 'show diagnostics' do |cfg| comment cfg end cmd 'show licenses' do |cfg| comment cfg end cmd 'show switch' do |cfg| cfg.gsub! /Next periodic save on.*/, '' comment cfg.each_line.reject { |line| line.match(/Time:/) || line.match(/boot/i) || line.match(/Next periodic/) }.join end cmd 'show configuration' do |cfg| cfg = cfg.each_line.reject { |line| line.match /^#(\s[\w -]+\s)(Configuration generated)/ }.join cfg end cmd 'show policy detail' do |cfg| comment cfg end cfg :telnet do username /^login:/ password /^\r*password:/ end cfg :telnet, :ssh do post_login do data = cmd 'disable clipaging session' match = data.match /^disable clipaging session\n\r?\*?\s?[-\w]+\s?[-\w.~]+(:\d+)? [#>] $/m next if match cmd 'disable clipaging' end pre_logout do send "exit\n" send "n\n" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
oxidized-0.29.0 | lib/oxidized/model/xos.rb |