)]}'
{"smaug/services/protection/utils.py":[{"author":{"_account_id":20883,"name":"Yuval Brik","email":"yuval@brik.org.il","username":"yuvalbr"},"change_message_id":"d61733974f72bcf795667f94aad7f1c5a33781d8","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    for entry in context.service_catalog:"},{"line_number":29,"context_line":"        if entry.get(\u0027type\u0027) \u003d\u003d service_type:"},{"line_number":30,"context_line":"            return (service_type,"},{"line_number":31,"context_line":"                    entry.get(\u0027endpoints\u0027)[0].get(endpoint_type),"},{"line_number":32,"context_line":"                    endpoint_type)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    raise exception.SmaugException(_("},{"line_number":35,"context_line":"        \"Couldn\u0027t find the endpoint of service type %s \""}],"source_content_type":"text/x-python","patch_set":6,"id":"1af94dfe_d78bbfc1","line":32,"range":{"start_line":30,"start_character":0,"end_line":32,"end_character":34},"updated":"2016-03-17 14:03:06.000000000","message":"Only return the URL, not the service and endpoint type.","commit_id":"8e8de3626d20cd920ed8e1510fe562f89dad0ee2"},{"author":{"_account_id":20883,"name":"Yuval Brik","email":"yuval@brik.org.il","username":"yuvalbr"},"change_message_id":"d61733974f72bcf795667f94aad7f1c5a33781d8","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    except ValueError:"},{"line_number":43,"context_line":"        msg \u003d _(\"Failed to parse the endpoint option %s, \""},{"line_number":44,"context_line":"                \"must be in the form: \""},{"line_number":45,"context_line":"                \"\u003cservice_type\u003e;\u003cendpoint_url\u003e;\u003cendpoint_type\u003e\""},{"line_number":46,"context_line":"                ) % config"},{"line_number":47,"context_line":"        raise exception.SmaugException(msg)"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"1af94dfe_37514337","line":45,"range":{"start_line":45,"start_character":0,"end_line":45,"end_character":63},"updated":"2016-03-17 14:03:06.000000000","message":"No need to actually specify the service_type and endpoint_type, just the endpoint_url.","commit_id":"8e8de3626d20cd920ed8e1510fe562f89dad0ee2"},{"author":{"_account_id":20883,"name":"Yuval Brik","email":"yuval@brik.org.il","username":"yuvalbr"},"change_message_id":"d61733974f72bcf795667f94aad7f1c5a33781d8","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                ) % config"},{"line_number":47,"context_line":"        raise exception.SmaugException(msg)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    return (service_type,"},{"line_number":50,"context_line":"            \u0027%s/%s\u0027 % (endpoint_url, context.project_id),"},{"line_number":51,"context_line":"            endpoint_type)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"def get_url(service, context):"}],"source_content_type":"text/x-python","patch_set":6,"id":"1af94dfe_979db70c","line":51,"range":{"start_line":49,"start_character":0,"end_line":51,"end_character":26},"updated":"2016-03-17 14:03:06.000000000","message":"Not all clients have the project_id after the endpoint url.\nI.E: neutron, glance.\nWe should return the url without the project_id and let the nova and cinder add it manually, or use an optional parameter to this function in order to add it.\nAlso - only return the URL, not the service and endpoint type.","commit_id":"8e8de3626d20cd920ed8e1510fe562f89dad0ee2"}]}
