)]}'
{"tempest/common/rest_client.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"4e6189eeca9318f87395be38875d25fe650f1fa2","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"            if service \u003d\u003d \u0027network\u0027:"},{"line_number":165,"context_line":"                # Keystone does not return the correct endpoint for"},{"line_number":166,"context_line":"                # quantum. Handle this separately."},{"line_number":167,"context_line":"                mgmt_url \u003d (mgmt_url + self.config.network.api_version +"},{"line_number":168,"context_line":"                            \"/tenants/\" + tenant_id)"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOH%2F%2F3e0%3D","side":"PARENT","line":166,"updated":"2013-03-22 20:08:51.000000000","message":"Is this not true anymore? I wish that there was a bug associated with this comment.","commit_id":"ae99a9593560a111713e3010909beb724081c6f7"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"6033f2d1d97fb8cb5c676c702c7f52abf6be3bb3","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"            if service \u003d\u003d \u0027network\u0027:"},{"line_number":165,"context_line":"                # Keystone does not return the correct endpoint for"},{"line_number":166,"context_line":"                # quantum. Handle this separately."},{"line_number":167,"context_line":"                mgmt_url \u003d (mgmt_url + self.config.network.api_version +"},{"line_number":168,"context_line":"                            \"/tenants/\" + tenant_id)"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOH%2F%2F278%3D","side":"PARENT","line":166,"in_reply_to":"AAAAOH%2F%2F3e0%3D","updated":"2013-03-23 20:47:05.000000000","message":"This is not true any more. Keystone returns now the correct end point for the Quantum API. I documented this in bug 1159229","commit_id":"ae99a9593560a111713e3010909beb724081c6f7"}],"tempest/services/network/json/network_client.py":[{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"7f9ee769f790ad07bceffda4cbd2e81b852ba110","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                                            auth_url, tenant_name)"},{"line_number":23,"context_line":"        self.service \u003d self.config.network.catalog_type"},{"line_number":24,"context_line":"        self.version \u003d \u00272.0\u0027"},{"line_number":25,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":26,"context_line":"        self.uri_prefix \u003d \"v%s\" % (self.version)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def list_networks(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2F2j4%3D","line":25,"updated":"2013-03-24 20:28:27.000000000","message":"Is quantum able to handle the Accept header ?\n\u0027Accept\u0027: \u0027application/json\u0027","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"210af202b1c6005baa20300342def2987a1018ab","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                                            auth_url, tenant_name)"},{"line_number":23,"context_line":"        self.service \u003d self.config.network.catalog_type"},{"line_number":24,"context_line":"        self.version \u003d \u00272.0\u0027"},{"line_number":25,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":26,"context_line":"        self.uri_prefix \u003d \"v%s\" % (self.version)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def list_networks(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2FzW4%3D","line":25,"in_reply_to":"AAAAOH%2F%2F2j4%3D","updated":"2013-03-26 22:38:43.000000000","message":"I haven\u0027t tested whether Quantum is able to handle the \u0027Accept: application/json\u0027 header. What I did, though, before coding this patchset, was to see how python-quantumclient handles the format. Please go to https://github.com/openstack/python-quantumclient/blob/master/quantumclient/v2_0/client.py. As you can see in the __init__ (line 877) and do_request (line 897) methods of the Client class, I just followed the same approach used in python-quantumclient. Based on the way the python-quantumclient was written, Quantum might not be able to handle the \u0027Accept: application/json\u0027 header. I propose to move ahead with this patchset the way it is and I will investigate in the near future if we can handle format negotiation using the accept header. If I find out that the accept header works I will submit a follow up patchset","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"2602ee3ad9744c41409e43742359d8c68318a28b","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                                            auth_url, tenant_name)"},{"line_number":23,"context_line":"        self.service \u003d self.config.network.catalog_type"},{"line_number":24,"context_line":"        self.version \u003d \u00272.0\u0027"},{"line_number":25,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":26,"context_line":"        self.uri_prefix \u003d \"v%s\" % (self.version)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def list_networks(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2Fyrg%3D","line":25,"in_reply_to":"AAAAOH%2F%2Fy3M%3D","updated":"2013-03-27 12:04:39.000000000","message":"+1","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"f502c5fbe9a075f7e1263a94e31ec48bde30f26e","unresolved":false,"context_lines":[{"line_number":22,"context_line":"                                            auth_url, tenant_name)"},{"line_number":23,"context_line":"        self.service \u003d self.config.network.catalog_type"},{"line_number":24,"context_line":"        self.version \u003d \u00272.0\u0027"},{"line_number":25,"context_line":"        self.format \u003d \u0027json\u0027"},{"line_number":26,"context_line":"        self.uri_prefix \u003d \"v%s\" % (self.version)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def list_networks(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2Fy3M%3D","line":25,"in_reply_to":"AAAAOH%2F%2FzW4%3D","updated":"2013-03-27 07:12:30.000000000","message":"https://github.com/openstack/tempest/blob/dc1f8cabdc1483265fc0e741c2aa60d688af9909/tempest/common/rest_client.py#L52 expected to set the headers correctly.\n\nhttps://github.com/openstack/tempest/blob/dc1f8cabdc1483265fc0e741c2aa60d688af9909/tempest/common/rest_client.py#L36\nself.TYPE has the same value.\n\nIf the quantum does not able to handle these headers it is a bug, please report it and create a  NOTE or TODO here.\n\nIf quantum is able handle these headers, you just need remove the self.format and the duplicated efforts to set the Content-Type.\n\nThe .json suffix style is useful only when the client (AJAX) does not able to set the headers, but our client is able to do it. \".json\" is generally a bad practice and must be avoided when it is possible.","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"7f9ee769f790ad07bceffda4cbd2e81b852ba110","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        body \u003d json.loads(body)"},{"line_number":32,"context_line":"        return resp, body"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def create_network(self, name, key\u003d\"network\"):"},{"line_number":35,"context_line":"        post_body \u003d {"},{"line_number":36,"context_line":"            key: {"},{"line_number":37,"context_line":"                \u0027name\u0027: name,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2F2j0%3D","line":34,"updated":"2013-03-24 20:28:27.000000000","message":"Is there a situation where key!\u003d\u0027network\u0027 ?","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"210af202b1c6005baa20300342def2987a1018ab","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        body \u003d json.loads(body)"},{"line_number":32,"context_line":"        return resp, body"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def create_network(self, name, key\u003d\"network\"):"},{"line_number":35,"context_line":"        post_body \u003d {"},{"line_number":36,"context_line":"            key: {"},{"line_number":37,"context_line":"                \u0027name\u0027: name,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2FzWo%3D","line":34,"in_reply_to":"AAAAOH%2F%2F2j0%3D","updated":"2013-03-26 22:38:43.000000000","message":"No, there is no situation where key !\u003d \u0027network\u0027. Do you want me to fix this?","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"f502c5fbe9a075f7e1263a94e31ec48bde30f26e","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        body \u003d json.loads(body)"},{"line_number":32,"context_line":"        return resp, body"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def create_network(self, name, key\u003d\"network\"):"},{"line_number":35,"context_line":"        post_body \u003d {"},{"line_number":36,"context_line":"            key: {"},{"line_number":37,"context_line":"                \u0027name\u0027: name,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2Fy3E%3D","line":34,"in_reply_to":"AAAAOH%2F%2FzWo%3D","updated":"2013-03-27 07:12:30.000000000","message":"If you think it can fit into this change, please fix it.","commit_id":"0b3ae7edd37f74817c9358a65cf0eeeb0da83d50"}]}
