)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Support for value-description tuples for the \u0027choices\u0027 parameters was"},{"line_number":10,"context_line":"recently added to oslo.config [1]. Start using this in nova."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"[1] https://review.openstack.org/#/c/526012/"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Icd280d4daecabd1760080790e4aefc33dc2bece0"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3f79a3b5_83cbd31b","line":12,"range":{"start_line":12,"start_character":4,"end_line":12,"end_character":44},"updated":"2018-10-05 15:51:30.000000000","message":"Appears to be in 5.2.0. Nova requires 6.1.0 minimum. ✔","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/api.py":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"00ff653f0ca28d83dcbf82f30809606fc3bc752c","unresolved":false,"context_lines":[{"line_number":24,"context_line":"auth_opts \u003d ["},{"line_number":25,"context_line":"    cfg.StrOpt(\"auth_strategy\","},{"line_number":26,"context_line":"        default\u003d\"keystone\","},{"line_number":27,"context_line":"        choices\u003d(\"keystone\", \"noauth2\"),"},{"line_number":28,"context_line":"        deprecated_group\u003d\"DEFAULT\","},{"line_number":29,"context_line":"        help\u003d\"\"\""},{"line_number":30,"context_line":"This determines the strategy to use for authentication: keystone or noauth2."}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_77bd34d6","line":27,"range":{"start_line":27,"start_character":8,"end_line":27,"end_character":40},"updated":"2018-08-28 06:23:38.000000000","message":"Why isn\u0027t this modified?","commit_id":"6fd620c9237453718599d392ac192c7b34e05364"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e36f34dac09a2f7930cde3e4db35b555c177b55e","unresolved":false,"context_lines":[{"line_number":24,"context_line":"auth_opts \u003d ["},{"line_number":25,"context_line":"    cfg.StrOpt(\"auth_strategy\","},{"line_number":26,"context_line":"        default\u003d\"keystone\","},{"line_number":27,"context_line":"        choices\u003d(\"keystone\", \"noauth2\"),"},{"line_number":28,"context_line":"        deprecated_group\u003d\"DEFAULT\","},{"line_number":29,"context_line":"        help\u003d\"\"\""},{"line_number":30,"context_line":"This determines the strategy to use for authentication: keystone or noauth2."}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_bd896a6f","line":27,"range":{"start_line":27,"start_character":8,"end_line":27,"end_character":40},"in_reply_to":"3f79a3b5_77bd34d6","updated":"2018-08-28 10:02:24.000000000","message":"Done","commit_id":"6fd620c9237453718599d392ac192c7b34e05364"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a749ea5ae41faeab37b3a915cd52b724c78456ee","unresolved":false,"context_lines":[{"line_number":270,"context_line":"             \"at all, setting the fixed size equal to the ``max_limit`` \""},{"line_number":271,"context_line":"             \"value will cause only one request per cell database to be \""},{"line_number":272,"context_line":"             \"issued.\"),"},{"line_number":273,"context_line":"            (\"distributed\", \"``distributed`` will attempt to divide the \""},{"line_number":274,"context_line":"             \"limit requested by the user by the number of cells in the \""},{"line_number":275,"context_line":"             \"system. This requires counting the cells in the system \""},{"line_number":276,"context_line":"             \"initially, which will not be refreshed until service restart \""}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_45a70dbe","line":273,"range":{"start_line":273,"start_character":13,"end_line":273,"end_character":26},"updated":"2018-09-10 19:29:22.000000000","message":"Don\u0027t we have any policy of the order of choices?\nThis question comes since this \"distributed\" is the default value but that is written as the second. Maybe that is not so a big deal, just a question.","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"29da3070592fa3fd82844a67eb92d00cf4d05787","unresolved":false,"context_lines":[{"line_number":270,"context_line":"             \"at all, setting the fixed size equal to the ``max_limit`` \""},{"line_number":271,"context_line":"             \"value will cause only one request per cell database to be \""},{"line_number":272,"context_line":"             \"issued.\"),"},{"line_number":273,"context_line":"            (\"distributed\", \"``distributed`` will attempt to divide the \""},{"line_number":274,"context_line":"             \"limit requested by the user by the number of cells in the \""},{"line_number":275,"context_line":"             \"system. This requires counting the cells in the system \""},{"line_number":276,"context_line":"             \"initially, which will not be refreshed until service restart \""}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_ca38de3c","line":273,"range":{"start_line":273,"start_character":13,"end_line":273,"end_character":26},"in_reply_to":"3f79a3b5_45a70dbe","updated":"2018-09-12 15:45:19.000000000","message":"We can but I don\u0027t know if it\u0027s necessary. I\u0027ve fixed the ones that I spotted though","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":74,"context_line":"\"\"\"),"},{"line_number":75,"context_line":"    cfg.ListOpt(\u0027vendordata_providers\u0027,"},{"line_number":76,"context_line":"        item_type\u003dcfg.types.String(choices\u003d["},{"line_number":77,"context_line":"            (\u0027StaticJSON\u0027, \u0027Loads a JSON file from the path configured by \u0027"},{"line_number":78,"context_line":"             \u0027``[DEFAULT] vendordata_jsonfile_path`` and use this as the \u0027"},{"line_number":79,"context_line":"             \u0027source for ``vendora_data.json`` and ``vendor_data2.json``.\u0027),"},{"line_number":80,"context_line":"            (\u0027DynamicJSON\u0027, \u0027Build a JSON file using values defined in \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_c38f8bd1","line":77,"range":{"start_line":77,"start_character":28,"end_line":77,"end_character":33},"updated":"2018-10-05 15:51:30.000000000","message":"Agreement of verb tense is off throughout. Loads/use; Build/uses. Pick one.","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":74,"context_line":"\"\"\"),"},{"line_number":75,"context_line":"    cfg.ListOpt(\u0027vendordata_providers\u0027,"},{"line_number":76,"context_line":"        item_type\u003dcfg.types.String(choices\u003d["},{"line_number":77,"context_line":"            (\u0027StaticJSON\u0027, \u0027Loads a JSON file from the path configured by \u0027"},{"line_number":78,"context_line":"             \u0027``[DEFAULT] vendordata_jsonfile_path`` and use this as the \u0027"},{"line_number":79,"context_line":"             \u0027source for ``vendora_data.json`` and ``vendor_data2.json``.\u0027),"},{"line_number":80,"context_line":"            (\u0027DynamicJSON\u0027, \u0027Build a JSON file using values defined in \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_9ca49009","line":77,"range":{"start_line":77,"start_character":28,"end_line":77,"end_character":33},"in_reply_to":"3f79a3b5_c38f8bd1","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    cfg.ListOpt(\u0027vendordata_providers\u0027,"},{"line_number":76,"context_line":"        item_type\u003dcfg.types.String(choices\u003d["},{"line_number":77,"context_line":"            (\u0027StaticJSON\u0027, \u0027Loads a JSON file from the path configured by \u0027"},{"line_number":78,"context_line":"             \u0027``[DEFAULT] vendordata_jsonfile_path`` and use this as the \u0027"},{"line_number":79,"context_line":"             \u0027source for ``vendora_data.json`` and ``vendor_data2.json``.\u0027),"},{"line_number":80,"context_line":"            (\u0027DynamicJSON\u0027, \u0027Build a JSON file using values defined in \u0027"},{"line_number":81,"context_line":"             \u0027``vendordata_dynamic_targets``, which is documented separately \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e362c715","line":78,"range":{"start_line":78,"start_character":16,"end_line":78,"end_character":26},"updated":"2018-10-05 15:51:30.000000000","message":"This appears to be in [api] now. Should just remove [DEFAULT] for consistency with L81.","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    cfg.ListOpt(\u0027vendordata_providers\u0027,"},{"line_number":76,"context_line":"        item_type\u003dcfg.types.String(choices\u003d["},{"line_number":77,"context_line":"            (\u0027StaticJSON\u0027, \u0027Loads a JSON file from the path configured by \u0027"},{"line_number":78,"context_line":"             \u0027``[DEFAULT] vendordata_jsonfile_path`` and use this as the \u0027"},{"line_number":79,"context_line":"             \u0027source for ``vendora_data.json`` and ``vendor_data2.json``.\u0027),"},{"line_number":80,"context_line":"            (\u0027DynamicJSON\u0027, \u0027Build a JSON file using values defined in \u0027"},{"line_number":81,"context_line":"             \u0027``vendordata_dynamic_targets``, which is documented separately \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_3c921ca2","line":78,"range":{"start_line":78,"start_character":16,"end_line":78,"end_character":26},"in_reply_to":"3f79a3b5_e362c715","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":78,"context_line":"             \u0027``[DEFAULT] vendordata_jsonfile_path`` and use this as the \u0027"},{"line_number":79,"context_line":"             \u0027source for ``vendora_data.json`` and ``vendor_data2.json``.\u0027),"},{"line_number":80,"context_line":"            (\u0027DynamicJSON\u0027, \u0027Build a JSON file using values defined in \u0027"},{"line_number":81,"context_line":"             \u0027``vendordata_dynamic_targets``, which is documented separately \u0027"},{"line_number":82,"context_line":"             \u0027and uses this as the source for ``vendor_data2.json``.\u0027),"},{"line_number":83,"context_line":"        ]),"},{"line_number":84,"context_line":"        default\u003d[\u0027StaticJSON\u0027],"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_23519f31","line":81,"range":{"start_line":81,"start_character":76,"end_line":81,"end_character":77},"updated":"2018-10-05 15:51:30.000000000","message":",","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":78,"context_line":"             \u0027``[DEFAULT] vendordata_jsonfile_path`` and use this as the \u0027"},{"line_number":79,"context_line":"             \u0027source for ``vendora_data.json`` and ``vendor_data2.json``.\u0027),"},{"line_number":80,"context_line":"            (\u0027DynamicJSON\u0027, \u0027Build a JSON file using values defined in \u0027"},{"line_number":81,"context_line":"             \u0027``vendordata_dynamic_targets``, which is documented separately \u0027"},{"line_number":82,"context_line":"             \u0027and uses this as the source for ``vendor_data2.json``.\u0027),"},{"line_number":83,"context_line":"        ]),"},{"line_number":84,"context_line":"        default\u003d[\u0027StaticJSON\u0027],"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_1c89606e","line":81,"range":{"start_line":81,"start_character":76,"end_line":81,"end_character":77},"in_reply_to":"3f79a3b5_23519f31","updated":"2018-10-05 16:50:49.000000000","message":"Just removed this clause","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":264,"context_line":"    cfg.StrOpt(\"instance_list_cells_batch_strategy\","},{"line_number":265,"context_line":"        default\u003d\"distributed\","},{"line_number":266,"context_line":"        choices\u003d["},{"line_number":267,"context_line":"            (\"distributed\", \"``distributed`` will attempt to divide the \""},{"line_number":268,"context_line":"             \"limit requested by the user by the number of cells in the \""},{"line_number":269,"context_line":"             \"system. This requires counting the cells in the system \""},{"line_number":270,"context_line":"             \"initially, which will not be refreshed until service restart \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_833513f9","line":267,"range":{"start_line":267,"start_character":29,"end_line":267,"end_character":45},"updated":"2018-10-05 15:51:30.000000000","message":"meh, seems redundant","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":264,"context_line":"    cfg.StrOpt(\"instance_list_cells_batch_strategy\","},{"line_number":265,"context_line":"        default\u003d\"distributed\","},{"line_number":266,"context_line":"        choices\u003d["},{"line_number":267,"context_line":"            (\"distributed\", \"``distributed`` will attempt to divide the \""},{"line_number":268,"context_line":"             \"limit requested by the user by the number of cells in the \""},{"line_number":269,"context_line":"             \"system. This requires counting the cells in the system \""},{"line_number":270,"context_line":"             \"initially, which will not be refreshed until service restart \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_1cde406a","line":267,"range":{"start_line":267,"start_character":29,"end_line":267,"end_character":45},"in_reply_to":"3f79a3b5_833513f9","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":270,"context_line":"             \"initially, which will not be refreshed until service restart \""},{"line_number":271,"context_line":"             \"or SIGHUP. The actual batch size will be increased by 10% \""},{"line_number":272,"context_line":"             \"over the result of ($limit / $num_cells).\"),"},{"line_number":273,"context_line":"            (\"fixed\", \"``fixed`` will simply request fixed-size batches from \""},{"line_number":274,"context_line":"             \"each cell, as defined by ``instance_list_cells_batch_fixed_\""},{"line_number":275,"context_line":"             \"size``. If the limit is smaller than the batch size, the limit \""},{"line_number":276,"context_line":"             \"will be used instead. If you do not wish batching to be used \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_0329039b","line":273,"range":{"start_line":273,"start_character":24,"end_line":273,"end_character":33},"updated":"2018-10-05 15:51:30.000000000","message":"ditto","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":270,"context_line":"             \"initially, which will not be refreshed until service restart \""},{"line_number":271,"context_line":"             \"or SIGHUP. The actual batch size will be increased by 10% \""},{"line_number":272,"context_line":"             \"over the result of ($limit / $num_cells).\"),"},{"line_number":273,"context_line":"            (\"fixed\", \"``fixed`` will simply request fixed-size batches from \""},{"line_number":274,"context_line":"             \"each cell, as defined by ``instance_list_cells_batch_fixed_\""},{"line_number":275,"context_line":"             \"size``. If the limit is smaller than the batch size, the limit \""},{"line_number":276,"context_line":"             \"will be used instead. If you do not wish batching to be used \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_5cbd9801","line":273,"range":{"start_line":273,"start_character":24,"end_line":273,"end_character":33},"in_reply_to":"3f79a3b5_0329039b","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/cells.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":137,"context_line":"\"\"\"),"},{"line_number":138,"context_line":"    cfg.StrOpt(\u0027cell_type\u0027,"},{"line_number":139,"context_line":"        default\u003d\u0027compute\u0027,"},{"line_number":140,"context_line":"        choices\u003d(\u0027api\u0027, \u0027compute\u0027),"},{"line_number":141,"context_line":"        deprecated_for_removal\u003dTrue,"},{"line_number":142,"context_line":"        deprecated_since\u003d\u002716.0.0\u0027,"},{"line_number":143,"context_line":"        deprecated_reason\u003d\u0027Cells v1 is being replaced with Cells v2.\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_236f5f61","line":140,"range":{"start_line":140,"start_character":8,"end_line":140,"end_character":35},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/compute.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":1131,"context_line":"    cfg.StrOpt(\u0027osapi_compute_unique_server_name_scope\u0027,"},{"line_number":1132,"context_line":"        default\u003d\u0027\u0027,"},{"line_number":1133,"context_line":"        choices\u003d["},{"line_number":1134,"context_line":"            (\u0027\u0027, \u0027An empty value means that no uniqueness check is done and \u0027"},{"line_number":1135,"context_line":"             \u0027duplicate names are possible\u0027),"},{"line_number":1136,"context_line":"            (\u0027project\u0027, \u0027The instance name check is done only for instances \u0027"},{"line_number":1137,"context_line":"             \u0027within the same project\u0027),"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e62735b5","line":1134,"range":{"start_line":1134,"start_character":13,"end_line":1134,"end_character":15},"updated":"2018-10-05 15:51:30.000000000","message":"✔ this renders right\n\nhttp://logs.openstack.org/24/530924/7/check/openstack-tox-docs/a4e127f/html/configuration/config.html#DEFAULT.osapi_compute_unique_server_name_scope","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/configdrive.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":28,"context_line":"Configuration drive format that will contain metadata attached to the"},{"line_number":29,"context_line":"instance when it boots."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Due to a `libvirt bug \u003chttps://bugs.launchpad.net/nova/+bug/1246201\u003e`_, you"},{"line_number":32,"context_line":"should use ``vfat`` if you wish to live migrate and are not using shared"},{"line_number":33,"context_line":"storage."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Related options:"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e675f598","line":33,"range":{"start_line":31,"start_character":0,"end_line":33,"end_character":8},"updated":"2018-10-05 15:51:30.000000000","message":"Been a couple of years since this was closed. Can we get rid of it? (Unrelated)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":28,"context_line":"Configuration drive format that will contain metadata attached to the"},{"line_number":29,"context_line":"instance when it boots."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Due to a `libvirt bug \u003chttps://bugs.launchpad.net/nova/+bug/1246201\u003e`_, you"},{"line_number":32,"context_line":"should use ``vfat`` if you wish to live migrate and are not using shared"},{"line_number":33,"context_line":"storage."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Related options:"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_bc9b8c77","line":33,"range":{"start_line":31,"start_character":0,"end_line":33,"end_character":8},"in_reply_to":"3f79a3b5_e675f598","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/libvirt.py":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"7eba848e6f0a92700f6c19c3537feca17e35533b","unresolved":false,"context_lines":[{"line_number":484,"context_line":"        choices\u003d["},{"line_number":485,"context_line":"            (\u0027host-model\u0027, \u0027Clones the host CPU feature flags\u0027),"},{"line_number":486,"context_line":"            (\u0027host-passthrough\u0027, \u0027Use the host CPU model exactly\u0027),"},{"line_number":487,"context_line":"            (\u0027custom\u0027, \u0027Use the CPU model in [libvirt]cpu_model\u0027),"},{"line_number":488,"context_line":"            (\u0027none\u0027, \"Don\u0027t set a specific CPU model. For instances with \""},{"line_number":489,"context_line":"             \"``virt_type`` as KVM/QEMU, the default CPU model from QEMU \""},{"line_number":490,"context_line":"             \"will be used, which provides a basic set of CPU features that \""}],"source_content_type":"text/x-python","patch_set":3,"id":"bf659307_0510474d","line":487,"range":{"start_line":487,"start_character":45,"end_line":487,"end_character":63},"updated":"2018-04-04 09:06:15.000000000","message":"``[libvirt]cpu_model``","commit_id":"248b23ab23d339a0c745e71a94b5f51a926ee006"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e2ee922911f0cf04d2908485349199ce7d3b603b","unresolved":false,"context_lines":[{"line_number":484,"context_line":"        choices\u003d["},{"line_number":485,"context_line":"            (\u0027host-model\u0027, \u0027Clones the host CPU feature flags\u0027),"},{"line_number":486,"context_line":"            (\u0027host-passthrough\u0027, \u0027Use the host CPU model exactly\u0027),"},{"line_number":487,"context_line":"            (\u0027custom\u0027, \u0027Use the CPU model in [libvirt]cpu_model\u0027),"},{"line_number":488,"context_line":"            (\u0027none\u0027, \"Don\u0027t set a specific CPU model. For instances with \""},{"line_number":489,"context_line":"             \"``virt_type`` as KVM/QEMU, the default CPU model from QEMU \""},{"line_number":490,"context_line":"             \"will be used, which provides a basic set of CPU features that \""}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_cb63ec19","line":487,"range":{"start_line":487,"start_character":45,"end_line":487,"end_character":63},"in_reply_to":"bf659307_0510474d","updated":"2018-05-08 12:07:42.000000000","message":"Done","commit_id":"248b23ab23d339a0c745e71a94b5f51a926ee006"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"7eba848e6f0a92700f6c19c3537feca17e35533b","unresolved":false,"context_lines":[{"line_number":486,"context_line":"            (\u0027host-passthrough\u0027, \u0027Use the host CPU model exactly\u0027),"},{"line_number":487,"context_line":"            (\u0027custom\u0027, \u0027Use the CPU model in [libvirt]cpu_model\u0027),"},{"line_number":488,"context_line":"            (\u0027none\u0027, \"Don\u0027t set a specific CPU model. For instances with \""},{"line_number":489,"context_line":"             \"``virt_type`` as KVM/QEMU, the default CPU model from QEMU \""},{"line_number":490,"context_line":"             \"will be used, which provides a basic set of CPU features that \""},{"line_number":491,"context_line":"             \"are compatible with most hosts\"),"},{"line_number":492,"context_line":"        ],"}],"source_content_type":"text/x-python","patch_set":3,"id":"bf659307_852d3796","line":489,"range":{"start_line":489,"start_character":14,"end_line":489,"end_character":28},"updated":"2018-04-04 09:06:15.000000000","message":"``[libvirt]virt_type`` (prefer using the same terminology with the cpu_model)","commit_id":"248b23ab23d339a0c745e71a94b5f51a926ee006"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e2ee922911f0cf04d2908485349199ce7d3b603b","unresolved":false,"context_lines":[{"line_number":486,"context_line":"            (\u0027host-passthrough\u0027, \u0027Use the host CPU model exactly\u0027),"},{"line_number":487,"context_line":"            (\u0027custom\u0027, \u0027Use the CPU model in [libvirt]cpu_model\u0027),"},{"line_number":488,"context_line":"            (\u0027none\u0027, \"Don\u0027t set a specific CPU model. For instances with \""},{"line_number":489,"context_line":"             \"``virt_type`` as KVM/QEMU, the default CPU model from QEMU \""},{"line_number":490,"context_line":"             \"will be used, which provides a basic set of CPU features that \""},{"line_number":491,"context_line":"             \"are compatible with most hosts\"),"},{"line_number":492,"context_line":"        ],"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_2ba70052","line":489,"range":{"start_line":489,"start_character":14,"end_line":489,"end_character":28},"in_reply_to":"bf659307_852d3796","updated":"2018-05-08 12:07:42.000000000","message":"Done","commit_id":"248b23ab23d339a0c745e71a94b5f51a926ee006"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a749ea5ae41faeab37b3a915cd52b724c78456ee","unresolved":false,"context_lines":[{"line_number":868,"context_line":"    cfg.StrOpt(\u0027volume_clear\u0027,"},{"line_number":869,"context_line":"        default\u003d\u0027zero\u0027,"},{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027none\u0027, \u0027do not wipe deleted volumes\u0027),"},{"line_number":872,"context_line":"            (\u0027zero\u0027, \u0027overwrite volumes with zeroes\u0027),"},{"line_number":873,"context_line":"            (\u0027shred\u0027, \u0027overwrite volume repeatedly\u0027),"},{"line_number":874,"context_line":"        ],"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_059fd551","line":871,"range":{"start_line":871,"start_character":22,"end_line":871,"end_character":24},"updated":"2018-09-10 19:29:22.000000000","message":"Maybe we want to use uppercase char here like\n\n \u0027Do not wipe ...\u0027\n\nlike the other places.","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"29da3070592fa3fd82844a67eb92d00cf4d05787","unresolved":false,"context_lines":[{"line_number":868,"context_line":"    cfg.StrOpt(\u0027volume_clear\u0027,"},{"line_number":869,"context_line":"        default\u003d\u0027zero\u0027,"},{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027none\u0027, \u0027do not wipe deleted volumes\u0027),"},{"line_number":872,"context_line":"            (\u0027zero\u0027, \u0027overwrite volumes with zeroes\u0027),"},{"line_number":873,"context_line":"            (\u0027shred\u0027, \u0027overwrite volume repeatedly\u0027),"},{"line_number":874,"context_line":"        ],"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_6a450ab4","line":871,"range":{"start_line":871,"start_character":22,"end_line":871,"end_character":24},"in_reply_to":"3f79a3b5_059fd551","updated":"2018-09-12 15:45:19.000000000","message":"Done","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a749ea5ae41faeab37b3a915cd52b724c78456ee","unresolved":false,"context_lines":[{"line_number":869,"context_line":"        default\u003d\u0027zero\u0027,"},{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027none\u0027, \u0027do not wipe deleted volumes\u0027),"},{"line_number":872,"context_line":"            (\u0027zero\u0027, \u0027overwrite volumes with zeroes\u0027),"},{"line_number":873,"context_line":"            (\u0027shred\u0027, \u0027overwrite volume repeatedly\u0027),"},{"line_number":874,"context_line":"        ],"},{"line_number":875,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_c5a8fd79","line":872,"range":{"start_line":872,"start_character":22,"end_line":872,"end_character":31},"updated":"2018-09-10 19:29:22.000000000","message":"ditto","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"29da3070592fa3fd82844a67eb92d00cf4d05787","unresolved":false,"context_lines":[{"line_number":869,"context_line":"        default\u003d\u0027zero\u0027,"},{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027none\u0027, \u0027do not wipe deleted volumes\u0027),"},{"line_number":872,"context_line":"            (\u0027zero\u0027, \u0027overwrite volumes with zeroes\u0027),"},{"line_number":873,"context_line":"            (\u0027shred\u0027, \u0027overwrite volume repeatedly\u0027),"},{"line_number":874,"context_line":"        ],"},{"line_number":875,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_8a42e6aa","line":872,"range":{"start_line":872,"start_character":22,"end_line":872,"end_character":31},"in_reply_to":"3f79a3b5_c5a8fd79","updated":"2018-09-12 15:45:19.000000000","message":"Done","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a749ea5ae41faeab37b3a915cd52b724c78456ee","unresolved":false,"context_lines":[{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027none\u0027, \u0027do not wipe deleted volumes\u0027),"},{"line_number":872,"context_line":"            (\u0027zero\u0027, \u0027overwrite volumes with zeroes\u0027),"},{"line_number":873,"context_line":"            (\u0027shred\u0027, \u0027overwrite volume repeatedly\u0027),"},{"line_number":874,"context_line":"        ],"},{"line_number":875,"context_line":"        help\u003d\"\"\""},{"line_number":876,"context_line":"Method used to wipe ephemeral disks when they are deleted. Only takes effect"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_a5b941cc","line":873,"range":{"start_line":873,"start_character":23,"end_line":873,"end_character":32},"updated":"2018-09-10 19:29:22.000000000","message":"ditto","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"29da3070592fa3fd82844a67eb92d00cf4d05787","unresolved":false,"context_lines":[{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027none\u0027, \u0027do not wipe deleted volumes\u0027),"},{"line_number":872,"context_line":"            (\u0027zero\u0027, \u0027overwrite volumes with zeroes\u0027),"},{"line_number":873,"context_line":"            (\u0027shred\u0027, \u0027overwrite volume repeatedly\u0027),"},{"line_number":874,"context_line":"        ],"},{"line_number":875,"context_line":"        help\u003d\"\"\""},{"line_number":876,"context_line":"Method used to wipe ephemeral disks when they are deleted. Only takes effect"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_2a1152b0","line":873,"range":{"start_line":873,"start_character":23,"end_line":873,"end_character":32},"in_reply_to":"3f79a3b5_a5b941cc","updated":"2018-09-12 15:45:19.000000000","message":"Done","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":104,"context_line":"\"\"\"),"},{"line_number":105,"context_line":"    cfg.StrOpt(\u0027virt_type\u0027,"},{"line_number":106,"context_line":"               default\u003d\u0027kvm\u0027,"},{"line_number":107,"context_line":"               choices\u003d(\u0027kvm\u0027, \u0027lxc\u0027, \u0027qemu\u0027, \u0027uml\u0027, \u0027xen\u0027, \u0027parallels\u0027),"},{"line_number":108,"context_line":"               help\u003d\"\"\""},{"line_number":109,"context_line":"Describes the virtualization type (or so called domain type) libvirt should"},{"line_number":110,"context_line":"use."}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_c3d78bf4","line":107,"range":{"start_line":107,"start_character":0,"end_line":107,"end_character":73},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":112,"context_line":"The choice of this type must match the underlying virtualization strategy"},{"line_number":113,"context_line":"you have chosen for this host."},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Possible values:"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"* See the predefined set of case-sensitive values."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"Related options:"},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_43cb7b4a","line":117,"range":{"start_line":115,"start_character":0,"end_line":117,"end_character":50},"updated":"2018-10-05 15:51:30.000000000","message":"This can probably go. (Unrelated)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":112,"context_line":"The choice of this type must match the underlying virtualization strategy"},{"line_number":113,"context_line":"you have chosen for this host."},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Possible values:"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"* See the predefined set of case-sensitive values."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"Related options:"},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_dc05287b","line":117,"range":{"start_line":115,"start_character":0,"end_line":117,"end_character":50},"in_reply_to":"3f79a3b5_43cb7b4a","updated":"2018-10-05 16:50:49.000000000","message":"\u003e This can probably go. (Unrelated)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":485,"context_line":"                    \u0027 if instance does not shutdown within this window.\u0027),"},{"line_number":486,"context_line":"    cfg.StrOpt(\u0027cpu_mode\u0027,"},{"line_number":487,"context_line":"        choices\u003d["},{"line_number":488,"context_line":"            (\u0027host-model\u0027, \u0027Clones the host CPU feature flags\u0027),"},{"line_number":489,"context_line":"            (\u0027host-passthrough\u0027, \u0027Use the host CPU model exactly\u0027),"},{"line_number":490,"context_line":"            (\u0027custom\u0027, \u0027Use the CPU model in ``[libvirt]cpu_model``\u0027),"},{"line_number":491,"context_line":"            (\u0027none\u0027, \"Don\u0027t set a specific CPU model. For instances with \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_666ec5ff","line":488,"range":{"start_line":488,"start_character":28,"end_line":488,"end_character":34},"updated":"2018-10-05 15:51:30.000000000","message":"Verb agreement. s/Clones/Clone/. (I\u0027ll call this one unrelated, since it\u0027s cut/paste without changes.)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":485,"context_line":"                    \u0027 if instance does not shutdown within this window.\u0027),"},{"line_number":486,"context_line":"    cfg.StrOpt(\u0027cpu_mode\u0027,"},{"line_number":487,"context_line":"        choices\u003d["},{"line_number":488,"context_line":"            (\u0027host-model\u0027, \u0027Clones the host CPU feature flags\u0027),"},{"line_number":489,"context_line":"            (\u0027host-passthrough\u0027, \u0027Use the host CPU model exactly\u0027),"},{"line_number":490,"context_line":"            (\u0027custom\u0027, \u0027Use the CPU model in ``[libvirt]cpu_model``\u0027),"},{"line_number":491,"context_line":"            (\u0027none\u0027, \"Don\u0027t set a specific CPU model. For instances with \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_fcd4a4ec","line":488,"range":{"start_line":488,"start_character":28,"end_line":488,"end_character":34},"in_reply_to":"3f79a3b5_666ec5ff","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":677,"context_line":"                     \u0027For example: x86_64\u003dmachinetype1,armv7l\u003dmachinetype2\u0027),"},{"line_number":678,"context_line":"    cfg.StrOpt(\u0027sysinfo_serial\u0027,"},{"line_number":679,"context_line":"               default\u003d\u0027auto\u0027,"},{"line_number":680,"context_line":"               choices\u003d(\u0027none\u0027, \u0027os\u0027, \u0027hardware\u0027, \u0027auto\u0027),"},{"line_number":681,"context_line":"               help\u003d\u0027The data source used to the populate the host \"serial\" \u0027"},{"line_number":682,"context_line":"                    \u0027UUID exposed to guest in the virtual BIOS.\u0027),"},{"line_number":683,"context_line":"    cfg.IntOpt(\u0027mem_stats_period_seconds\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e38e4725","line":680,"range":{"start_line":680,"start_character":0,"end_line":680,"end_character":58},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":778,"context_line":"libvirt_imagebackend_opts \u003d ["},{"line_number":779,"context_line":"    cfg.StrOpt(\u0027images_type\u0027,"},{"line_number":780,"context_line":"               default\u003d\u0027default\u0027,"},{"line_number":781,"context_line":"               choices\u003d(\u0027raw\u0027, \u0027flat\u0027, \u0027qcow2\u0027, \u0027lvm\u0027, \u0027rbd\u0027, \u0027ploop\u0027,"},{"line_number":782,"context_line":"                        \u0027default\u0027),"},{"line_number":783,"context_line":"               help\u003d\"\"\""},{"line_number":784,"context_line":"VM Images format."},{"line_number":785,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_639a3761","line":782,"range":{"start_line":781,"start_character":0,"end_line":782,"end_character":35},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":818,"context_line":"               default\u003d\u0027\u0027,  # default determined by librados"},{"line_number":819,"context_line":"               help\u003d\u0027Path to the ceph configuration file to use\u0027),"},{"line_number":820,"context_line":"    cfg.StrOpt(\u0027hw_disk_discard\u0027,"},{"line_number":821,"context_line":"               choices\u003d(\u0027ignore\u0027, \u0027unmap\u0027),"},{"line_number":822,"context_line":"               help\u003d\"\"\""},{"line_number":823,"context_line":"Discard option for nova managed disks."},{"line_number":824,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_c3b22be9","line":821,"range":{"start_line":821,"start_character":0,"end_line":821,"end_character":43},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":869,"context_line":"        default\u003d\u0027zero\u0027,"},{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027zero\u0027, \u0027Overwrite volumes with zeroes\u0027),"},{"line_number":872,"context_line":"            (\u0027shred\u0027, \u0027Overwrite volume repeatedly\u0027),"},{"line_number":873,"context_line":"            (\u0027none\u0027, \u0027Do not wipe deleted volumes\u0027),"},{"line_number":874,"context_line":"        ],"},{"line_number":875,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_8640c161","line":872,"range":{"start_line":872,"start_character":33,"end_line":872,"end_character":39},"updated":"2018-10-05 15:51:30.000000000","message":"volumes? (Unrelated)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":869,"context_line":"        default\u003d\u0027zero\u0027,"},{"line_number":870,"context_line":"        choices\u003d["},{"line_number":871,"context_line":"            (\u0027zero\u0027, \u0027Overwrite volumes with zeroes\u0027),"},{"line_number":872,"context_line":"            (\u0027shred\u0027, \u0027Overwrite volume repeatedly\u0027),"},{"line_number":873,"context_line":"            (\u0027none\u0027, \u0027Do not wipe deleted volumes\u0027),"},{"line_number":874,"context_line":"        ],"},{"line_number":875,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_bc006c6b","line":872,"range":{"start_line":872,"start_character":33,"end_line":872,"end_character":39},"in_reply_to":"3f79a3b5_8640c161","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":1071,"context_line":"libvirt_remotefs_opts \u003d ["},{"line_number":1072,"context_line":"    cfg.StrOpt(\u0027remote_filesystem_transport\u0027,"},{"line_number":1073,"context_line":"               default\u003d\u0027ssh\u0027,"},{"line_number":1074,"context_line":"               choices\u003d(\u0027ssh\u0027, \u0027rsync\u0027),"},{"line_number":1075,"context_line":"               help\u003d\"\"\""},{"line_number":1076,"context_line":"libvirt\u0027s transport method for remote file operations."},{"line_number":1077,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e3b727d7","line":1074,"range":{"start_line":1074,"start_character":0,"end_line":1074,"end_character":40},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":1199,"context_line":"# The queue size requires value to be a power of two from [256, 1024]"},{"line_number":1200,"context_line":"# range."},{"line_number":1201,"context_line":"# https://libvirt.org/formatdomain.html#elementsDriverBackendOptions"},{"line_number":1202,"context_line":"QueueSizeType \u003d types.Integer(choices\u003d(256, 512, 1024))"},{"line_number":1203,"context_line":""},{"line_number":1204,"context_line":"libvirt_virtio_queue_sizes \u003d ["},{"line_number":1205,"context_line":"    cfg.Opt(\u0027rx_queue_size\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_23bd1fb1","line":1202,"range":{"start_line":1202,"start_character":0,"end_line":1202,"end_character":55},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/network.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":1342,"context_line":"\"\"\"),"},{"line_number":1343,"context_line":"    cfg.StrOpt(\u0027ipv6_backend\u0027,"},{"line_number":1344,"context_line":"        default\u003d\u0027rfc2462\u0027,"},{"line_number":1345,"context_line":"        choices\u003d(\u0027rfc2462\u0027, \u0027account_identifier\u0027),"},{"line_number":1346,"context_line":"        deprecated_for_removal\u003dTrue,"},{"line_number":1347,"context_line":"        deprecated_since\u003d\u002716.0.0\u0027,"},{"line_number":1348,"context_line":"        deprecated_reason\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_a3ffef64","line":1345,"range":{"start_line":1345,"start_character":0,"end_line":1345,"end_character":50},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":1400,"context_line":""},{"line_number":1401,"context_line":"service_opts \u003d ["},{"line_number":1402,"context_line":"    cfg.StrOpt(\u0027network_manager\u0027,"},{"line_number":1403,"context_line":"        choices\u003d["},{"line_number":1404,"context_line":"            \u0027nova.network.manager.FlatManager\u0027,"},{"line_number":1405,"context_line":"            \u0027nova.network.manager.FlatDHCPManager\u0027,"},{"line_number":1406,"context_line":"            \u0027nova.network.manager.VlanManager\u0027,"},{"line_number":1407,"context_line":"        ],"},{"line_number":1408,"context_line":"        default\u003d\u0027nova.network.manager.VlanManager\u0027,"},{"line_number":1409,"context_line":"        deprecated_for_removal\u003dTrue,"},{"line_number":1410,"context_line":"        deprecated_since\u003d\u002718.0.0\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_23ebdfa4","line":1407,"range":{"start_line":1403,"start_character":0,"end_line":1407,"end_character":10},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/notifications.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"a749ea5ae41faeab37b3a915cd52b724c78456ee","unresolved":false,"context_lines":[{"line_number":61,"context_line":"            (\u0027unversioned\u0027, \u0027Only the legacy unversioned notifications are \u0027"},{"line_number":62,"context_line":"             \u0027emitted\u0027),"},{"line_number":63,"context_line":"            (\u0027versioned\u0027, \u0027Only the new versioned notifications are emitted\u0027),"},{"line_number":64,"context_line":"            (\u0027both\u0027, \u0027Both the legacy unversioned and the new versioned \u0027"},{"line_number":65,"context_line":"             \u0027notifications are emitted\u0027),"},{"line_number":66,"context_line":"        ],"},{"line_number":67,"context_line":"        default\u003d\u0027both\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f79a3b5_65856907","line":64,"updated":"2018-09-10 19:29:22.000000000","message":"ditto","commit_id":"b1ebcbc6fc890675db53d3782d83dfd0a6b49a29"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":34,"context_line":"            (\u0027vm_state\u0027, \u0027notifications are sent with VM state transition \u0027"},{"line_number":35,"context_line":"             \u0027information in the ``old_state`` and ``state`` fields. The \u0027"},{"line_number":36,"context_line":"             \u0027``old_task_state`` and ``new_task_state`` fields will be set to \u0027"},{"line_number":37,"context_line":"             \u0027the current task_state of the instance\u0027),"},{"line_number":38,"context_line":"            (\u0027vm_and_task_state\u0027, \u0027notifications are sent with VM and task \u0027"},{"line_number":39,"context_line":"             \u0027state transition information\u0027),"},{"line_number":40,"context_line":"        ],"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_a63a9de3","line":37,"updated":"2018-10-05 15:51:30.000000000","message":"lost period","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":34,"context_line":"            (\u0027vm_state\u0027, \u0027notifications are sent with VM state transition \u0027"},{"line_number":35,"context_line":"             \u0027information in the ``old_state`` and ``state`` fields. The \u0027"},{"line_number":36,"context_line":"             \u0027``old_task_state`` and ``new_task_state`` fields will be set to \u0027"},{"line_number":37,"context_line":"             \u0027the current task_state of the instance\u0027),"},{"line_number":38,"context_line":"            (\u0027vm_and_task_state\u0027, \u0027notifications are sent with VM and task \u0027"},{"line_number":39,"context_line":"             \u0027state transition information\u0027),"},{"line_number":40,"context_line":"        ],"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_3cf45c88","line":37,"in_reply_to":"3f79a3b5_a63a9de3","updated":"2018-10-05 16:50:49.000000000","message":"This was intentional. I dropped them for all single-sentence descriptions","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":36,"context_line":"             \u0027``old_task_state`` and ``new_task_state`` fields will be set to \u0027"},{"line_number":37,"context_line":"             \u0027the current task_state of the instance\u0027),"},{"line_number":38,"context_line":"            (\u0027vm_and_task_state\u0027, \u0027notifications are sent with VM and task \u0027"},{"line_number":39,"context_line":"             \u0027state transition information\u0027),"},{"line_number":40,"context_line":"        ],"},{"line_number":41,"context_line":"        deprecated_group\u003d\u0027DEFAULT\u0027,"},{"line_number":42,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_461f0971","line":39,"updated":"2018-10-05 15:51:30.000000000","message":"ditto","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":36,"context_line":"             \u0027``old_task_state`` and ``new_task_state`` fields will be set to \u0027"},{"line_number":37,"context_line":"             \u0027the current task_state of the instance\u0027),"},{"line_number":38,"context_line":"            (\u0027vm_and_task_state\u0027, \u0027notifications are sent with VM and task \u0027"},{"line_number":39,"context_line":"             \u0027state transition information\u0027),"},{"line_number":40,"context_line":"        ],"},{"line_number":41,"context_line":"        deprecated_group\u003d\u0027DEFAULT\u0027,"},{"line_number":42,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_9cffb065","line":39,"in_reply_to":"3f79a3b5_461f0971","updated":"2018-10-05 16:50:49.000000000","message":"Intentional","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    cfg.StrOpt("},{"line_number":52,"context_line":"        \u0027default_level\u0027,"},{"line_number":53,"context_line":"        default\u003d\u0027INFO\u0027,"},{"line_number":54,"context_line":"        choices\u003d(\u0027DEBUG\u0027, \u0027INFO\u0027, \u0027WARN\u0027, \u0027ERROR\u0027, \u0027CRITICAL\u0027),"},{"line_number":55,"context_line":"        deprecated_group\u003d\u0027DEFAULT\u0027,"},{"line_number":56,"context_line":"        deprecated_name\u003d\u0027default_notification_level\u0027,"},{"line_number":57,"context_line":"        help\u003d\"Default notification level for outgoing notifications.\"),"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_03d583e6","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":63},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":63,"context_line":"             \u0027notifications are emitted\u0027),"},{"line_number":64,"context_line":"            (\u0027versioned\u0027, \u0027Only the new versioned notifications are emitted\u0027),"},{"line_number":65,"context_line":"            (\u0027unversioned\u0027, \u0027Only the legacy unversioned notifications are \u0027"},{"line_number":66,"context_line":"             \u0027emitted\u0027),"},{"line_number":67,"context_line":"        ],"},{"line_number":68,"context_line":"        deprecated_group\u003d\u0027DEFAULT\u0027,"},{"line_number":69,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_c6147953","line":66,"updated":"2018-10-05 15:51:30.000000000","message":"lost periods","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":63,"context_line":"             \u0027notifications are emitted\u0027),"},{"line_number":64,"context_line":"            (\u0027versioned\u0027, \u0027Only the new versioned notifications are emitted\u0027),"},{"line_number":65,"context_line":"            (\u0027unversioned\u0027, \u0027Only the legacy unversioned notifications are \u0027"},{"line_number":66,"context_line":"             \u0027emitted\u0027),"},{"line_number":67,"context_line":"        ],"},{"line_number":68,"context_line":"        deprecated_group\u003d\u0027DEFAULT\u0027,"},{"line_number":69,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_fced84b8","line":66,"in_reply_to":"3f79a3b5_c6147953","updated":"2018-10-05 16:50:49.000000000","message":"Intentional","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/powervm.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":35,"context_line":"0.05 means 1/20th of a physical processor."},{"line_number":36,"context_line":"\"\"\"),"},{"line_number":37,"context_line":"    cfg.StrOpt(\u0027disk_driver\u0027,"},{"line_number":38,"context_line":"               choices\u003d[\u0027localdisk\u0027, \u0027ssp\u0027], ignore_case\u003dTrue,"},{"line_number":39,"context_line":"               default\u003d\u0027localdisk\u0027,"},{"line_number":40,"context_line":"               help\u003d\"\"\""},{"line_number":41,"context_line":"The disk driver to use for PowerVM disks. PowerVM provides support for"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_a334cf4a","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":62},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/scheduler.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":540,"context_line":"\"\"\"),"},{"line_number":541,"context_line":"    cfg.StrOpt("},{"line_number":542,"context_line":"        \"image_properties_default_architecture\","},{"line_number":543,"context_line":"        choices\u003darch.ALL,"},{"line_number":544,"context_line":"        help\u003d\"\"\""},{"line_number":545,"context_line":"The default architecture to be used when using the image properties filter."},{"line_number":546,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_c30eab8e","line":543,"range":{"start_line":543,"start_character":0,"end_line":543,"end_character":25},"updated":"2018-10-05 15:51:30.000000000","message":".\n\nThis one ought to be fun","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/service.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":82,"context_line":"* 0 : disable the random delay"},{"line_number":83,"context_line":"\"\"\"),"},{"line_number":84,"context_line":"    cfg.ListOpt(\u0027enabled_apis\u0027,"},{"line_number":85,"context_line":"                item_type\u003dcfg.types.String(choices\u003d[\u0027osapi_compute\u0027,"},{"line_number":86,"context_line":"                                                    \u0027metadata\u0027]),"},{"line_number":87,"context_line":"                default\u003d[\u0027osapi_compute\u0027, \u0027metadata\u0027],"},{"line_number":88,"context_line":"                help\u003d\"List of APIs to be enabled by default.\"),"},{"line_number":89,"context_line":"    cfg.ListOpt(\u0027enabled_ssl_apis\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_631f97b8","line":86,"range":{"start_line":85,"start_character":0,"end_line":86,"end_character":65},"updated":"2018-10-05 15:51:30.000000000","message":".","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}],"nova/conf/xenserver.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":162,"context_line":"xenapi_vm_utils_opts \u003d ["},{"line_number":163,"context_line":"    cfg.StrOpt(\u0027cache_images\u0027,"},{"line_number":164,"context_line":"        default\u003d\u0027all\u0027,"},{"line_number":165,"context_line":"        choices\u003d["},{"line_number":166,"context_line":"            (\u0027all\u0027, \u0027Will cache all images\u0027),"},{"line_number":167,"context_line":"            (\u0027some\u0027, \u0027Will only cache images that have the image_property \u0027"},{"line_number":168,"context_line":"             \u0027``cache_in_nova\u003dTrue``\u0027),"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_a1084727","line":165,"updated":"2018-10-05 15:51:30.000000000","message":"lost periods","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":162,"context_line":"xenapi_vm_utils_opts \u003d ["},{"line_number":163,"context_line":"    cfg.StrOpt(\u0027cache_images\u0027,"},{"line_number":164,"context_line":"        default\u003d\u0027all\u0027,"},{"line_number":165,"context_line":"        choices\u003d["},{"line_number":166,"context_line":"            (\u0027all\u0027, \u0027Will cache all images\u0027),"},{"line_number":167,"context_line":"            (\u0027some\u0027, \u0027Will only cache images that have the image_property \u0027"},{"line_number":168,"context_line":"             \u0027``cache_in_nova\u003dTrue``\u0027),"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_7c2f34f5","line":165,"in_reply_to":"3f79a3b5_a1084727","updated":"2018-10-05 16:50:49.000000000","message":"Intentional","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":438,"context_line":"        choices\u003d["},{"line_number":439,"context_line":"            (\u0027direct_vhd\u0027, \u0027This plugin directly processes the VHD files in \u0027"},{"line_number":440,"context_line":"             \u0027XenServer SR(Storage Repository). So this plugin only works \u0027"},{"line_number":441,"context_line":"             \u0027when the host\\\u0027s SR type is file system based e.g. ext, nfs.\u0027),"},{"line_number":442,"context_line":"            (\u0027vdi_local_dev\u0027, \u0027This plugin implements an image handler which \u0027"},{"line_number":443,"context_line":"             \u0027attaches the instance\\\u0027s VDI as a local disk to the VM where \u0027"},{"line_number":444,"context_line":"             \u0027the OpenStack Compute service runs in. It uploads the raw disk \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e14cff76","line":441,"range":{"start_line":441,"start_character":27,"end_line":441,"end_character":29},"updated":"2018-10-05 15:51:30.000000000","message":"jeez, couldn\u0027t have used double quotes to avoid this? :P","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":438,"context_line":"        choices\u003d["},{"line_number":439,"context_line":"            (\u0027direct_vhd\u0027, \u0027This plugin directly processes the VHD files in \u0027"},{"line_number":440,"context_line":"             \u0027XenServer SR(Storage Repository). So this plugin only works \u0027"},{"line_number":441,"context_line":"             \u0027when the host\\\u0027s SR type is file system based e.g. ext, nfs.\u0027),"},{"line_number":442,"context_line":"            (\u0027vdi_local_dev\u0027, \u0027This plugin implements an image handler which \u0027"},{"line_number":443,"context_line":"             \u0027attaches the instance\\\u0027s VDI as a local disk to the VM where \u0027"},{"line_number":444,"context_line":"             \u0027the OpenStack Compute service runs in. It uploads the raw disk \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_7c08947f","line":441,"range":{"start_line":441,"start_character":27,"end_line":441,"end_character":29},"in_reply_to":"3f79a3b5_e14cff76","updated":"2018-10-05 16:50:49.000000000","message":"No :)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cd497e791cccac8c46dd814d95d2de4aa8868893","unresolved":false,"context_lines":[{"line_number":441,"context_line":"             \u0027when the host\\\u0027s SR type is file system based e.g. ext, nfs.\u0027),"},{"line_number":442,"context_line":"            (\u0027vdi_local_dev\u0027, \u0027This plugin implements an image handler which \u0027"},{"line_number":443,"context_line":"             \u0027attaches the instance\\\u0027s VDI as a local disk to the VM where \u0027"},{"line_number":444,"context_line":"             \u0027the OpenStack Compute service runs in. It uploads the raw disk \u0027"},{"line_number":445,"context_line":"             \u0027to glance when creating image; when booting an instance from a \u0027"},{"line_number":446,"context_line":"             \u0027glance image, it downloads the image and streams it into the \u0027"},{"line_number":447,"context_line":"             \u0027disk which is attached to the compute VM.\u0027),"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_a1560705","line":444,"range":{"start_line":444,"start_character":49,"end_line":444,"end_character":51},"updated":"2018-10-05 15:51:30.000000000","message":"strike (unrelated)","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b65d2a556c643f50dcb849bd41270bd61af4cc6b","unresolved":false,"context_lines":[{"line_number":441,"context_line":"             \u0027when the host\\\u0027s SR type is file system based e.g. ext, nfs.\u0027),"},{"line_number":442,"context_line":"            (\u0027vdi_local_dev\u0027, \u0027This plugin implements an image handler which \u0027"},{"line_number":443,"context_line":"             \u0027attaches the instance\\\u0027s VDI as a local disk to the VM where \u0027"},{"line_number":444,"context_line":"             \u0027the OpenStack Compute service runs in. It uploads the raw disk \u0027"},{"line_number":445,"context_line":"             \u0027to glance when creating image; when booting an instance from a \u0027"},{"line_number":446,"context_line":"             \u0027glance image, it downloads the image and streams it into the \u0027"},{"line_number":447,"context_line":"             \u0027disk which is attached to the compute VM.\u0027),"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_dc13e8b6","line":444,"range":{"start_line":444,"start_character":49,"end_line":444,"end_character":51},"in_reply_to":"3f79a3b5_a1560705","updated":"2018-10-05 16:50:49.000000000","message":"Done","commit_id":"a53a29ccf0bea32eeb5352c93280dece36e1ee28"}]}
