allow pseudo devices to arpnip

This commit is contained in:
Oliver Gorwits
2019-03-19 13:05:47 +00:00
parent dafed30742
commit 4ef5691bb5
5 changed files with 9 additions and 7 deletions

View File

@@ -11,7 +11,7 @@ __PACKAGE__->load_namespaces(
);
our # try to hide from kwalitee
$VERSION = 55; # schema version used for upgrades, keep as integer
$VERSION = 56; # schema version used for upgrades, keep as integer
use Path::Class;
use File::ShareDir 'dist_dir';

View File

@@ -36,6 +36,7 @@ ajax '/ajax/control/admin/pseudodevice/add' => require_role admin => sub {
ip => param('ip'),
dns => param('dns'),
vendor => 'netdisco',
layers => '00000100',
last_discover => \'now()',
});
return unless $device;

View File

@@ -16,9 +16,6 @@ register_worker({ phase => 'check' }, sub {
return Status->error("arpnip skipped: $device not yet discovered")
unless $device->in_storage;
return Status->defer("arpnip skipped: $device is pseudo-device")
if $device->is_pseudo;
return Status->defer("arpnip skipped: $device has no layer 3 capability")
unless $device->has_layer(3);

View File

@@ -11,9 +11,8 @@ register_worker({ phase => 'main' }, sub {
my ($job, $workerconf) = @_;
my %queued = map {$_ => 1} jq_queued('arpnip');
my @devices = schema('netdisco')->resultset('Device')->search({
-or => [ 'vendor' => undef, 'vendor' => { '!=' => 'netdisco' }],
})->has_layer('3')->get_column('ip')->all;
my @devices = schema('netdisco')->resultset('Device')
->has_layer('3')->get_column('ip')->all;
my @filtered_devices = grep {!exists $queued{$_}} @devices;
jq_insert([

View File

@@ -0,0 +1,5 @@
BEGIN;
UPDATE device SET layers = '00000100' WHERE vendor = 'netdisco';
COMMIT;