summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/oxidized/model/tmos.rb48
1 files changed, 48 insertions, 0 deletions
diff --git a/lib/oxidized/model/tmos.rb b/lib/oxidized/model/tmos.rb
new file mode 100644
index 0000000..4841b98
--- /dev/null
+++ b/lib/oxidized/model/tmos.rb
@@ -0,0 +1,48 @@
+class TMOS < Oxidized::Model
+
+ comment '# '
+
+ cmd :secret do |cfg|
+ cfg.gsub!(/password (\S+)/, 'password <secret removed>')
+ cfg.gsub!(/passphrase (\S+)/, 'passphrase <secret removed>')
+ cfg.gsub!(/community (\S+)/, 'community <secret removed>')
+ cfg.gsub!(/community-name (\S+)/, 'community-name <secret removed>')
+ cfg
+ end
+
+ cmd('tmsh show sys version') { |cfg| comment cfg }
+
+ cmd('tmsh show sys software') { |cfg| comment cfg }
+
+ cmd 'tmsh show sys hardware field-fmt' do |cfg|
+ cfg.gsub!(/fan-speed (\S+)/, '')
+ cfg.gsub!(/temperature (\S+)/, '')
+ comment cfg
+ end
+
+ cmd('cat /config/bigip.license') { |cfg| comment cfg }
+
+ cmd 'tmsh list' do |cfg|
+ cfg.gsub!(/state (up|down)/, '')
+ cfg.gsub!(/errors (\d+)/, '')
+ cfg
+ end
+
+ cmd('tmsh list net route all') { |cfg| comment cfg }
+
+ cmd('/bin/ls --full-time --color=never /config/ssl/ssl.crt') { |cfg| comment cfg }
+
+ cmd('/bin/ls --full-time --color=never /config/ssl/ssl.key') { |cfg| comment cfg }
+
+ cmd 'tmsh show running-config sys db all-properties' do |cfg|
+ cfg.gsub!(/sys db configsync.localconfigtime {[^}]+}/m, '')
+ cfg.gsub!(/sys db gtm.configtime {[^}]+}/m, '')
+ cfg.gsub!(/sys db ltm.configtime {[^}]+}/m, '')
+ comment cfg
+ end
+
+ cfg :ssh do
+ exec true # don't run shell, run each command in exec channel
+ end
+
+end