Remove plugins from possible notifiers
Remove plugins keyword from possible notifiers. Monasca notification was throwing a warning: "No notifiers found for plugins" if plugins section was defined in notification_types. Change-Id: I7ccacba0624322bf912bbb088ed7c993ed32db02
This commit is contained in:
parent
5de3ee9f23
commit
eb6a5a487b
@ -87,6 +87,10 @@ def config(cfg):
|
||||
else:
|
||||
log.warn("No config data for type: {}".format(ntype))
|
||||
config_with_no_notifiers = set(formatted_config.keys()) - set(configured_notifiers.keys())
|
||||
# Plugins section contains only additional plugins and should not be
|
||||
# considered as a separate plugin
|
||||
if 'plugins' in config_with_no_notifiers:
|
||||
config_with_no_notifiers.remove('plugins')
|
||||
if config_with_no_notifiers:
|
||||
log.warn("No notifiers found for {0}". format(", ".join(config_with_no_notifiers)))
|
||||
|
||||
|
@ -382,3 +382,16 @@ class TestInterface(unittest.TestCase):
|
||||
configured_plugins = ["email", "webhook", "pagerduty", "slack"]
|
||||
for plugin in notifiers.configured_notifiers:
|
||||
self.asssertIn(plugin.type in configured_plugins)
|
||||
|
||||
@mock.patch('monasca_notification.types.notifiers.log')
|
||||
def test_no_plugins_keyword_in_possible_notifiers(self, mock_log):
|
||||
mock_log.warning = self.trap.append
|
||||
config_dict = {"plugins": ["monasca_notification.plugins.slack_notifier:SlackNotifier"],
|
||||
"fake_notifier": ["monasca_notification.plugins.fake_notifier:FakeNotifier"],
|
||||
"slack": {"timeout": 5, "ca_certs": "/etc/ssl/certs/ca-certificates.crt", "insecure": False}
|
||||
}
|
||||
notifiers.init(self.statsd)
|
||||
notifiers.possible_notifiers = []
|
||||
notifiers.load_plugins(config_dict)
|
||||
notifiers.config(config_dict)
|
||||
self.assertEqual('No notifiers found for fake_notifier', mock_log.warn.call_args[0][0])
|
||||
|
Loading…
x
Reference in New Issue
Block a user