diff options
-rw-r--r-- | config-db/OpenSLX/AttributeRoster.pm | 10 | ||||
-rw-r--r-- | os-plugins/OpenSLX/OSPlugin/Engine.pm | 5 |
2 files changed, 10 insertions, 5 deletions
diff --git a/config-db/OpenSLX/AttributeRoster.pm b/config-db/OpenSLX/AttributeRoster.pm index d8659899..ddd2599d 100644 --- a/config-db/OpenSLX/AttributeRoster.pm +++ b/config-db/OpenSLX/AttributeRoster.pm @@ -536,8 +536,11 @@ sub findProblematicValues next if !defined $value; # check the value against the regex of the attribute (if any) - my $attrInfo = $AttributeInfo{$key} - || die _tr('attribute "%s" is unknown!', $key); + my $attrInfo = $AttributeInfo{$key}; + if (!$attrInfo) { + push @problems, _tr('attribute "%s" is unknown!', $key); + next; + } my $regex = $attrInfo->{content_regex}; if ($regex && $value !~ $regex) { push @problems, _tr( @@ -557,8 +560,7 @@ sub findProblematicValues vlog 2, "checking attrs of plugin: $pluginName\n"; # create & start OSPlugin-engine for vendor-OS and current plugin my $engine = OpenSLX::OSPlugin::Engine->new; - $engine->initialize($pluginName, $vendorOSName); - if (!$engine->{'plugin-path'}) { + if (!$engine->initialize($pluginName, $vendorOSName)) { warn _tr( 'unable to create engine for plugin "%s"!', $pluginName ); diff --git a/os-plugins/OpenSLX/OSPlugin/Engine.pm b/os-plugins/OpenSLX/OSPlugin/Engine.pm index fff68bf1..bde1b962 100644 --- a/os-plugins/OpenSLX/OSPlugin/Engine.pm +++ b/os-plugins/OpenSLX/OSPlugin/Engine.pm @@ -530,7 +530,10 @@ sub _loadPlugin my $pluginModule = "OpenSLX::OSPlugin::$self->{'plugin-name'}"; my $plugin = instantiateClass( - $pluginModule, { pathToClass => $self->{'plugin-path'} } + $pluginModule, { + acceptMissing => 1, + pathToClass => $self->{'plugin-path'}, + } ); return if !$plugin; |