)]}'
{"conf.d/ovs.yaml.example":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"b2696316880a76e3b2e15071ccf25a32c4ac37e6","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    password: password"},{"line_number":5,"context_line":"    project_name: services"},{"line_number":6,"context_line":"    username: neutron"},{"line_number":7,"context_line":"    auth_url: \u0027http://192.168.10.5:35357/\u0027"},{"line_number":8,"context_line":"    # Number of seconds to wait before updating the neutron router cache file."},{"line_number":9,"context_line":"    neutron_refresh: 14400"},{"line_number":10,"context_line":"    # Options to specify endpoint type, default to \u0027publicURL\u0027, other choices:"}],"source_content_type":"application/octet-stream","patch_set":15,"id":"1f013ff3_567a4324","line":7,"updated":"2017-05-15 09:31:05.000000000","message":"I\u0027d follow new endpoints here (a.k.a. http://192.168.10.6/identity_admin).\n\nBTW: you\u0027ve posted here 35357 as port. That points to admin endpoint. However the configuration file inside /etc/monasca/agent/conf.d have http://192.168.10.6/identity as keystone url. The problem here is that http://192.168.10.6/identity translates to port 5000.\n\nSo that is a bit misleading. I think that if you want to stay with port 35357 (as it was before) you need to have /identity_admin as part of URL inside ovs.yaml from /etc/monasca/agent/conf.d","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d2ff5c9569a2db9e403c79992572ecfa95a95ca3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    password: password"},{"line_number":5,"context_line":"    project_name: services"},{"line_number":6,"context_line":"    username: neutron"},{"line_number":7,"context_line":"    auth_url: \u0027http://192.168.10.5:35357/\u0027"},{"line_number":8,"context_line":"    # Number of seconds to wait before updating the neutron router cache file."},{"line_number":9,"context_line":"    neutron_refresh: 14400"},{"line_number":10,"context_line":"    # Options to specify endpoint type, default to \u0027publicURL\u0027, other choices:"}],"source_content_type":"application/octet-stream","patch_set":15,"id":"1f013ff3_e20d0491","line":7,"in_reply_to":"1f013ff3_567a4324","updated":"2017-05-15 14:53:01.000000000","message":"Okay, the auth_url better be consistent with nova and neutron, so i\u0027m changing it to /identity.","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"}],"docs/Libvirt.md":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"b2696316880a76e3b2e15071ccf25a32c4ac37e6","unresolved":false,"context_lines":[{"line_number":89,"context_line":"    password: pass"},{"line_number":90,"context_line":"    project_name: service"},{"line_number":91,"context_line":"    username: nova"},{"line_number":92,"context_line":"    auth_url: \u0027http://192.168.10.5:35357/v2.0\u0027"},{"line_number":93,"context_line":"    endpoint_type: \u0027publicURL\u0027"},{"line_number":94,"context_line":"    region_name: \u0027region1\u0027"},{"line_number":95,"context_line":"    cache_dir: /dev/shm"}],"source_content_type":"text/x-markdown","patch_set":15,"id":"1f013ff3_19450cb4","line":92,"updated":"2017-05-15 09:31:05.000000000","message":"Similar comment to this part as in ovs.example","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d2ff5c9569a2db9e403c79992572ecfa95a95ca3","unresolved":false,"context_lines":[{"line_number":89,"context_line":"    password: pass"},{"line_number":90,"context_line":"    project_name: service"},{"line_number":91,"context_line":"    username: nova"},{"line_number":92,"context_line":"    auth_url: \u0027http://192.168.10.5:35357/v2.0\u0027"},{"line_number":93,"context_line":"    endpoint_type: \u0027publicURL\u0027"},{"line_number":94,"context_line":"    region_name: \u0027region1\u0027"},{"line_number":95,"context_line":"    cache_dir: /dev/shm"}],"source_content_type":"text/x-markdown","patch_set":15,"id":"1f013ff3_c5f7b2f5","line":92,"in_reply_to":"1f013ff3_19450cb4","updated":"2017-05-15 14:53:01.000000000","message":"Done","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"}],"docs/Ovs.md":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"b2696316880a76e3b2e15071ccf25a32c4ac37e6","unresolved":false,"context_lines":[{"line_number":73,"context_line":"  project_name: services"},{"line_number":74,"context_line":"  username: neutron"},{"line_number":75,"context_line":"  neutron_refresh: 14400"},{"line_number":76,"context_line":"  auth_url: \u0027http://192.168.10.5:35357/\u0027"},{"line_number":77,"context_line":"  endpoint_type: \u0027publicURL\u0027"},{"line_number":78,"context_line":"  region_name: \u0027region1\u0027"},{"line_number":79,"context_line":"  cache_dir: /dev/shm"}],"source_content_type":"text/x-markdown","patch_set":15,"id":"1f013ff3_f91380b7","line":76,"updated":"2017-05-15 09:31:05.000000000","message":"Checks ovs.example for details.","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d2ff5c9569a2db9e403c79992572ecfa95a95ca3","unresolved":false,"context_lines":[{"line_number":73,"context_line":"  project_name: services"},{"line_number":74,"context_line":"  username: neutron"},{"line_number":75,"context_line":"  neutron_refresh: 14400"},{"line_number":76,"context_line":"  auth_url: \u0027http://192.168.10.5:35357/\u0027"},{"line_number":77,"context_line":"  endpoint_type: \u0027publicURL\u0027"},{"line_number":78,"context_line":"  region_name: \u0027region1\u0027"},{"line_number":79,"context_line":"  cache_dir: /dev/shm"}],"source_content_type":"text/x-markdown","patch_set":15,"id":"1f013ff3_05d7da4d","line":76,"in_reply_to":"1f013ff3_f91380b7","updated":"2017-05-15 14:53:01.000000000","message":"Done","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"}],"monasca_agent/collector/checks/utils.py":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"a70e52771df3849c837372b2c99fbb4e6926a787","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import base64"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"import keystoneclient.v2_0.client as kc"},{"line_number":6,"context_line":"from monasca_agent.common import keystone"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"1a1ced50_1ec014e0","line":5,"updated":"2017-03-20 06:29:02.000000000","message":"You should import modules, so something along \n\n  from keystoneclient.v2_0 import client as kc","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d4319aab90ac926717b5e78a527d936028a73351","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import base64"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"import keystoneclient.v2_0.client as kc"},{"line_number":6,"context_line":"from monasca_agent.common import keystone"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"dfeb2761_d8a0c3a8","line":5,"in_reply_to":"1a1ced50_1ec014e0","updated":"2017-03-31 05:33:04.000000000","message":"Done","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"bb9e4bf06f0ccfb7d082c7433af05323c463cc7f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# (C) Copyright 2015,2017 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import base64"},{"line_number":4,"context_line":"import logging"}],"source_content_type":"text/x-python","patch_set":15,"id":"1f013ff3_44986469","line":1,"updated":"2017-05-12 16:49:24.000000000","message":"Copyright ?","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d2ff5c9569a2db9e403c79992572ecfa95a95ca3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# (C) Copyright 2015,2017 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import base64"},{"line_number":4,"context_line":"import logging"}],"source_content_type":"text/x-python","patch_set":15,"id":"1f013ff3_42a8381e","line":1,"in_reply_to":"1f013ff3_44986469","updated":"2017-05-15 14:53:01.000000000","message":"Done","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"}],"monasca_agent/collector/checks_d/libvirt.py":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"362981b76cc23271925a66887bb9f18daf36b8b7","unresolved":false,"context_lines":[{"line_number":130,"context_line":"        port_cache \u003d None"},{"line_number":131,"context_line":"        netns \u003d None"},{"line_number":132,"context_line":"        # Get a list of all instances from the Nova API"},{"line_number":133,"context_line":"        from keystoneauth1.identity import v3"},{"line_number":134,"context_line":"        from keystoneauth1 import session"},{"line_number":135,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":136,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_1131beec","line":133,"updated":"2017-03-09 05:10:03.000000000","message":"Imports should be actually located on top of the file according to hacking rules. Could you move them a bit ?","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"ab4a9bf964ee9a4051eddda80d48d88163120461","unresolved":false,"context_lines":[{"line_number":130,"context_line":"        port_cache \u003d None"},{"line_number":131,"context_line":"        netns \u003d None"},{"line_number":132,"context_line":"        # Get a list of all instances from the Nova API"},{"line_number":133,"context_line":"        from keystoneauth1.identity import v3"},{"line_number":134,"context_line":"        from keystoneauth1 import session"},{"line_number":135,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":136,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_2cde6911","line":133,"in_reply_to":"9a30ddce_1131beec","updated":"2017-03-09 06:41:46.000000000","message":"Done","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"362981b76cc23271925a66887bb9f18daf36b8b7","unresolved":false,"context_lines":[{"line_number":132,"context_line":"        # Get a list of all instances from the Nova API"},{"line_number":133,"context_line":"        from keystoneauth1.identity import v3"},{"line_number":134,"context_line":"        from keystoneauth1 import session"},{"line_number":135,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":136,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":137,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":138,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_b142b23c","line":135,"updated":"2017-03-09 05:10:03.000000000","message":"Looking at this code, I think I\u0027d like to see a method (private) that returns session object. Code should be more readable after that.","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"ab4a9bf964ee9a4051eddda80d48d88163120461","unresolved":false,"context_lines":[{"line_number":132,"context_line":"        # Get a list of all instances from the Nova API"},{"line_number":133,"context_line":"        from keystoneauth1.identity import v3"},{"line_number":134,"context_line":"        from keystoneauth1 import session"},{"line_number":135,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":136,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":137,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":138,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_0cd8c51c","line":135,"in_reply_to":"9a30ddce_b142b23c","updated":"2017-03-09 06:41:46.000000000","message":"Done","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"362981b76cc23271925a66887bb9f18daf36b8b7","unresolved":false,"context_lines":[{"line_number":136,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":137,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":138,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"},{"line_number":139,"context_line":"                           user_domain_name\u003d\u0027default\u0027,"},{"line_number":140,"context_line":"                           project_domain_name\u003d\u0027default\u0027)"},{"line_number":141,"context_line":"        sess \u003d session.Session(auth\u003dauth)"},{"line_number":142,"context_line":"        nova_client \u003d client.Client("}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_d13d66bc","line":139,"updated":"2017-03-09 05:10:03.000000000","message":"I think that I\u0027d write that down sa\n\n  user_domain_name\u003dself.init_config.get(\u0027user_domain_name\u0027, \u0027default\u0027)","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"ab4a9bf964ee9a4051eddda80d48d88163120461","unresolved":false,"context_lines":[{"line_number":136,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":137,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":138,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"},{"line_number":139,"context_line":"                           user_domain_name\u003d\u0027default\u0027,"},{"line_number":140,"context_line":"                           project_domain_name\u003d\u0027default\u0027)"},{"line_number":141,"context_line":"        sess \u003d session.Session(auth\u003dauth)"},{"line_number":142,"context_line":"        nova_client \u003d client.Client("}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_2c2ca901","line":139,"in_reply_to":"9a30ddce_d13d66bc","updated":"2017-03-09 06:41:46.000000000","message":"Done","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"362981b76cc23271925a66887bb9f18daf36b8b7","unresolved":false,"context_lines":[{"line_number":137,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":138,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"},{"line_number":139,"context_line":"                           user_domain_name\u003d\u0027default\u0027,"},{"line_number":140,"context_line":"                           project_domain_name\u003d\u0027default\u0027)"},{"line_number":141,"context_line":"        sess \u003d session.Session(auth\u003dauth)"},{"line_number":142,"context_line":"        nova_client \u003d client.Client("},{"line_number":143,"context_line":"            \"2.1\", session\u003dsess,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_5178968f","line":140,"updated":"2017-03-09 05:10:03.000000000","message":"See comment above.","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"ab4a9bf964ee9a4051eddda80d48d88163120461","unresolved":false,"context_lines":[{"line_number":137,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":138,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"},{"line_number":139,"context_line":"                           user_domain_name\u003d\u0027default\u0027,"},{"line_number":140,"context_line":"                           project_domain_name\u003d\u0027default\u0027)"},{"line_number":141,"context_line":"        sess \u003d session.Session(auth\u003dauth)"},{"line_number":142,"context_line":"        nova_client \u003d client.Client("},{"line_number":143,"context_line":"            \"2.1\", session\u003dsess,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_4c2f1df6","line":140,"in_reply_to":"9a30ddce_5178968f","updated":"2017-03-09 06:41:46.000000000","message":"Done","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"362981b76cc23271925a66887bb9f18daf36b8b7","unresolved":false,"context_lines":[{"line_number":149,"context_line":"            search_opts\u003d{\u0027all_tenants\u0027: 1, \u0027host\u0027: self.hostname})"},{"line_number":150,"context_line":"        # Lay the groundwork for fetching VM IPs and network namespaces"},{"line_number":151,"context_line":"        if self.init_config.get(\u0027ping_check\u0027):"},{"line_number":152,"context_line":"            from neutronclient.v2_0 import client"},{"line_number":153,"context_line":"            nu \u003d client.Client(session\u003dsess)"},{"line_number":154,"context_line":"            port_cache \u003d nu.list_ports()[\u0027ports\u0027]"},{"line_number":155,"context_line":"            # Finding existing network namespaces is an indication that either"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_314ec26f","line":152,"updated":"2017-03-09 05:10:03.000000000","message":"same here","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"ab4a9bf964ee9a4051eddda80d48d88163120461","unresolved":false,"context_lines":[{"line_number":149,"context_line":"            search_opts\u003d{\u0027all_tenants\u0027: 1, \u0027host\u0027: self.hostname})"},{"line_number":150,"context_line":"        # Lay the groundwork for fetching VM IPs and network namespaces"},{"line_number":151,"context_line":"        if self.init_config.get(\u0027ping_check\u0027):"},{"line_number":152,"context_line":"            from neutronclient.v2_0 import client"},{"line_number":153,"context_line":"            nu \u003d client.Client(session\u003dsess)"},{"line_number":154,"context_line":"            port_cache \u003d nu.list_ports()[\u0027ports\u0027]"},{"line_number":155,"context_line":"            # Finding existing network namespaces is an indication that either"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a30ddce_cc3b0d37","line":152,"in_reply_to":"9a30ddce_314ec26f","updated":"2017-03-09 06:41:46.000000000","message":"Done","commit_id":"84cbd12737d25e82932a29f164b25ae936817fb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"ada0bb9781ac2546fbda104c28502109ea0f1630","unresolved":false,"context_lines":[{"line_number":126,"context_line":"                                return True"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"    def _get_session(self):"},{"line_number":129,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":130,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":131,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":132,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a1ff146_52e705e4","line":129,"updated":"2017-03-15 10:28:24.000000000","message":"libvirt detection plugin has identity_uri over here","commit_id":"44f91796a74d08294521fef45d362eb4e8803d29"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"ada0bb9781ac2546fbda104c28502109ea0f1630","unresolved":false,"context_lines":[{"line_number":127,"context_line":""},{"line_number":128,"context_line":"    def _get_session(self):"},{"line_number":129,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":130,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":131,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":132,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"},{"line_number":133,"context_line":"                           user_domain_name\u003dself.init_config.get("}],"source_content_type":"text/x-python","patch_set":9,"id":"3a1ff146_b2ce7958","line":130,"updated":"2017-03-15 10:28:24.000000000","message":"libvirt detection plugin has admin_user instead of username","commit_id":"44f91796a74d08294521fef45d362eb4e8803d29"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"ada0bb9781ac2546fbda104c28502109ea0f1630","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        auth \u003d v3.Password(auth_url\u003dself.init_config.get(\u0027auth_url\u0027),"},{"line_number":130,"context_line":"                           username\u003dself.init_config.get(\u0027username\u0027),"},{"line_number":131,"context_line":"                           password\u003dself.init_config.get(\u0027password\u0027),"},{"line_number":132,"context_line":"                           project_name\u003dself.init_config.get(\u0027project_name\u0027),"},{"line_number":133,"context_line":"                           user_domain_name\u003dself.init_config.get("},{"line_number":134,"context_line":"                               \u0027user_domain_name\u0027, \u0027default\u0027),"},{"line_number":135,"context_line":"                           project_domain_name\u003dself.init_config.get("}],"source_content_type":"text/x-python","patch_set":9,"id":"3a1ff146_b2f59984","line":132,"updated":"2017-03-15 10:28:24.000000000","message":"libvirt detection plugin has admin_tenant_name instead of project_name","commit_id":"44f91796a74d08294521fef45d362eb4e8803d29"}],"monasca_agent/common/keystone.py":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"a70e52771df3849c837372b2c99fbb4e6926a787","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"def get_session(config):"},{"line_number":16,"context_line":"    auth \u003d v3.Password(auth_url\u003dconfig.get(\u0027auth_url\u0027).replace(\u0027v2.0\u0027, \u0027v3\u0027),"},{"line_number":17,"context_line":"                       username\u003dconfig.get(\u0027username\u0027),"},{"line_number":18,"context_line":"                       password\u003dconfig.get(\u0027password\u0027),"},{"line_number":19,"context_line":"                       project_name\u003dconfig.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a1ced50_7e5f4841","line":16,"updated":"2017-03-20 06:29:02.000000000","message":"Why not just import v2 module if url contains v2.0 ?","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d4319aab90ac926717b5e78a527d936028a73351","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"def get_session(config):"},{"line_number":16,"context_line":"    auth \u003d v3.Password(auth_url\u003dconfig.get(\u0027auth_url\u0027).replace(\u0027v2.0\u0027, \u0027v3\u0027),"},{"line_number":17,"context_line":"                       username\u003dconfig.get(\u0027username\u0027),"},{"line_number":18,"context_line":"                       password\u003dconfig.get(\u0027password\u0027),"},{"line_number":19,"context_line":"                       project_name\u003dconfig.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"dfeb2761_78b657dc","line":16,"in_reply_to":"1a1ced50_7e5f4841","updated":"2017-03-31 05:33:04.000000000","message":"This should work when keystone endpoint is v2.0","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"32d388a771818657450c35afb42d9d92f3914b37","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"def get_session(config):"},{"line_number":16,"context_line":"    auth \u003d v3.Password(auth_url\u003dconfig.get(\u0027auth_url\u0027).replace(\u0027v2.0\u0027, \u0027v3\u0027),"},{"line_number":17,"context_line":"                       username\u003dconfig.get(\u0027username\u0027),"},{"line_number":18,"context_line":"                       password\u003dconfig.get(\u0027password\u0027),"},{"line_number":19,"context_line":"                       project_name\u003dconfig.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":14,"id":"3f044301_5511ae51","line":16,"updated":"2017-05-10 05:55:44.000000000","message":"In general that is not entirely proper fix.\nSorry for pointing that out so late, but I recently learnt that on my own.\n\nCheck here: https://review.openstack.org/#/c/463111/7/monasca_agent/common/keystone.py\n\nand tell me what you think of that.","commit_id":"70d68f6326e0b1d421d96158da1ea169a1f7abb5"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"c361f0b3935b93f39bb202bf48ac4430869158fc","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"def get_session(config):"},{"line_number":16,"context_line":"    auth \u003d v3.Password(auth_url\u003dconfig.get(\u0027auth_url\u0027).replace(\u0027v2.0\u0027, \u0027v3\u0027),"},{"line_number":17,"context_line":"                       username\u003dconfig.get(\u0027username\u0027),"},{"line_number":18,"context_line":"                       password\u003dconfig.get(\u0027password\u0027),"},{"line_number":19,"context_line":"                       project_name\u003dconfig.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":14,"id":"3f044301_7c2fca3e","line":16,"in_reply_to":"3f044301_5511ae51","updated":"2017-05-12 02:39:08.000000000","message":"Great, i\u0027ll try to use identity.Password, seems it doesn\u0027t need version in auth_url","commit_id":"70d68f6326e0b1d421d96158da1ea169a1f7abb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"b1d0d6821d69fb0a4f842bc9e9682f4798928fd3","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"def get_session(config):"},{"line_number":16,"context_line":"    auth \u003d v3.Password(auth_url\u003dconfig.get(\u0027auth_url\u0027).replace(\u0027v2.0\u0027, \u0027v3\u0027),"},{"line_number":17,"context_line":"                       username\u003dconfig.get(\u0027username\u0027),"},{"line_number":18,"context_line":"                       password\u003dconfig.get(\u0027password\u0027),"},{"line_number":19,"context_line":"                       project_name\u003dconfig.get(\u0027project_name\u0027),"}],"source_content_type":"text/x-python","patch_set":14,"id":"3f044301_825c70ed","line":16,"in_reply_to":"3f044301_7c2fca3e","updated":"2017-05-12 04:57:12.000000000","message":"Recently I posted new patch set to my change about integrating with keystone_auth. Seems that it somehow duplicates yours although the scope is different.\n\nMaybe you can incorporate some of that code (https://review.openstack.org/#/c/463111/12/monasca_agent/common/keystone.py) into your change ? I am pretty much torn apart how to proceed now ;-)\n\nLet me know what you think.","commit_id":"70d68f6326e0b1d421d96158da1ea169a1f7abb5"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"bb9e4bf06f0ccfb7d082c7433af05323c463cc7f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# (C) Copyright 2015 Hewlett Packard Enterprise Development Company LP"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import logging"},{"line_number":4,"context_line":"import six"}],"source_content_type":"text/x-python","patch_set":15,"id":"1f013ff3_64936051","line":1,"updated":"2017-05-12 16:49:24.000000000","message":"Copyright ?","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d2ff5c9569a2db9e403c79992572ecfa95a95ca3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# (C) Copyright 2015 Hewlett Packard Enterprise Development Company LP"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import logging"},{"line_number":4,"context_line":"import six"}],"source_content_type":"text/x-python","patch_set":15,"id":"1f013ff3_e5cbcea2","line":1,"in_reply_to":"1f013ff3_64936051","updated":"2017-05-15 14:53:01.000000000","message":"Done","commit_id":"352a2c0c097089c229f599de36c1ebe2771ada16"}],"monasca_setup/detection/plugins/libvirt.py":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"a70e52771df3849c837372b2c99fbb4e6926a787","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"            # Create an identity URI (again, slightly different for Devstack)"},{"line_number":122,"context_line":"            if nova_cfg.has_option(cfg_section, \u0027auth_url\u0027):"},{"line_number":123,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027auth_url\u0027))"},{"line_number":124,"context_line":"            else:"},{"line_number":125,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027identity_uri\u0027))"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"1a1ced50_1e1c9476","line":123,"updated":"2017-03-20 06:29:02.000000000","message":"I know, you just change v2.0 to v3, but shouldn\u0027t it be sufficient to just get URL as it is in nova configuration ?","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d4319aab90ac926717b5e78a527d936028a73351","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"            # Create an identity URI (again, slightly different for Devstack)"},{"line_number":122,"context_line":"            if nova_cfg.has_option(cfg_section, \u0027auth_url\u0027):"},{"line_number":123,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027auth_url\u0027))"},{"line_number":124,"context_line":"            else:"},{"line_number":125,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027identity_uri\u0027))"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"dfeb2761_98835b05","line":123,"in_reply_to":"1a1ced50_1e1c9476","updated":"2017-03-31 05:33:04.000000000","message":"the auth_url in nova doesn\u0027t contain keystone version, seems it doesn\u0027t work without version here.","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"f55c50ac64dd59feadb41074b2563383ae299dc0","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"            # Create an identity URI (again, slightly different for Devstack)"},{"line_number":122,"context_line":"            if nova_cfg.has_option(cfg_section, \u0027auth_url\u0027):"},{"line_number":123,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027auth_url\u0027))"},{"line_number":124,"context_line":"            else:"},{"line_number":125,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027identity_uri\u0027))"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"dfeb2761_b4749569","line":123,"in_reply_to":"dfeb2761_98835b05","updated":"2017-04-03 20:19:32.000000000","message":"Isn\u0027t like the urls in nova sections points to aliases of keystone deployed under WSGI ?","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"169052fb5b37bdcac4913751a6ac15f52e7e33df","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"            # Create an identity URI (again, slightly different for Devstack)"},{"line_number":122,"context_line":"            if nova_cfg.has_option(cfg_section, \u0027auth_url\u0027):"},{"line_number":123,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027auth_url\u0027))"},{"line_number":124,"context_line":"            else:"},{"line_number":125,"context_line":"                init_config[\u0027auth_url\u0027] \u003d \"{0}/v3\".format(nova_cfg.get(cfg_section, \u0027identity_uri\u0027))"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"dfeb2761_a14d43c5","line":123,"in_reply_to":"dfeb2761_b4749569","updated":"2017-04-05 01:38:29.000000000","message":"here: http://logs.openstack.org/15/356815/12/check/gate-tempest-dsvm-monasca-python-mysql-full-ubuntu-xenial-nv/4d95d47/logs/etc/nova/nova.conf.txt.gz","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"}],"monasca_setup/detection/plugins/ovs.py":[{"author":{"_account_id":16168,"name":"Tomasz Trębski","email":"kornicameister@gmail.com","username":"trebskit"},"change_message_id":"a70e52771df3849c837372b2c99fbb4e6926a787","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        if neutron_cfg.has_option(cfg_section, \u0027auth_url\u0027):"},{"line_number":136,"context_line":"            if re.match(uri_version_re, str(neutron_cfg.get(cfg_section, \u0027auth_url\u0027))):"},{"line_number":137,"context_line":"                uri_version \u003d \u0027\u0027"},{"line_number":138,"context_line":"            init_config[\u0027auth_url\u0027] \u003d \"{0}/{1}\".format(neutron_cfg.get(cfg_section, \u0027auth_url\u0027), uri_version)"},{"line_number":139,"context_line":"        else:"},{"line_number":140,"context_line":"            init_config[\u0027auth_url\u0027] \u003d \"{0}/{1}\".format(neutron_cfg.get(cfg_section, \u0027identity_uri\u0027), uri_version)"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"1a1ced50_3e131068","line":138,"updated":"2017-03-20 06:29:02.000000000","message":"I know, you just changes v2.0 to v3, but shouldn\u0027t it be sufficient to just get URL as it is in neutron configuration ?","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"d4319aab90ac926717b5e78a527d936028a73351","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        if neutron_cfg.has_option(cfg_section, \u0027auth_url\u0027):"},{"line_number":136,"context_line":"            if re.match(uri_version_re, str(neutron_cfg.get(cfg_section, \u0027auth_url\u0027))):"},{"line_number":137,"context_line":"                uri_version \u003d \u0027\u0027"},{"line_number":138,"context_line":"            init_config[\u0027auth_url\u0027] \u003d \"{0}/{1}\".format(neutron_cfg.get(cfg_section, \u0027auth_url\u0027), uri_version)"},{"line_number":139,"context_line":"        else:"},{"line_number":140,"context_line":"            init_config[\u0027auth_url\u0027] \u003d \"{0}/{1}\".format(neutron_cfg.get(cfg_section, \u0027identity_uri\u0027), uri_version)"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"dfeb2761_587dd31a","line":138,"in_reply_to":"1a1ced50_3e131068","updated":"2017-03-31 05:33:04.000000000","message":"same","commit_id":"0b0fd8a68f8b61eae71920e55fbf6fbc8a44fbf6"}]}
