)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15640,"name":"Roxana Gherle","email":"roxana.gherle@hpe.com","username":"roxana-gherle"},"change_message_id":"a25e02dd3171eea07b063a37f23d13e6ebae2580","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Return correct endpoint URL in /v3 response"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"There is one app which handles /v3 requests for public and admin"},{"line_number":10,"context_line":"endpoints, so in case if public_endpoint and admin_endpoint are"},{"line_number":11,"context_line":"specified in config URL of public endpoint is always returned."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This fix uses request\u0027s port to decide admin or public endpoint is"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a4dcd0f_e52013b3","line":10,"updated":"2015-08-14 05:47:40.000000000","message":"this phrase doesn\u0027t sound good grammatically. Did you mean \"so in case public_endpoint and admin_endpoint are specified in config URL - public endpoint is always returned\"","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"},{"author":{"_account_id":15640,"name":"Roxana Gherle","email":"roxana.gherle@hpe.com","username":"roxana-gherle"},"change_message_id":"a25e02dd3171eea07b063a37f23d13e6ebae2580","unresolved":false,"context_lines":[{"line_number":9,"context_line":"There is one app which handles /v3 requests for public and admin"},{"line_number":10,"context_line":"endpoints, so in case if public_endpoint and admin_endpoint are"},{"line_number":11,"context_line":"specified in config URL of public endpoint is always returned."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This fix uses request\u0027s port to decide admin or public endpoint is"},{"line_number":14,"context_line":"requested and returns the correct endpoint URL."},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a4dcd0f_c50ab727","line":12,"updated":"2015-08-14 05:47:40.000000000","message":"*to decide if","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"}],"keystone/controllers.py":[{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"8bd716b079ac1404152b262bc815359991681c30","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    def _get_endpoint_type(self, default_type, env):"},{"line_number":119,"context_line":"        \"\"\"\"Returns the correct endpoint type.\"\"\""},{"line_number":120,"context_line":"        if int(env[\u0027SERVER_PORT\u0027]) \u003d\u003d CONF.eventlet_server.admin_port:"},{"line_number":121,"context_line":"            return \u0027admin\u0027"},{"line_number":122,"context_line":"        return default_type"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_530f312e","line":120,"updated":"2015-08-14 16:10:03.000000000","message":"This is a hack. Proper fix is to have different factories for admin and public for v3. After 1 week no one knows why we added this if condition","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"3a4e9959fac5bd8d19b38fc3a5cb9a7517341e22","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    def _get_endpoint_type(self, default_type, env):"},{"line_number":119,"context_line":"        \"\"\"\"Returns the correct endpoint type.\"\"\""},{"line_number":120,"context_line":"        if int(env[\u0027SERVER_PORT\u0027]) \u003d\u003d CONF.eventlet_server.admin_port:"},{"line_number":121,"context_line":"            return \u0027admin\u0027"},{"line_number":122,"context_line":"        return default_type"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_5fae6f99","line":120,"updated":"2015-08-14 07:25:58.000000000","message":"s/CONF.eventlet_server.admin_port/CONF.admin_port/\n\neventlet_server section is deprecated","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"},{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"11634d5a01fbbbd10a17115a2d64f44f6ecfd088","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    def _get_endpoint_type(self, default_type, env):"},{"line_number":119,"context_line":"        \"\"\"\"Returns the correct endpoint type.\"\"\""},{"line_number":120,"context_line":"        if int(env[\u0027SERVER_PORT\u0027]) \u003d\u003d CONF.eventlet_server.admin_port:"},{"line_number":121,"context_line":"            return \u0027admin\u0027"},{"line_number":122,"context_line":"        return default_type"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"    def _get_identity_url(self, context, version):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_9e77f401","line":121,"updated":"2015-09-02 19:35:38.000000000","message":"Will this work for Apache?","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"},{"author":{"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},"change_message_id":"41be00346c171203f9f93692ce6bc7c8500a7c2a","unresolved":false,"context_lines":[{"line_number":119,"context_line":"        \"\"\"\"Returns the correct endpoint type.\"\"\""},{"line_number":120,"context_line":"        if int(env[\u0027SERVER_PORT\u0027]) \u003d\u003d CONF.eventlet_server.admin_port:"},{"line_number":121,"context_line":"            return \u0027admin\u0027"},{"line_number":122,"context_line":"        return default_type"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"    def _get_identity_url(self, context, version):"},{"line_number":125,"context_line":"        \"\"\"Returns a URL to keystone\u0027s own endpoint.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_f84a085b","line":122,"updated":"2015-09-08 12:52:35.000000000","message":"Doesn\u0027t makes sense this method be implemented here? https://github.com/openstack/keystone/blob/master/keystone/catalog/controllers.py#L64 or in the endpoint driver layer?","commit_id":"f79980891b4a62cfdb7a64e87ed91aa6a181406f"}],"keystone/tests/unit/test_versions.py":[{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"27e346ce77ebab2d7b63366efe49c5fb2c49f598","unresolved":false,"context_lines":[{"line_number":676,"context_line":"        ports \u003d [CONF.eventlet_server.admin_port,"},{"line_number":677,"context_line":"                 CONF.eventlet_server.public_port]"},{"line_number":678,"context_line":"        for port in ports:"},{"line_number":679,"context_line":"            client \u003d tests.TestClient(self.public_app)"},{"line_number":680,"context_line":"            url \u003d \u0027http://localhost:%d/v3/\u0027 % port"},{"line_number":681,"context_line":"            resp \u003d client.get(url)"},{"line_number":682,"context_line":"            self.assertEqual(resp.status_int, 200)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_6c01f969","line":679,"updated":"2015-08-11 09:54:36.000000000","message":"why it\u0027s public_app here but the test name is \"admin_version\"? and I don\u0027t quite understand the reason of validating the url with admin port based on the public app.\n\nIf this is what the bug for would you pls refactor this testcase a little bit?","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"},{"author":{"_account_id":12215,"name":"Alexey Miroshkin","email":"alexey.miroshkin@ru.ibm.com","username":"amirosh"},"change_message_id":"9f2e2debcc34508300bc00266628a7ebd29551bc","unresolved":false,"context_lines":[{"line_number":676,"context_line":"        ports \u003d [CONF.eventlet_server.admin_port,"},{"line_number":677,"context_line":"                 CONF.eventlet_server.public_port]"},{"line_number":678,"context_line":"        for port in ports:"},{"line_number":679,"context_line":"            client \u003d tests.TestClient(self.public_app)"},{"line_number":680,"context_line":"            url \u003d \u0027http://localhost:%d/v3/\u0027 % port"},{"line_number":681,"context_line":"            resp \u003d client.get(url)"},{"line_number":682,"context_line":"            self.assertEqual(resp.status_int, 200)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_bd4969d2","line":679,"in_reply_to":"1a4dcd0f_6c01f969","updated":"2015-08-11 10:56:16.000000000","message":"In eventlet setup only public app is deployed, that\u0027s the root cause of the bug. What kind of refactoring do you suggest?","commit_id":"5a6ed7b6ee0c5c8e2401e81df568702c2ac4e95f"}]}
