Sha256: 046e3418adf6b78b2e92bf77c4f546c6308e2e383ae0082aead1a0cbced2d390

Contents?: true

Size: 1.29 KB

Versions: 5

Compression:

Stored size: 1.29 KB

Contents

class AOS7 < Oxidized::Model
  # Alcatel-Lucent Operating System Version 7 (Linux based)
  # used in OmniSwitch 6900/10k

  comment  '! '

  cmd :all do |cfg, cmdstring|
    new_cfg = comment "COMMAND: #{cmdstring}\n"
    new_cfg << cfg.cut_both
  end

  cmd 'show system' do |cfg|
    cfg = cfg.each_line.find { |line| line.match 'Description' }
    comment cfg.to_s.strip + "\n"
  end

  cmd 'show chassis' do |cfg|
    # check for virtual chassis existence
    @slave_vcids = cfg.scan(/Chassis ID (\d+) \(Slave\)/).flatten
    @master_vcid = Regexp.last_match(1) if cfg =~ /Chassis ID (\d+) \(Master\)/
    comment cfg
  end

  cmd 'show hardware-info' do |cfg|
    comment cfg
  end

  cmd 'show running-directory' do |cfg|
    comment cfg
  end

  cmd 'show configuration snapshot' do |cfg|
    cfg
  end

  pre do
    cfg = []
    if @master_vcid
      # add slave VC boot config as comment
      @slave_vcids.each do |id|
        cfg << comment("vc_boot.cfg for slave chassis #{id}")
        cfg << comment(cmd("show configuration vcm-snapshot chassis-id #{id}"))
      end
      cfg << cmd("show configuration vcm-snapshot chassis-id #{@master_vcid}")
    end
    cfg.join "\n"
  end

  cfg :telnet do
    username /^login : /
    password /^Password : /
  end

  cfg :telnet, :ssh do
    pre_logout 'exit'
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
oxidized-0.27.0 lib/oxidized/model/aos7.rb
oxidized-0.26.3 lib/oxidized/model/aos7.rb
oxidized-0.26.2 lib/oxidized/model/aos7.rb
oxidized-0.26.1 lib/oxidized/model/aos7.rb
oxidized-0.26.0 lib/oxidized/model/aos7.rb