MM-22619: check for nil plugins environment (#13901)

* MM-22619: check for nil plugins environment

Check if plugins were disabled before attempting to collect metrics and emit telemetry for same.

Fixes: https://mattermost.atlassian.net/browse/MM-22619

* Update app/diagnostics_test.go
Этот коммит содержится в:
Jesse Hallam
2020-02-15 18:46:26 -04:00
коммит произвёл GitHub
родитель bd487418f7
Коммит 9a51c73f64
3 изменённых файлов: 82 добавлений и 20 удалений

Просмотреть файл

@@ -636,22 +636,23 @@ func (a *App) trackConfig() {
}
pluginsEnvironment := a.GetPluginsEnvironment()
if plugins, appErr := pluginsEnvironment.Available(); appErr != nil {
mlog.Error("Unable to add plugin versions to diagnostics", mlog.Err(appErr))
} else {
pluginConfigData["version_antivirus"] = pluginVersion(plugins, "antivirus")
pluginConfigData["version_autolink"] = pluginVersion(plugins, "mattermost-autolink")
pluginConfigData["version_aws_sns"] = pluginVersion(plugins, "com.mattermost.aws-sns")
pluginConfigData["version_custom_user_attributes"] = pluginVersion(plugins, "com.mattermost.custom-attributes")
pluginConfigData["version_github"] = pluginVersion(plugins, "github")
pluginConfigData["version_gitlab"] = pluginVersion(plugins, "com.github.manland.mattermost-plugin-gitlab")
pluginConfigData["version_jenkins"] = pluginVersion(plugins, "jenkins")
pluginConfigData["version_jira"] = pluginVersion(plugins, "jira")
pluginConfigData["version_nps"] = pluginVersion(plugins, "com.mattermost.nps")
pluginConfigData["version_webex"] = pluginVersion(plugins, "com.mattermost.webex")
pluginConfigData["version_welcome_bot"] = pluginVersion(plugins, "com.mattermost.welcomebot")
pluginConfigData["version_zoom"] = pluginVersion(plugins, "zoom")
if pluginsEnvironment != nil {
if plugins, appErr := pluginsEnvironment.Available(); appErr != nil {
mlog.Error("Unable to add plugin versions to diagnostics", mlog.Err(appErr))
} else {
pluginConfigData["version_antivirus"] = pluginVersion(plugins, "antivirus")
pluginConfigData["version_autolink"] = pluginVersion(plugins, "mattermost-autolink")
pluginConfigData["version_aws_sns"] = pluginVersion(plugins, "com.mattermost.aws-sns")
pluginConfigData["version_custom_user_attributes"] = pluginVersion(plugins, "com.mattermost.custom-attributes")
pluginConfigData["version_github"] = pluginVersion(plugins, "github")
pluginConfigData["version_gitlab"] = pluginVersion(plugins, "com.github.manland.mattermost-plugin-gitlab")
pluginConfigData["version_jenkins"] = pluginVersion(plugins, "jenkins")
pluginConfigData["version_jira"] = pluginVersion(plugins, "jira")
pluginConfigData["version_nps"] = pluginVersion(plugins, "com.mattermost.nps")
pluginConfigData["version_webex"] = pluginVersion(plugins, "com.mattermost.webex")
pluginConfigData["version_welcome_bot"] = pluginVersion(plugins, "com.mattermost.welcomebot")
pluginConfigData["version_zoom"] = pluginVersion(plugins, "zoom")
}
}
a.SendDiagnostic(TRACK_CONFIG_PLUGIN, pluginConfigData)