)]}'
{"monasca_notification/common/utils.py":[{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"c732e168680baedadc92ec028a24655c09af11d2","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        auth_token \u003d session.get_token()"},{"line_number":161,"context_line":"        return auth_token"},{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_edccdf8a","line":163,"updated":"2018-08-07 11:51:02.000000000","message":"Please add logging.","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"8ce443d52a05db7a993f261c957afcf6956f016b","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        auth_token \u003d session.get_token()"},{"line_number":161,"context_line":"        return auth_token"},{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_3e60bba5","line":163,"in_reply_to":"3f79a3b5_30754a96","updated":"2018-08-07 13:49:22.000000000","message":"Makes sense.","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"ffd459e9d1ba5c340e8aa1bcdf778277ec735379","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        auth_token \u003d session.get_token()"},{"line_number":161,"context_line":"        return auth_token"},{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_74c96f76","line":163,"in_reply_to":"3f79a3b5_3e60bba5","updated":"2018-08-07 16:57:06.000000000","message":"Done","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"ffd459e9d1ba5c340e8aa1bcdf778277ec735379","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        auth_token \u003d session.get_token()"},{"line_number":161,"context_line":"        return auth_token"},{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_34a1b7aa","line":163,"in_reply_to":"3f79a3b5_edccdf8a","updated":"2018-08-07 16:57:06.000000000","message":"Done","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"3145411fd59eec6d9fe1dfbbbb8b49eb4fcbe13d","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        auth_token \u003d session.get_token()"},{"line_number":161,"context_line":"        return auth_token"},{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_30754a96","line":163,"in_reply_to":"3f79a3b5_edccdf8a","updated":"2018-08-07 12:26:50.000000000","message":"One more thing here, earlier I returned none here to handle both use cases i.e if token is not generated then also it will try to make POST request with None in token field.\nSo now after checking auth_enabled or not, maybe raise exception here?","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"c732e168680baedadc92ec028a24655c09af11d2","unresolved":false,"context_lines":[{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_adc6e766","line":165,"updated":"2018-08-07 11:51:02.000000000","message":"Please add logging.","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"3145411fd59eec6d9fe1dfbbbb8b49eb4fcbe13d","unresolved":false,"context_lines":[{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_b0607ad0","line":165,"in_reply_to":"3f79a3b5_adc6e766","updated":"2018-08-07 12:26:50.000000000","message":"Ditto","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"ffd459e9d1ba5c340e8aa1bcdf778277ec735379","unresolved":false,"context_lines":[{"line_number":162,"context_line":"    except (kaexception.Unauthorized, kaexception.DiscoveryFailure):"},{"line_number":163,"context_line":"        return None"},{"line_number":164,"context_line":"    except Exception:"},{"line_number":165,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_94c68b67","line":165,"in_reply_to":"3f79a3b5_adc6e766","updated":"2018-08-07 16:57:06.000000000","message":"Done","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"}],"monasca_notification/conf/keystone.py":[{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"c732e168680baedadc92ec028a24655c09af11d2","unresolved":false,"context_lines":[{"line_number":30,"context_line":"               help\u003d\u0027Username\u0027),"},{"line_number":31,"context_line":"    cfg.StrOpt(name\u003d\u0027password\u0027, default\u003d\u0027password\u0027,"},{"line_number":32,"context_line":"               help\u003d\u0027Password of identity service\u0027),"},{"line_number":33,"context_line":"    cfg.StrOpt(name\u003d\u0027project_name\u0027, default\u003d\u0027admin\u0027,"},{"line_number":34,"context_line":"               help\u003d\u0027Name of project\u0027),"},{"line_number":35,"context_line":"    cfg.StrOpt(name\u003d\u0027tenant_name\u0027, default\u003d\u0027admin\u0027,"},{"line_number":36,"context_line":"               help\u003d\u0027Tenant Name\u0027),"},{"line_number":37,"context_line":"    cfg.StrOpt(name\u003d\u0027user_domain_name\u0027, default\u003d\u0027default\u0027,"},{"line_number":38,"context_line":"               help\u003d\u0027User domain name\u0027),"},{"line_number":39,"context_line":"    cfg.StrOpt(name\u003d\u0027project_domain_name\u0027, default\u003d\u0027default\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_4d8ab31b","line":36,"range":{"start_line":33,"start_character":0,"end_line":36,"end_character":35},"updated":"2018-08-07 11:51:02.000000000","message":"Do we need both of these? I would just leave \u0027project_name\u0027.","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"ffd459e9d1ba5c340e8aa1bcdf778277ec735379","unresolved":false,"context_lines":[{"line_number":30,"context_line":"               help\u003d\u0027Username\u0027),"},{"line_number":31,"context_line":"    cfg.StrOpt(name\u003d\u0027password\u0027, default\u003d\u0027password\u0027,"},{"line_number":32,"context_line":"               help\u003d\u0027Password of identity service\u0027),"},{"line_number":33,"context_line":"    cfg.StrOpt(name\u003d\u0027project_name\u0027, default\u003d\u0027admin\u0027,"},{"line_number":34,"context_line":"               help\u003d\u0027Name of project\u0027),"},{"line_number":35,"context_line":"    cfg.StrOpt(name\u003d\u0027tenant_name\u0027, default\u003d\u0027admin\u0027,"},{"line_number":36,"context_line":"               help\u003d\u0027Tenant Name\u0027),"},{"line_number":37,"context_line":"    cfg.StrOpt(name\u003d\u0027user_domain_name\u0027, default\u003d\u0027default\u0027,"},{"line_number":38,"context_line":"               help\u003d\u0027User domain name\u0027),"},{"line_number":39,"context_line":"    cfg.StrOpt(name\u003d\u0027project_domain_name\u0027, default\u003d\u0027default\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_54a6b3c3","line":36,"range":{"start_line":33,"start_character":0,"end_line":36,"end_character":35},"in_reply_to":"3f79a3b5_4d8ab31b","updated":"2018-08-07 16:57:06.000000000","message":"Done","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"3145411fd59eec6d9fe1dfbbbb8b49eb4fcbe13d","unresolved":false,"context_lines":[{"line_number":30,"context_line":"               help\u003d\u0027Username\u0027),"},{"line_number":31,"context_line":"    cfg.StrOpt(name\u003d\u0027password\u0027, default\u003d\u0027password\u0027,"},{"line_number":32,"context_line":"               help\u003d\u0027Password of identity service\u0027),"},{"line_number":33,"context_line":"    cfg.StrOpt(name\u003d\u0027project_name\u0027, default\u003d\u0027admin\u0027,"},{"line_number":34,"context_line":"               help\u003d\u0027Name of project\u0027),"},{"line_number":35,"context_line":"    cfg.StrOpt(name\u003d\u0027tenant_name\u0027, default\u003d\u0027admin\u0027,"},{"line_number":36,"context_line":"               help\u003d\u0027Tenant Name\u0027),"},{"line_number":37,"context_line":"    cfg.StrOpt(name\u003d\u0027user_domain_name\u0027, default\u003d\u0027default\u0027,"},{"line_number":38,"context_line":"               help\u003d\u0027User domain name\u0027),"},{"line_number":39,"context_line":"    cfg.StrOpt(name\u003d\u0027project_domain_name\u0027, default\u003d\u0027default\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_f0ab52d3","line":36,"range":{"start_line":33,"start_character":0,"end_line":36,"end_character":35},"in_reply_to":"3f79a3b5_4d8ab31b","updated":"2018-08-07 12:26:50.000000000","message":"yes we can remove tenant_name.","commit_id":"9fbf49ebb6fd570c6116407091944f67ab7d49a7"}],"monasca_notification/plugins/webhook_notifier.py":[{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"36e2060610a679a0641ba599a6648cb281fd09b2","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                \u0027tenant_id\u0027: notification.tenant_id,"},{"line_number":73,"context_line":"                \u0027metrics\u0027: notification.metrics}"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        auth_token \u003d utils.get_auth_token()"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        headers \u003d {\u0027content-type\u0027: \u0027application/json\u0027,"},{"line_number":78,"context_line":"                   \u0027X-Auth-Token\u0027: auth_token}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_e13b0dc6","line":75,"updated":"2018-07-30 15:10:06.000000000","message":"This way you\u0027re adding dependency on Keystone even in cases when the request does not need authentication.\n\nI would rather prefer to add another notification type `auth_webhook_notifier`. This can be then enabled or disabled, similarly as other our plugins like Slack or Jira [1].\n\n[1] https://git.openstack.org/cgit/openstack/monasca-notification/tree/monasca_notification/types/notifiers.py#n57","commit_id":"acedc9076073c73f52e37dbb35fabe6f24593fca"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"d165fd4736f40532da573776e20135e53d81623b","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                \u0027tenant_id\u0027: notification.tenant_id,"},{"line_number":73,"context_line":"                \u0027metrics\u0027: notification.metrics}"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        auth_token \u003d utils.get_auth_token()"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        headers \u003d {\u0027content-type\u0027: \u0027application/json\u0027,"},{"line_number":78,"context_line":"                   \u0027X-Auth-Token\u0027: auth_token}"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_ee613c3b","line":75,"in_reply_to":"5f7c97a3_0b8cda36","updated":"2018-08-07 09:28:33.000000000","message":"As discussed I have made changes for initial version of keystone authentication.","commit_id":"acedc9076073c73f52e37dbb35fabe6f24593fca"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"89a6ccffc3778de3ff4cc90879238233385aede7","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                \u0027tenant_id\u0027: notification.tenant_id,"},{"line_number":73,"context_line":"                \u0027metrics\u0027: notification.metrics}"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        auth_token \u003d utils.get_auth_token()"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        headers \u003d {\u0027content-type\u0027: \u0027application/json\u0027,"},{"line_number":78,"context_line":"                   \u0027X-Auth-Token\u0027: auth_token}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_0b8cda36","line":75,"in_reply_to":"5f7c97a3_4cc77a12","updated":"2018-08-02 09:12:03.000000000","message":"Right, boolean configuration option would prevent adding hard dependency on Keystone. The inflexible thing about it is, that it would affect all defined webhook notifications. All authenticated or none. I\u0027m fine with this approach, at least in the first version.\n\nAdding new plugin wouldn\u0027t be much code duplication though. You could inherit from WebhookNotifier and after minimal refactoring add only authentication part.","commit_id":"acedc9076073c73f52e37dbb35fabe6f24593fca"},{"author":{"_account_id":25553,"name":"Akhil jain","email":"akhiljain32@gmail.com","username":"akhil"},"change_message_id":"cc6a6fb28941812d3c3107f444be24dab12cfddb","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                \u0027tenant_id\u0027: notification.tenant_id,"},{"line_number":73,"context_line":"                \u0027metrics\u0027: notification.metrics}"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        auth_token \u003d utils.get_auth_token()"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        headers \u003d {\u0027content-type\u0027: \u0027application/json\u0027,"},{"line_number":78,"context_line":"                   \u0027X-Auth-Token\u0027: auth_token}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_4cc77a12","line":75,"in_reply_to":"5f7c97a3_e13b0dc6","updated":"2018-07-31 15:34:21.000000000","message":"Just my thought! Correct me if I am wrong!\n\nWhat if we just take one CONF option as \u0027auth_required\u0027 that maybe be boolen and using if condition we can generate auth_token or bypass same?","commit_id":"acedc9076073c73f52e37dbb35fabe6f24593fca"}]}
