diff --git a/src/io/openshift/Plugins.groovy b/src/io/openshift/Plugins.groovy index ffdf8bb..b489d3e 100644 --- a/src/io/openshift/Plugins.groovy +++ b/src/io/openshift/Plugins.groovy @@ -2,12 +2,15 @@ package io.openshift import io.openshift.plugins.analytics import io.openshift.Globals +import static io.openshift.Utils.pluginAvailable class Plugins implements Serializable { static def register() { // analytics plugins is enabled by default Globals.plugins["analytics"] = Globals.plugins["analytics"] ?: [disabled: false] - if (Globals.plugins["analytics"].disabled ?: false) { + + def disabled = Globals.plugins["analytics"].disabled ?: false + if (disabled || !pluginAvailable("bayesian")) { return } new analytics().register() diff --git a/src/io/openshift/Utils.groovy b/src/io/openshift/Utils.groovy index e867a96..aba8bc9 100644 --- a/src/io/openshift/Utils.groovy +++ b/src/io/openshift/Utils.groovy @@ -122,4 +122,9 @@ class Utils { } } + // return true if given pluginName is available in Jenkins otherwise false + static boolean pluginAvailable(pluginName) { + return jenkins.model.Jenkins.instance.getPluginManager().getPlugin(pluginName) ? true : false + } + }