From a8b2b1fed85886e3706bf0985736eb4552ccf971 Mon Sep 17 00:00:00 2001 From: Keenan Tims Date: Mon, 31 Jul 2023 05:51:21 -0700 Subject: [PATCH 1/5] Allow dots & dashes in cumulus prompt username (#2870) * Allow dots & dashes in cumulus prompt username * Fix merge * Update changelog --- CHANGELOG.md | 1 + lib/oxidized/model/cumulus.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a1b2c1231..052ae13d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - fixed netscaler backups with hostname set #2828 (@electrocret) - Do not redirect stderr when fetching opnsense version since default shell (csh) doesn't support it (@spike77453) - Fixed fan RPM speeds included in Aruba CX diffs (@danpoltawski) +- fixed prompt for Cumulus to allow usernames with dots and dashes (@ktims) ## [0.29.1 - 2023-04-24] diff --git a/lib/oxidized/model/cumulus.rb b/lib/oxidized/model/cumulus.rb index 4d342bb83..acb7c8a92 100644 --- a/lib/oxidized/model/cumulus.rb +++ b/lib/oxidized/model/cumulus.rb @@ -1,7 +1,7 @@ class Cumulus < Oxidized::Model using Refinements - prompt /^((\w*)@(.*)):/ + prompt /^(([\w.-]*)@(.*)):/ comment '# ' # add a comment in the final conf From c9d9156cc1e26787756cb677939fcb7df7b94372 Mon Sep 17 00:00:00 2001 From: Andrew Larin <126486096+avl-dev@users.noreply.github.com> Date: Mon, 31 Jul 2023 15:52:01 +0300 Subject: [PATCH 2/5] New model for Asterfusion Network Operating System (#2836) Co-authored-by: Andrey Larin --- CHANGELOG.md | 1 + docs/Supported-OS-Types.md | 2 ++ lib/oxidized/model/asternos.rb | 23 +++++++++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 lib/oxidized/model/asternos.rb diff --git a/CHANGELOG.md b/CHANGELOG.md index 052ae13d4..207d788e7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## Added - model for D-Link cisco like CLI (@mirackle-spb) - model for Ruijie Networks RGOS devices (@spike77453) +- model for Asterfusion Network Operating System (@avl-dev) - pagination for http source (@davama) + Added ability to send mail with the Docker container diff --git a/docs/Supported-OS-Types.md b/docs/Supported-OS-Types.md index 7b42248a2..2efff373c 100644 --- a/docs/Supported-OS-Types.md +++ b/docs/Supported-OS-Types.md @@ -32,6 +32,8 @@ * Aruba * [AOS-CX](/lib/oxidized/model/aoscx.rb) * [AOSW](/lib/oxidized/model/aosw.rb) +* Asterfusion + * [AsterNOS](/lib/oxidized/model/asternos.rb) * AudioCodes * [AudioCodes](/lib/oxdized/model/audiocodes.rb) * [MediaPack MP-1xx, Mediant1000](/lib/oxdized/model/audiocodesmp.rb) diff --git a/lib/oxidized/model/asternos.rb b/lib/oxidized/model/asternos.rb new file mode 100644 index 000000000..3775482d1 --- /dev/null +++ b/lib/oxidized/model/asternos.rb @@ -0,0 +1,23 @@ +class AsterNOS < Oxidized::Model + using Refinements + + prompt /^[^\$]+\$/ + comment '# ' + + cmd :all do |cfg| + cfg = cfg.each_line.to_a[1..-2].join + end + + cmd 'show version' do |cfg| + # @model = Regexp.last_match(1) if cfg =~ /^Model: (\S+)/ + comment cfg + end + + cmd "show runningconfiguration all" + + + cfg :ssh do + # exec true + pre_logout 'exit' + end +end From efa1cb5e0238b1ccc2fdb598b053d20e7afd45e1 Mon Sep 17 00:00:00 2001 From: Dave Bell <101636305+davesbell@users.noreply.github.com> Date: Mon, 31 Jul 2023 14:08:40 +0100 Subject: [PATCH 3/5] Remove constantly updating dates from Adtran config (#2840) * Remove constantly updating dates from Adtran config * Update CHANGELOG.md --- CHANGELOG.md | 2 +- lib/oxidized/model/adtran.rb | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 207d788e7..323345847 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,9 +29,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - fixed netscaler backups with hostname set #2828 (@electrocret) - Do not redirect stderr when fetching opnsense version since default shell (csh) doesn't support it (@spike77453) - Fixed fan RPM speeds included in Aruba CX diffs (@danpoltawski) +- Remove constantly updating dates from backup of Adtran config (@davesbell) - fixed prompt for Cumulus to allow usernames with dots and dashes (@ktims) - ## [0.29.1 - 2023-04-24] ## Added diff --git a/lib/oxidized/model/adtran.rb b/lib/oxidized/model/adtran.rb index a42855500..90cd0c580 100644 --- a/lib/oxidized/model/adtran.rb +++ b/lib/oxidized/model/adtran.rb @@ -14,7 +14,11 @@ class Adtran < Oxidized::Model cfg end - cmd 'show running-config' + cmd 'show running-config' do |cfg| + # Strip out line at the top which displays the current date/time + # ! Created : Mon Jun 26 2023 10:07:07 + cfg.gsub! /! Createds+:.*\n/, '' + end cfg :ssh do if vars :enable From ebf1423918930e32925186449c5b698b448f91cb Mon Sep 17 00:00:00 2001 From: Janno Schouwenburg Date: Mon, 31 Jul 2023 15:08:59 +0200 Subject: [PATCH 4/5] Ericsson Minilink 6600 support (#2893) --- CHANGELOG.md | 1 + docs/Supported-OS-Types.md | 1 + lib/oxidized/model/ml66.rb | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 lib/oxidized/model/ml66.rb diff --git a/CHANGELOG.md b/CHANGELOG.md index 323345847..62f2a2fa6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - model for Ruijie Networks RGOS devices (@spike77453) - model for Asterfusion Network Operating System (@avl-dev) - pagination for http source (@davama) +- model for Ericsson Miniling 6600 series (@schouwenburg) + Added ability to send mail with the Docker container + Documentation to send mail with hooks diff --git a/docs/Supported-OS-Types.md b/docs/Supported-OS-Types.md index 2efff373c..925d5ea9c 100644 --- a/docs/Supported-OS-Types.md +++ b/docs/Supported-OS-Types.md @@ -119,6 +119,7 @@ * [Eltex](/lib/oxidized/model/eltex.rb) * Ericsson/Redback * [IPOS (former SEOS)](/lib/oxidized/model/ipos.rb) + * [Minilink 6600](/lib/oxidized/model/ml66.rb) * Extreme Networks * [Enterasys B/C-Series](/lib/oxidized/model/enterasys.rb) * [Enterasys 800-Series](/lib/oxidized/model/enterasys800.rb) diff --git a/lib/oxidized/model/ml66.rb b/lib/oxidized/model/ml66.rb new file mode 100644 index 000000000..86b80fe0d --- /dev/null +++ b/lib/oxidized/model/ml66.rb @@ -0,0 +1,34 @@ +class ML66 < Oxidized::Model + comment '! ' + prompt /.*#/ + + expect /User:.*$/ do |data, re| + send "admin_user\n" + send "#{@node.auth[:password]}\n" + data.sub re, '' + end + + cmd 'show version' do |cfg| + cfg.gsub! /Uptime/, '' + comment cfg + end + + cmd 'show inventory hw all' do |cfg| + comment cfg + end + + cmd 'show inventory sw all' do |cfg| + comment cfg + end + + cmd 'show license status all' do |cfg| + comment cfg + end + + cmd 'show running-config' + + cfg :ssh do + pre_logout 'logout' + end + +end From 1d839712796b8047e582a2c91e998f123543d0cd Mon Sep 17 00:00:00 2001 From: MichiMeyer <45043976+MichiMeyer@users.noreply.github.com> Date: Fri, 4 Aug 2023 13:39:42 +0200 Subject: [PATCH 5/5] fix adva config for restore (#2899) --- CHANGELOG.md | 1 + lib/oxidized/model/adva.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 62f2a2fa6..8891d3911 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - tp-link: fixed enable mode post login entrance (@mirackle-spb) - dlink: fixed prompt for other dlink switches, added additional uptime removal expressions (@mirackle-spb) - Collect VC info for juniper ex3400 (@ermuller) +- adva: fix config content for recovery process, collect config delta instead of current (@MichiMeyer) ## Fixed diff --git a/lib/oxidized/model/adva.rb b/lib/oxidized/model/adva.rb index 8b47acf8a..185dc9826 100644 --- a/lib/oxidized/model/adva.rb +++ b/lib/oxidized/model/adva.rb @@ -18,7 +18,7 @@ class ADVA < Oxidized::Model cfg.cut_both end - cmd 'show running-config current' do |cfg| + cmd 'show running-config delta' do |cfg| cfg.each_line.reject { |line| line.match /^Preparing configuration file.*/ }.join end