)]}'
{"ironic/conf/pxe.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e591b0ab9947c3598aa7743ae270e4f521ee8b40","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                      \u0027images are stored on disk. \u0027"},{"line_number":79,"context_line":"                      \u0027Setting to the empty string disables image caching.\u0027)),"},{"line_number":80,"context_line":"    cfg.StrOpt(\u0027wholedisk_bootfile\u0027,"},{"line_number":81,"context_line":"               default\u003d\u0027/efi/boot/bootx64.efi\u0027,"},{"line_number":82,"context_line":"               help\u003d_(\u0027Boot File for WholeDisk Images\u0027)),"},{"line_number":83,"context_line":"    cfg.IntOpt(\u0027dir_permission\u0027,"},{"line_number":84,"context_line":"               help\u003d_(\"The permission that will be applied to the TFTP \""}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_25965a40","line":81,"updated":"2019-08-27 17:55:15.000000000","message":"This is fine for x86, but what about environments with both x86 and arm gear?  Maybe that is scope creep of the fix, but we support arm today and I suspect arm operators may just already be operating their grub templates...","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"e902c314a93fdb80acdd23339af6d54bcd2273d6","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                      \u0027images are stored on disk. \u0027"},{"line_number":79,"context_line":"                      \u0027Setting to the empty string disables image caching.\u0027)),"},{"line_number":80,"context_line":"    cfg.StrOpt(\u0027wholedisk_bootfile\u0027,"},{"line_number":81,"context_line":"               default\u003d\u0027/efi/boot/bootx64.efi\u0027,"},{"line_number":82,"context_line":"               help\u003d_(\u0027Boot File for WholeDisk Images\u0027)),"},{"line_number":83,"context_line":"    cfg.IntOpt(\u0027dir_permission\u0027,"},{"line_number":84,"context_line":"               help\u003d_(\"The permission that will be applied to the TFTP \""}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_12859807","line":81,"in_reply_to":"7faddb67_25965a40","updated":"2019-08-28 10:59:11.000000000","message":"As of today PXE booting of wholedisk is not working. This patch will work fine for x86 environments. For arm environments we can change the wholedisk_bootfile.","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e591b0ab9947c3598aa7743ae270e4f521ee8b40","unresolved":false,"context_lines":[{"line_number":79,"context_line":"                      \u0027Setting to the empty string disables image caching.\u0027)),"},{"line_number":80,"context_line":"    cfg.StrOpt(\u0027wholedisk_bootfile\u0027,"},{"line_number":81,"context_line":"               default\u003d\u0027/efi/boot/bootx64.efi\u0027,"},{"line_number":82,"context_line":"               help\u003d_(\u0027Boot File for WholeDisk Images\u0027)),"},{"line_number":83,"context_line":"    cfg.IntOpt(\u0027dir_permission\u0027,"},{"line_number":84,"context_line":"               help\u003d_(\"The permission that will be applied to the TFTP \""},{"line_number":85,"context_line":"                      \"folders upon creation. This should be set to the \""}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_85d38e37","line":82,"updated":"2019-08-27 17:55:15.000000000","message":"So this is not absolute path on system, but absolute path with-in the tftpboot folder correct?","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"e902c314a93fdb80acdd23339af6d54bcd2273d6","unresolved":false,"context_lines":[{"line_number":79,"context_line":"                      \u0027Setting to the empty string disables image caching.\u0027)),"},{"line_number":80,"context_line":"    cfg.StrOpt(\u0027wholedisk_bootfile\u0027,"},{"line_number":81,"context_line":"               default\u003d\u0027/efi/boot/bootx64.efi\u0027,"},{"line_number":82,"context_line":"               help\u003d_(\u0027Boot File for WholeDisk Images\u0027)),"},{"line_number":83,"context_line":"    cfg.IntOpt(\u0027dir_permission\u0027,"},{"line_number":84,"context_line":"               help\u003d_(\"The permission that will be applied to the TFTP \""},{"line_number":85,"context_line":"                      \"folders upon creation. This should be set to the \""}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_97b89dc7","line":82,"in_reply_to":"7faddb67_85d38e37","updated":"2019-08-28 10:59:11.000000000","message":"This is not the absolute path with-in the tftpboot folder. This is absolute path of the boot loader file with in the EFI patition of the qcow2 image which the user has specified. This work for all Linux Distro\u0027s and for Windows Server also.","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b86d037652b489526a32949c69d59f32185aeda4","unresolved":true,"context_lines":[{"line_number":76,"context_line":"               default\u003d\u0027/tftpboot/master_images\u0027,"},{"line_number":77,"context_line":"               help\u003d_(\u0027On ironic-conductor node, directory where master TFTP \u0027"},{"line_number":78,"context_line":"                      \u0027images are stored on disk. \u0027"},{"line_number":79,"context_line":"                      \u0027Setting to the empty string disables image caching.\u0027)),"},{"line_number":80,"context_line":"    cfg.StrOpt(\u0027wholedisk_bootfile\u0027,"},{"line_number":81,"context_line":"               default\u003d\u0027/efi/boot/bootx64.efi\u0027,"},{"line_number":82,"context_line":"               help\u003d_(\u0027Boot File for WholeDisk Images\u0027)),"},{"line_number":83,"context_line":"    cfg.IntOpt(\u0027dir_permission\u0027,"},{"line_number":84,"context_line":"               help\u003d_(\"The permission that will be applied to the TFTP \""},{"line_number":85,"context_line":"                      \"folders upon creation. This should be set to the \""}],"source_content_type":"text/x-python","patch_set":8,"id":"9e6abdca_a28effc6","line":82,"range":{"start_line":79,"start_character":0,"end_line":82,"end_character":57},"updated":"2021-07-03 05:40:46.000000000","message":"We auto-detect this in IPA. This is highly variable and leads to untested paths if the default is not loaded.","commit_id":"c52bac9bbc55d566038ebc9c20ab8d5dbc1317df"}],"ironic/drivers/modules/deploy_utils.py":[{"author":{"_account_id":30127,"name":"John Hou","email":"houj@awcloud.com","username":"houj"},"change_message_id":"81ad4b56fe8c0a7db1d01a7c47874452c4fe6b30","unresolved":false,"context_lines":[{"line_number":414,"context_line":""},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"def deploy_disk_image(address, port, iqn, lun,"},{"line_number":417,"context_line":"                      image_path, node_uuid, boot_mode, configdrive\u003dNone,"},{"line_number":418,"context_line":"                      conv_flags\u003dNone):"},{"line_number":419,"context_line":"    \"\"\"All-in-one function to deploy a whole disk image to a node."},{"line_number":420,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_42494530","line":417,"range":{"start_line":417,"start_character":45,"end_line":417,"end_character":54},"updated":"2019-06-18 04:11:01.000000000","message":"How about setting boot_mode a default value ?","commit_id":"a33a755826dd57dc936965a302fff31ab9f42ef9"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"235980116e996577060977511e4dcd4b26c53d84","unresolved":false,"context_lines":[{"line_number":414,"context_line":""},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"def deploy_disk_image(address, port, iqn, lun,"},{"line_number":417,"context_line":"                      image_path, node_uuid, boot_mode, configdrive\u003dNone,"},{"line_number":418,"context_line":"                      conv_flags\u003dNone):"},{"line_number":419,"context_line":"    \"\"\"All-in-one function to deploy a whole disk image to a node."},{"line_number":420,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_22b45135","line":417,"updated":"2019-06-18 03:52:03.000000000","message":"Rather than a new mandatory argument how about making this boot_mode\u003dNone so that existing uses do not have to change?","commit_id":"a33a755826dd57dc936965a302fff31ab9f42ef9"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"235980116e996577060977511e4dcd4b26c53d84","unresolved":false,"context_lines":[{"line_number":423,"context_line":"    :param iqn: The iSCSI qualified name."},{"line_number":424,"context_line":"    :param lun: The iSCSI logical unit number."},{"line_number":425,"context_line":"    :param image_path: Path for the instance\u0027s disk image."},{"line_number":426,"context_line":"    :param node_uuid: node\u0027s uuid."},{"line_number":427,"context_line":"    :param configdrive: Optional. Base64 encoded Gzipped configdrive content"},{"line_number":428,"context_line":"                        or configdrive HTTP URL."},{"line_number":429,"context_line":"    :param conv_flags: Optional. Add a flag that will modify the behaviour of"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_c2821553","line":426,"updated":"2019-06-18 03:52:03.000000000","message":"Add boot_mode here","commit_id":"a33a755826dd57dc936965a302fff31ab9f42ef9"},{"author":{"_account_id":30127,"name":"John Hou","email":"houj@awcloud.com","username":"houj"},"change_message_id":"81ad4b56fe8c0a7db1d01a7c47874452c4fe6b30","unresolved":false,"context_lines":[{"line_number":439,"context_line":"            disk_utils.create_config_drive_partition(node_uuid, dev,"},{"line_number":440,"context_line":"                                                     configdrive)"},{"line_number":441,"context_line":""},{"line_number":442,"context_line":"        if boot_mode \u003d\u003d \u0027uefi\u0027:"},{"line_number":443,"context_line":"            disk_identifier \u003d disk_utils.get_uefi_disk_identifier(dev)"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            disk_identifier \u003d disk_utils.get_disk_identifier(dev)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_82265d68","line":442,"range":{"start_line":442,"start_character":11,"end_line":442,"end_character":30},"updated":"2019-06-18 04:11:01.000000000","message":"Define a const UEFI?","commit_id":"a33a755826dd57dc936965a302fff31ab9f42ef9"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"f24cee431673bafe83264438e3057b828f040f3a","unresolved":false,"context_lines":[{"line_number":414,"context_line":""},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"def deploy_disk_image(address, port, iqn, lun,"},{"line_number":417,"context_line":"                      image_path, node_uuid, boot_mode\u003dNone, configdrive\u003dNone,"},{"line_number":418,"context_line":"                      conv_flags\u003dNone):"},{"line_number":419,"context_line":"    \"\"\"All-in-one function to deploy a whole disk image to a node."},{"line_number":420,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_ea2f8aa4","line":417,"range":{"start_line":417,"start_character":55,"end_line":417,"end_character":59},"updated":"2019-08-14 10:22:48.000000000","message":"The default value can be \u0027bios\u0027 as we do at [1]\n\n[1] https://github.com/openstack/ironic/blob/master/ironic/drivers/modules/deploy_utils.py#L358","commit_id":"14ee36b719245e4d48d6dd08f7e085a5cadcb6f6"}],"ironic/drivers/modules/iscsi_deploy.py":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"f24cee431673bafe83264438e3057b828f040f3a","unresolved":false,"context_lines":[{"line_number":118,"context_line":"                       \u0027ephemeral_mb\u0027: i_info[\u0027ephemeral_mb\u0027],"},{"line_number":119,"context_line":"                       \u0027preserve_ephemeral\u0027: i_info[\u0027preserve_ephemeral\u0027],"},{"line_number":120,"context_line":"                       \u0027boot_option\u0027: deploy_utils.get_boot_option(node),"},{"line_number":121,"context_line":"                       \u0027boot_mode\u0027: boot_mode_utils.get_boot_mode(node)})"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"        cpu_arch \u003d node.properties.get(\u0027cpu_arch\u0027)"},{"line_number":124,"context_line":"        if cpu_arch is not None:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_0a1c6675","line":121,"range":{"start_line":121,"start_character":23,"end_line":121,"end_character":71},"updated":"2019-08-14 10:22:48.000000000","message":"This redundant line can be removed.","commit_id":"14ee36b719245e4d48d6dd08f7e085a5cadcb6f6"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b86d037652b489526a32949c69d59f32185aeda4","unresolved":true,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    params \u003d {"},{"line_number":106,"context_line":"        \u0027address\u0027: address,"},{"line_number":107,"context_line":"        \u0027port\u0027: port or CONF.iscsi.portal_port,"},{"line_number":108,"context_line":"        \u0027iqn\u0027: iqn,"},{"line_number":109,"context_line":"        \u0027lun\u0027: lun,"},{"line_number":110,"context_line":"        \u0027image_path\u0027: deploy_utils._get_image_file_path(node.uuid),"}],"source_content_type":"text/x-python","patch_set":8,"id":"ce7a1b9c_1a6e7a30","side":"PARENT","line":107,"updated":"2021-07-03 05:40:46.000000000","message":"We don\u0027t have iscsi_deploy.py anymore.","commit_id":"55b7d43291987a9bf5ce9d4c06321e0b8e51f41f"}],"ironic/drivers/modules/pxe_grub_config.template":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"f24cee431673bafe83264438e3057b828f040f3a","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"menuentry \"boot_whole_disk\"  {"},{"line_number":21,"context_line":"    search --set\u003droot --fs-uuid {{ DISK_IDENTIFIER }}"},{"line_number":22,"context_line":"    chainloader ($root)/efi/boot/bootx64.efi"},{"line_number":23,"context_line":"    boot"},{"line_number":24,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"7faddb67_2a060222","line":22,"range":{"start_line":22,"start_character":23,"end_line":22,"end_character":44},"updated":"2019-08-14 10:22:48.000000000","message":"Instead of hard coding can this be a config or a node property?","commit_id":"14ee36b719245e4d48d6dd08f7e085a5cadcb6f6"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e591b0ab9947c3598aa7743ae270e4f521ee8b40","unresolved":false,"context_lines":[{"line_number":20,"context_line":"menuentry \"boot_whole_disk\"  {"},{"line_number":21,"context_line":"    search --set\u003droot --fs-uuid {{ DISK_IDENTIFIER }}"},{"line_number":22,"context_line":"    chainloader ($root){{ WHOLEDISK_BOOTFILE }}"},{"line_number":23,"context_line":"    boot"},{"line_number":24,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"7faddb67_e51e020c","line":23,"updated":"2019-08-27 17:55:15.000000000","message":"Would it not make sense to not default to network booting all instances, and just relying upon the local boot loader to be properly configured?","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"e902c314a93fdb80acdd23339af6d54bcd2273d6","unresolved":false,"context_lines":[{"line_number":20,"context_line":"menuentry \"boot_whole_disk\"  {"},{"line_number":21,"context_line":"    search --set\u003droot --fs-uuid {{ DISK_IDENTIFIER }}"},{"line_number":22,"context_line":"    chainloader ($root){{ WHOLEDISK_BOOTFILE }}"},{"line_number":23,"context_line":"    boot"},{"line_number":24,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"7faddb67_b2f7e48c","line":23,"in_reply_to":"7faddb67_e51e020c","updated":"2019-08-28 10:59:11.000000000","message":"This not network booting. I\u0027m setting the uuid of EFI partition as root and chain loading the boot loader from the user image.","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b86d037652b489526a32949c69d59f32185aeda4","unresolved":true,"context_lines":[{"line_number":18,"context_line":"}"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"menuentry \"boot_whole_disk\"  {"},{"line_number":21,"context_line":"    search --set\u003droot --fs-uuid {{ DISK_IDENTIFIER }}"},{"line_number":22,"context_line":"    chainloader ($root){{ WHOLEDISK_BOOTFILE }}"},{"line_number":23,"context_line":"    boot"},{"line_number":24,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"c98517af_d7a6d30b","line":23,"range":{"start_line":21,"start_character":0,"end_line":23,"end_character":8},"updated":"2021-07-03 05:40:46.000000000","message":"Okay, this might make *some* sense, *but* we shouldn\u0027t be network booting by default.  And even then in this case we\u0027ve gone from PXE, possibly bios or not, and chaining to something else which this patch implies is UEFI mode.  I guess this opens up a number of different possible paths. If we really want to network boot by default to a disk based OS, which we know is extremely problematic operationally, as the node possibly cannot boot without the ironic conductors running.","commit_id":"c52bac9bbc55d566038ebc9c20ab8d5dbc1317df"}],"releasenotes/notes/uefi-pxe--provisioning-wholedisk-287fc8c156831fc5.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e591b0ab9947c3598aa7743ae270e4f521ee8b40","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    This fixes Story: 2005532. By setting the root and load the bootx64.efi"},{"line_number":5,"context_line":"    file using chainloader and boot the machine. Default bootfile is"},{"line_number":6,"context_line":"    \u0027/efi/boot/bootx64.efi\u0027, by using \u0027WHOLEDISK_BOOTFILE\u0027 option under \u0027PXE\u0027"},{"line_number":7,"context_line":"    section we change the deafult bootfile."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"7faddb67_25a89a8a","line":7,"updated":"2019-08-27 17:55:15.000000000","message":"Please start out in the following format:\n\n\"Fixes xyz issue, by abc. X may be required as configuration, See URL\"\n\nAlso, please add an upgrade note indicating that the operator will likely need to change the boot file path.","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"e902c314a93fdb80acdd23339af6d54bcd2273d6","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    This fixes Story: 2005532. By setting the root and load the bootx64.efi"},{"line_number":5,"context_line":"    file using chainloader and boot the machine. Default bootfile is"},{"line_number":6,"context_line":"    \u0027/efi/boot/bootx64.efi\u0027, by using \u0027WHOLEDISK_BOOTFILE\u0027 option under \u0027PXE\u0027"},{"line_number":7,"context_line":"    section we change the deafult bootfile."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"7faddb67_15dee23d","line":7,"in_reply_to":"7faddb67_25a89a8a","updated":"2019-08-28 10:59:11.000000000","message":"Done","commit_id":"d7bc9d68119e3d45867eaccec014056da7ec8c3c"}]}
