)]}'
{"specs/ussuri/approved/virt-rescue-stable-disk-devices.rst":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":21,"context_line":"When an instance is booted normally there are a number of possible disks"},{"line_number":22,"context_line":"that will be attached to the instance"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":" - A ephemeral/persistent root disk"},{"line_number":25,"context_line":" - Zero or more ephemeral non-root disks"},{"line_number":26,"context_line":" - Zero or more persistent non-root cinder volumes"},{"line_number":27,"context_line":" - An optional swap disk"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_73e427e1","line":24,"range":{"start_line":24,"start_character":3,"end_line":24,"end_character":35},"updated":"2019-11-12 14:59:11.000000000","message":"Based on your taxonomy here, I assume you\u0027re referring to a local root disk in the image backend, and not the potential for a cinder-backed root volume, right?\n\nThere was some question yesterday in IRC about whether or not this covered BFV instances. Is there any reason not to? And if not, can we tweak the words here to make it clear that that arrangement is also possible? Perhaps we need a follow-on spec to handle rescue for volume-backed instances, but I imagine we\u0027d want to build on what you\u0027re doing here.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":21,"context_line":"When an instance is booted normally there are a number of possible disks"},{"line_number":22,"context_line":"that will be attached to the instance"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":" - A ephemeral/persistent root disk"},{"line_number":25,"context_line":" - Zero or more ephemeral non-root disks"},{"line_number":26,"context_line":" - Zero or more persistent non-root cinder volumes"},{"line_number":27,"context_line":" - An optional swap disk"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_095ca617","line":24,"range":{"start_line":24,"start_character":3,"end_line":24,"end_character":35},"in_reply_to":"3fa7e38b_73e427e1","updated":"2019-11-12 16:37:19.000000000","message":"As discussed this should actually cover both local and BFV.\n\nI\u0027ll update this now.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":35,"context_line":" - The original root disk"},{"line_number":36,"context_line":" - An optional config drive disk"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"There are multiple problems with this. First of all several of the disk"},{"line_number":39,"context_line":"are missing entirely, eg the ephemeral non-root disks, all cinder volumes"},{"line_number":40,"context_line":"and the swap disk. This missing storage limits the scope of work the admin"},{"line_number":41,"context_line":"can do in rescue mode."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_33ceaf5b","line":38,"range":{"start_line":38,"start_character":67,"end_line":38,"end_character":71},"updated":"2019-11-12 14:59:11.000000000","message":"disks","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":35,"context_line":" - The original root disk"},{"line_number":36,"context_line":" - An optional config drive disk"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"There are multiple problems with this. First of all several of the disk"},{"line_number":39,"context_line":"are missing entirely, eg the ephemeral non-root disks, all cinder volumes"},{"line_number":40,"context_line":"and the swap disk. This missing storage limits the scope of work the admin"},{"line_number":41,"context_line":"can do in rescue mode."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_7611755d","line":38,"range":{"start_line":38,"start_character":67,"end_line":38,"end_character":71},"in_reply_to":"3fa7e38b_33ceaf5b","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":44,"context_line":"root disk. ie the rescue root is /dev/vda and the real root image is"},{"line_number":45,"context_line":"now shifted to a different device /dev/vdb. Although a well designed"},{"line_number":46,"context_line":"OS setup should not rely on the root device appearing at a fixed device"},{"line_number":47,"context_line":"name, some OS none the less do depend on this. Moving the root disk"},{"line_number":48,"context_line":"during rescue mode can thus introduce problems of its own, and in fact"},{"line_number":49,"context_line":"contribute to mistakes in rescue mode. eg it may confuse the admin into"},{"line_number":50,"context_line":"setting up their fstab to refer to /dev/vdb, when the root disk will go"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_33f78f8f","line":47,"range":{"start_line":47,"start_character":11,"end_line":47,"end_character":13},"updated":"2019-11-12 14:59:11.000000000","message":"OSes","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":44,"context_line":"root disk. ie the rescue root is /dev/vda and the real root image is"},{"line_number":45,"context_line":"now shifted to a different device /dev/vdb. Although a well designed"},{"line_number":46,"context_line":"OS setup should not rely on the root device appearing at a fixed device"},{"line_number":47,"context_line":"name, some OS none the less do depend on this. Moving the root disk"},{"line_number":48,"context_line":"during rescue mode can thus introduce problems of its own, and in fact"},{"line_number":49,"context_line":"contribute to mistakes in rescue mode. eg it may confuse the admin into"},{"line_number":50,"context_line":"setting up their fstab to refer to /dev/vdb, when the root disk will go"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_9614314f","line":47,"range":{"start_line":47,"start_character":11,"end_line":47,"end_character":13},"in_reply_to":"3fa7e38b_33f78f8f","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":46,"context_line":"OS setup should not rely on the root device appearing at a fixed device"},{"line_number":47,"context_line":"name, some OS none the less do depend on this. Moving the root disk"},{"line_number":48,"context_line":"during rescue mode can thus introduce problems of its own, and in fact"},{"line_number":49,"context_line":"contribute to mistakes in rescue mode. eg it may confuse the admin into"},{"line_number":50,"context_line":"setting up their fstab to refer to /dev/vdb, when the root disk will go"},{"line_number":51,"context_line":"back to /dev/vda after rescue mode is finished."},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_13ecd3b9","line":49,"range":{"start_line":49,"start_character":39,"end_line":49,"end_character":42},"updated":"2019-11-12 14:59:11.000000000","message":"I would change this to \"For example\" not only for formality reasons, but also so you can capitalize it as it begins a sentence.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":46,"context_line":"OS setup should not rely on the root device appearing at a fixed device"},{"line_number":47,"context_line":"name, some OS none the less do depend on this. Moving the root disk"},{"line_number":48,"context_line":"during rescue mode can thus introduce problems of its own, and in fact"},{"line_number":49,"context_line":"contribute to mistakes in rescue mode. eg it may confuse the admin into"},{"line_number":50,"context_line":"setting up their fstab to refer to /dev/vdb, when the root disk will go"},{"line_number":51,"context_line":"back to /dev/vda after rescue mode is finished."},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_360bfd2b","line":49,"range":{"start_line":49,"start_character":39,"end_line":49,"end_character":42},"in_reply_to":"3fa7e38b_13ecd3b9","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":73,"context_line":"Project Priority"},{"line_number":74,"context_line":"-----------------"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"None"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"Proposed change"},{"line_number":79,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_9383e3cb","line":76,"updated":"2019-11-12 14:59:11.000000000","message":"I believe this section is no longer in the template","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":73,"context_line":"Project Priority"},{"line_number":74,"context_line":"-----------------"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"None"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"Proposed change"},{"line_number":79,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_561d5975","line":76,"in_reply_to":"3fa7e38b_9383e3cb","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":78,"context_line":"Proposed change"},{"line_number":79,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The compute manager code will be changed such that when rescue is performed"},{"line_number":82,"context_line":"the full block device mapping will be present. This will allow instnaces to"},{"line_number":83,"context_line":"be configured with the full set of cinder volumes that would appear during"},{"line_number":84,"context_line":"normal boot."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_f31ed7b9","line":81,"range":{"start_line":81,"start_character":66,"end_line":81,"end_character":75},"updated":"2019-11-12 14:59:11.000000000","message":"performed,","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":78,"context_line":"Proposed change"},{"line_number":79,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The compute manager code will be changed such that when rescue is performed"},{"line_number":82,"context_line":"the full block device mapping will be present. This will allow instnaces to"},{"line_number":83,"context_line":"be configured with the full set of cinder volumes that would appear during"},{"line_number":84,"context_line":"normal boot."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_f62b2592","line":81,"range":{"start_line":81,"start_character":66,"end_line":81,"end_character":75},"in_reply_to":"3fa7e38b_f31ed7b9","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":79,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The compute manager code will be changed such that when rescue is performed"},{"line_number":82,"context_line":"the full block device mapping will be present. This will allow instnaces to"},{"line_number":83,"context_line":"be configured with the full set of cinder volumes that would appear during"},{"line_number":84,"context_line":"normal boot."},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_131a93c5","line":82,"range":{"start_line":82,"start_character":63,"end_line":82,"end_character":72},"updated":"2019-11-12 14:59:11.000000000","message":"instances","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":79,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The compute manager code will be changed such that when rescue is performed"},{"line_number":82,"context_line":"the full block device mapping will be present. This will allow instnaces to"},{"line_number":83,"context_line":"be configured with the full set of cinder volumes that would appear during"},{"line_number":84,"context_line":"normal boot."},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_1627e1c9","line":82,"range":{"start_line":82,"start_character":63,"end_line":82,"end_character":72},"in_reply_to":"3fa7e38b_131a93c5","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":89,"context_line":" - hw_rescue_bus\u003dvirtio|ide|usb|scsi"},{"line_number":90,"context_line":" - hw_rescue_device\u003ddisk|floppy|cdrom"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"If omitted, the virt driver will default to whatever behaviour it currently"},{"line_number":93,"context_line":"has for setting up the rescue disk. For the libvirt driver, this means the"},{"line_number":94,"context_line":"default bus would match the hw_disk_bus, and the device type would be \"disk\"."},{"line_number":95,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_33530f6f","line":92,"range":{"start_line":92,"start_character":53,"end_line":92,"end_character":62},"updated":"2019-11-12 14:59:11.000000000","message":"Just to be clear, you don\u0027t mean the current behavior in terms of ordering and all, you mean it will default to the \"current disk bus and device type\" right?","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":89,"context_line":" - hw_rescue_bus\u003dvirtio|ide|usb|scsi"},{"line_number":90,"context_line":" - hw_rescue_device\u003ddisk|floppy|cdrom"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"If omitted, the virt driver will default to whatever behaviour it currently"},{"line_number":93,"context_line":"has for setting up the rescue disk. For the libvirt driver, this means the"},{"line_number":94,"context_line":"default bus would match the hw_disk_bus, and the device type would be \"disk\"."},{"line_number":95,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_36221dbc","line":92,"range":{"start_line":92,"start_character":53,"end_line":92,"end_character":62},"in_reply_to":"3fa7e38b_33530f6f","updated":"2019-11-12 16:37:19.000000000","message":"Correct.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":96,"context_line":"The expected recommended setup would be to tag the rescue image in glance"},{"line_number":97,"context_line":"with hw_rescue_bus\u003dusb, which would indicate to the virt driver that it"},{"line_number":98,"context_line":"should attach a USB flash drive to the guest, containing the rescue image."},{"line_number":99,"context_line":"For hypervisor which can\u0027t supposed an alternative recommendation would"},{"line_number":100,"context_line":"be to tag the rescue image with hw_rescue_bus\u003dide and hw_rescue_device\u003dcdrom"},{"line_number":101,"context_line":"to cause a new CDROM device to be exposed with the rescue media."},{"line_number":102,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_134853b1","line":99,"range":{"start_line":99,"start_character":27,"end_line":99,"end_character":35},"updated":"2019-11-12 14:59:11.000000000","message":"support this,","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":96,"context_line":"The expected recommended setup would be to tag the rescue image in glance"},{"line_number":97,"context_line":"with hw_rescue_bus\u003dusb, which would indicate to the virt driver that it"},{"line_number":98,"context_line":"should attach a USB flash drive to the guest, containing the rescue image."},{"line_number":99,"context_line":"For hypervisor which can\u0027t supposed an alternative recommendation would"},{"line_number":100,"context_line":"be to tag the rescue image with hw_rescue_bus\u003dide and hw_rescue_device\u003dcdrom"},{"line_number":101,"context_line":"to cause a new CDROM device to be exposed with the rescue media."},{"line_number":102,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_b617ed54","line":99,"range":{"start_line":99,"start_character":27,"end_line":99,"end_character":35},"in_reply_to":"3fa7e38b_134853b1","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":106,"context_line":"device in the configuration, but will be marked as bootable for the BIOS,"},{"line_number":107,"context_line":"so it takes priority over the existing root device. This relies on KVM/QEMU"},{"line_number":108,"context_line":"supporting the \"bootindex\" parameter, which all supported versions do. This"},{"line_number":109,"context_line":"new rescue mode would not be supported by Xen, nor LXC."},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"},{"line_number":112,"context_line":"approval should be considered to give blessing to all virt drivers. If other"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_73e747ae","line":109,"updated":"2019-11-12 14:59:11.000000000","message":"Well, what does that mean exactly? Those libirt modes would continue to use the rescue-disk-first arrangement? Or you\u0027ll still put the disk in the back but can\u0027t tell xen/lxc to boot from it?","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":106,"context_line":"device in the configuration, but will be marked as bootable for the BIOS,"},{"line_number":107,"context_line":"so it takes priority over the existing root device. This relies on KVM/QEMU"},{"line_number":108,"context_line":"supporting the \"bootindex\" parameter, which all supported versions do. This"},{"line_number":109,"context_line":"new rescue mode would not be supported by Xen, nor LXC."},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"},{"line_number":112,"context_line":"approval should be considered to give blessing to all virt drivers. If other"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_c9b8cec8","line":109,"in_reply_to":"3fa7e38b_73e747ae","updated":"2019-11-12 16:37:19.000000000","message":"They will continue to use the existing rescue device first approach.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"},{"line_number":112,"context_line":"approval should be considered to give blessing to all virt drivers. If other"},{"line_number":113,"context_line":"virt driver maintainers wish to commit to doing this in Ocata the list of"},{"line_number":114,"context_line":"assignees will be updated"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_b3929ffb","line":113,"range":{"start_line":113,"start_character":56,"end_line":113,"end_character":61},"updated":"2019-11-12 14:59:11.000000000","message":"They probably won\u0027t commit retroactively :) Maybe just change this to \"this cycle\".","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"},{"line_number":112,"context_line":"approval should be considered to give blessing to all virt drivers. If other"},{"line_number":113,"context_line":"virt driver maintainers wish to commit to doing this in Ocata the list of"},{"line_number":114,"context_line":"assignees will be updated"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_69af5a7d","line":113,"range":{"start_line":113,"start_character":56,"end_line":113,"end_character":61},"in_reply_to":"3fa7e38b_b3929ffb","updated":"2019-11-12 16:37:19.000000000","message":"Done.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":122,"context_line":"An alternative might be to simply hardcode a different approach. eg when"},{"line_number":123,"context_line":"using KVM simply always use a USB flash device as the rescue media, and"},{"line_number":124,"context_line":"don\u0027t bother with supporting an image property. This is certainly a viable"},{"line_number":125,"context_line":"option, and if it were not for the sake of maintaining backwards compatibility"},{"line_number":126,"context_line":"with earlier OpenStack, it might even be the preferred approach."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"Data model impact"},{"line_number":129,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_f38fb7ca","line":126,"range":{"start_line":125,"start_character":65,"end_line":126,"end_character":22},"updated":"2019-11-12 14:59:11.000000000","message":"What would be the compatibility point being maintained? That old openstack rescue images only needed virtio drivers and to work on recent versions they\u0027d need to support being booted from USB? Not sure that this is really a huge deal, but I also think going the configurable route makes sense.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":122,"context_line":"An alternative might be to simply hardcode a different approach. eg when"},{"line_number":123,"context_line":"using KVM simply always use a USB flash device as the rescue media, and"},{"line_number":124,"context_line":"don\u0027t bother with supporting an image property. This is certainly a viable"},{"line_number":125,"context_line":"option, and if it were not for the sake of maintaining backwards compatibility"},{"line_number":126,"context_line":"with earlier OpenStack, it might even be the preferred approach."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"Data model impact"},{"line_number":129,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_89e736e4","line":126,"range":{"start_line":125,"start_character":65,"end_line":126,"end_character":22},"in_reply_to":"3fa7e38b_f38fb7ca","updated":"2019-11-12 16:37:19.000000000","message":"I think this was more about retaining the original behaviour in these earlier versions of OpenStack when the image properties aren\u0027t present.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":128,"context_line":"Data model impact"},{"line_number":129,"context_line":"-----------------"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"None, it merely leverages a glance image meta property"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"REST API impact"},{"line_number":134,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_936d2305","line":131,"updated":"2019-11-12 14:59:11.000000000","message":"Won\u0027t you need to change our ImageMetaProps object? \n\nhttps://github.com/openstack/nova/blob/master/nova/objects/image_meta.py#L249\n\nThat would be a direct nova data model change, which is what this section is for.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":128,"context_line":"Data model impact"},{"line_number":129,"context_line":"-----------------"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"None, it merely leverages a glance image meta property"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"REST API impact"},{"line_number":134,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_69fd1a6d","line":131,"in_reply_to":"3fa7e38b_936d2305","updated":"2019-11-12 16:37:19.000000000","message":"Moved up.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":133,"context_line":"REST API impact"},{"line_number":134,"context_line":"---------------"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"None, it merely leverages a glance image meta property"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Security impact"},{"line_number":139,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_536fabf9","line":136,"updated":"2019-11-12 14:59:11.000000000","message":"I think you can just say \"None\" here.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":133,"context_line":"REST API impact"},{"line_number":134,"context_line":"---------------"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"None, it merely leverages a glance image meta property"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Security impact"},{"line_number":139,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_29f7228f","line":136,"in_reply_to":"3fa7e38b_536fabf9","updated":"2019-11-12 16:37:19.000000000","message":"Done","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":172,"context_line":"--------------"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"When attempting to rescue a volume backed instance or use the newly introduced"},{"line_number":175,"context_line":"image properties a minimum compute service version check will be preformed to"},{"line_number":176,"context_line":"ensure the compute service is upgraded and capable of preforming the required"},{"line_number":177,"context_line":"rescue. Failure will result in the same InstanceNotRescuable exception being"},{"line_number":178,"context_line":"raised as in previous versions."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_b3493f8f","line":175,"range":{"start_line":175,"start_character":65,"end_line":175,"end_character":74},"updated":"2019-11-12 14:59:11.000000000","message":"performed","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":173,"context_line":""},{"line_number":174,"context_line":"When attempting to rescue a volume backed instance or use the newly introduced"},{"line_number":175,"context_line":"image properties a minimum compute service version check will be preformed to"},{"line_number":176,"context_line":"ensure the compute service is upgraded and capable of preforming the required"},{"line_number":177,"context_line":"rescue. Failure will result in the same InstanceNotRescuable exception being"},{"line_number":178,"context_line":"raised as in previous versions."},{"line_number":179,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_d34cfb9e","line":176,"range":{"start_line":176,"start_character":54,"end_line":176,"end_character":64},"updated":"2019-11-12 14:59:11.000000000","message":"performing","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":175,"context_line":"image properties a minimum compute service version check will be preformed to"},{"line_number":176,"context_line":"ensure the compute service is upgraded and capable of preforming the required"},{"line_number":177,"context_line":"rescue. Failure will result in the same InstanceNotRescuable exception being"},{"line_number":178,"context_line":"raised as in previous versions."},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"Implementation"},{"line_number":181,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_13529336","line":178,"updated":"2019-11-12 14:59:11.000000000","message":"So the upgrade impact summary is that operators will need to roll out the relevant release fully before adding those fields to any of their rescue images.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":175,"context_line":"image properties a minimum compute service version check will be preformed to"},{"line_number":176,"context_line":"ensure the compute service is upgraded and capable of preforming the required"},{"line_number":177,"context_line":"rescue. Failure will result in the same InstanceNotRescuable exception being"},{"line_number":178,"context_line":"raised as in previous versions."},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"Implementation"},{"line_number":181,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_4937fe4c","line":178,"in_reply_to":"3fa7e38b_13529336","updated":"2019-11-12 16:37:19.000000000","message":"Yup, across the control plane and to at least the compute node (instance.host) attempting to rescue the instance.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"448a0c5ca73a47c6bd7a086f353cb0d37aa200bf","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Extend the compute manager rescue code to handle the full block device mapping"},{"line_number":201,"context_line":"including cinder volume attachment."},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"Extend the ImageMetaProps object to add the two new properties described."},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"Extend the nova libvirt driver to setup all disks when running in rescue"},{"line_number":206,"context_line":"mode."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_d3315b0c","line":203,"updated":"2019-11-12 14:59:11.000000000","message":"Ah-ha, your data model changes were hiding down here! :)","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"784f68fc439a72d1994a2856b282b30945ee7679","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Extend the compute manager rescue code to handle the full block device mapping"},{"line_number":201,"context_line":"including cinder volume attachment."},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"Extend the ImageMetaProps object to add the two new properties described."},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"Extend the nova libvirt driver to setup all disks when running in rescue"},{"line_number":206,"context_line":"mode."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_094106a7","line":203,"in_reply_to":"3fa7e38b_d3315b0c","updated":"2019-11-12 16:37:19.000000000","message":"Copied above.","commit_id":"edbd353eccc915542095647edcfe94b5ee9a2d71"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":22,"context_line":"that will be attached to the instance"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":" - An ephemeral or persistent cinder volume root disk"},{"line_number":25,"context_line":" - Zero or more ephemeral non-root disks"},{"line_number":26,"context_line":" - Zero or more persistent non-root cinder volumes"},{"line_number":27,"context_line":" - An optional swap disk"},{"line_number":28,"context_line":" - An optional config drive disk"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_a9bb1273","line":25,"updated":"2019-11-12 16:48:17.000000000","message":"Looking at the doc preview, I *think* starting these with spaces is making them look like quoted lists instead of just lists.","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":31,"context_line":"changes significantly, and differently depending on virt drivers. In"},{"line_number":32,"context_line":"the libvirt driver, the rescue instance gets"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":" - A rescue root disk"},{"line_number":35,"context_line":" - The original root disk"},{"line_number":36,"context_line":" - An optional config drive disk"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_c94c4e9f","line":34,"updated":"2019-11-12 16:48:17.000000000","message":"These too.","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":41,"context_line":"can do in rescue mode."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"The rescue root disk is put on a device that previously held the real"},{"line_number":44,"context_line":"root disk. ie the rescue root is /dev/vda and the real root image is"},{"line_number":45,"context_line":"now shifted to a different device /dev/vdb. Although a well designed"},{"line_number":46,"context_line":"OS setup should not rely on the root device appearing at a fixed device"},{"line_number":47,"context_line":"name, some OSes none the less do depend on this. Moving the root disk"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_09dd86dc","line":44,"range":{"start_line":44,"start_character":11,"end_line":44,"end_character":13},"updated":"2019-11-12 16:48:17.000000000","message":"I missed this before, but I make the same argument about starting a sentence with an uncapitalized abbreviation :)","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":81,"context_line":"A new image property will be defined to indicate the type of device to use"},{"line_number":82,"context_line":"as the rescue disk"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":" - hw_rescue_bus\u003dvirtio|ide|usb|scsi"},{"line_number":85,"context_line":" - hw_rescue_device\u003ddisk|floppy|cdrom"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"If omitted, the virt driver will default to whatever behaviour it currently"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_6943da6d","line":84,"updated":"2019-11-12 16:48:17.000000000","message":"...and these","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":91,"context_line":"The expected recommended setup would be to tag the rescue image in glance"},{"line_number":92,"context_line":"with hw_rescue_bus\u003dusb, which would indicate to the virt driver that it"},{"line_number":93,"context_line":"should attach a USB flash drive to the guest, containing the rescue image."},{"line_number":94,"context_line":"For hypervisor which can\u0027t support this an alternative recommendation would"},{"line_number":95,"context_line":"be to tag the rescue image with hw_rescue_bus\u003dide and hw_rescue_device\u003dcdrom"},{"line_number":96,"context_line":"to cause a new CDROM device to be exposed with the rescue media."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_49fcde3e","line":94,"range":{"start_line":94,"start_character":4,"end_line":94,"end_character":14},"updated":"2019-11-12 16:48:17.000000000","message":"hypervisors","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"baf8902bfc1df3708257a82c489dcdbe5e8077c0","unresolved":false,"context_lines":[{"line_number":99,"context_line":"all the cinder volumes, local ephemeral non-root disks and swap disks are"},{"line_number":100,"context_line":"present in rescue mode. The rescue root device will be added as the *last*"},{"line_number":101,"context_line":"device in the configuration, but will be marked as bootable for the BIOS,"},{"line_number":102,"context_line":"so it takes priority over the existing root device. This relies on KVM/QEMU"},{"line_number":103,"context_line":"supporting the \"bootindex\" parameter, which all supported versions do. This"},{"line_number":104,"context_line":"new rescue mode would not be supported by Xen, nor LXC."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_2cdad078","line":103,"range":{"start_line":102,"start_character":52,"end_line":103,"end_character":69},"updated":"2019-11-12 17:02:33.000000000","message":"https://review.opendev.org/#/c/270286/ this landed.","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"baf8902bfc1df3708257a82c489dcdbe5e8077c0","unresolved":false,"context_lines":[{"line_number":123,"context_line":"Data model impact"},{"line_number":124,"context_line":"-----------------"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"Extend the ImageMetaProps object to add the two new properties described."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"REST API impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_0c8a7463","line":126,"range":{"start_line":126,"start_character":0,"end_line":126,"end_character":73},"updated":"2019-11-12 17:02:33.000000000","message":"https://review.opendev.org/#/c/270285/ this actually landed.","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":129,"context_line":"REST API impact"},{"line_number":130,"context_line":"---------------"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"None"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"Security impact"},{"line_number":135,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_e9a82a21","line":132,"updated":"2019-11-12 16:48:17.000000000","message":"So, per our discussion, did you want to actually change this to mention the API behavior of not being able to rescue BFV instances will change for libvirt? Or do you think we should keep that behavior change to a different spec/bp? I\u0027d be fine with making it separate, but it\u0027d be pretty small and it\u0027d also be required to validate that the root-volume bit of this is working.","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5e9391503fb1cb95e5b23a5e054cd49537d8ce81","unresolved":false,"context_lines":[{"line_number":168,"context_line":"--------------"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"When attempting to rescue a volume backed instance or use the newly introduced"},{"line_number":171,"context_line":"image properties a minimum compute service version check will be performed to"},{"line_number":172,"context_line":"ensure the compute service is upgraded and capable of performing the required"},{"line_number":173,"context_line":"rescue. Failure will result in the same InstanceNotRescuable exception being"},{"line_number":174,"context_line":"raised as in previous versions."}],"source_content_type":"text/x-rst","patch_set":2,"id":"3fa7e38b_097906c4","line":171,"range":{"start_line":171,"start_character":19,"end_line":171,"end_character":56},"updated":"2019-11-12 16:48:17.000000000","message":"If you decide to include the API change to allow BFV rescues in this spec, then you should mention the compute capability flag check that will be needed. As noted on IRC, if you do those together, you can *just* do the capability flag check and dispense with the version check as an older or incapable node will not expose that flag and the outcome is the same.","commit_id":"5b8e32e60390e105742c38d694ea5fe01c5da579"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"51c5ab28fb816a58a1a175ef455f4abf1829e775","unresolved":false,"context_lines":[{"line_number":76,"context_line":"This spec will not cover the removal of the current boot from volume check in"},{"line_number":77,"context_line":"the compute API that currently blocks any attempt to rescue an instance using a"},{"line_number":78,"context_line":"root cinder volume. The removal of this check and subsequent impact on the"},{"line_number":79,"context_line":"overall API will be covered in a follow up spec."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The compute manager code will be changed such that when rescue is preformed the"},{"line_number":82,"context_line":"full block device mapping will be present. This will allow instances to be"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3fa7e38b_390c3eeb","line":79,"updated":"2019-11-13 16:00:32.000000000","message":"++","commit_id":"9266c4fbec3181d06634a3591863100ce117f717"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"51c5ab28fb816a58a1a175ef455f4abf1829e775","unresolved":false,"context_lines":[{"line_number":78,"context_line":"root cinder volume. The removal of this check and subsequent impact on the"},{"line_number":79,"context_line":"overall API will be covered in a follow up spec."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The compute manager code will be changed such that when rescue is preformed the"},{"line_number":82,"context_line":"full block device mapping will be present. This will allow instances to be"},{"line_number":83,"context_line":"configured with the full set of non-root cinder volumes that would appear"},{"line_number":84,"context_line":"during normal boot."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3fa7e38b_792b9632","line":81,"range":{"start_line":81,"start_character":66,"end_line":81,"end_character":75},"updated":"2019-11-13 16:00:32.000000000","message":"Heh, you added a new one... \"performed\".","commit_id":"9266c4fbec3181d06634a3591863100ce117f717"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"51c5ab28fb816a58a1a175ef455f4abf1829e775","unresolved":false,"context_lines":[{"line_number":107,"context_line":"this trait is missing the existing ``InstanceNotRescuable`` exception will be"},{"line_number":108,"context_line":"raised leading to a 400 error to the caller, highlighting the fact that these"},{"line_number":109,"context_line":"image properties will not result in a stable device rescue and should be"},{"line_number":110,"context_line":"removed."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"The Libvirt nova driver will be changed so that when booting in rescue mode,"},{"line_number":113,"context_line":"all the non-root cinder volumes, local ephemeral non-root disks and swap disks"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3fa7e38b_79871614","line":110,"updated":"2019-11-13 16:00:32.000000000","message":"This is fine, but requires a call to placement to determine. We *could* just make the version check and then let the compute manager raise this exception if the driver raises NotImplementedError.\n\nWe could also ignore this case I think, as the operator controls the rescue image, and the properties on it, so a user won\u0027t really know why this is failing if it does. Right?\n\nMy other comment about doing this via capability or trait was more to handle the is-volume-backed check from the API. So we\u0027ll have to add *another* trait for can-rescue-volume-backed-instances and check that separately from just this bit.","commit_id":"9266c4fbec3181d06634a3591863100ce117f717"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"6d77325a694af8de91b49bb10fa8d60d133c8830","unresolved":false,"context_lines":[{"line_number":107,"context_line":"this trait is missing the existing ``InstanceNotRescuable`` exception will be"},{"line_number":108,"context_line":"raised leading to a 400 error to the caller, highlighting the fact that these"},{"line_number":109,"context_line":"image properties will not result in a stable device rescue and should be"},{"line_number":110,"context_line":"removed."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"The Libvirt nova driver will be changed so that when booting in rescue mode,"},{"line_number":113,"context_line":"all the non-root cinder volumes, local ephemeral non-root disks and swap disks"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3fa7e38b_c62097fb","line":110,"in_reply_to":"3fa7e38b_13a6fa10","updated":"2019-11-14 13:12:05.000000000","message":"ACK understood, I\u0027ll respin and drop the above paragraph now.","commit_id":"9266c4fbec3181d06634a3591863100ce117f717"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"652308efe33ccbece57f31b178d17c55939075e6","unresolved":false,"context_lines":[{"line_number":107,"context_line":"this trait is missing the existing ``InstanceNotRescuable`` exception will be"},{"line_number":108,"context_line":"raised leading to a 400 error to the caller, highlighting the fact that these"},{"line_number":109,"context_line":"image properties will not result in a stable device rescue and should be"},{"line_number":110,"context_line":"removed."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"The Libvirt nova driver will be changed so that when booting in rescue mode,"},{"line_number":113,"context_line":"all the non-root cinder volumes, local ephemeral non-root disks and swap disks"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3fa7e38b_13a6fa10","line":110,"in_reply_to":"3fa7e38b_79871614","updated":"2019-11-13 20:14:44.000000000","message":"Actually, ignore my \"let compute manager handle support\" comment. I forgot rescue is a cast. I still think:\n\n 1. We probably don\u0027t need a check for a conflict between stable support and the image keys because the user isn\u0027t in control\n 2. If we have that check, we could gate the fatality on a version check instead\n 3. I do think a trait/flag for \"can rescue BFV instances\" makes sense\n\nIf you take my combo of 1 and 3, we\u0027d have one trait for the BFV case, and no safety check if the operator has configured a rescue image with the not-honorable image keys in it for the transient case. Since those keys are already present since Ocata, they could have them on images now with no impact (AFAIK) so suddenly breaking on that for un-updated computes would be kinda weird.","commit_id":"9266c4fbec3181d06634a3591863100ce117f717"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":53,"context_line":"This change in disk presence during rescue mode is very different to"},{"line_number":54,"context_line":"what happens to disks on a baremetal machine when booted from rescue"},{"line_number":55,"context_line":"media. This means that admin knowledge from working in a bare metal"},{"line_number":56,"context_line":"world needs to be re-learnt for OpenStack rescue mode, which adds an"},{"line_number":57,"context_line":"undesirable learning burden for the admin."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"When disks change what address they appear at, this can cause upset"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_8274c8d1","line":56,"range":{"start_line":56,"start_character":21,"end_line":56,"end_character":27},"updated":"2019-11-14 16:18:57.000000000","message":"learned","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":107,"context_line":"device in the configuration, but will be marked as bootable for the BIOS, so it"},{"line_number":108,"context_line":"takes priority over the existing root device. This relies on KVM/QEMU"},{"line_number":109,"context_line":"supporting the \"bootindex\" parameter, which all supported versions do. This new"},{"line_number":110,"context_line":"rescue mode would not be supported by Xen, nor LXC."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"},{"line_number":113,"context_line":"approval should be considered to give blessing to all virt drivers. If other"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_822288b9","line":110,"range":{"start_line":110,"start_character":38,"end_line":110,"end_character":51},"updated":"2019-11-14 16:18:57.000000000","message":"How about Virtuozzo?","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":109,"context_line":"supporting the \"bootindex\" parameter, which all supported versions do. This new"},{"line_number":110,"context_line":"rescue mode would not be supported by Xen, nor LXC."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"Other virt driver maintainers may wish to also implement this blueprint, so"},{"line_number":113,"context_line":"approval should be considered to give blessing to all virt drivers. If other"},{"line_number":114,"context_line":"virt driver maintainers wish to commit to doing this in this cycle the list"},{"line_number":115,"context_line":"of assignees will be updated."}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_62274cc9","line":112,"updated":"2019-11-14 16:18:57.000000000","message":"To be clear, the thing other virt drivers would need to do is account for those other image properties, right? Otherwise they just do as they do today.\n\nSpeaking of that, what happens if you\u0027re using hyperv or vmware and you rescue with an image using those properties? Will we fail the rescue because essentially we can\u0027t honor the contract from the image metadata so the results of the rescue might not be what the user expected? Or are we just going to silently ignore them in the other virt drivers?","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":124,"context_line":"using KVM simply always use a USB flash device as the rescue media, and"},{"line_number":125,"context_line":"don\u0027t bother with supporting an image property. This is certainly a viable"},{"line_number":126,"context_line":"option, and if it were not for the sake of maintaining backwards compatibility"},{"line_number":127,"context_line":"with earlier OpenStack, it might even be the preferred approach."},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"Data model impact"},{"line_number":130,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_6515163d","line":127,"updated":"2019-11-14 16:18:57.000000000","message":"However, then you get different behaviors depending on which hypervisor driver your VM is running on, right? I mean, I guess that\u0027s going to be the case with this spec anyway because if you rescue with an image using those properties but your VM is not running on the libvirt driver, the image properties aren\u0027t going to be honored.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":168,"context_line":"Developer impact"},{"line_number":169,"context_line":"----------------"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"None"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"Upgrade impact"},{"line_number":174,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_652e768d","line":171,"updated":"2019-11-14 16:18:57.000000000","message":"Well, other virt driver maintainers that already support rescue in their driver would want to consider adding support for the image properties, right? Just wondering about the case mentioned above where those non-libvirt drivers get an image with the properties but they don\u0027t support them.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":173,"context_line":"Upgrade impact"},{"line_number":174,"context_line":"--------------"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"None"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"Implementation"},{"line_number":179,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_e557c600","line":176,"updated":"2019-11-14 16:18:57.000000000","message":"So if my server is running on a Train compute but the control plane is Ussuri and doing rolling upgrades, if I try to rescue with the image using those properties, it\u0027s not going to work as I expected. Any consideration for minimum compute service version checks when rescuing with an image that has those properties?","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e17b762143b82486eb3437de1490abe5afbc1429","unresolved":false,"context_lines":[{"line_number":173,"context_line":"Upgrade impact"},{"line_number":174,"context_line":"--------------"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"None"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"Implementation"},{"line_number":179,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_486111d3","line":176,"in_reply_to":"3fa7e38b_a80be51f","updated":"2019-11-14 17:10:01.000000000","message":"True they have been around albeit undocumented so I don\u0027t think anyone would know to use them. To be clear, I\u0027m not -1 because I think we need to be super strict about upgrade impacts here with checking service versions and such, but I think it\u0027s worth calling out in the spec as a thing we\u0027re consciously not going to do and why for if/when it comes up later at some point.\n\nThat\u0027s really what my -1 is about: documenting the responses to the things I\u0027ve mentioned, like ignoring the properties for the other drivers above (if we do that), in case it comes up later.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"9003eeeb5120eea7d7526c57763c7f1ac4ce5ab9","unresolved":false,"context_lines":[{"line_number":173,"context_line":"Upgrade impact"},{"line_number":174,"context_line":"--------------"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"None"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"Implementation"},{"line_number":179,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_a80be51f","line":176,"in_reply_to":"3fa7e38b_e557c600","updated":"2019-11-14 17:04:51.000000000","message":"These properties have been around since ocata. So today you can rescue with those properties set to something and they\u0027re just ignored. I think that just starting to honor them when we can is fine, no?","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":190,"context_line":""},{"line_number":191,"context_line":"Feature Liaison"},{"line_number":192,"context_line":"---------------"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":""},{"line_number":195,"context_line":"Work Items"},{"line_number":196,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_853e12b7","line":193,"updated":"2019-11-14 16:18:57.000000000","message":"Doesn\u0027t this need to be filled in?","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e17b762143b82486eb3437de1490abe5afbc1429","unresolved":false,"context_lines":[{"line_number":190,"context_line":""},{"line_number":191,"context_line":"Feature Liaison"},{"line_number":192,"context_line":"---------------"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":""},{"line_number":195,"context_line":"Work Items"},{"line_number":196,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_68b16d44","line":193,"in_reply_to":"3fa7e38b_853e12b7","updated":"2019-11-14 17:10:01.000000000","message":"After reading the FAQ:\n\nhttps://specs.openstack.org/openstack/nova-specs/readme.html#feature-liaison-faq\n\nIt sounds like you can just list yourself here (lyarwood) since you\u0027re an experienced nova developer that doesn\u0027t require hand holding.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":212,"context_line":"Testing"},{"line_number":213,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"A new tempest test will be used to validate correct operation of the new"},{"line_number":216,"context_line":"code."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_c56deacc","line":215,"updated":"2019-11-14 16:18:57.000000000","message":"It\u0027s a nit and implementation detail for any tempest testing, but obviously tempest would grow a config option for this since it\u0027s hypervisor specific.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[{"line_number":218,"context_line":"Documentation Impact"},{"line_number":219,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"The new image properties should be documented, and any information about"},{"line_number":222,"context_line":"rescue mode should be updated to explain how disks appear."},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"References"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_e5a58604","line":221,"range":{"start_line":221,"start_character":51,"end_line":221,"end_character":66},"updated":"2019-11-14 16:18:57.000000000","message":"It would probably be useful if we had *any* documentation about rescue today but I don\u0027t think we do:\n\nhttps://docs.openstack.org/nova/latest/search.html?q\u003drescue\n\nThat\u0027s a latent issue, but it sure would be nice if someone wrote up some docs on the rescue operation as it exists today and then we can build on that for the new stuff.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"beb876f3b6fef7f9ba771c41808696365abbf109","unresolved":false,"context_lines":[{"line_number":218,"context_line":"Documentation Impact"},{"line_number":219,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"The new image properties should be documented, and any information about"},{"line_number":222,"context_line":"rescue mode should be updated to explain how disks appear."},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"References"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_c525ea5d","line":221,"range":{"start_line":221,"start_character":51,"end_line":221,"end_character":66},"in_reply_to":"3fa7e38b_055ea2e8","updated":"2019-11-14 16:27:37.000000000","message":"\u003e We should probably split that out or re-title it.\n\nhttps://bugs.launchpad.net/nova/+bug/1852609","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"dd1ece7565b034e46463d2534417d5396324fa82","unresolved":false,"context_lines":[{"line_number":218,"context_line":"Documentation Impact"},{"line_number":219,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"The new image properties should be documented, and any information about"},{"line_number":222,"context_line":"rescue mode should be updated to explain how disks appear."},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"References"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3fa7e38b_055ea2e8","line":221,"range":{"start_line":221,"start_character":51,"end_line":221,"end_character":66},"in_reply_to":"3fa7e38b_e5a58604","updated":"2019-11-14 16:24:22.000000000","message":"I guess https://docs.openstack.org/nova/latest/user/reboot.html has some rescue stuff in it. Ironically it has more documentation about rescue than reboot. We should probably split that out or re-title it.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e1e6b0cb5f8204cf7b0a9324bcd8df02184a5f9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3fa7e38b_05822253","line":228,"updated":"2019-11-14 16:18:57.000000000","message":"You\u0027re missing the History section from the template. Given this spec was previously approved and floundered a couple of times I think that\u0027s worth documenting.","commit_id":"aa535442d54eaae5c00c7d195bd87264193172d5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ee5868b44a4e0596a7f91d7e356e364a0e22a24f","unresolved":false,"context_lines":[{"line_number":217,"context_line":"Testing"},{"line_number":218,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"A new tempest Libvirt feature configurable and test will be used to validate"},{"line_number":221,"context_line":"correct operation of the new code."},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":7,"id":"3fa7e38b_57e51e09","line":220,"range":{"start_line":220,"start_character":14,"end_line":220,"end_character":21},"updated":"2019-11-15 15:26:49.000000000","message":"nit: it wouldn\u0027t really be a libvirt specific feature toggle, it\u0027d be named something like, \"supports_stable_disk_rescue\" or something. Then if you\u0027re testing against a cloud using a compute driver that supports those image properties you can enable that test. Libvirt would be the only one to start but eventually others could also.","commit_id":"7e3a03897595593830eedd73bc580528c97439f3"}]}
