)]}'
{"cyborg/common/placement_client.py":[{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"4550414b278a3fc2831d30664dec262c56d7e045","unresolved":false,"context_lines":[{"line_number":20,"context_line":"_RPT_TPL \u003d \"/resource_providers/%s/traits\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"def _get_placement():"},{"line_number":24,"context_line":"    global _CONN"},{"line_number":25,"context_line":"    if _CONN is None:"},{"line_number":26,"context_line":"        _CONN \u003d connection.Connection(cloud\u003d\u0027devstack-admin\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_3266892b","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":18},"updated":"2019-07-29 06:47:38.000000000","message":"As we agreed in https://review.opendev.org/#/c/626057/10/cyborg/common/placement_client.py,  a placement client class should be implemented. \n\nPlease see https://review.opendev.org/#/c/626057/10/cyborg/common/placement_client.py, is it better to use the same class here?","commit_id":"ca8920a5360feb71d2de5e25d84f19a6705cfcdf"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"6ba9a75060dcf6685c5bd91128854d5acef0c53b","unresolved":false,"context_lines":[{"line_number":20,"context_line":"_RPT_TPL \u003d \"/resource_providers/%s/traits\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"def _get_placement():"},{"line_number":24,"context_line":"    global _CONN"},{"line_number":25,"context_line":"    if _CONN is None:"},{"line_number":26,"context_line":"        _CONN \u003d connection.Connection(cloud\u003d\u0027devstack-admin\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_56cbe751","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":18},"in_reply_to":"7faddb67_3266892b","updated":"2019-07-30 04:44:07.000000000","message":"Done","commit_id":"ca8920a5360feb71d2de5e25d84f19a6705cfcdf"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"df7c553b8ad7d90c9ce58a1c6b448fd82bd8e776","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def _get_rp_traits(self, rp_uuid):"},{"line_number":44,"context_line":"        placement \u003d self._client"},{"line_number":45,"context_line":"        resp \u003d placement.get(_RPT_TPL % rp_uuid, microversion\u003d\u00271.6\u0027)"},{"line_number":46,"context_line":"        if resp.status_code !\u003d 200:"},{"line_number":47,"context_line":"            raise Exception("},{"line_number":48,"context_line":"                \"Failed to get traits for rp %s: HTTP %d: %s\" %"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_f1c9bd24","line":45,"range":{"start_line":45,"start_character":29,"end_line":45,"end_character":37},"updated":"2019-07-30 07:14:24.000000000","message":"It will be more visible if we keep this string inside of this method, we will have other requests url in the future. There is no need to define all of these as global variables. We can do like https://github.com/openstack/nova/blob/master/nova/scheduler/client/report.py#L467 for example.","commit_id":"7524dddc5cbb6add9eefcb5a954174e031db6f7c"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"fccbe54a7fee6930cb19e9c690426bda42887ed7","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def _get_rp_traits(self, rp_uuid):"},{"line_number":44,"context_line":"        placement \u003d self._client"},{"line_number":45,"context_line":"        resp \u003d placement.get(_RPT_TPL % rp_uuid, microversion\u003d\u00271.6\u0027)"},{"line_number":46,"context_line":"        if resp.status_code !\u003d 200:"},{"line_number":47,"context_line":"            raise Exception("},{"line_number":48,"context_line":"                \"Failed to get traits for rp %s: HTTP %d: %s\" %"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_988977cb","line":45,"range":{"start_line":45,"start_character":29,"end_line":45,"end_character":37},"in_reply_to":"7faddb67_f1c9bd24","updated":"2019-07-31 07:26:32.000000000","message":"Done","commit_id":"7524dddc5cbb6add9eefcb5a954174e031db6f7c"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"8448a1294a25d8a6e365f88654bb1ae53f53955e","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                auth_user \u003d CONF.placement.username or default_user"},{"line_number":39,"context_line":"            except:"},{"line_number":40,"context_line":"                auth_user \u003d default_user"},{"line_number":41,"context_line":"            _CONN \u003d connection.Connection(cloud\u003dauth_user)"},{"line_number":42,"context_line":"        self._client \u003d _CONN.placement"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def _get_rp_traits(self, rp_uuid):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_776833f4","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":58},"updated":"2019-08-01 09:21:01.000000000","message":"from the https://docs.openstack.org/openstacksdk/latest/user/connection.html\nwhich method do you use to create a connection?","commit_id":"d582f73fead09cef380c49059c19ad3297c33bd4"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"cc35c9cf513483f0dc23b1d1d48f42d4e6b1f1c3","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                auth_user \u003d CONF.placement.username or default_user"},{"line_number":39,"context_line":"            except:"},{"line_number":40,"context_line":"                auth_user \u003d default_user"},{"line_number":41,"context_line":"            _CONN \u003d connection.Connection(cloud\u003dauth_user)"},{"line_number":42,"context_line":"        self._client \u003d _CONN.placement"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def _get_rp_traits(self, rp_uuid):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_9abb960d","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":58},"in_reply_to":"7faddb67_776833f4","updated":"2019-08-01 09:37:45.000000000","message":"Discuss with Xinran\nShe will fix this bug in the later patch.","commit_id":"d582f73fead09cef380c49059c19ad3297c33bd4"}]}
