From 8edbd515e7bca277d6d0c048fff9bf287aa3ad1f Mon Sep 17 00:00:00 2001 From: Christian Ramseyer Date: Thu, 19 Sep 2019 14:11:04 +0200 Subject: [PATCH] Store i_speed_admin (#650) --- lib/App/Netdisco/DB.pm | 2 +- lib/App/Netdisco/DB/Result/DevicePortProperties.pm | 2 ++ lib/App/Netdisco/Worker/Plugin/Discover/PortProperties.pm | 2 ++ share/schema_versions/App-Netdisco-DB-59-60-PostgreSQL.sql | 5 +++++ 4 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 share/schema_versions/App-Netdisco-DB-59-60-PostgreSQL.sql diff --git a/lib/App/Netdisco/DB.pm b/lib/App/Netdisco/DB.pm index 75040b9c..49a54131 100644 --- a/lib/App/Netdisco/DB.pm +++ b/lib/App/Netdisco/DB.pm @@ -11,7 +11,7 @@ __PACKAGE__->load_namespaces( ); our # try to hide from kwalitee - $VERSION = 59; # schema version used for upgrades, keep as integer + $VERSION = 60; # schema version used for upgrades, keep as integer use Path::Class; use File::ShareDir 'dist_dir'; diff --git a/lib/App/Netdisco/DB/Result/DevicePortProperties.pm b/lib/App/Netdisco/DB/Result/DevicePortProperties.pm index deff2181..589e7068 100644 --- a/lib/App/Netdisco/DB/Result/DevicePortProperties.pm +++ b/lib/App/Netdisco/DB/Result/DevicePortProperties.pm @@ -31,6 +31,8 @@ __PACKAGE__->add_columns( { data_type => "boolean", default_value => \"false", is_nullable => 1 }, "ifindex", { data_type => "bigint", is_nullable => 1 }, + "speed_admin", + { data_type => "text", is_nullable => 1 }, ); __PACKAGE__->set_primary_key("port", "ip"); diff --git a/lib/App/Netdisco/Worker/Plugin/Discover/PortProperties.pm b/lib/App/Netdisco/Worker/Plugin/Discover/PortProperties.pm index 5803cc6c..ca36c141 100644 --- a/lib/App/Netdisco/Worker/Plugin/Discover/PortProperties.pm +++ b/lib/App/Netdisco/Worker/Plugin/Discover/PortProperties.pm @@ -26,6 +26,7 @@ register_worker({ phase => 'main', driver => 'snmp' }, sub { || { map {($_->port => $_)} $device->ports->all }; my $raw_speed = $snmp->i_speed_raw || {}; + my $speed_admin = $snmp->i_speed_admin || {}; foreach my $idx (keys %$raw_speed) { my $port = $interfaces->{$idx} or next; @@ -36,6 +37,7 @@ register_worker({ phase => 'main', driver => 'snmp' }, sub { } $properties{ $port }->{raw_speed} = $raw_speed->{$idx}; + $properties{ $port }->{speed_admin} = $speed_admin->{$idx}; } my $err_cause = $snmp->i_err_disable_cause || {}; diff --git a/share/schema_versions/App-Netdisco-DB-59-60-PostgreSQL.sql b/share/schema_versions/App-Netdisco-DB-59-60-PostgreSQL.sql new file mode 100644 index 00000000..39a4f72a --- /dev/null +++ b/share/schema_versions/App-Netdisco-DB-59-60-PostgreSQL.sql @@ -0,0 +1,5 @@ +BEGIN; + +ALTER TABLE device_port_properties ADD COLUMN "speed_admin" text; + +COMMIT;