summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaku Ytti <saku@ytti.fi>2014-08-24 16:25:30 +0300
committerSaku Ytti <saku@ytti.fi>2014-08-24 16:25:30 +0300
commit5662795ca35444a3e48eea3c2d8020d63502da84 (patch)
tree47f5fbb245486cf05ec9c94b97f4b65416bcbb2b
parent0f3a828190e4278cafaa72af098d87d90d874809 (diff)
Add Brocade NOS
-rw-r--r--CHANGELOG.md5
-rw-r--r--README.md1
-rw-r--r--lib/oxidized/model/nos.rb45
3 files changed, 49 insertions, 2 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9b52beb..4660af5 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,7 @@
# 0.2.4
- - FEATURE: Cisco SMB (Nikola series VxWorks) model by @thetamind
- - FEATURE: Extreme Networks XOS model (access by sjm)
+- FEATURE: Cisco SMB (Nikola series VxWorks) model by @thetamind
+- FEATURE: Extreme Networks XOS model (access by sjm)
+- FEATURE: Brocade NOS (Network Operating System) (access by sjm)
# 0.2.3
- BUGFIX: rescue @ssh.close when far end closes disgracefully (ALU ISAM)
diff --git a/README.md b/README.md
index 2acfec6..e4f2629 100644
--- a/README.md
+++ b/README.md
@@ -19,6 +19,7 @@
* Arista EOS
* Brocade Fabric OS
* Brocade Ironware
+ * Brocade NOS (Network Operating System)
* Brocade Vyatta
* Cisco AireOS
* Cisco ASA
diff --git a/lib/oxidized/model/nos.rb b/lib/oxidized/model/nos.rb
new file mode 100644
index 0000000..c2f4319
--- /dev/null
+++ b/lib/oxidized/model/nos.rb
@@ -0,0 +1,45 @@
+class NOS < Oxidized::Model
+
+ # Brocade Network Operating System
+
+ prompt /^(?:\e\[..h)?[\w.-]+# $/
+ comment '! '
+
+ cmd :all do |cfg|
+ cfg.each_line.to_a[1..-2].join
+ end
+
+ cmd 'show version' do |cfg|
+ comment cfg
+ end
+
+ cmd 'show inventory' do |cfg|
+ comment cfg
+ end
+
+ cmd 'show license' do |cfg|
+ comment cfg
+ end
+
+ cmd 'show chassis' do |cfg|
+ comment cfg.each_line.reject { |line| line.match /Time/ }.join
+ end
+
+ cfg 'show system' do |cfg|
+ commen cfg.each_line.reject { |line| line.match /Time/ or line.match /speed/ }
+ end
+
+ cmd 'show running-config'
+
+ cfg :telnet do
+ username /^.* login: /
+ username /^Password:/
+ end
+
+ cfg :telnet, :ssh do
+ post_login 'terminal length 0'
+ #post_login 'terminal width 0'
+ pre_logout 'exit'
+ end
+
+end