)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"3ed419c6a2d1cde05c4634d7c5670c1fbe64ed36","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"c7cea414_ac89d068","updated":"2025-09-24 04:23:55.000000000","message":"If the new approach works I will push the change with the unit tests and releasenote","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5d5a3a0a_ea56c921","updated":"2025-09-24 11:49:20.000000000","message":"I\u0027m happy with the direction, a few minor comments inline","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"c82e66b8f332093585864599cc43f46b4f513780","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"71145f65_c54f3897","updated":"2025-09-24 20:41:12.000000000","message":"I misread the code, we automatically apply this workaround for old stuff.","commit_id":"28e90ccc875a3a25b43733466bfab396c9fda4a5"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"2a8e691396ea092c27ec7ce566e843d37e6bf4d6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4aa9709d_5119ea99","updated":"2025-09-24 20:15:42.000000000","message":"This has a really unfortunate assumption built in: there won\u0027t be more iDRAC 10 things to support later. By using a list of specific versions returned, we\u0027re basically putting a cap on how long this workaround can work without an additional patch.\n\nIs there any path to not requiring a patch to sushy to support $newDellGear that doesn\u0027t exist yet that presumably will need this same quirk?","commit_id":"28e90ccc875a3a25b43733466bfab396c9fda4a5"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"5005d73cdbaa83a7c6d877dec58a8d948425eae6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"18379adf_104bd438","in_reply_to":"4aa9709d_5119ea99","updated":"2025-09-24 21:55:27.000000000","message":"marking as done \u003d)","commit_id":"28e90ccc875a3a25b43733466bfab396c9fda4a5"},{"author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"change_message_id":"ae6f3b76857d6195c9f4bee0489b07e1e372d80a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"14f255ef_215c00ce","updated":"2025-09-25 22:48:37.000000000","message":"REALLLLLY feels like a Sushy thing","commit_id":"af0b9751d2e2835b035867db1937b99443dfecec"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"dfb9e258e8e67e495b2ef720fe0a90b54e325cc2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"acdd082f_f100789a","updated":"2025-09-25 20:30:17.000000000","message":"recheck post_failure on ironic-tempest-bios-redfish-pxe","commit_id":"af0b9751d2e2835b035867db1937b99443dfecec"}],"ironic/drivers/modules/drac/boot.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"987945f91078d1ae88a31024081a4d53f147d465","unresolved":true,"context_lines":[{"line_number":87,"context_line":"                # generation in case is 17G Monolithic,  this maps to iDRAC10,"},{"line_number":88,"context_line":"                # we return the virtual media ID \"1\""},{"line_number":89,"context_line":"                if (hasattr(manager, \u0027model\u0027)"},{"line_number":90,"context_line":"                        and manager.model \u003d\u003d \"17G Monolithic\"):"},{"line_number":91,"context_line":"                    return \"1\""},{"line_number":92,"context_line":"            return None"},{"line_number":93,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"4d365ce4_f3e7f094","line":90,"updated":"2025-09-23 15:53:56.000000000","message":"I wonder if we\u0027re going to get 18G with the same problem...","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a4211c029273f8c8dd6dcae323c3c1d49b40c8f1","unresolved":true,"context_lines":[{"line_number":87,"context_line":"                # generation in case is 17G Monolithic,  this maps to iDRAC10,"},{"line_number":88,"context_line":"                # we return the virtual media ID \"1\""},{"line_number":89,"context_line":"                if (hasattr(manager, \u0027model\u0027)"},{"line_number":90,"context_line":"                        and manager.model \u003d\u003d \"17G Monolithic\"):"},{"line_number":91,"context_line":"                    return \"1\""},{"line_number":92,"context_line":"            return None"},{"line_number":93,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"8d95ee1b_1c19dd18","line":90,"in_reply_to":"4d365ce4_f3e7f094","updated":"2025-09-23 17:28:16.000000000","message":"What if we split the first two characters off, and treat that as an integer, if greater than 16, then head down this path. ?","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"3ed419c6a2d1cde05c4634d7c5670c1fbe64ed36","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                # generation in case is 17G Monolithic,  this maps to iDRAC10,"},{"line_number":88,"context_line":"                # we return the virtual media ID \"1\""},{"line_number":89,"context_line":"                if (hasattr(manager, \u0027model\u0027)"},{"line_number":90,"context_line":"                        and manager.model \u003d\u003d \"17G Monolithic\"):"},{"line_number":91,"context_line":"                    return \"1\""},{"line_number":92,"context_line":"            return None"},{"line_number":93,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"c2228266_9e582943","line":90,"in_reply_to":"89f7c817_14cd05f8","updated":"2025-09-24 04:23:55.000000000","message":"New patchset with an approach to detect the version.","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"23fa4e4d127baea4d4e594f883b6defac54aed28","unresolved":true,"context_lines":[{"line_number":87,"context_line":"                # generation in case is 17G Monolithic,  this maps to iDRAC10,"},{"line_number":88,"context_line":"                # we return the virtual media ID \"1\""},{"line_number":89,"context_line":"                if (hasattr(manager, \u0027model\u0027)"},{"line_number":90,"context_line":"                        and manager.model \u003d\u003d \"17G Monolithic\"):"},{"line_number":91,"context_line":"                    return \"1\""},{"line_number":92,"context_line":"            return None"},{"line_number":93,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"89f7c817_14cd05f8","line":90,"in_reply_to":"8d95ee1b_1c19dd18","updated":"2025-09-23 17:32:29.000000000","message":"sounds good to me, I\u0027m wondering if we want to have some mapping for idrac8,9 and 10 based on Riccardo\u0027s idea.","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":69,"context_line":"    def _validate_vendor(self, task, managers):"},{"line_number":70,"context_line":"        pass  # assume people are doing the right thing"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def _get_idrac_version_from_model(self, model):"},{"line_number":73,"context_line":"        \"\"\"Extract iDRAC version from the hardware model string."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        :param model: The hardware model string from the manager."}],"source_content_type":"text/x-python","patch_set":3,"id":"d204a739_def238e1","line":72,"updated":"2025-09-24 11:49:20.000000000","message":"nit: this does not have to be a method, you don\u0027t use `self`","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":69,"context_line":"    def _validate_vendor(self, task, managers):"},{"line_number":70,"context_line":"        pass  # assume people are doing the right thing"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def _get_idrac_version_from_model(self, model):"},{"line_number":73,"context_line":"        \"\"\"Extract iDRAC version from the hardware model string."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        :param model: The hardware model string from the manager."}],"source_content_type":"text/x-python","patch_set":3,"id":"599de54d_a51da0dc","line":72,"in_reply_to":"d204a739_def238e1","updated":"2025-09-24 12:00:56.000000000","message":"Done","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":92,"context_line":"            else:"},{"line_number":93,"context_line":"                return None  # Unknown or unsupported version"},{"line_number":94,"context_line":"        except (ValueError, TypeError):"},{"line_number":95,"context_line":"            return None"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    def _get_acceptable_media_id(self, task, resource):"},{"line_number":98,"context_line":"        \"\"\"Get acceptable virtual media IDs for iDRAC systems."}],"source_content_type":"text/x-python","patch_set":3,"id":"e5c416ee_dd5f1e6f","line":95,"updated":"2025-09-24 11:49:20.000000000","message":"Debug logging here?","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":92,"context_line":"            else:"},{"line_number":93,"context_line":"                return None  # Unknown or unsupported version"},{"line_number":94,"context_line":"        except (ValueError, TypeError):"},{"line_number":95,"context_line":"            return None"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    def _get_acceptable_media_id(self, task, resource):"},{"line_number":98,"context_line":"        \"\"\"Get acceptable virtual media IDs for iDRAC systems."}],"source_content_type":"text/x-python","patch_set":3,"id":"0171df37_6501a4ce","line":95,"in_reply_to":"e5c416ee_dd5f1e6f","updated":"2025-09-24 12:00:56.000000000","message":"Done","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":109,"context_line":"        if hasattr(resource, \u0027managers\u0027):"},{"line_number":110,"context_line":"            for manager in resource.managers:"},{"line_number":111,"context_line":"                # Check the iDRAC version based on the hardware model"},{"line_number":112,"context_line":"                if hasattr(manager, \u0027model\u0027):"},{"line_number":113,"context_line":"                    idrac_version \u003d self._get_idrac_version_from_model("},{"line_number":114,"context_line":"                        manager.model)"},{"line_number":115,"context_line":"                    if idrac_version \u003d\u003d 10:"}],"source_content_type":"text/x-python","patch_set":3,"id":"99494be5_2953b12f","line":112,"updated":"2025-09-24 11:49:20.000000000","message":"Attributes are always present (but can be None)","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":109,"context_line":"        if hasattr(resource, \u0027managers\u0027):"},{"line_number":110,"context_line":"            for manager in resource.managers:"},{"line_number":111,"context_line":"                # Check the iDRAC version based on the hardware model"},{"line_number":112,"context_line":"                if hasattr(manager, \u0027model\u0027):"},{"line_number":113,"context_line":"                    idrac_version \u003d self._get_idrac_version_from_model("},{"line_number":114,"context_line":"                        manager.model)"},{"line_number":115,"context_line":"                    if idrac_version \u003d\u003d 10:"}],"source_content_type":"text/x-python","patch_set":3,"id":"58d28f89_0931899d","line":112,"in_reply_to":"99494be5_2953b12f","updated":"2025-09-24 12:00:56.000000000","message":"yeah, but we are considering that in _get_idrac_version_from_model, but I can improve things here. \n```\nif not model or len(model) \u003c 2:\n            return None\n```","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":112,"context_line":"                if hasattr(manager, \u0027model\u0027):"},{"line_number":113,"context_line":"                    idrac_version \u003d self._get_idrac_version_from_model("},{"line_number":114,"context_line":"                        manager.model)"},{"line_number":115,"context_line":"                    if idrac_version \u003d\u003d 10:"},{"line_number":116,"context_line":"                        return \"1\""},{"line_number":117,"context_line":"            return None"},{"line_number":118,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"b535d834_a7cbc2c5","line":115,"updated":"2025-09-24 11:49:20.000000000","message":"Do we need \u003e\u003d or is it too risky? My guess is that the chances of iDRAC 11 doing the same thing as iDRAC 10 is higher than them returning to the behavior of 9?\n\nMaybe issue a warning on unexpected generation?","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":112,"context_line":"                if hasattr(manager, \u0027model\u0027):"},{"line_number":113,"context_line":"                    idrac_version \u003d self._get_idrac_version_from_model("},{"line_number":114,"context_line":"                        manager.model)"},{"line_number":115,"context_line":"                    if idrac_version \u003d\u003d 10:"},{"line_number":116,"context_line":"                        return \"1\""},{"line_number":117,"context_line":"            return None"},{"line_number":118,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"63213d69_3b875594","line":115,"in_reply_to":"b535d834_a7cbc2c5","updated":"2025-09-24 12:00:56.000000000","message":"the \u003e\u003d won\u0027t make much sense, in the function to tell the version any machine with Generation \u003e\u003d 16 will return 10...","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"}],"ironic/drivers/modules/redfish/boot.py":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"aac883658ffb6fe669a8b53d3d8f8e1d6318fa6c","unresolved":true,"context_lines":[{"line_number":309,"context_line":"    is_idrac10 \u003d False"},{"line_number":310,"context_line":"    if task.node.boot_interface \u003d\u003d \"idrac-redfish-virtual-media\":"},{"line_number":311,"context_line":"        for manager in resource.managers:"},{"line_number":312,"context_line":"            if manager.model \u003d\u003d \"17G Monolithic\":"},{"line_number":313,"context_line":"                is_idrac10 \u003d True"},{"line_number":314,"context_line":"                break"},{"line_number":315,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"2bd4219d_bfb707e7","line":312,"updated":"2025-09-22 15:50:36.000000000","message":"since we saw that model could not report the generation but the actual model, we could map idrac8 (12/13) and idrac9(14/15/16) to generations, and leave the rest to idrac10","commit_id":"bd8ee05b43628c5976fcedb2c1aac01b151cca73"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"91dbf9df0ea6eadf4be43a3477c3a44588ded734","unresolved":false,"context_lines":[{"line_number":309,"context_line":"    is_idrac10 \u003d False"},{"line_number":310,"context_line":"    if task.node.boot_interface \u003d\u003d \"idrac-redfish-virtual-media\":"},{"line_number":311,"context_line":"        for manager in resource.managers:"},{"line_number":312,"context_line":"            if manager.model \u003d\u003d \"17G Monolithic\":"},{"line_number":313,"context_line":"                is_idrac10 \u003d True"},{"line_number":314,"context_line":"                break"},{"line_number":315,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"18249c45_dd60dd9f","line":312,"in_reply_to":"1a744382_05c779c7","updated":"2025-09-25 18:14:24.000000000","message":"\u003e Done","commit_id":"bd8ee05b43628c5976fcedb2c1aac01b151cca73"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"23fa4e4d127baea4d4e594f883b6defac54aed28","unresolved":true,"context_lines":[{"line_number":309,"context_line":"    is_idrac10 \u003d False"},{"line_number":310,"context_line":"    if task.node.boot_interface \u003d\u003d \"idrac-redfish-virtual-media\":"},{"line_number":311,"context_line":"        for manager in resource.managers:"},{"line_number":312,"context_line":"            if manager.model \u003d\u003d \"17G Monolithic\":"},{"line_number":313,"context_line":"                is_idrac10 \u003d True"},{"line_number":314,"context_line":"                break"},{"line_number":315,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ca273180_022304b1","line":312,"in_reply_to":"2bd4219d_bfb707e7","updated":"2025-09-23 17:32:29.000000000","message":"Acknowledged","commit_id":"bd8ee05b43628c5976fcedb2c1aac01b151cca73"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"3ed419c6a2d1cde05c4634d7c5670c1fbe64ed36","unresolved":false,"context_lines":[{"line_number":309,"context_line":"    is_idrac10 \u003d False"},{"line_number":310,"context_line":"    if task.node.boot_interface \u003d\u003d \"idrac-redfish-virtual-media\":"},{"line_number":311,"context_line":"        for manager in resource.managers:"},{"line_number":312,"context_line":"            if manager.model \u003d\u003d \"17G Monolithic\":"},{"line_number":313,"context_line":"                is_idrac10 \u003d True"},{"line_number":314,"context_line":"                break"},{"line_number":315,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a744382_05c779c7","line":312,"in_reply_to":"ca273180_022304b1","updated":"2025-09-24 04:23:55.000000000","message":"Done","commit_id":"bd8ee05b43628c5976fcedb2c1aac01b151cca73"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"987945f91078d1ae88a31024081a4d53f147d465","unresolved":true,"context_lines":[{"line_number":310,"context_line":"    for v_media in resource.virtual_media.get_members():"},{"line_number":311,"context_line":"        # Skip virtual media if the ID is not in the acceptable set"},{"line_number":312,"context_line":"        if acceptable_id is not None and v_media.identity !\u003d acceptable_id:"},{"line_number":313,"context_line":"            continue"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"        if boot_device not in v_media.media_types:"},{"line_number":316,"context_line":"            # NOTE(janders): this conditional allows v_media that only"}],"source_content_type":"text/x-python","patch_set":2,"id":"f9e3bf96_2f305f2f","line":313,"updated":"2025-09-23 15:53:56.000000000","message":"Let\u0027s add debug logging here","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"23fa4e4d127baea4d4e594f883b6defac54aed28","unresolved":false,"context_lines":[{"line_number":310,"context_line":"    for v_media in resource.virtual_media.get_members():"},{"line_number":311,"context_line":"        # Skip virtual media if the ID is not in the acceptable set"},{"line_number":312,"context_line":"        if acceptable_id is not None and v_media.identity !\u003d acceptable_id:"},{"line_number":313,"context_line":"            continue"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"        if boot_device not in v_media.media_types:"},{"line_number":316,"context_line":"            # NOTE(janders): this conditional allows v_media that only"}],"source_content_type":"text/x-python","patch_set":2,"id":"b8c2223e_4fc90fff","line":313,"in_reply_to":"f9e3bf96_2f305f2f","updated":"2025-09-23 17:32:29.000000000","message":"Acknowledged","commit_id":"423c9aa07496238acfd595558c20d9d4af2007a8"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":263,"context_line":"        found on the node."},{"line_number":264,"context_line":"    \"\"\""},{"line_number":265,"context_line":"    err_msgs \u003d []"},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"    system \u003d redfish_utils.get_system(task.node)"},{"line_number":268,"context_line":"    if _has_vmedia_via_systems(system):"},{"line_number":269,"context_line":"        inserted \u003d _insert_vmedia_in_resource(task, system, boot_url,"}],"source_content_type":"text/x-python","patch_set":3,"id":"25cc4be1_45f4457a","line":266,"updated":"2025-09-24 11:49:20.000000000","message":"nit: unrelated","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":263,"context_line":"        found on the node."},{"line_number":264,"context_line":"    \"\"\""},{"line_number":265,"context_line":"    err_msgs \u003d []"},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"    system \u003d redfish_utils.get_system(task.node)"},{"line_number":268,"context_line":"    if _has_vmedia_via_systems(system):"},{"line_number":269,"context_line":"        inserted \u003d _insert_vmedia_in_resource(task, system, boot_url,"}],"source_content_type":"text/x-python","patch_set":3,"id":"a6e8ca85_9c1a5cfa","line":266,"in_reply_to":"25cc4be1_45f4457a","updated":"2025-09-24 12:00:56.000000000","message":"Done","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":305,"context_line":"    # Get acceptable virtual media IDs from the boot interface"},{"line_number":306,"context_line":"    # This allows vendor-specific implementations to restrict which"},{"line_number":307,"context_line":"    # virtual media devices can be used"},{"line_number":308,"context_line":"    acceptable_id \u003d task.driver.boot._get_acceptable_media_id(task, resource)"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    for v_media in resource.virtual_media.get_members():"},{"line_number":311,"context_line":"        # Skip virtual media if the ID is not in the acceptable set"}],"source_content_type":"text/x-python","patch_set":3,"id":"1650177f_bc39354f","line":308,"updated":"2025-09-24 11:49:20.000000000","message":"Just in case of a weird downstream driver, let\u0027s guard against AttributeError (and log a deprecation warning)","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":305,"context_line":"    # Get acceptable virtual media IDs from the boot interface"},{"line_number":306,"context_line":"    # This allows vendor-specific implementations to restrict which"},{"line_number":307,"context_line":"    # virtual media devices can be used"},{"line_number":308,"context_line":"    acceptable_id \u003d task.driver.boot._get_acceptable_media_id(task, resource)"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    for v_media in resource.virtual_media.get_members():"},{"line_number":311,"context_line":"        # Skip virtual media if the ID is not in the acceptable set"}],"source_content_type":"text/x-python","patch_set":3,"id":"54a44f8a_be2206a1","line":308,"in_reply_to":"1650177f_bc39354f","updated":"2025-09-24 12:00:56.000000000","message":"ok, I will add a try/except here \u003d)","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"96be0df9acf53bc30447aa7346dd6809558e2fa9","unresolved":true,"context_lines":[{"line_number":311,"context_line":"        # Skip virtual media if the ID is not in the acceptable set"},{"line_number":312,"context_line":"        if acceptable_id is not None and v_media.identity !\u003d acceptable_id:"},{"line_number":313,"context_line":"            LOG.deub(\"Driver %(name)s returned %(acceptable_id)s as Virtual \""},{"line_number":314,"context_line":"                     \"Media Slot ID, current slot is %(slot)s skipping\","},{"line_number":315,"context_line":"                     {\u0027name\u0027: task.driver.name, \u0027acceptable_id\u0027: acceptable_id,"},{"line_number":316,"context_line":"                      \u0027slot\u0027: v_media.identity})"},{"line_number":317,"context_line":"            continue"}],"source_content_type":"text/x-python","patch_set":3,"id":"3d261545_d1b53569","line":314,"updated":"2025-09-24 11:49:20.000000000","message":"nit: comma before \"skipping\"","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"12a77562002ccb9781788655df68d444db2e16a4","unresolved":false,"context_lines":[{"line_number":311,"context_line":"        # Skip virtual media if the ID is not in the acceptable set"},{"line_number":312,"context_line":"        if acceptable_id is not None and v_media.identity !\u003d acceptable_id:"},{"line_number":313,"context_line":"            LOG.deub(\"Driver %(name)s returned %(acceptable_id)s as Virtual \""},{"line_number":314,"context_line":"                     \"Media Slot ID, current slot is %(slot)s skipping\","},{"line_number":315,"context_line":"                     {\u0027name\u0027: task.driver.name, \u0027acceptable_id\u0027: acceptable_id,"},{"line_number":316,"context_line":"                      \u0027slot\u0027: v_media.identity})"},{"line_number":317,"context_line":"            continue"}],"source_content_type":"text/x-python","patch_set":3,"id":"4ee2d4c1_84a53982","line":314,"in_reply_to":"3d261545_d1b53569","updated":"2025-09-24 12:00:56.000000000","message":"Done","commit_id":"e6c256b55ad3affb701aa0dbaef3f66c7ad05855"}],"ironic/tests/unit/drivers/modules/drac/test_boot.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":"b87046ab27cdc58d0794f120638014a0dcf3e1d7","unresolved":true,"context_lines":[{"line_number":142,"context_line":"        ]"},{"line_number":143,"context_line":"        mock_log_debug.assert_has_calls(expected_calls)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        idrac8 \u003d [\"12G Monolithic\", \"13G Monolithic\"]"},{"line_number":146,"context_line":"        idrac9 \u003d [\"14G Monolithic\", \"15G Monolithic\", \"16G Monolithic\"]"},{"line_number":147,"context_line":"        idrac10 \u003d [\"17G Monolithic\", \"18G Monolithic\"]"},{"line_number":148,"context_line":"        for model in idrac8:"},{"line_number":149,"context_line":"            version \u003d idrac_redfish_boot._get_idrac_version_from_model(model)"}],"source_content_type":"text/x-python","patch_set":4,"id":"d6ba9659_e2f860d2","line":146,"range":{"start_line":145,"start_character":3,"end_line":146,"end_character":53},"updated":"2025-09-25 17:10:36.000000000","message":"Are we sure about these?  Specifically 12, 13, 14, and 15. I\u0027ve seen \"16G Monolithic\" before.","commit_id":"28e90ccc875a3a25b43733466bfab396c9fda4a5"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"91dbf9df0ea6eadf4be43a3477c3a44588ded734","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        ]"},{"line_number":143,"context_line":"        mock_log_debug.assert_has_calls(expected_calls)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        idrac8 \u003d [\"12G Monolithic\", \"13G Monolithic\"]"},{"line_number":146,"context_line":"        idrac9 \u003d [\"14G Monolithic\", \"15G Monolithic\", \"16G Monolithic\"]"},{"line_number":147,"context_line":"        idrac10 \u003d [\"17G Monolithic\", \"18G Monolithic\"]"},{"line_number":148,"context_line":"        for model in idrac8:"},{"line_number":149,"context_line":"            version \u003d idrac_redfish_boot._get_idrac_version_from_model(model)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7840a8cb_c7b3a3bc","line":146,"range":{"start_line":145,"start_character":3,"end_line":146,"end_character":53},"in_reply_to":"d6ba9659_e2f860d2","updated":"2025-09-25 18:14:24.000000000","message":"Updating to match the information I was able to collect from servers\nhttps://paste.opendev.org/show/b8aGqAuax4CcmHSVMmOL/","commit_id":"28e90ccc875a3a25b43733466bfab396c9fda4a5"}]}
