Merge pull request #6320 from Icinga/fix/icinga-min-version-optional

Ensure that icinga_min_version parameter is optional
This commit is contained in:
Noah Hilverling 2018-05-18 16:30:10 +02:00 committed by GitHub
commit 5be3a20e88
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 2 deletions

View File

@ -55,8 +55,10 @@ void IcingaCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckRes
resolvers.emplace_back("command", commandObj); resolvers.emplace_back("command", commandObj);
resolvers.emplace_back("icinga", IcingaApplication::GetInstance()); resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
String missingIcingaMinVersion;
String icingaMinVersion = MacroProcessor::ResolveMacros("$icinga_min_version$", resolvers, checkable->GetLastCheckResult(), String icingaMinVersion = MacroProcessor::ResolveMacros("$icinga_min_version$", resolvers, checkable->GetLastCheckResult(),
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros); &missingIcingaMinVersion, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
if (resolvedMacros && !useResolvedMacros) if (resolvedMacros && !useResolvedMacros)
return; return;
@ -175,7 +177,7 @@ void IcingaCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckRes
/* Return an error if the version is less than specified (optional). */ /* Return an error if the version is less than specified (optional). */
String parsedAppVersion = appVersion.SubStr(1,5); String parsedAppVersion = appVersion.SubStr(1,5);
if (!icingaMinVersion.IsEmpty() && Utility::CompareVersion(icingaMinVersion, parsedAppVersion) < 0) { if (missingIcingaMinVersion.IsEmpty() && !icingaMinVersion.IsEmpty() && Utility::CompareVersion(icingaMinVersion, parsedAppVersion) < 0) {
output += "; Minimum version " + icingaMinVersion + " is not installed."; output += "; Minimum version " + icingaMinVersion + " is not installed.";
cr->SetState(ServiceCritical); cr->SetState(ServiceCritical);
} }