change sub names so as not to collide with Dancer
This commit is contained in:
@@ -23,13 +23,13 @@ sub _set_device_generic {
|
||||
|
||||
# snmp connect using rw community
|
||||
my $info = snmp_connect_rw($ip)
|
||||
or return error("Failed to connect to device [$ip] to update $slot");
|
||||
or return job_error("Failed to connect to device [$ip] to update $slot");
|
||||
|
||||
my $method = 'set_'. $slot;
|
||||
my $rv = $info->$method($data);
|
||||
|
||||
if (!defined $rv) {
|
||||
return error(sprintf 'Failed to set %s on [%s]: %s',
|
||||
return job_error(sprintf 'Failed to set %s on [%s]: %s',
|
||||
$slot, $ip, ($info->error || ''));
|
||||
}
|
||||
|
||||
@@ -37,14 +37,14 @@ sub _set_device_generic {
|
||||
$info->clear_cache;
|
||||
my $new_data = ($info->$slot || '');
|
||||
if ($new_data ne $data) {
|
||||
return error("Verify of $slot update failed on [$ip]: $new_data");
|
||||
return job_error("Verify of $slot update failed on [$ip]: $new_data");
|
||||
}
|
||||
|
||||
# update netdisco DB
|
||||
my $device = get_device($ip);
|
||||
$device->update({$slot => $data});
|
||||
|
||||
return done("Updated $slot on [$ip] to [$data]");
|
||||
return job_done("Updated $slot on [$ip] to [$data]");
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
@@ -16,11 +16,11 @@ sub set_portcontrol {
|
||||
my ($self, $job) = @_;
|
||||
|
||||
my $port = get_port($job->device, $job->port)
|
||||
or return error(sprintf "Unknown port name [%s] on device [%s]",
|
||||
or return job_error(sprintf "Unknown port name [%s] on device [%s]",
|
||||
$job->port, $job->device);
|
||||
|
||||
my $reconfig_check = port_reconfig_check($port);
|
||||
return error("Cannot alter port: $reconfig_check")
|
||||
return job_error("Cannot alter port: $reconfig_check")
|
||||
if length $reconfig_check;
|
||||
|
||||
return _set_port_generic($job, 'up_admin');
|
||||
@@ -30,15 +30,15 @@ sub set_vlan {
|
||||
my ($self, $job) = @_;
|
||||
|
||||
my $port = get_port($job->device, $job->port)
|
||||
or return error(sprintf "Unknown port name [%s] on device [%s]",
|
||||
or return job_error(sprintf "Unknown port name [%s] on device [%s]",
|
||||
$job->port, $job->device);
|
||||
|
||||
my $port_reconfig_check = port_reconfig_check($port);
|
||||
return error("Cannot alter port: $port_reconfig_check")
|
||||
return job_error("Cannot alter port: $port_reconfig_check")
|
||||
if length $port_reconfig_check;
|
||||
|
||||
my $vlan_reconfig_check = vlan_reconfig_check($port);
|
||||
return error("Cannot alter vlan: $vlan_reconfig_check")
|
||||
return job_error("Cannot alter vlan: $vlan_reconfig_check")
|
||||
if length $vlan_reconfig_check;
|
||||
|
||||
return _set_port_generic($job, 'vlan');
|
||||
@@ -53,20 +53,20 @@ sub _set_port_generic {
|
||||
(my $data = $job->subaction) =~ s/-\w+//;
|
||||
|
||||
my $port = get_port($ip, $pn)
|
||||
or return error("Unknown port name [$pn] on device [$ip]");
|
||||
or return job_error("Unknown port name [$pn] on device [$ip]");
|
||||
|
||||
# snmp connect using rw community
|
||||
my $info = snmp_connect_rw($ip)
|
||||
or return error("Failed to connect to device [$ip] to control port");
|
||||
or return job_error("Failed to connect to device [$ip] to control port");
|
||||
|
||||
my $iid = get_iid($info, $port)
|
||||
or return error("Failed to get port ID for [$pn] from [$ip]");
|
||||
or return job_error("Failed to get port ID for [$pn] from [$ip]");
|
||||
|
||||
my $method = 'set_i_'. $slot;
|
||||
my $rv = $info->$method($data, $iid);
|
||||
|
||||
if (!defined $rv) {
|
||||
return error(sprintf 'Failed to set [%s] %s to [%s] on [%s]: %s',
|
||||
return job_error(sprintf 'Failed to set [%s] %s to [%s] on [%s]: %s',
|
||||
$pn, $slot, $data, $ip, ($info->error || ''));
|
||||
}
|
||||
|
||||
@@ -75,27 +75,27 @@ sub _set_port_generic {
|
||||
my $check_method = 'i_'. $slot;
|
||||
my $state = ($info->$check_method($iid) || '');
|
||||
if (ref {} ne ref $state or $state->{$iid} ne $data) {
|
||||
return error("Verify of [$pn] $slot failed on [$ip]");
|
||||
return job_error("Verify of [$pn] $slot failed on [$ip]");
|
||||
}
|
||||
|
||||
# update netdisco DB
|
||||
$port->update({$column => $data});
|
||||
|
||||
return done("Updated [$pn] $slot status on [$ip] to [$data]");
|
||||
return job_done("Updated [$pn] $slot status on [$ip] to [$data]");
|
||||
}
|
||||
|
||||
sub set_power {
|
||||
my ($self, $job) = @_;
|
||||
|
||||
my $port = get_port($job->device, $job->port)
|
||||
or return error(sprintf "Unknown port name [%s] on device [%s]",
|
||||
or return job_error(sprintf "Unknown port name [%s] on device [%s]",
|
||||
$job->port, $job->device);
|
||||
|
||||
return error("No PoE service on port [%s] on device [%s]")
|
||||
return job_error("No PoE service on port [%s] on device [%s]")
|
||||
unless $port->power;
|
||||
|
||||
my $reconfig_check = port_reconfig_check($port);
|
||||
return error("Cannot alter port: $reconfig_check")
|
||||
return job_error("Cannot alter port: $reconfig_check")
|
||||
if length $reconfig_check;
|
||||
|
||||
|
||||
@@ -105,15 +105,15 @@ sub set_power {
|
||||
|
||||
# snmp connect using rw community
|
||||
my $info = snmp_connect_rw($ip)
|
||||
or return error("Failed to connect to device [$ip] to control port");
|
||||
or return job_error("Failed to connect to device [$ip] to control port");
|
||||
|
||||
my $powerid = get_powerid($info, $port)
|
||||
or return error("Failed to get power ID for [$pn] from [$ip]");
|
||||
or return job_error("Failed to get power ID for [$pn] from [$ip]");
|
||||
|
||||
my $rv = $info->set_peth_port_admin($data, $powerid);
|
||||
|
||||
if (!defined $rv) {
|
||||
return error(sprintf 'Failed to set [%s] power to [%s] on [%s]: %s',
|
||||
return job_error(sprintf 'Failed to set [%s] power to [%s] on [%s]: %s',
|
||||
$pn, $data, $ip, ($info->error || ''));
|
||||
}
|
||||
|
||||
@@ -121,7 +121,7 @@ sub set_power {
|
||||
$info->clear_cache;
|
||||
my $state = ($info->peth_port_admin($powerid) || '');
|
||||
if (ref {} ne ref $state or $state->{$powerid} ne $data) {
|
||||
return error("Verify of [$pn] power failed on [$ip]");
|
||||
return job_error("Verify of [$pn] power failed on [$ip]");
|
||||
}
|
||||
|
||||
# update netdisco DB
|
||||
@@ -130,7 +130,7 @@ sub set_power {
|
||||
status => ($data eq 'false' ? 'disabled' : 'searching'),
|
||||
});
|
||||
|
||||
return done("Updated [$pn] power status on [$ip] to [$data]");
|
||||
return job_done("Updated [$pn] power status on [$ip] to [$data]");
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
@@ -4,10 +4,10 @@ package App::Netdisco::Daemon::Worker::Interactive::Util;
|
||||
|
||||
use base 'Exporter';
|
||||
our @EXPORT = ();
|
||||
our @EXPORT_OK = qw/ done error /;
|
||||
our @EXPORT_OK = qw/ job_done job_error /;
|
||||
our %EXPORT_TAGS = (all => \@EXPORT_OK);
|
||||
|
||||
sub done { return ('done', shift) }
|
||||
sub error { return ('error', shift) }
|
||||
sub job_done { return ('done', shift) }
|
||||
sub job_error { return ('error', shift) }
|
||||
|
||||
1;
|
||||
|
||||
@@ -27,7 +27,7 @@ sub refresh {
|
||||
}} ($devices->all)
|
||||
]);
|
||||
|
||||
return done("Queued discover job for all devices");
|
||||
return job_done("Queued discover job for all devices");
|
||||
}
|
||||
|
||||
sub discover {
|
||||
@@ -38,7 +38,7 @@ sub discover {
|
||||
my $snmp = snmp_connect($device);
|
||||
|
||||
if (!defined $snmp) {
|
||||
return error("Discover failed: could not SNMP connect to $host");
|
||||
return job_error("Discover failed: could not SNMP connect to $host");
|
||||
}
|
||||
|
||||
store_device($device, $snmp);
|
||||
@@ -47,7 +47,7 @@ sub discover {
|
||||
#store_power($ip, $snmp);
|
||||
#store_modules($ip, $snmp);
|
||||
|
||||
return done("Ended Discover for $host");
|
||||
return job_done("Ended Discover for $host");
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
Reference in New Issue
Block a user