)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This adds tests for both the WS-Man and Redfish implementations"},{"line_number":10,"context_line":"of the iDRAC RAID cleaning steps. In this test, storage inventory"},{"line_number":11,"context_line":"input for raid cleaning is provided by user in json format"},{"line_number":12,"context_line":"and test case validates input information against storage inventory"},{"line_number":13,"context_line":"schema at the start of execution of test case."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9baf0b10_530c02d6","line":11,"range":{"start_line":11,"start_character":47,"end_line":11,"end_character":52},"updated":"2022-07-15 08:39:46.000000000","message":"nit: JSON","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This adds tests for both the WS-Man and Redfish implementations"},{"line_number":10,"context_line":"of the iDRAC RAID cleaning steps. In this test, storage inventory"},{"line_number":11,"context_line":"input for raid cleaning is provided by user in json format"},{"line_number":12,"context_line":"and test case validates input information against storage inventory"},{"line_number":13,"context_line":"schema at the start of execution of test case."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"cc980e54_a7a7bc4b","line":11,"range":{"start_line":11,"start_character":10,"end_line":11,"end_character":15},"updated":"2022-07-15 08:39:46.000000000","message":"nit: RAID","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This adds tests for both the WS-Man and Redfish implementations"},{"line_number":10,"context_line":"of the iDRAC RAID cleaning steps. In this test, storage inventory"},{"line_number":11,"context_line":"input for raid cleaning is provided by user in json format"},{"line_number":12,"context_line":"and test case validates input information against storage inventory"},{"line_number":13,"context_line":"schema at the start of execution of test case."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"5959d5b4_3c22e436","line":11,"range":{"start_line":11,"start_character":47,"end_line":11,"end_character":52},"in_reply_to":"9baf0b10_530c02d6","updated":"2022-07-20 12:39:26.000000000","message":"done","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This adds tests for both the WS-Man and Redfish implementations"},{"line_number":10,"context_line":"of the iDRAC RAID cleaning steps. In this test, storage inventory"},{"line_number":11,"context_line":"input for raid cleaning is provided by user in json format"},{"line_number":12,"context_line":"and test case validates input information against storage inventory"},{"line_number":13,"context_line":"schema at the start of execution of test case."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"fe3632b6_ec0c0e34","line":11,"range":{"start_line":11,"start_character":10,"end_line":11,"end_character":15},"in_reply_to":"cc980e54_a7a7bc4b","updated":"2022-07-20 12:39:26.000000000","message":"done.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":9,"context_line":"This adds tests for both the WS-Man and Redfish implementations"},{"line_number":10,"context_line":"of the iDRAC RAID cleaning steps. In this test, storage inventory"},{"line_number":11,"context_line":"input for raid cleaning is provided by user in json format"},{"line_number":12,"context_line":"and test case validates input information against storage inventory"},{"line_number":13,"context_line":"schema at the start of execution of test case."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I183fdc47dbb7a12b2ffb4f8453753dada2d8f5fe"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"bc733c02_1857f479","line":13,"range":{"start_line":12,"start_character":4,"end_line":13,"end_character":45},"updated":"2022-07-15 08:39:46.000000000","message":"some cleanup necessary as this is imprecise. Please update to include that:\n1) the storage inventory is validated against schema once at the beginning of RAID tests execution.\n2) Each test checks test specific requirements before execution.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This adds tests for both the WS-Man and Redfish implementations"},{"line_number":10,"context_line":"of the iDRAC RAID cleaning steps. In this test, storage inventory"},{"line_number":11,"context_line":"input for raid cleaning is provided by user in json format"},{"line_number":12,"context_line":"and test case validates input information against storage inventory"},{"line_number":13,"context_line":"schema at the start of execution of test case."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I183fdc47dbb7a12b2ffb4f8453753dada2d8f5fe"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"eb710eed_b20aef31","line":13,"range":{"start_line":12,"start_character":4,"end_line":13,"end_character":45},"in_reply_to":"bc733c02_1857f479","updated":"2022-07-20 12:39:26.000000000","message":"Done.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"6db40868_beb9b53c","updated":"2022-07-15 08:39:46.000000000","message":"thanks for the patch. See my comments inline.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9e5dbd1d_37b04518","updated":"2022-07-20 12:39:26.000000000","message":"Thanks for review comment. Please find incorporated suggested changes.","commit_id":"80a18882d50a0616f8f1ab9541eb5d4251191a53"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"34aecdae12467202d5f577b14748d65e51134bb3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"7de72097_d44936e7","updated":"2022-07-21 09:42:11.000000000","message":"Thanks Julia for review comment. Incorporated changes. Please review.","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"e9b8a13c78e1f712b1ae5a1d02d55740c95199e1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c712ce15_f528058c","updated":"2022-07-21 12:47:49.000000000","message":"thanks for the updates, some smaller things left inline","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b0c2e4cba98d2dd7b22633bca815a71cc2aef2fa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"f1bc4f32_45399a07","updated":"2022-08-08 16:47:13.000000000","message":"Overall, this looks really good, except the hard coded size. It makes sense in many ways, but 10GB is only going to work for a highly limited subset of images. If we can default it to at least 40GB, I\u0027d be okay with that. Some virtual image sizes are generally running 10-15GB, some as much as 40GB.\n\nUnfortuantely, some people do attempt to run these sorts of tests with much larger images by default to perform software/hardware integration testing.","commit_id":"1e9f9e4df63d77ae107020a38f81d4b4d3be4ab3"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"0152a8140d207d76aa90b74af08ca23306cecd0d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"ede08064_01f8470f","updated":"2022-07-21 13:21:21.000000000","message":"Thanks for Review Comment Aija. Incorporated Suggested Changes.","commit_id":"1e9f9e4df63d77ae107020a38f81d4b4d3be4ab3"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"c632f5c30710690d974265e85a5d3b44410e3883","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"f4b9be31_7cb6f5f1","updated":"2022-07-22 05:11:45.000000000","message":"recheck - failure is not related with patch. During devstack setup, conflict is caused by etcd3 0.12.0 depends on grpcio\u003e\u003d1.27.1.","commit_id":"1e9f9e4df63d77ae107020a38f81d4b4d3be4ab3"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"f088c00f1c9dc53203f140531ea64d0f095f3bcc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"b084048a_ab7aed85","updated":"2022-07-21 13:32:52.000000000","message":"thanks, LGTM","commit_id":"1e9f9e4df63d77ae107020a38f81d4b4d3be4ab3"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"9f6766650a75293fca08db47b09a1949de8b353f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"2592166b_36362393","updated":"2022-08-08 17:17:26.000000000","message":"Thanks for review comment Julia. Incorporated suggested change.","commit_id":"42656a0d8dbd06f2608b2312ac171eed9136a660"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"492088defd69fead2688f39143b69d6067fdb9a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"79ac4368_ed0c74fd","updated":"2022-08-15 14:13:44.000000000","message":"Thanks!","commit_id":"42656a0d8dbd06f2608b2312ac171eed9136a660"}],"ironic_tempest_plugin/exceptions.py":[{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"e9b8a13c78e1f712b1ae5a1d02d55740c95199e1","unresolved":true,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class RaidCleaningInventoryValidationFailed(exceptions.TempestException):"},{"line_number":29,"context_line":"    message \u003d \"Raid cleaning storage inventory validation failed \""}],"source_content_type":"text/x-python","patch_set":4,"id":"a688255c_5b34ff23","line":29,"range":{"start_line":29,"start_character":15,"end_line":29,"end_character":20},"updated":"2022-07-21 12:47:49.000000000","message":"nit: RAID","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"e9b8a13c78e1f712b1ae5a1d02d55740c95199e1","unresolved":true,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class RaidCleaningInventoryValidationFailed(exceptions.TempestException):"},{"line_number":29,"context_line":"    message \u003d \"Raid cleaning storage inventory validation failed \""}],"source_content_type":"text/x-python","patch_set":4,"id":"487b5c41_573cd856","line":29,"range":{"start_line":29,"start_character":64,"end_line":29,"end_character":65},"updated":"2022-07-21 12:47:49.000000000","message":"nit: no whitespace at the end needed","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"0152a8140d207d76aa90b74af08ca23306cecd0d","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class RaidCleaningInventoryValidationFailed(exceptions.TempestException):"},{"line_number":29,"context_line":"    message \u003d \"Raid cleaning storage inventory validation failed \""}],"source_content_type":"text/x-python","patch_set":4,"id":"e85a16ba_7d1531f1","line":29,"range":{"start_line":29,"start_character":64,"end_line":29,"end_character":65},"in_reply_to":"487b5c41_573cd856","updated":"2022-07-21 13:21:21.000000000","message":"done","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"0152a8140d207d76aa90b74af08ca23306cecd0d","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class RaidCleaningInventoryValidationFailed(exceptions.TempestException):"},{"line_number":29,"context_line":"    message \u003d \"Raid cleaning storage inventory validation failed \""}],"source_content_type":"text/x-python","patch_set":4,"id":"425263db_fb3d7662","line":29,"range":{"start_line":29,"start_character":15,"end_line":29,"end_character":20},"in_reply_to":"a688255c_5b34ff23","updated":"2022-07-21 13:21:21.000000000","message":"done","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"}],"ironic_tempest_plugin/tests/scenario/baremetal_standalone_manager.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":"df29b57230009de96602f195496a8607b64d5b28","unresolved":true,"context_lines":[{"line_number":693,"context_line":""},{"line_number":694,"context_line":"        # NOTE(dtantsur): this is not required, but it allows us to check that"},{"line_number":695,"context_line":"        # the RAID device was in fact created and is used for deployment."},{"line_number":696,"context_line":"        root_device_name \u003d \u0027/dev/sda\u0027 if raid_ctrl_present else \u0027/dev/md0\u0027"},{"line_number":697,"context_line":"        patch \u003d [{\u0027path\u0027: \u0027/properties/root_device\u0027,"},{"line_number":698,"context_line":"                  \u0027op\u0027: \u0027add\u0027, \u0027value\u0027: {\u0027name\u0027: root_device_name}}]"},{"line_number":699,"context_line":"        if deploy_time:"}],"source_content_type":"text/x-python","patch_set":3,"id":"beb3262b_0c63048a","line":696,"range":{"start_line":696,"start_character":0,"end_line":696,"end_character":74},"updated":"2022-07-20 17:33:59.000000000","message":"I\u0027m not sure this is even really viable. Perhaps have an optional configuration parameter for the user to supply it in the configuration as an override to this.\n\nIn particular, because we\u0027re seeing NVMe become a bit more dominant out there.","commit_id":"80a18882d50a0616f8f1ab9541eb5d4251191a53"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"34aecdae12467202d5f577b14748d65e51134bb3","unresolved":false,"context_lines":[{"line_number":693,"context_line":""},{"line_number":694,"context_line":"        # NOTE(dtantsur): this is not required, but it allows us to check that"},{"line_number":695,"context_line":"        # the RAID device was in fact created and is used for deployment."},{"line_number":696,"context_line":"        root_device_name \u003d \u0027/dev/sda\u0027 if raid_ctrl_present else \u0027/dev/md0\u0027"},{"line_number":697,"context_line":"        patch \u003d [{\u0027path\u0027: \u0027/properties/root_device\u0027,"},{"line_number":698,"context_line":"                  \u0027op\u0027: \u0027add\u0027, \u0027value\u0027: {\u0027name\u0027: root_device_name}}]"},{"line_number":699,"context_line":"        if deploy_time:"}],"source_content_type":"text/x-python","patch_set":3,"id":"53fda6e9_ba3c9984","line":696,"range":{"start_line":696,"start_character":0,"end_line":696,"end_character":74},"in_reply_to":"beb3262b_0c63048a","updated":"2022-07-21 09:42:11.000000000","message":"Okay. Added \u0027root_device_name\u0027 as optional configurational parameter.","commit_id":"80a18882d50a0616f8f1ab9541eb5d4251191a53"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"e9b8a13c78e1f712b1ae5a1d02d55740c95199e1","unresolved":true,"context_lines":[{"line_number":644,"context_line":""},{"line_number":645,"context_line":"    def build_raid_and_verify_node(self, config\u003dNone, deploy_time\u003dFalse,"},{"line_number":646,"context_line":"                                   erase_device_metadata\u003dTrue,"},{"line_number":647,"context_line":"                                   root_device_name\u003d\u0027/dev/md0\u0027):"},{"line_number":648,"context_line":"        config \u003d config or self.raid_config"},{"line_number":649,"context_line":"        if deploy_time:"},{"line_number":650,"context_line":"            steps \u003d ["}],"source_content_type":"text/x-python","patch_set":4,"id":"0cdcb45a_23d0fbb3","line":647,"range":{"start_line":647,"start_character":35,"end_line":647,"end_character":62},"updated":"2022-07-21 12:47:49.000000000","message":"Should `root_device_name` be an input parameter at all? Why not use `CONF.baremetal.root_device_name` directly at ln 694?","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"0152a8140d207d76aa90b74af08ca23306cecd0d","unresolved":false,"context_lines":[{"line_number":644,"context_line":""},{"line_number":645,"context_line":"    def build_raid_and_verify_node(self, config\u003dNone, deploy_time\u003dFalse,"},{"line_number":646,"context_line":"                                   erase_device_metadata\u003dTrue,"},{"line_number":647,"context_line":"                                   root_device_name\u003d\u0027/dev/md0\u0027):"},{"line_number":648,"context_line":"        config \u003d config or self.raid_config"},{"line_number":649,"context_line":"        if deploy_time:"},{"line_number":650,"context_line":"            steps \u003d ["}],"source_content_type":"text/x-python","patch_set":4,"id":"8f43ec52_3216889e","line":647,"range":{"start_line":647,"start_character":35,"end_line":647,"end_character":62},"in_reply_to":"0cdcb45a_23d0fbb3","updated":"2022-07-21 13:21:21.000000000","message":"Addressed.","commit_id":"7372f353eff24994dc8a9b240ad834b3f1408754"}],"ironic_tempest_plugin/tests/scenario/ironic_standalone/storage_inventory_schema.json":[{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"$schema\": \"http://json-schema.org/draft-04/schema#\","},{"line_number":3,"context_line":"    \"title\": \"Storage inventory JSON schema\","},{"line_number":4,"context_line":"    \"type\": \"object\","},{"line_number":5,"context_line":"    \"properties\": {"}],"source_content_type":"application/json","patch_set":2,"id":"29f6f469_7cd8d403","line":2,"range":{"start_line":2,"start_character":39,"end_line":2,"end_character":47},"updated":"2022-07-15 08:39:46.000000000","message":"see [1] and let\u0027s update this to draft-07 here too.\n\n[1] https://review.opendev.org/c/openstack/ironic/+/849882","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"$schema\": \"http://json-schema.org/draft-04/schema#\","},{"line_number":3,"context_line":"    \"title\": \"Storage inventory JSON schema\","},{"line_number":4,"context_line":"    \"type\": \"object\","},{"line_number":5,"context_line":"    \"properties\": {"}],"source_content_type":"application/json","patch_set":2,"id":"4f94b608_6d27056c","line":2,"range":{"start_line":2,"start_character":39,"end_line":2,"end_character":47},"in_reply_to":"29f6f469_7cd8d403","updated":"2022-07-20 12:39:26.000000000","message":"Updated.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"}],"ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py":[{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":277,"context_line":"        except json_schema_exc.ValidationError as e:"},{"line_number":278,"context_line":"            error_msg \u003d (\"Storage Inventory validation error: %(error)s \" %"},{"line_number":279,"context_line":"                         {\u0027error\u0027: e})"},{"line_number":280,"context_line":"            raise cls.skipException(error_msg)"},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"    @decorators.idempotent_id(\u00278a908a3c-f2af-48fb-8553-9163715aa403\u0027)"},{"line_number":283,"context_line":"    @utils.services(\u0027image\u0027, \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"b614d45b_e344e984","line":280,"range":{"start_line":280,"start_character":12,"end_line":280,"end_character":46},"updated":"2022-07-15 08:39:46.000000000","message":"I\u0027m thinking if we really want to skip the tests if validation of schema has failed. It\u0027s OK to skip if the inventory file is not present as user most likely don\u0027t intend to test this. But if user has provided the file, even if invalid, then user probably wants to test RAID and need to fix the file. Otherwise these tests will be skipped and user might not notice that instead of running they are skipped - user will think they\u0027re successfully run.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":277,"context_line":"        except json_schema_exc.ValidationError as e:"},{"line_number":278,"context_line":"            error_msg \u003d (\"Storage Inventory validation error: %(error)s \" %"},{"line_number":279,"context_line":"                         {\u0027error\u0027: e})"},{"line_number":280,"context_line":"            raise cls.skipException(error_msg)"},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"    @decorators.idempotent_id(\u00278a908a3c-f2af-48fb-8553-9163715aa403\u0027)"},{"line_number":283,"context_line":"    @utils.services(\u0027image\u0027, \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f5b46f8_3a7ab5e3","line":280,"range":{"start_line":280,"start_character":12,"end_line":280,"end_character":46},"in_reply_to":"b614d45b_e344e984","updated":"2022-07-20 12:39:26.000000000","message":"Agree. Raising failure once storage inventory JSON validation fails against storage inventory schema. Updated .","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":283,"context_line":"    @utils.services(\u0027image\u0027, \u0027network\u0027)"},{"line_number":284,"context_line":"    def test_hardware_raid(self):"},{"line_number":285,"context_line":"        controller_id \u003d self.storage_inventory_info["},{"line_number":286,"context_line":"            \u0027storage_inventory\u0027][\u0027controllers\u0027][0][\u0027id\u0027]"},{"line_number":287,"context_line":"        physical_disks \u003d [pdisk[\u0027id\u0027] for pdisk in ("},{"line_number":288,"context_line":"            self.storage_inventory_info[\u0027storage_inventory\u0027]["},{"line_number":289,"context_line":"                \u0027controllers\u0027][0][\u0027drives\u0027])]"}],"source_content_type":"text/x-python","patch_set":2,"id":"fbd499d8_38735321","line":286,"range":{"start_line":286,"start_character":48,"end_line":286,"end_character":49},"updated":"2022-07-15 08:39:46.000000000","message":"what if there are multiple controllers and the first one does not satisfy the requirements for this test? Should this check if there is any controller that supports RAID1 and has at least 2 drives?","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":283,"context_line":"    @utils.services(\u0027image\u0027, \u0027network\u0027)"},{"line_number":284,"context_line":"    def test_hardware_raid(self):"},{"line_number":285,"context_line":"        controller_id \u003d self.storage_inventory_info["},{"line_number":286,"context_line":"            \u0027storage_inventory\u0027][\u0027controllers\u0027][0][\u0027id\u0027]"},{"line_number":287,"context_line":"        physical_disks \u003d [pdisk[\u0027id\u0027] for pdisk in ("},{"line_number":288,"context_line":"            self.storage_inventory_info[\u0027storage_inventory\u0027]["},{"line_number":289,"context_line":"                \u0027controllers\u0027][0][\u0027drives\u0027])]"}],"source_content_type":"text/x-python","patch_set":2,"id":"beffb389_531f7a75","line":286,"range":{"start_line":286,"start_character":48,"end_line":286,"end_character":49},"in_reply_to":"fbd499d8_38735321","updated":"2022-07-20 12:39:26.000000000","message":"Addressed. Added Helper method which would validate raid type and drive count require for test case execution.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":27909,"name":"Aija Jauntēva","email":"code@clusums.eu","username":"ajya"},"change_message_id":"0473946eb7400dd54d1e8f7a7a21c742c581ab36","unresolved":true,"context_lines":[{"line_number":317,"context_line":"    @decorators.idempotent_id(\u002792fe534d-77f1-422d-84e4-e30fe9e3d928\u0027)"},{"line_number":318,"context_line":"    def test_raid_cleaning_max_size_raid_10(self):"},{"line_number":319,"context_line":"        controller_id \u003d self.storage_inventory_info["},{"line_number":320,"context_line":"            \u0027storage_inventory\u0027][\u0027controllers\u0027][0][\u0027id\u0027]"},{"line_number":321,"context_line":"        physical_disks \u003d [pdisk[\u0027id\u0027] for pdisk in ("},{"line_number":322,"context_line":"            self.storage_inventory_info[\u0027storage_inventory\u0027]["},{"line_number":323,"context_line":"                \u0027controllers\u0027][0][\u0027drives\u0027])]"}],"source_content_type":"text/x-python","patch_set":2,"id":"d35b6400_ffa13246","line":320,"range":{"start_line":320,"start_character":48,"end_line":320,"end_character":49},"updated":"2022-07-15 08:39:46.000000000","message":"ditto + maybe want to have private helper method to avoid code duplication.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"7e2e2d2c053dc43a0d8488d62e99964acd5118f8","unresolved":false,"context_lines":[{"line_number":317,"context_line":"    @decorators.idempotent_id(\u002792fe534d-77f1-422d-84e4-e30fe9e3d928\u0027)"},{"line_number":318,"context_line":"    def test_raid_cleaning_max_size_raid_10(self):"},{"line_number":319,"context_line":"        controller_id \u003d self.storage_inventory_info["},{"line_number":320,"context_line":"            \u0027storage_inventory\u0027][\u0027controllers\u0027][0][\u0027id\u0027]"},{"line_number":321,"context_line":"        physical_disks \u003d [pdisk[\u0027id\u0027] for pdisk in ("},{"line_number":322,"context_line":"            self.storage_inventory_info[\u0027storage_inventory\u0027]["},{"line_number":323,"context_line":"                \u0027controllers\u0027][0][\u0027drives\u0027])]"}],"source_content_type":"text/x-python","patch_set":2,"id":"fffd2cb1_6c95c467","line":320,"range":{"start_line":320,"start_character":48,"end_line":320,"end_character":49},"in_reply_to":"d35b6400_ffa13246","updated":"2022-07-20 12:39:26.000000000","message":"Addressed as above.","commit_id":"1dc0dba6b07dd8d6d3cce503deb0ef41fadc48e0"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c543fc6db52a3a4c2c4d5de5bb62464ea1325cdd","unresolved":true,"context_lines":[{"line_number":306,"context_line":"        raid_config \u003d {"},{"line_number":307,"context_line":"            \"logical_disks\": ["},{"line_number":308,"context_line":"                {"},{"line_number":309,"context_line":"                    \"size_gb\": 10,"},{"line_number":310,"context_line":"                    \"raid_level\": \"1\","},{"line_number":311,"context_line":"                    \"controller\": controller[\u0027id\u0027]"},{"line_number":312,"context_line":"                }"},{"line_number":313,"context_line":"            ]"},{"line_number":314,"context_line":"        }"}],"source_content_type":"text/x-python","patch_set":5,"id":"c1b66baf_15e24a0e","line":311,"range":{"start_line":309,"start_character":0,"end_line":311,"end_character":50},"updated":"2022-08-08 16:44:09.000000000","message":"This is not suitable for all images, please... either fail the test or skip it if the image size it too large.\n\nAnd yes, I\u0027ve had someone try to run tempest with a 40GB image.","commit_id":"1e9f9e4df63d77ae107020a38f81d4b4d3be4ab3"},{"author":{"_account_id":33244,"name":"kamlesh chauvhan","email":"kamlesh.chauvhan@gmail.com","username":"kamlesh.chauvhan"},"change_message_id":"9f6766650a75293fca08db47b09a1949de8b353f","unresolved":false,"context_lines":[{"line_number":306,"context_line":"        raid_config \u003d {"},{"line_number":307,"context_line":"            \"logical_disks\": ["},{"line_number":308,"context_line":"                {"},{"line_number":309,"context_line":"                    \"size_gb\": 10,"},{"line_number":310,"context_line":"                    \"raid_level\": \"1\","},{"line_number":311,"context_line":"                    \"controller\": controller[\u0027id\u0027]"},{"line_number":312,"context_line":"                }"},{"line_number":313,"context_line":"            ]"},{"line_number":314,"context_line":"        }"}],"source_content_type":"text/x-python","patch_set":5,"id":"a3586dd2_53646c22","line":311,"range":{"start_line":309,"start_character":0,"end_line":311,"end_character":50},"in_reply_to":"c1b66baf_15e24a0e","updated":"2022-08-08 17:17:26.000000000","message":"Incorporated.","commit_id":"1e9f9e4df63d77ae107020a38f81d4b4d3be4ab3"}]}
