)]}'
{"nova/image/glance.py":[{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"4affd87dca183585388088cd9e169a50581c3f34","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    }"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"def _create_glance_client(context, host, port, use_ssl, version\u003d1):"},{"line_number":128,"context_line":"    \"\"\"Instantiate a new glanceclient.Client object.\"\"\""},{"line_number":129,"context_line":"    params \u003d {}"},{"line_number":130,"context_line":"    if use_ssl:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a740942_f4653344","side":"PARENT","line":127,"updated":"2015-12-09 10:59:31.000000000","message":"This method can now be removed","commit_id":"fec9e8061358e288f6e0823db72896f7d7900352"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"82cac54c04cf16488256c2721a3066fcd85b977d","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    }"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"def _create_glance_client(context, host, port, use_ssl, version\u003d1):"},{"line_number":128,"context_line":"    \"\"\"Instantiate a new glanceclient.Client object.\"\"\""},{"line_number":129,"context_line":"    params \u003d {}"},{"line_number":130,"context_line":"    if use_ssl:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a740942_35f16f96","side":"PARENT","line":127,"in_reply_to":"7a740942_b444881b","updated":"2015-12-09 13:43:17.000000000","message":"Instead of create new method we should simply keep this one and update it to handle endpoint\u0027s object. As you want, if you are not going to address my suggestion I will remove -1.","commit_id":"fec9e8061358e288f6e0823db72896f7d7900352"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"90057dd224ab19019155b3c856e483a5bd6a81c5","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    }"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"def _create_glance_client(context, host, port, use_ssl, version\u003d1):"},{"line_number":128,"context_line":"    \"\"\"Instantiate a new glanceclient.Client object.\"\"\""},{"line_number":129,"context_line":"    params \u003d {}"},{"line_number":130,"context_line":"    if use_ssl:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a740942_b444881b","side":"PARENT","line":127,"in_reply_to":"7a740942_f4653344","updated":"2015-12-09 11:49:00.000000000","message":"yes, it is at the top of the stack, I can merge this back if you like.","commit_id":"fec9e8061358e288f6e0823db72896f7d7900352"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"4affd87dca183585388088cd9e169a50581c3f34","unresolved":false,"context_lines":[{"line_number":273,"context_line":"                LOG.exception(_LE(\"Error contacting glance server \""},{"line_number":274,"context_line":"                                  \"\u0027%(server)s\u0027 for \u0027%(method)s\u0027, \""},{"line_number":275,"context_line":"                                  \"%(extra)s.\"),"},{"line_number":276,"context_line":"                              {\u0027server\u0027: self.api_server,"},{"line_number":277,"context_line":"                               \u0027method\u0027: method, \u0027extra\u0027: extra})"},{"line_number":278,"context_line":"                if attempt \u003d\u003d num_attempts:"},{"line_number":279,"context_line":"                    raise exception.GlanceConnectionFailed("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a740942_ee29df8a","line":276,"updated":"2015-12-09 10:59:31.000000000","message":"No, api_server is a list of endpoints and here we are contacting one of them. To make this log useful you should to retrieve and format only endpoint used.","commit_id":"92dc0b5def1c63fd08c3e60af8772f02d87d5aa1"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"82cac54c04cf16488256c2721a3066fcd85b977d","unresolved":false,"context_lines":[{"line_number":273,"context_line":"                LOG.exception(_LE(\"Error contacting glance server \""},{"line_number":274,"context_line":"                                  \"\u0027%(server)s\u0027 for \u0027%(method)s\u0027, \""},{"line_number":275,"context_line":"                                  \"%(extra)s.\"),"},{"line_number":276,"context_line":"                              {\u0027server\u0027: self.api_server,"},{"line_number":277,"context_line":"                               \u0027method\u0027: method, \u0027extra\u0027: extra})"},{"line_number":278,"context_line":"                if attempt \u003d\u003d num_attempts:"},{"line_number":279,"context_line":"                    raise exception.GlanceConnectionFailed("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a740942_f510c7ad","line":276,"in_reply_to":"7a740942_d40354bd","updated":"2015-12-09 13:43:17.000000000","message":"yes my mistake.","commit_id":"92dc0b5def1c63fd08c3e60af8772f02d87d5aa1"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"90057dd224ab19019155b3c856e483a5bd6a81c5","unresolved":false,"context_lines":[{"line_number":273,"context_line":"                LOG.exception(_LE(\"Error contacting glance server \""},{"line_number":274,"context_line":"                                  \"\u0027%(server)s\u0027 for \u0027%(method)s\u0027, \""},{"line_number":275,"context_line":"                                  \"%(extra)s.\"),"},{"line_number":276,"context_line":"                              {\u0027server\u0027: self.api_server,"},{"line_number":277,"context_line":"                               \u0027method\u0027: method, \u0027extra\u0027: extra})"},{"line_number":278,"context_line":"                if attempt \u003d\u003d num_attempts:"},{"line_number":279,"context_line":"                    raise exception.GlanceConnectionFailed("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a740942_d40354bd","line":276,"in_reply_to":"7a740942_ee29df8a","updated":"2015-12-09 11:49:00.000000000","message":"self.api_server is not the list, it\u0027s the last one used, see line 244 above. self.api_servers is the list.","commit_id":"92dc0b5def1c63fd08c3e60af8772f02d87d5aa1"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"291df00abb54a7322a33bbb22836e9715124ca1b","unresolved":false,"context_lines":[{"line_number":119,"context_line":"        \u0027X-Auth-Token\u0027: getattr(context, \u0027auth_token\u0027, None),"},{"line_number":120,"context_line":"        \u0027X-User-Id\u0027: getattr(context, \u0027user\u0027, None),"},{"line_number":121,"context_line":"        \u0027X-Tenant-Id\u0027: getattr(context, \u0027tenant\u0027, None),"},{"line_number":122,"context_line":"        \u0027X-Roles\u0027: \u0027,\u0027.join(getattr(context, \u0027roles\u0027, [])),"},{"line_number":123,"context_line":"        \u0027X-Identity-Status\u0027: status,"},{"line_number":124,"context_line":"    }"},{"line_number":125,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a740942_547cdd71","line":122,"updated":"2015-12-10 22:51:53.000000000","message":"Why? When is this ever not set?","commit_id":"fe765470862f12b3d40a01d3a7e60e224d2202e3"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"66117e7be0a8f2f5708aa6969f9be5851bfbb905","unresolved":false,"context_lines":[{"line_number":119,"context_line":"        \u0027X-Auth-Token\u0027: getattr(context, \u0027auth_token\u0027, None),"},{"line_number":120,"context_line":"        \u0027X-User-Id\u0027: getattr(context, \u0027user\u0027, None),"},{"line_number":121,"context_line":"        \u0027X-Tenant-Id\u0027: getattr(context, \u0027tenant\u0027, None),"},{"line_number":122,"context_line":"        \u0027X-Roles\u0027: \u0027,\u0027.join(getattr(context, \u0027roles\u0027, [])),"},{"line_number":123,"context_line":"        \u0027X-Identity-Status\u0027: status,"},{"line_number":124,"context_line":"    }"},{"line_number":125,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a740942_4deaf575","line":122,"in_reply_to":"7a740942_547cdd71","updated":"2015-12-11 12:16:47.000000000","message":"By getting rid of the auth_strategy \u003d\u003d \u0027keystone\u0027 below it means we can get a context without roles in it. It also is consistent with the other attributes taken from the context.","commit_id":"fe765470862f12b3d40a01d3a7e60e224d2202e3"}]}
