)]}'
{"nova/api/openstack/placement/handlers/allocation.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba9fffa65e83c16283ca3f45e2fda1bac4be0a8d","unresolved":false,"context_lines":[{"line_number":311,"context_line":"    context \u003d req.environ[\u0027placement.context\u0027]"},{"line_number":312,"context_line":"    context.can(policies.ALLOC_UPDATE)"},{"line_number":313,"context_line":"    consumer_uuid \u003d util.wsgi_path_item(req.environ, \u0027consumer_uuid\u0027)"},{"line_number":314,"context_line":"    if not uuidutils.is_uuid_like(consumer_uuid):"},{"line_number":315,"context_line":"        raise webob.exc.HTTPBadRequest("},{"line_number":316,"context_line":"            _(\u0027Malformed consumer_uuid: %(consumer_uuid)s\u0027) %"},{"line_number":317,"context_line":"            {\u0027consumer_uuid\u0027: consumer_uuid})"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_7a51b10c","line":314,"updated":"2018-07-09 20:37:08.000000000","message":"If we\u0027re going to validate the incoming thing as a UUID, we should take this opportunity to sanitize it to 8-4-4-4-12 format, i.e.\n\n consumer_uuid \u003d str(uuid.UUID(consumer_uuid))","commit_id":"d5717c13410691f62cdec368b46e65339b62ffa2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5582eb725902519e5d58448e490948b6b47e6769","unresolved":false,"context_lines":[{"line_number":311,"context_line":"    context \u003d req.environ[\u0027placement.context\u0027]"},{"line_number":312,"context_line":"    context.can(policies.ALLOC_UPDATE)"},{"line_number":313,"context_line":"    consumer_uuid \u003d util.wsgi_path_item(req.environ, \u0027consumer_uuid\u0027)"},{"line_number":314,"context_line":"    if not uuidutils.is_uuid_like(consumer_uuid):"},{"line_number":315,"context_line":"        raise webob.exc.HTTPBadRequest("},{"line_number":316,"context_line":"            _(\u0027Malformed consumer_uuid: %(consumer_uuid)s\u0027) %"},{"line_number":317,"context_line":"            {\u0027consumer_uuid\u0027: consumer_uuid})"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_9a9ccd0d","line":314,"in_reply_to":"5f7c97a3_7a51b10c","updated":"2018-07-09 21:12:55.000000000","message":"We could also do this in the jsonschema using the uuid format like here:\n\nhttps://github.com/openstack/nova/blob/194e842c30d0948b1f27c260c81e21a485dba25f/nova/api/openstack/compute/schemas/servers.py#L294","commit_id":"d5717c13410691f62cdec368b46e65339b62ffa2"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"52f4dd325006567bf7ca42035012430fb15c98e1","unresolved":false,"context_lines":[{"line_number":311,"context_line":"    context \u003d req.environ[\u0027placement.context\u0027]"},{"line_number":312,"context_line":"    context.can(policies.ALLOC_UPDATE)"},{"line_number":313,"context_line":"    consumer_uuid \u003d util.wsgi_path_item(req.environ, \u0027consumer_uuid\u0027)"},{"line_number":314,"context_line":"    if not uuidutils.is_uuid_like(consumer_uuid):"},{"line_number":315,"context_line":"        raise webob.exc.HTTPBadRequest("},{"line_number":316,"context_line":"            _(\u0027Malformed consumer_uuid: %(consumer_uuid)s\u0027) %"},{"line_number":317,"context_line":"            {\u0027consumer_uuid\u0027: consumer_uuid})"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_d5a04af6","line":314,"in_reply_to":"5f7c97a3_9a436d6b","updated":"2018-07-16 13:24:46.000000000","message":"@Eric: Done","commit_id":"d5717c13410691f62cdec368b46e65339b62ffa2"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"836efdcc5f3d21d7b0bdf39be20a8d6812b2ccaf","unresolved":false,"context_lines":[{"line_number":311,"context_line":"    context \u003d req.environ[\u0027placement.context\u0027]"},{"line_number":312,"context_line":"    context.can(policies.ALLOC_UPDATE)"},{"line_number":313,"context_line":"    consumer_uuid \u003d util.wsgi_path_item(req.environ, \u0027consumer_uuid\u0027)"},{"line_number":314,"context_line":"    if not uuidutils.is_uuid_like(consumer_uuid):"},{"line_number":315,"context_line":"        raise webob.exc.HTTPBadRequest("},{"line_number":316,"context_line":"            _(\u0027Malformed consumer_uuid: %(consumer_uuid)s\u0027) %"},{"line_number":317,"context_line":"            {\u0027consumer_uuid\u0027: consumer_uuid})"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_9a436d6b","line":314,"in_reply_to":"5f7c97a3_9a9ccd0d","updated":"2018-07-09 21:16:29.000000000","message":"problem is that is part of the payload. we\u0027re dealing with the URL parameter here.","commit_id":"d5717c13410691f62cdec368b46e65339b62ffa2"}]}
