)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"291581041f0e8eb8d27dddd162d1aad699ebb62e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"04748596_99be56a9","updated":"2023-10-02 04:19:31.000000000","message":"+2 but for a whitespace nit","commit_id":"591eb98e27649ee7229a8cb1955e60545e31838d"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"071f10a24ee627284fac041e2e2d94b84fafe155","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b0504e12_8f6d34fa","updated":"2023-09-29 01:13:36.000000000","message":"recheck CI failure collecting logs","commit_id":"591eb98e27649ee7229a8cb1955e60545e31838d"},{"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":"104f183c225848f34520df19c07e37e6979c14a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3a283b27_9ecea4c2","updated":"2023-11-09 15:30:55.000000000","message":"LGTM; not voting +2 due to less familiarity with sushy. Happy to upgrade the vote if needed.","commit_id":"b99648cca2683ef557d7e33913a7893ba7faf726"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0c0c80236679c68fa2f58d16afedba01d38b3216","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"92067d40_42d48249","updated":"2023-11-14 00:45:54.000000000","message":"I could follow-up with the check...","commit_id":"6bbebfaefa0fff89d2ac46cb76e2df9237451798"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e053be9a8f4c1d4dcc529912ef2f29c762506d28","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"79a36d6b_a44377a6","in_reply_to":"92067d40_42d48249","updated":"2023-11-15 16:09:07.000000000","message":"Logic is already present...","commit_id":"6bbebfaefa0fff89d2ac46cb76e2df9237451798"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"df808ba341735025cdeb3386fd0497ec11cde2fe","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"a29be7f0_6b435631","updated":"2023-11-21 21:28:25.000000000","message":"2023-11-21 17:21:07.045422 | controller | /opt/stack/devstack/lib/tempest: line 743: tox: command not found","commit_id":"7340b340c1c4b09a2adbd008c1f6462643541e70"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"df56893f42a7e5b35adac56e8c51f26b900771dd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"8fa1681b_9afc5365","updated":"2023-11-22 00:28:01.000000000","message":"Will keep an eye to see how zuul will react now \u003d)","commit_id":"7340b340c1c4b09a2adbd008c1f6462643541e70"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"9fc9e2dc690a4d43f43368ab10cb1330c8eaee1d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"550b309e_3cb24ee2","updated":"2023-11-22 02:58:00.000000000","message":"recheck haven\u0027t found in zuul status","commit_id":"7340b340c1c4b09a2adbd008c1f6462643541e70"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0061971df785f78f4aa6d9edbd5a462a23855506","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"a4174055_3c22bc50","updated":"2023-11-21 21:29:35.000000000","message":"rehceck makes no sense","commit_id":"7340b340c1c4b09a2adbd008c1f6462643541e70"}],"sushy/resources/system/system.py":[{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"2c26c20ea0b2347dd72343ca3049b4fab7a5ee52","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"    def set_system_boot_options(self, target\u003dNone, enabled\u003dNone, mode\u003dNone,"},{"line_number":221,"context_line":"                                boot_order_selector\u003dNone, boot_order\u003dNone,"},{"line_number":222,"context_line":"                                http_boot_uri\u003dNone):"},{"line_number":223,"context_line":"        \"\"\"Set boot source and/or boot frequency and/or boot mode."},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"        Set the boot source and/or boot frequency and/or boot mode to use"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4c43b2_91c91f7a","line":222,"range":{"start_line":222,"start_character":32,"end_line":222,"end_character":45},"updated":"2020-04-14 15:44:28.000000000","message":"May be we should add some opaque \"target_context\" dict to pass target-specific options? With new targets, we might run out of target-specific variables like this one.","commit_id":"889ec554d308de277f23150d557829ca0e4304b7"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"2c26c20ea0b2347dd72343ca3049b4fab7a5ee52","unresolved":false,"context_lines":[{"line_number":291,"context_line":""},{"line_number":292,"context_line":"            data[\u0027Boot\u0027][fishy_order_selector] \u003d boot_order"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"        if http_boot_uri is not None:"},{"line_number":295,"context_line":"            if not http_boot_uri:"},{"line_number":296,"context_line":"                data[\u0027Boot\u0027][\u0027HttpBootUri\u0027] \u003d None"},{"line_number":297,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4c43b2_b1a53bb8","line":294,"updated":"2020-04-14 15:44:28.000000000","message":"Should we make sure that \u0027target\u0027 equals HTTP boot prior to use this parameter?","commit_id":"889ec554d308de277f23150d557829ca0e4304b7"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"570ffe4d1028e8add869b1416084b7925eddf0b7","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    target \u003d base.MappedField(\u0027BootSourceOverrideTarget\u0027, sys_cons.BootSource)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    httpbooturi \u003d base.Field(\u0027HttpBootUri\u0027)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"class MemorySummaryField(base.CompositeField):"}],"source_content_type":"text/x-python","patch_set":3,"id":"ee9ce758_a308f02c","line":59,"updated":"2023-10-11 16:04:37.000000000","message":"http_boot_uri please","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"53bbf29f6bab250040cefed429cf99b7ad7c7768","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    target \u003d base.MappedField(\u0027BootSourceOverrideTarget\u0027, sys_cons.BootSource)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    httpbooturi \u003d base.Field(\u0027HttpBootUri\u0027)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"class MemorySummaryField(base.CompositeField):"}],"source_content_type":"text/x-python","patch_set":3,"id":"90bce8fe_b7e2ef90","line":59,"in_reply_to":"ee9ce758_a308f02c","updated":"2023-11-09 18:34:17.000000000","message":"Done.","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"570ffe4d1028e8add869b1416084b7925eddf0b7","unresolved":false,"context_lines":[{"line_number":215,"context_line":"                if v.value in self.boot.allowed_values}"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"    def set_system_boot_options(self, target\u003dNone, enabled\u003dNone, mode\u003dNone,"},{"line_number":218,"context_line":"                                httpbooturi\u003dNone):"},{"line_number":219,"context_line":"        \"\"\"Set boot source and/or boot frequency and/or boot mode."},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"        Set the boot source and/or boot frequency and/or boot mode to use"}],"source_content_type":"text/x-python","patch_set":3,"id":"cd94f27a_59659e1e","line":218,"updated":"2023-10-11 16:04:37.000000000","message":"same","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"53bbf29f6bab250040cefed429cf99b7ad7c7768","unresolved":false,"context_lines":[{"line_number":215,"context_line":"                if v.value in self.boot.allowed_values}"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"    def set_system_boot_options(self, target\u003dNone, enabled\u003dNone, mode\u003dNone,"},{"line_number":218,"context_line":"                                httpbooturi\u003dNone):"},{"line_number":219,"context_line":"        \"\"\"Set boot source and/or boot frequency and/or boot mode."},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"        Set the boot source and/or boot frequency and/or boot mode to use"}],"source_content_type":"text/x-python","patch_set":3,"id":"c228905a_07333803","line":218,"in_reply_to":"cd94f27a_59659e1e","updated":"2023-11-09 18:34:17.000000000","message":"Done","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"570ffe4d1028e8add869b1416084b7925eddf0b7","unresolved":false,"context_lines":[{"line_number":227,"context_line":"            a :py:class:`sushy.BootSourceOverrideEnabled` value. Optional."},{"line_number":228,"context_line":"        :param mode: The boot mode,"},{"line_number":229,"context_line":"            a :py:class:`sushy.BootSourceOverrideMode` value. Optional."},{"line_number":230,"context_line":"        :param httpbooturi: The requested HTTP Boot Uri to transmit to the"},{"line_number":231,"context_line":"            BMC. Only valid when BootSourceOverrideTarget is set to UefiHTTP,"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"        :raises: InvalidParameterValueError, if any information passed is"}],"source_content_type":"text/x-python","patch_set":3,"id":"85f20b9e_05b5d4ee","line":230,"updated":"2023-10-11 16:04:37.000000000","message":"nit: URI","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"570ffe4d1028e8add869b1416084b7925eddf0b7","unresolved":false,"context_lines":[{"line_number":302,"context_line":"        if httpbooturi is not None:"},{"line_number":303,"context_line":"            # This value *can* be set independently of the target, but"},{"line_number":304,"context_line":"            # the BMC will just ignore it unless the target is set."},{"line_number":305,"context_line":"            if not httpbooturi:"},{"line_number":306,"context_line":"                data[\u0027Boot\u0027][\u0027HttpBootUri\u0027] \u003d None"},{"line_number":307,"context_line":"            else:"},{"line_number":308,"context_line":"                data[\u0027Boot\u0027][\u0027HttpBootUri\u0027] \u003d httpbooturi"}],"source_content_type":"text/x-python","patch_set":3,"id":"bc50b0cb_b5e61977","line":305,"updated":"2023-10-11 16:04:37.000000000","message":"Which value is that, an empty string?","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"53bbf29f6bab250040cefed429cf99b7ad7c7768","unresolved":false,"context_lines":[{"line_number":302,"context_line":"        if httpbooturi is not None:"},{"line_number":303,"context_line":"            # This value *can* be set independently of the target, but"},{"line_number":304,"context_line":"            # the BMC will just ignore it unless the target is set."},{"line_number":305,"context_line":"            if not httpbooturi:"},{"line_number":306,"context_line":"                data[\u0027Boot\u0027][\u0027HttpBootUri\u0027] \u003d None"},{"line_number":307,"context_line":"            else:"},{"line_number":308,"context_line":"                data[\u0027Boot\u0027][\u0027HttpBootUri\u0027] \u003d httpbooturi"}],"source_content_type":"text/x-python","patch_set":3,"id":"b485d515_71df0705","line":305,"in_reply_to":"bc50b0cb_b5e61977","updated":"2023-11-09 18:34:17.000000000","message":"Great question! Time for a little more complexity then!","commit_id":"9e85db638f7208d883f9573be84c1d6c291c8def"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"17ae48001c9a4c3077a22b3f164f772d7bec8737","unresolved":true,"context_lines":[{"line_number":228,"context_line":"        :param mode: The boot mode,"},{"line_number":229,"context_line":"            a :py:class:`sushy.BootSourceOverrideMode` value. Optional."},{"line_number":230,"context_line":"        :param http_boot_uri: The requested HTTP Boot URI to transmit to the"},{"line_number":231,"context_line":"            BMC. Only valid when BootSourceOverrideTarget is set to UefiHTTP,"},{"line_number":232,"context_line":"            when utilizing the ``target`` parameter. If no value is supplied,"},{"line_number":233,"context_line":"            and the target is set to UefiHTTP, then an empty value will be"},{"line_number":234,"context_line":"            sent to the BMC to remove any prior setting, allowing the host"}],"source_content_type":"text/x-python","patch_set":5,"id":"56b3cd51_21243b92","line":231,"range":{"start_line":231,"start_character":17,"end_line":231,"end_character":57},"updated":"2023-11-20 15:59:36.000000000","message":"nit: raise if the target is wrong but the URI is provided.","commit_id":"6bbebfaefa0fff89d2ac46cb76e2df9237451798"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c2f1f39e2bf33eb1d7503c9b558aed99f01de4c7","unresolved":true,"context_lines":[{"line_number":307,"context_line":"                data[\u0027Boot\u0027][\u0027BootSourceOverrideMode\u0027] \u003d fishy_mode"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"        if target \u003d\u003d sys_cons.BootSource.UEFI_HTTP:"},{"line_number":310,"context_line":"            # The http_boot_uri value *can* be set independently of the"},{"line_number":311,"context_line":"            # target, but the BMC will just ignore it unless the target"},{"line_number":312,"context_line":"            # is set. So we should only, and explicitly set it when we\u0027ve"},{"line_number":313,"context_line":"            # been requested to boot from UefiHTTP."}],"source_content_type":"text/x-python","patch_set":5,"id":"d0549d88_746fc0f2","line":310,"updated":"2023-11-14 00:45:37.000000000","message":"Likely need to check the available options and raise an exception if not possible.","commit_id":"6bbebfaefa0fff89d2ac46cb76e2df9237451798"}],"sushy/tests/unit/json_samples/system.json":[{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"291581041f0e8eb8d27dddd162d1aad699ebb62e","unresolved":true,"context_lines":[{"line_number":41,"context_line":"        ],"},{"line_number":42,"context_line":"        \"BootSourceOverrideMode\": \"UEFI\","},{"line_number":43,"context_line":"        \"UefiTargetBootSourceOverride\": \"/0x31/0x33/0x01/0x01\","},{"line_number":44,"context_line":"\t\"HttpBootUri\": \"https://Contoso.lan/boot.iso\""},{"line_number":45,"context_line":"    },"},{"line_number":46,"context_line":"    \"TrustedModules\": ["},{"line_number":47,"context_line":"        {"}],"source_content_type":"application/json","patch_set":2,"id":"f20beae8_da89553f","line":44,"updated":"2023-10-02 04:19:31.000000000","message":"spaces not tabs! Ahhhh!","commit_id":"591eb98e27649ee7229a8cb1955e60545e31838d"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a321837d91d0b394c78ec243012b37b70f42ff7c","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        ],"},{"line_number":42,"context_line":"        \"BootSourceOverrideMode\": \"UEFI\","},{"line_number":43,"context_line":"        \"UefiTargetBootSourceOverride\": \"/0x31/0x33/0x01/0x01\","},{"line_number":44,"context_line":"\t\"HttpBootUri\": \"https://Contoso.lan/boot.iso\""},{"line_number":45,"context_line":"    },"},{"line_number":46,"context_line":"    \"TrustedModules\": ["},{"line_number":47,"context_line":"        {"}],"source_content_type":"application/json","patch_set":2,"id":"43226971_3d695bc8","line":44,"in_reply_to":"f20beae8_da89553f","updated":"2023-10-03 18:23:10.000000000","message":"AAHHHHH","commit_id":"591eb98e27649ee7229a8cb1955e60545e31838d"}]}
