)]}'
{"api-ref/source/parameters.yaml":[{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"8122e55d8391ab638b566662d0ae2b4f845d7cf7","unresolved":false,"context_lines":[{"line_number":2262,"context_line":"  type: string"},{"line_number":2263,"context_line":"imageRef:"},{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"  in: body"},{"line_number":2267,"context_line":"  required: true"},{"line_number":2268,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"bacf61ea_269b2fcb","line":2265,"range":{"start_line":2265,"start_character":57,"end_line":2265,"end_character":58},"updated":"2016-08-03 15:54:20.000000000","message":", or an empty string if booting from volume.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0797ce940c2efbdc3d735c843a1d8924c172bf36","unresolved":false,"context_lines":[{"line_number":2262,"context_line":"  type: string"},{"line_number":2263,"context_line":"imageRef:"},{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"  in: body"},{"line_number":2267,"context_line":"  required: true"},{"line_number":2268,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"bacf61ea_afeb6177","line":2265,"range":{"start_line":2265,"start_character":57,"end_line":2265,"end_character":58},"in_reply_to":"bacf61ea_269b2fcb","updated":"2016-08-04 00:04:58.000000000","message":"actually i intentionally want to avoid to mention that. \n\nempty string does not make sense and we allow that just not to break users if they were doing. \n\nBut i can explain about not encouraging people to pass empty string.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0797ce940c2efbdc3d735c843a1d8924c172bf36","unresolved":false,"context_lines":[{"line_number":2262,"context_line":"  type: string"},{"line_number":2263,"context_line":"imageRef:"},{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"  in: body"},{"line_number":2267,"context_line":"  required: true"},{"line_number":2268,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"bacf61ea_efd6f9c1","line":2265,"range":{"start_line":2265,"start_character":57,"end_line":2265,"end_character":58},"in_reply_to":"bacf61ea_269b2fcb","updated":"2016-08-04 00:04:58.000000000","message":"actually i intentionally want to avoid to mention that. \n\nempty string does not make sense and we allow that just not to break users if they were doing. \n\nBut i can explain about not encouraging people to pass empty string.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0797ce940c2efbdc3d735c843a1d8924c172bf36","unresolved":false,"context_lines":[{"line_number":2262,"context_line":"  type: string"},{"line_number":2263,"context_line":"imageRef:"},{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"  in: body"},{"line_number":2267,"context_line":"  required: true"},{"line_number":2268,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"bacf61ea_6ff1696a","line":2265,"range":{"start_line":2265,"start_character":57,"end_line":2265,"end_character":58},"in_reply_to":"bacf61ea_269b2fcb","updated":"2016-08-04 00:04:58.000000000","message":"actually i intentionally want to avoid to mention that. \n\nempty string does not make sense and we allow that just not to break users if they were doing. \n\nBut i can mention not encouraging people to pass empty string.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"51b47d1cb2149a3117f099bd11735c53f055640d","unresolved":false,"context_lines":[{"line_number":2262,"context_line":"  type: string"},{"line_number":2263,"context_line":"imageRef:"},{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"  in: body"},{"line_number":2267,"context_line":"  required: true"},{"line_number":2268,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"bacf61ea_4f59055a","line":2265,"range":{"start_line":2265,"start_character":57,"end_line":2265,"end_character":58},"in_reply_to":"bacf61ea_efd6f9c1","updated":"2016-08-04 00:05:53.000000000","message":":) sorry about multiple paste. its gerrit behaved badly.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9555a656aa7bf39d55dda41ade9063c2f562a115","unresolved":false,"context_lines":[{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"    For boot from volume case, empty string is also"},{"line_number":2267,"context_line":"    allowed to keep the old behavior but it is not recommended."},{"line_number":2268,"context_line":"    imageRef can be skipped to pass in that case."},{"line_number":2269,"context_line":"    So this is not required in case of boot from volume."},{"line_number":2270,"context_line":"    In all other case it must be a valid UUID otherwise API"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"bacf61ea_1bb10b90","line":2267,"range":{"start_line":2267,"start_character":12,"end_line":2267,"end_character":62},"updated":"2016-08-04 02:10:33.000000000","message":"I don\u0027t think we need to mention this here, it\u0027s fine for release notes or whatever, but it\u0027s not something we need in the API docs for new people to wonder what the \u0027old behavior\u0027 was for.","commit_id":"df4b05565cee034c3d6f17c0f061803b8f3800fb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"933b50d90af7a90595880393dd187081257f5a3b","unresolved":false,"context_lines":[{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"    For boot from volume case, empty string is also"},{"line_number":2267,"context_line":"    allowed to keep the old behavior but it is not recommended."},{"line_number":2268,"context_line":"    imageRef can be skipped to pass in that case."},{"line_number":2269,"context_line":"    So this is not required in case of boot from volume."},{"line_number":2270,"context_line":"    In all other case it must be a valid UUID otherwise API"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"bacf61ea_c6715aaa","line":2267,"range":{"start_line":2267,"start_character":12,"end_line":2267,"end_character":62},"in_reply_to":"bacf61ea_1bb10b90","updated":"2016-08-04 02:18:48.000000000","message":"ok. Done.","commit_id":"df4b05565cee034c3d6f17c0f061803b8f3800fb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9555a656aa7bf39d55dda41ade9063c2f562a115","unresolved":false,"context_lines":[{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"    For boot from volume case, empty string is also"},{"line_number":2267,"context_line":"    allowed to keep the old behavior but it is not recommended."},{"line_number":2268,"context_line":"    imageRef can be skipped to pass in that case."},{"line_number":2269,"context_line":"    So this is not required in case of boot from volume."},{"line_number":2270,"context_line":"    In all other case it must be a valid UUID otherwise API"},{"line_number":2271,"context_line":"    will return 400."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"bacf61ea_bb70bfdd","line":2268,"range":{"start_line":2268,"start_character":4,"end_line":2268,"end_character":49},"updated":"2016-08-04 02:10:33.000000000","message":"I\u0027m not sure what this means? It\u0027s OK to not pass imageRef when booting from volume? Note this field is marked as required, so we should be clear this is optional when booting from volume.","commit_id":"df4b05565cee034c3d6f17c0f061803b8f3800fb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9555a656aa7bf39d55dda41ade9063c2f562a115","unresolved":false,"context_lines":[{"line_number":2266,"context_line":"    For boot from volume case, empty string is also"},{"line_number":2267,"context_line":"    allowed to keep the old behavior but it is not recommended."},{"line_number":2268,"context_line":"    imageRef can be skipped to pass in that case."},{"line_number":2269,"context_line":"    So this is not required in case of boot from volume."},{"line_number":2270,"context_line":"    In all other case it must be a valid UUID otherwise API"},{"line_number":2271,"context_line":"    will return 400."},{"line_number":2272,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"bacf61ea_1b78ebc3","line":2269,"range":{"start_line":2269,"start_character":4,"end_line":2269,"end_character":56},"updated":"2016-08-04 02:10:33.000000000","message":"Heh, here you say it. I\u0027d just remove the line above then.","commit_id":"df4b05565cee034c3d6f17c0f061803b8f3800fb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c5c917e56450389fe4a8bc41b8c5b79176d168e8","unresolved":false,"context_lines":[{"line_number":2264,"context_line":"  description: |"},{"line_number":2265,"context_line":"    The UUID of the image to use for your server instance."},{"line_number":2266,"context_line":"    This is not required in case of boot from volume."},{"line_number":2267,"context_line":"    In all other case it is required and must be a valid UUID"},{"line_number":2268,"context_line":"    otherwise API will return 400."},{"line_number":2269,"context_line":"  in: body"},{"line_number":2270,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"bacf61ea_06ab72d7","line":2267,"range":{"start_line":2267,"start_character":17,"end_line":2267,"end_character":21},"updated":"2016-08-04 02:19:53.000000000","message":"cases","commit_id":"6d763cc403a4ec49c890dd8121693f0913bc03cd"}],"nova/api/openstack/api_version_request.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0a773e8af4be7291565ea036199077d42751103a","unresolved":false,"context_lines":[{"line_number":96,"context_line":"# Note(cyeoh): This only applies for the v2.1 API once microversions"},{"line_number":97,"context_line":"# support is fully merged. It does not affect the V2 API."},{"line_number":98,"context_line":"_MIN_API_VERSION \u003d \"2.1\""},{"line_number":99,"context_line":"_MAX_API_VERSION \u003d \"2.36\""},{"line_number":100,"context_line":"DEFAULT_API_VERSION \u003d _MIN_API_VERSION"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_9b002d68","line":99,"updated":"2016-07-26 10:53:50.000000000","message":"I think you want to rebase on top of this one:\nhttps://review.openstack.org/#/c/337005/\n\nOr make sure you are under it.","commit_id":"548aaa1e791fdf707bce88de5a4e062a7f38d8c5"}],"nova/api/openstack/compute/schemas/block_device_mapping.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"8ca581a9190c79ff0af633fee96119f300a57a40","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    # the empty string which was ok in case of boot from volume."},{"line_number":74,"context_line":"    # To keep the same behavior of allowing empty string in case of"},{"line_number":75,"context_line":"    # boot from volume, allow imageRef as empty string in this schema."},{"line_number":76,"context_line":"    \u0027imageRef\u0027: parameter_types.image_id_or_empty_string,"},{"line_number":77,"context_line":"    \u0027block_device_mapping_v2\u0027: {"},{"line_number":78,"context_line":"        \u0027type\u0027: \u0027array\u0027,"},{"line_number":79,"context_line":"        \u0027items\u0027: [block_device_mapping]"}],"source_content_type":"text/x-python","patch_set":7,"id":"bacf61ea_335541c6","line":76,"updated":"2016-08-03 10:36:53.000000000","message":"This always override the server base schema. So we just need add this to server base schema.","commit_id":"e9c97b056291ab46aad41517e51dd944cb79727a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f19f3490247d3d46cdbc0569d81cb1c1e56325b3","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    # the empty string which was ok in case of boot from volume."},{"line_number":74,"context_line":"    # To keep the same behavior of allowing empty string in case of"},{"line_number":75,"context_line":"    # boot from volume, allow imageRef as empty string in this schema."},{"line_number":76,"context_line":"    \u0027imageRef\u0027: parameter_types.image_id_or_empty_string,"},{"line_number":77,"context_line":"    \u0027block_device_mapping_v2\u0027: {"},{"line_number":78,"context_line":"        \u0027type\u0027: \u0027array\u0027,"},{"line_number":79,"context_line":"        \u0027items\u0027: [block_device_mapping]"}],"source_content_type":"text/x-python","patch_set":7,"id":"bacf61ea_56f37c9f","line":76,"in_reply_to":"bacf61ea_335541c6","updated":"2016-08-03 13:02:49.000000000","message":"Yea we can add there now as no extensions bits.\n\nI just added here for readability only to make it clear that it is just for bdm case.","commit_id":"e9c97b056291ab46aad41517e51dd944cb79727a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4e7727847bceb1abe513d65b79973f507d8331e8","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    # the empty string which was ok in case of boot from volume."},{"line_number":74,"context_line":"    # To keep the same behavior of allowing empty string in case of"},{"line_number":75,"context_line":"    # boot from volume, allow imageRef as empty string in this schema."},{"line_number":76,"context_line":"    \u0027imageRef\u0027: parameter_types.image_id_or_empty_string,"},{"line_number":77,"context_line":"    \u0027block_device_mapping_v2\u0027: {"},{"line_number":78,"context_line":"        \u0027type\u0027: \u0027array\u0027,"},{"line_number":79,"context_line":"        \u0027items\u0027: [block_device_mapping]"}],"source_content_type":"text/x-python","patch_set":7,"id":"bacf61ea_c534d0df","line":76,"in_reply_to":"bacf61ea_56f37c9f","updated":"2016-08-03 14:11:57.000000000","message":"Done","commit_id":"e9c97b056291ab46aad41517e51dd944cb79727a"}],"nova/api/openstack/compute/schemas/servers.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"6f20459343caa4e630343480679a1184cea36aa3","unresolved":false,"context_lines":[{"line_number":29,"context_line":"                # allowed as the empty string also So keeping the same"},{"line_number":30,"context_line":"                # behavior and allow empty string in case of boot from"},{"line_number":31,"context_line":"                # volume only. Python code make sure empty string is"},{"line_number":32,"context_line":"                # not alowed for other cases."},{"line_number":33,"context_line":"                \u0027imageRef\u0027: parameter_types.image_id_or_empty_string,"},{"line_number":34,"context_line":"                \u0027flavorRef\u0027: parameter_types.flavor_ref,"},{"line_number":35,"context_line":"                \u0027adminPass\u0027: parameter_types.admin_password,"}],"source_content_type":"text/x-python","patch_set":13,"id":"bacf61ea_9bf3269f","line":32,"updated":"2016-08-04 11:00:48.000000000","message":"thanks for adding that, that looks to be true when you go digging.","commit_id":"cbd3ec476f769c42e5b2a0ef8c996b60935e7f6c"}],"nova/tests/unit/api/openstack/compute/test_block_device_mapping.py":[{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"8122e55d8391ab638b566662d0ae2b4f845d7cf7","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        self.stubs.Set(compute_api.API, \u0027create\u0027, create)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        self.mox.StubOutWithMock(compute_api.API, \u0027_validate_bdm\u0027)"},{"line_number":164,"context_line":"        self.mox.StubOutWithMock(compute_api.API, \u0027_get_bdm_image_metadata\u0027)"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        compute_api.API._validate_bdm("}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_a6b0bf8c","line":163,"range":{"start_line":163,"start_character":8,"end_line":163,"end_character":33},"updated":"2016-08-03 15:54:20.000000000","message":"New tests should use mock, not mox.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"0797ce940c2efbdc3d735c843a1d8924c172bf36","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        self.stubs.Set(compute_api.API, \u0027create\u0027, create)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        self.mox.StubOutWithMock(compute_api.API, \u0027_validate_bdm\u0027)"},{"line_number":164,"context_line":"        self.mox.StubOutWithMock(compute_api.API, \u0027_get_bdm_image_metadata\u0027)"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        compute_api.API._validate_bdm("}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_efab991c","line":163,"range":{"start_line":163,"start_character":8,"end_line":163,"end_character":33},"in_reply_to":"bacf61ea_a6b0bf8c","updated":"2016-08-04 00:04:58.000000000","message":"ops,right. just copied from old tests.","commit_id":"b5cd0a6d0960167f15796650cf9ad30ba19a46e7"}],"releasenotes/notes/imageRef-as-uuid-only-0164c04206a42683.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e52c13e32175ebee56da96917d631afeb00041f8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - Strict imageRef as UUID only. imageRef"},{"line_number":4,"context_line":"    input while create, rebuild and rescue server etc"},{"line_number":5,"context_line":"    must be a valid UUID now. Previously, a random"},{"line_number":6,"context_line":"    image ref url containing image UUID was accepted."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"bacf61ea_ff624315","line":3,"range":{"start_line":3,"start_character":4,"end_line":3,"end_character":32},"updated":"2016-08-03 13:52:01.000000000","message":"This is a bit hard to parse, maybe \"imageRef input to the REST API is now restricted to be UUID or an empty string only.\"","commit_id":"e9c97b056291ab46aad41517e51dd944cb79727a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4e7727847bceb1abe513d65b79973f507d8331e8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - Strict imageRef as UUID only. imageRef"},{"line_number":4,"context_line":"    input while create, rebuild and rescue server etc"},{"line_number":5,"context_line":"    must be a valid UUID now. Previously, a random"},{"line_number":6,"context_line":"    image ref url containing image UUID was accepted."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"bacf61ea_e57634a2","line":3,"range":{"start_line":3,"start_character":4,"end_line":3,"end_character":32},"in_reply_to":"bacf61ea_ff624315","updated":"2016-08-03 14:11:57.000000000","message":"Nice. Thanks. Done","commit_id":"e9c97b056291ab46aad41517e51dd944cb79727a"}],"releasenotes/notes/imageRef-as-uuid-only-75e56c8d909ca96b.yaml":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0a773e8af4be7291565ea036199077d42751103a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Stop accepting ImageRef as random url. ImageRef"},{"line_number":4,"context_line":"    input while create, rebuild and rescue server etc"},{"line_number":5,"context_line":"    must be a valid UUID now. Previously, a random"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"dada55a8_bb32515c","line":2,"updated":"2016-07-26 10:53:50.000000000","message":"hmm, is that a feature?","commit_id":"548aaa1e791fdf707bce88de5a4e062a7f38d8c5"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0a773e8af4be7291565ea036199077d42751103a","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    must be a valid UUID now. Previously, a random"},{"line_number":6,"context_line":"    image ref url containing image UUID was accepted."},{"line_number":7,"context_line":"    But now all the reference of ImageRef will be a"},{"line_number":8,"context_line":"    valid UUID."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"dada55a8_1b443db5","line":8,"updated":"2016-07-26 10:53:50.000000000","message":"Maybe mention the API version this is being added for.","commit_id":"548aaa1e791fdf707bce88de5a4e062a7f38d8c5"}]}
