)]}'
{"doc/source/admin/drivers/ibmc.rst":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"29fddd8dc7e473eb62056c346b692f67aac06696","unresolved":false,"context_lines":[{"line_number":241,"context_line":"    uses 9 disks. If you want to choose the latter solution, you can specified"},{"line_number":242,"context_line":"    the disk count to use by adding ``number_of_physical_disks`` option."},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"    .. code-block:: json"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"     {"},{"line_number":247,"context_line":"        \"logical_disks\": ["}],"source_content_type":"text/x-rst","patch_set":2,"id":"ff570b3c_ae68d686","line":244,"updated":"2020-05-18 05:59:02.000000000","message":"docs: Could not lex literal_block as \"json\". Highlighting skipped.","commit_id":"268e8e5b37710f9397fe1b090efc9c771a5b7b00"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"bbaeb8146c47832dc3a91f4fb9245101788aa3b6","unresolved":false,"context_lines":[{"line_number":102,"context_line":"RAID Interface"},{"line_number":103,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Currently, only RAID controller which supports OOB management can be managed."},{"line_number":106,"context_line":"When you try to manage a RAID controller which does not support OOB"},{"line_number":107,"context_line":"management, it will fail with: \u0027RAID controller `$(controller-name)` does not"},{"line_number":108,"context_line":"support OOB management. Currently, ibmc RAID interface can only manage"},{"line_number":109,"context_line":"RAID controller which support OOB management.\u0027."},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"See :doc:`/admin/raid` for more information on Ironic RAID support."},{"line_number":112,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_2c39923e","line":109,"range":{"start_line":105,"start_character":0,"end_line":109,"end_character":47},"updated":"2020-05-29 13:08:44.000000000","message":"I would rewrite this part, or remove it, don\u0027t think we should explicitly mention the failure message","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":102,"context_line":"RAID Interface"},{"line_number":103,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Currently, only RAID controller which supports OOB management can be managed."},{"line_number":106,"context_line":"When you try to manage a RAID controller which does not support OOB"},{"line_number":107,"context_line":"management, it will fail with: \u0027RAID controller `$(controller-name)` does not"},{"line_number":108,"context_line":"support OOB management. Currently, ibmc RAID interface can only manage"},{"line_number":109,"context_line":"RAID controller which support OOB management.\u0027."},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"See :doc:`/admin/raid` for more information on Ironic RAID support."},{"line_number":112,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_82f1d398","line":109,"range":{"start_line":105,"start_character":0,"end_line":109,"end_character":47},"in_reply_to":"ff570b3c_2c39923e","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"bbaeb8146c47832dc3a91f4fb9245101788aa3b6","unresolved":false,"context_lines":[{"line_number":120,"context_line":"  ``size_gb`` if this logical disk is supposed to use the rest of the space"},{"line_number":121,"context_line":"  available."},{"line_number":122,"context_line":"* ``raid_level``: RAID level for the logical disk. Valid values are"},{"line_number":123,"context_line":"  ``JBOD``, ``0``, ``1``, ``5``, ``6``, ``1+0``, ``5+0`` and ``6+0``. And it"},{"line_number":124,"context_line":"  is possible that some RAID controllers can only support a subset RAID"},{"line_number":125,"context_line":"  levels, if a specified RAID level is not supported, it will fail with:"},{"line_number":126,"context_line":"  \u0027RAID level $(RAID-level) is supported.\u0027."}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_cc61f63b","line":123,"range":{"start_line":123,"start_character":70,"end_line":123,"end_character":74},"updated":"2020-05-29 13:08:44.000000000","message":"remove","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":120,"context_line":"  ``size_gb`` if this logical disk is supposed to use the rest of the space"},{"line_number":121,"context_line":"  available."},{"line_number":122,"context_line":"* ``raid_level``: RAID level for the logical disk. Valid values are"},{"line_number":123,"context_line":"  ``JBOD``, ``0``, ``1``, ``5``, ``6``, ``1+0``, ``5+0`` and ``6+0``. And it"},{"line_number":124,"context_line":"  is possible that some RAID controllers can only support a subset RAID"},{"line_number":125,"context_line":"  levels, if a specified RAID level is not supported, it will fail with:"},{"line_number":126,"context_line":"  \u0027RAID level $(RAID-level) is supported.\u0027."}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_62ee3fb5","line":123,"range":{"start_line":123,"start_character":70,"end_line":123,"end_character":74},"in_reply_to":"ff570b3c_cc61f63b","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"bbaeb8146c47832dc3a91f4fb9245101788aa3b6","unresolved":false,"context_lines":[{"line_number":122,"context_line":"* ``raid_level``: RAID level for the logical disk. Valid values are"},{"line_number":123,"context_line":"  ``JBOD``, ``0``, ``1``, ``5``, ``6``, ``1+0``, ``5+0`` and ``6+0``. And it"},{"line_number":124,"context_line":"  is possible that some RAID controllers can only support a subset RAID"},{"line_number":125,"context_line":"  levels, if a specified RAID level is not supported, it will fail with:"},{"line_number":126,"context_line":"  \u0027RAID level $(RAID-level) is supported.\u0027."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":".. NOTE::"},{"line_number":129,"context_line":"  RAID level ``2`` is not supported by ``iBMC`` driver."}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_acc92226","line":126,"range":{"start_line":125,"start_character":67,"end_line":126,"end_character":43},"updated":"2020-05-29 13:08:44.000000000","message":"same here, I don;t think we need to mention the failure message","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":122,"context_line":"* ``raid_level``: RAID level for the logical disk. Valid values are"},{"line_number":123,"context_line":"  ``JBOD``, ``0``, ``1``, ``5``, ``6``, ``1+0``, ``5+0`` and ``6+0``. And it"},{"line_number":124,"context_line":"  is possible that some RAID controllers can only support a subset RAID"},{"line_number":125,"context_line":"  levels, if a specified RAID level is not supported, it will fail with:"},{"line_number":126,"context_line":"  \u0027RAID level $(RAID-level) is supported.\u0027."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":".. NOTE::"},{"line_number":129,"context_line":"  RAID level ``2`` is not supported by ``iBMC`` driver."}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_c228ebef","line":126,"range":{"start_line":125,"start_character":67,"end_line":126,"end_character":43},"in_reply_to":"ff570b3c_acc92226","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"bbaeb8146c47832dc3a91f4fb9245101788aa3b6","unresolved":false,"context_lines":[{"line_number":141,"context_line":""},{"line_number":142,"context_line":"See :doc:`/admin/raid` for more information on backing disk hints."},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"These are machine-independent information. The hints are specified for each"},{"line_number":145,"context_line":"logical disk to help Ironic find the desired disks for RAID configuration."},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* ``share_physical_disks``"}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_ccef3685","line":144,"range":{"start_line":144,"start_character":30,"end_line":144,"end_character":41},"updated":"2020-05-29 13:08:44.000000000","message":"nit: informations","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":141,"context_line":""},{"line_number":142,"context_line":"See :doc:`/admin/raid` for more information on backing disk hints."},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"These are machine-independent information. The hints are specified for each"},{"line_number":145,"context_line":"logical disk to help Ironic find the desired disks for RAID configuration."},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* ``share_physical_disks``"}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_02330364","line":144,"range":{"start_line":144,"start_character":30,"end_line":144,"end_character":41},"in_reply_to":"ff570b3c_ccef3685","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"bbaeb8146c47832dc3a91f4fb9245101788aa3b6","unresolved":false,"context_lines":[{"line_number":241,"context_line":"    shareable capacity of this two logical-disks are 500G and 300G, then it"},{"line_number":242,"context_line":"    will choose the second one."},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"*   When ``size_gb`` is set to ``MAX``, it will auto work though all possible"},{"line_number":245,"context_line":"    cases and choose the \"best\" solution which has the biggest capacity and"},{"line_number":246,"context_line":"    use least capacity. For example: to create a RAID 5+0 logical disk with"},{"line_number":247,"context_line":"    MAX size in a server has 9 200G-disks, it will finally choose \"8 disks +"}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_0ceace73","line":244,"range":{"start_line":244,"start_character":58,"end_line":244,"end_character":64},"updated":"2020-05-29 13:08:44.000000000","message":"nit: through","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":241,"context_line":"    shareable capacity of this two logical-disks are 500G and 300G, then it"},{"line_number":242,"context_line":"    will choose the second one."},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"*   When ``size_gb`` is set to ``MAX``, it will auto work though all possible"},{"line_number":245,"context_line":"    cases and choose the \"best\" solution which has the biggest capacity and"},{"line_number":246,"context_line":"    use least capacity. For example: to create a RAID 5+0 logical disk with"},{"line_number":247,"context_line":"    MAX size in a server has 9 200G-disks, it will finally choose \"8 disks +"}],"source_content_type":"text/x-rst","patch_set":9,"id":"ff570b3c_e237ef4c","line":244,"range":{"start_line":244,"start_character":58,"end_line":244,"end_character":64},"in_reply_to":"ff570b3c_0ceace73","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"1d12c09e9a661760d108b63777e1373fac1a20ce"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      capacity are both the same (it rarely happens?), we will choose the one"},{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, it will create logical disk"},{"line_number":217,"context_line":"    upon exists physical-disk-groups(logical-disks) first. Only when no exists"},{"line_number":218,"context_line":"    physical-disk-group matches, then it chooses unused physical disks with"},{"line_number":219,"context_line":"    same strategy described upon. When multiple exists physical-disk-groups"}],"source_content_type":"text/x-rst","patch_set":10,"id":"ff570b3c_22d72752","line":216,"range":{"start_line":216,"start_character":51,"end_line":216,"end_character":53},"updated":"2020-06-10 02:37:55.000000000","message":"Similar to the comment further down, someone may not understand what \"it\" is. Is it the driver, is it the client, is it the BMC. Hopefully this makes sense.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      capacity are both the same (it rarely happens?), we will choose the one"},{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, it will create logical disk"},{"line_number":217,"context_line":"    upon exists physical-disk-groups(logical-disks) first. Only when no exists"},{"line_number":218,"context_line":"    physical-disk-group matches, then it chooses unused physical disks with"},{"line_number":219,"context_line":"    same strategy described upon. When multiple exists physical-disk-groups"}],"source_content_type":"text/x-rst","patch_set":10,"id":"ff570b3c_62a75fa9","line":216,"range":{"start_line":216,"start_character":51,"end_line":216,"end_character":53},"in_reply_to":"ff570b3c_22d72752","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":237,"context_line":"    shareable capacity of this two logical-disks are 500G and 300G, then it"},{"line_number":238,"context_line":"    will choose the second one."},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"*   When ``size_gb`` is set to ``MAX``, it will auto work through all possible"},{"line_number":241,"context_line":"    cases and choose the \"best\" solution which has the biggest capacity and"},{"line_number":242,"context_line":"    use least capacity. For example: to create a RAID 5+0 logical disk with"},{"line_number":243,"context_line":"    MAX size in a server has 9 200G-disks, it will finally choose \"8 disks +"}],"source_content_type":"text/x-rst","patch_set":10,"id":"ff570b3c_a2eb3710","line":240,"range":{"start_line":240,"start_character":40,"end_line":240,"end_character":42},"updated":"2020-06-10 02:37:55.000000000","message":"In this context, you may want to explicitly state what \"it\" is.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":237,"context_line":"    shareable capacity of this two logical-disks are 500G and 300G, then it"},{"line_number":238,"context_line":"    will choose the second one."},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"*   When ``size_gb`` is set to ``MAX``, it will auto work through all possible"},{"line_number":241,"context_line":"    cases and choose the \"best\" solution which has the biggest capacity and"},{"line_number":242,"context_line":"    use least capacity. For example: to create a RAID 5+0 logical disk with"},{"line_number":243,"context_line":"    MAX size in a server has 9 200G-disks, it will finally choose \"8 disks +"}],"source_content_type":"text/x-rst","patch_set":10,"id":"ff570b3c_c2b58bd2","line":240,"range":{"start_line":240,"start_character":40,"end_line":240,"end_character":42},"in_reply_to":"ff570b3c_a2eb3710","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":301,"context_line":"Method Name               HTTP Method    Description"},{"line_number":302,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":303,"context_line":"boot_up_seq               GET            Query boot up sequence"},{"line_number":304,"context_line":"get_raid_controller_list  GET            Query RAID controller summary info"},{"line_number":305,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"ff570b3c_828f1374","line":304,"updated":"2020-06-10 02:37:55.000000000","message":"I\u0027m super happy to see this documentation! Thanks!","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":301,"context_line":"Method Name               HTTP Method    Description"},{"line_number":302,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":303,"context_line":"boot_up_seq               GET            Query boot up sequence"},{"line_number":304,"context_line":"get_raid_controller_list  GET            Query RAID controller summary info"},{"line_number":305,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"ff570b3c_22c6074b","line":304,"in_reply_to":"ff570b3c_828f1374","updated":"2020-06-10 03:23:24.000000000","message":"Thanks, ;). It cost me some time to accomplete the logic and learn a lot about RAID configuration.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":102,"context_line":"RAID Interface"},{"line_number":103,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Currently, only RAID controller which supports OOB management can be managed."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"See :doc:`/admin/raid` for more information on Ironic RAID support."},{"line_number":108,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_279f3666","line":105,"range":{"start_line":105,"start_character":11,"end_line":105,"end_character":76},"updated":"2020-06-10 07:44:49.000000000","message":"what about \u0027only RAID controllers with OOB management are supported\u0027 ?","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":102,"context_line":"RAID Interface"},{"line_number":103,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Currently, only RAID controller which supports OOB management can be managed."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"See :doc:`/admin/raid` for more information on Ironic RAID support."},{"line_number":108,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_670c8e94","line":105,"range":{"start_line":105,"start_character":11,"end_line":105,"end_character":76},"in_reply_to":"ff570b3c_279f3666","updated":"2020-06-10 08:19:21.000000000","message":"OOB means Out-Of-Band. In-band raid controller configuration needs reboot, it can not be support in clean steps for now.","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"* ``controller``: Optional. Supported values are: RAID storage id,"},{"line_number":153,"context_line":"  RAID storage name or RAID controller name. If a bare metal server have more"},{"line_number":154,"context_line":"  than one controller, this is mandatory. Typical values would looks like:"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"    * RAID Storage Id: ``RAIDStorage0``"},{"line_number":157,"context_line":"    * RAID Storage Name: ``RAIDStorage0``"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_878f222d","line":154,"range":{"start_line":154,"start_character":63,"end_line":154,"end_character":68},"updated":"2020-06-10 07:44:49.000000000","message":"nit: look","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"* ``controller``: Optional. Supported values are: RAID storage id,"},{"line_number":153,"context_line":"  RAID storage name or RAID controller name. If a bare metal server have more"},{"line_number":154,"context_line":"  than one controller, this is mandatory. Typical values would looks like:"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"    * RAID Storage Id: ``RAIDStorage0``"},{"line_number":157,"context_line":"    * RAID Storage Name: ``RAIDStorage0``"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_47118aac","line":154,"range":{"start_line":154,"start_character":63,"end_line":154,"end_character":68},"in_reply_to":"ff570b3c_878f222d","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":158,"context_line":"    * RAID Controller Name: ``RAID Card1 Controller``."},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"* ``physical_disks``: Optional. Supported values are: disk-id, disk-name or"},{"line_number":161,"context_line":"  disk serial number. Typical values for hdd disk would looks like:"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    * Disk Id: ``HDDPlaneDisk0``"},{"line_number":164,"context_line":"    * Disk Name: ``Disk0``."}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_e79c1e6c","line":161,"range":{"start_line":161,"start_character":56,"end_line":161,"end_character":61},"updated":"2020-06-10 07:44:49.000000000","message":"nit: look","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":158,"context_line":"    * RAID Controller Name: ``RAID Card1 Controller``."},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"* ``physical_disks``: Optional. Supported values are: disk-id, disk-name or"},{"line_number":161,"context_line":"  disk serial number. Typical values for hdd disk would looks like:"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    * Disk Id: ``HDDPlaneDisk0``"},{"line_number":164,"context_line":"    * Disk Name: ``Disk0``."}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_a725060d","line":161,"range":{"start_line":161,"start_character":56,"end_line":161,"end_character":61},"in_reply_to":"ff570b3c_e79c1e6c","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":181,"context_line":"* ``physical_disks``"},{"line_number":182,"context_line":"* ``size_gb``"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"The logical disks creation priority is strictly follow the table below, if"},{"line_number":185,"context_line":"multiple logical disks has same priority, then they will be created with the"},{"line_number":186,"context_line":"same order in ``logical_disks`` array."},{"line_number":187,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_c7991a7a","line":184,"range":{"start_line":184,"start_character":36,"end_line":184,"end_character":54},"updated":"2020-06-10 07:44:49.000000000","message":"nit: \u0027strictly follows\u0027, remove is","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":181,"context_line":"* ``physical_disks``"},{"line_number":182,"context_line":"* ``size_gb``"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"The logical disks creation priority is strictly follow the table below, if"},{"line_number":185,"context_line":"multiple logical disks has same priority, then they will be created with the"},{"line_number":186,"context_line":"same order in ``logical_disks`` array."},{"line_number":187,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_c71c7ac3","line":184,"range":{"start_line":184,"start_character":36,"end_line":184,"end_character":54},"in_reply_to":"ff570b3c_c7991a7a","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":182,"context_line":"* ``size_gb``"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"The logical disks creation priority is strictly follow the table below, if"},{"line_number":185,"context_line":"multiple logical disks has same priority, then they will be created with the"},{"line_number":186,"context_line":"same order in ``logical_disks`` array."},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d       \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d       \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_078dd230","line":185,"range":{"start_line":185,"start_character":23,"end_line":185,"end_character":26},"updated":"2020-06-10 07:44:49.000000000","message":"nit: \u0027have the\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":182,"context_line":"* ``size_gb``"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"The logical disks creation priority is strictly follow the table below, if"},{"line_number":185,"context_line":"multiple logical disks has same priority, then they will be created with the"},{"line_number":186,"context_line":"same order in ``logical_disks`` array."},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d       \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d       \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_4786aadd","line":185,"range":{"start_line":185,"start_character":23,"end_line":185,"end_character":26},"in_reply_to":"ff570b3c_078dd230","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":197,"context_line":"no                         no                               max"},{"line_number":198,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d       \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d       \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_6782ce02","line":200,"range":{"start_line":200,"start_character":15,"end_line":200,"end_character":21},"updated":"2020-06-10 07:44:49.000000000","message":"nit: choice","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"},{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_4787ca10","line":203,"range":{"start_line":203,"start_character":4,"end_line":203,"end_character":14},"updated":"2020-06-10 07:44:49.000000000","message":"just change with \u0027if\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"},{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_e7753e34","line":203,"range":{"start_line":203,"start_character":37,"end_line":203,"end_character":39},"updated":"2020-06-10 07:44:49.000000000","message":"nit: are","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"},{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_c7711a0f","line":203,"range":{"start_line":203,"start_character":4,"end_line":203,"end_character":14},"in_reply_to":"ff570b3c_4787ca10","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"},{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_a753466c","line":203,"range":{"start_line":203,"start_character":37,"end_line":203,"end_character":39},"in_reply_to":"ff570b3c_e7753e34","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"},{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"},{"line_number":207,"context_line":"      will cause a waste of disk capacity. This is avoid with highest priority."}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_278d762a","line":204,"range":{"start_line":203,"start_character":51,"end_line":204,"end_character":19},"updated":"2020-06-10 07:44:49.000000000","message":"\u0027the \"waste least\" strategy will be used\u0027\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":200,"context_line":"Physical disks choose strategy"},{"line_number":201,"context_line":"------------------------------"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"*   In case of no ``physical_disks`` is specified, we will using the \"waste"},{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"},{"line_number":207,"context_line":"      will cause a waste of disk capacity. This is avoid with highest priority."}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_47d4eabd","line":204,"range":{"start_line":203,"start_character":51,"end_line":204,"end_character":19},"in_reply_to":"ff570b3c_278d762a","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"},{"line_number":207,"context_line":"      will cause a waste of disk capacity. This is avoid with highest priority."},{"line_number":208,"context_line":"    * using least total disk capacity: for example, we can create 400G RAID 5"},{"line_number":209,"context_line":"      with both 5 100G-disks and 3 200G-disks. 5 100G disks is a better"},{"line_number":210,"context_line":"      strategy because it uses a 500G capacity totally. While 3 200G-disks"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_67976e3c","line":207,"range":{"start_line":207,"start_character":51,"end_line":207,"end_character":56},"updated":"2020-06-10 07:44:49.000000000","message":"\u0027to avoid\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":204,"context_line":"    least\" strategy to choose the physical disks."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    * waste least disk capacity: when using disks with different capacity, it"},{"line_number":207,"context_line":"      will cause a waste of disk capacity. This is avoid with highest priority."},{"line_number":208,"context_line":"    * using least total disk capacity: for example, we can create 400G RAID 5"},{"line_number":209,"context_line":"      with both 5 100G-disks and 3 200G-disks. 5 100G disks is a better"},{"line_number":210,"context_line":"      strategy because it uses a 500G capacity totally. While 3 200G-disks"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_67448e75","line":207,"range":{"start_line":207,"start_character":51,"end_line":207,"end_character":56},"in_reply_to":"ff570b3c_67976e3c","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":211,"context_line":"      are 600G totally."},{"line_number":212,"context_line":"    * using least disk count: finally, if waste capacity and total disk"},{"line_number":213,"context_line":"      capacity are both the same (it rarely happens?), we will choose the one"},{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, ``ibmc`` driver will create"},{"line_number":217,"context_line":"    logical disk upon exists physical-disk-groups(logical-disks) first. Only"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_879d6259","line":214,"range":{"start_line":214,"start_character":6,"end_line":214,"end_character":27},"updated":"2020-06-10 07:44:49.000000000","message":"\u0027with the minimum number of disks\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":211,"context_line":"      are 600G totally."},{"line_number":212,"context_line":"    * using least disk count: finally, if waste capacity and total disk"},{"line_number":213,"context_line":"      capacity are both the same (it rarely happens?), we will choose the one"},{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, ``ibmc`` driver will create"},{"line_number":217,"context_line":"    logical disk upon exists physical-disk-groups(logical-disks) first. Only"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_87fe0236","line":214,"range":{"start_line":214,"start_character":6,"end_line":214,"end_character":27},"in_reply_to":"ff570b3c_879d6259","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      capacity are both the same (it rarely happens?), we will choose the one"},{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, ``ibmc`` driver will create"},{"line_number":217,"context_line":"    logical disk upon exists physical-disk-groups(logical-disks) first. Only"},{"line_number":218,"context_line":"    when no exists physical-disk-group matches, then it chooses unused physical"},{"line_number":219,"context_line":"    disks with same strategy described upon. When multiple exists"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_e7aa5e6f","line":216,"range":{"start_line":216,"start_character":41,"end_line":216,"end_character":49},"updated":"2020-06-10 07:44:49.000000000","message":"\u0027is present\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      capacity are both the same (it rarely happens?), we will choose the one"},{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, ``ibmc`` driver will create"},{"line_number":217,"context_line":"    logical disk upon exists physical-disk-groups(logical-disks) first. Only"},{"line_number":218,"context_line":"    when no exists physical-disk-group matches, then it chooses unused physical"},{"line_number":219,"context_line":"    disks with same strategy described upon. When multiple exists"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_679dae09","line":216,"range":{"start_line":216,"start_character":41,"end_line":216,"end_character":49},"in_reply_to":"ff570b3c_e7aa5e6f","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, ``ibmc`` driver will create"},{"line_number":217,"context_line":"    logical disk upon exists physical-disk-groups(logical-disks) first. Only"},{"line_number":218,"context_line":"    when no exists physical-disk-group matches, then it chooses unused physical"},{"line_number":219,"context_line":"    disks with same strategy described upon. When multiple exists"},{"line_number":220,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too, the"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_c7a75aa7","line":217,"range":{"start_line":217,"start_character":22,"end_line":217,"end_character":28},"updated":"2020-06-10 07:44:49.000000000","message":"\u0027existing\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":214,"context_line":"      uses least disk count."},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"*   when ``share_physical_disks`` option presents, ``ibmc`` driver will create"},{"line_number":217,"context_line":"    logical disk upon exists physical-disk-groups(logical-disks) first. Only"},{"line_number":218,"context_line":"    when no exists physical-disk-group matches, then it chooses unused physical"},{"line_number":219,"context_line":"    disks with same strategy described upon. When multiple exists"},{"line_number":220,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too, the"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_07983219","line":217,"range":{"start_line":217,"start_character":22,"end_line":217,"end_character":28},"in_reply_to":"ff570b3c_c7a75aa7","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":218,"context_line":"    when no exists physical-disk-group matches, then it chooses unused physical"},{"line_number":219,"context_line":"    disks with same strategy described upon. When multiple exists"},{"line_number":220,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too, the"},{"line_number":221,"context_line":"    bigger capacity left the better. For example, to create a logical disk"},{"line_number":222,"context_line":"    like:"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"    .. code-block:: json"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_47b50acd","line":221,"updated":"2020-06-10 07:44:49.000000000","message":"nit: add comma \u0027,\u0027","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":218,"context_line":"    when no exists physical-disk-group matches, then it chooses unused physical"},{"line_number":219,"context_line":"    disks with same strategy described upon. When multiple exists"},{"line_number":220,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too, the"},{"line_number":221,"context_line":"    bigger capacity left the better. For example, to create a logical disk"},{"line_number":222,"context_line":"    like:"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"    .. code-block:: json"}],"source_content_type":"text/x-rst","patch_set":12,"id":"ff570b3c_a75d064a","line":221,"in_reply_to":"ff570b3c_47b50acd","updated":"2020-06-10 08:19:21.000000000","message":"not understand where. I change to use another expression.","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":14,"context_line":"* Management Interface: Boot device management"},{"line_number":15,"context_line":"* Power Interface: Power management"},{"line_number":16,"context_line":"* `RAID Interface`_: RAID controller and disk management"},{"line_number":17,"context_line":"* `Vendor Interface`_: BIOS management"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Prerequisites"},{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_ab1cacc1","line":17,"range":{"start_line":17,"start_character":23,"end_line":17,"end_character":38},"updated":"2020-06-10 14:28:02.000000000","message":"BIOS? Maybe a bit more specific?","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"d56f245ce78208441adf229d8c3de334e8682197","unresolved":false,"context_lines":[{"line_number":14,"context_line":"* Management Interface: Boot device management"},{"line_number":15,"context_line":"* Power Interface: Power management"},{"line_number":16,"context_line":"* `RAID Interface`_: RAID controller and disk management"},{"line_number":17,"context_line":"* `Vendor Interface`_: BIOS management"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Prerequisites"},{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_81a0a793","line":17,"range":{"start_line":17,"start_character":23,"end_line":17,"end_character":38},"in_reply_to":"ff570b3c_ab1cacc1","updated":"2020-06-10 15:32:02.000000000","message":"Some shortcuts to query ibmc resource","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":215,"context_line":"      with the minimum number of disks."},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"*   when ``share_physical_disks`` option is present, ``ibmc`` driver will"},{"line_number":218,"context_line":"    create logical disk upon existing physical-disk-groups(logical-disks) first."},{"line_number":219,"context_line":"    Only when no exists physical-disk-group matches, then it chooses unused"},{"line_number":220,"context_line":"    physical disks with same strategy described upon. When multiple exists"},{"line_number":221,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too,"}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_0b2f98a7","line":218,"range":{"start_line":218,"start_character":38,"end_line":218,"end_character":58},"updated":"2020-06-10 14:28:02.000000000","message":"Unless I missed it, the term \"physical disk group\" appears here for the first time. Should we define it or just something less vendor-specific?","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"d56f245ce78208441adf229d8c3de334e8682197","unresolved":false,"context_lines":[{"line_number":215,"context_line":"      with the minimum number of disks."},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"*   when ``share_physical_disks`` option is present, ``ibmc`` driver will"},{"line_number":218,"context_line":"    create logical disk upon existing physical-disk-groups(logical-disks) first."},{"line_number":219,"context_line":"    Only when no exists physical-disk-group matches, then it chooses unused"},{"line_number":220,"context_line":"    physical disks with same strategy described upon. When multiple exists"},{"line_number":221,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too,"}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_41204f9c","line":218,"range":{"start_line":218,"start_character":38,"end_line":218,"end_character":58},"in_reply_to":"ff570b3c_0b2f98a7","updated":"2020-06-10 15:32:02.000000000","message":"Done","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":216,"context_line":""},{"line_number":217,"context_line":"*   when ``share_physical_disks`` option is present, ``ibmc`` driver will"},{"line_number":218,"context_line":"    create logical disk upon existing physical-disk-groups(logical-disks) first."},{"line_number":219,"context_line":"    Only when no exists physical-disk-group matches, then it chooses unused"},{"line_number":220,"context_line":"    physical disks with same strategy described upon. When multiple exists"},{"line_number":221,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too,"},{"line_number":222,"context_line":"    the bigger capacity left the better. For example, to create a logical disk"}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_8b0ba829","line":219,"range":{"start_line":219,"start_character":17,"end_line":219,"end_character":23},"updated":"2020-06-10 14:28:02.000000000","message":"nit: s/exists/existing/","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"d56f245ce78208441adf229d8c3de334e8682197","unresolved":false,"context_lines":[{"line_number":216,"context_line":""},{"line_number":217,"context_line":"*   when ``share_physical_disks`` option is present, ``ibmc`` driver will"},{"line_number":218,"context_line":"    create logical disk upon existing physical-disk-groups(logical-disks) first."},{"line_number":219,"context_line":"    Only when no exists physical-disk-group matches, then it chooses unused"},{"line_number":220,"context_line":"    physical disks with same strategy described upon. When multiple exists"},{"line_number":221,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too,"},{"line_number":222,"context_line":"    the bigger capacity left the better. For example, to create a logical disk"}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_8ed8d6f0","line":219,"range":{"start_line":219,"start_character":17,"end_line":219,"end_character":23},"in_reply_to":"ff570b3c_8b0ba829","updated":"2020-06-10 15:32:02.000000000","message":"Done","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":217,"context_line":"*   when ``share_physical_disks`` option is present, ``ibmc`` driver will"},{"line_number":218,"context_line":"    create logical disk upon existing physical-disk-groups(logical-disks) first."},{"line_number":219,"context_line":"    Only when no exists physical-disk-group matches, then it chooses unused"},{"line_number":220,"context_line":"    physical disks with same strategy described upon. When multiple exists"},{"line_number":221,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too,"},{"line_number":222,"context_line":"    the bigger capacity left the better. For example, to create a logical disk"},{"line_number":223,"context_line":"    shown below on a ``ibmc`` server which has two RAID5 logical disks already."}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_ab02ec09","line":220,"range":{"start_line":220,"start_character":48,"end_line":220,"end_character":52},"updated":"2020-06-10 14:28:02.000000000","message":"s/upon/above/","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"d56f245ce78208441adf229d8c3de334e8682197","unresolved":false,"context_lines":[{"line_number":217,"context_line":"*   when ``share_physical_disks`` option is present, ``ibmc`` driver will"},{"line_number":218,"context_line":"    create logical disk upon existing physical-disk-groups(logical-disks) first."},{"line_number":219,"context_line":"    Only when no exists physical-disk-group matches, then it chooses unused"},{"line_number":220,"context_line":"    physical disks with same strategy described upon. When multiple exists"},{"line_number":221,"context_line":"    physical-disk-groups matches, it will use \"waste least\" strategy too,"},{"line_number":222,"context_line":"    the bigger capacity left the better. For example, to create a logical disk"},{"line_number":223,"context_line":"    shown below on a ``ibmc`` server which has two RAID5 logical disks already."}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_cee2cea0","line":220,"range":{"start_line":220,"start_character":48,"end_line":220,"end_character":52},"in_reply_to":"ff570b3c_ab02ec09","updated":"2020-06-10 15:32:02.000000000","message":"Done","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":265,"context_line":"Examples"},{"line_number":266,"context_line":"--------"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"A typical scene creates:"},{"line_number":269,"context_line":" * RAID 5, 500G, root OS volume with 3 disks"},{"line_number":270,"context_line":" * RAID 5, rest available space, data volume with rest disks"},{"line_number":271,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_0e4b265f","line":268,"range":{"start_line":268,"start_character":0,"end_line":268,"end_character":15},"updated":"2020-06-10 14:28:02.000000000","message":"\"In a typical scenario we may want to create:\"","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"d56f245ce78208441adf229d8c3de334e8682197","unresolved":false,"context_lines":[{"line_number":265,"context_line":"Examples"},{"line_number":266,"context_line":"--------"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"A typical scene creates:"},{"line_number":269,"context_line":" * RAID 5, 500G, root OS volume with 3 disks"},{"line_number":270,"context_line":" * RAID 5, rest available space, data volume with rest disks"},{"line_number":271,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"ff570b3c_ee65121f","line":268,"range":{"start_line":268,"start_character":0,"end_line":268,"end_character":15},"in_reply_to":"ff570b3c_0e4b265f","updated":"2020-06-10 15:32:02.000000000","message":"Done","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"}],"ironic/drivers/ibmc.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":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @property"},{"line_number":46,"context_line":"    def supported_raid_interfaces(self):"},{"line_number":47,"context_line":"        \"\"\"List of supported raid interfaces.\"\"\""},{"line_number":48,"context_line":"        return [ibmc_raid.IbmcRAID, noop.NoRAID]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    @property"},{"line_number":51,"context_line":"    def supported_inspect_interfaces(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_a29df7bc","line":48,"updated":"2020-06-10 02:37:55.000000000","message":"Just a thought, not required, but you may want to consider also allowing software raid as well.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @property"},{"line_number":46,"context_line":"    def supported_raid_interfaces(self):"},{"line_number":47,"context_line":"        \"\"\"List of supported raid interfaces.\"\"\""},{"line_number":48,"context_line":"        return [ibmc_raid.IbmcRAID, noop.NoRAID]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    @property"},{"line_number":51,"context_line":"    def supported_inspect_interfaces(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_221c4712","line":48,"in_reply_to":"ff570b3c_a29df7bc","updated":"2020-06-10 03:23:24.000000000","message":"All ibmc server has built-in raid controller. So, software raid is not neccessary.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \"\"\"List of supported raid interfaces.\"\"\""},{"line_number":48,"context_line":"        return [ibmc_raid.IbmcRAID, noop.NoRAID]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    @property"},{"line_number":51,"context_line":"    def supported_inspect_interfaces(self):"},{"line_number":52,"context_line":"        \"\"\"List of supported inspect interfaces.\"\"\""},{"line_number":53,"context_line":"        return [inspector.Inspector, noop.NoInspect]"}],"source_content_type":"text/x-python","patch_set":13,"id":"ff570b3c_8b8608ba","line":53,"range":{"start_line":50,"start_character":0,"end_line":53,"end_character":52},"updated":"2020-06-10 14:28:02.000000000","message":"This is the same as in the parent class, why adding here?","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"d56f245ce78208441adf229d8c3de334e8682197","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \"\"\"List of supported raid interfaces.\"\"\""},{"line_number":48,"context_line":"        return [ibmc_raid.IbmcRAID, noop.NoRAID]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    @property"},{"line_number":51,"context_line":"    def supported_inspect_interfaces(self):"},{"line_number":52,"context_line":"        \"\"\"List of supported inspect interfaces.\"\"\""},{"line_number":53,"context_line":"        return [inspector.Inspector, noop.NoInspect]"}],"source_content_type":"text/x-python","patch_set":13,"id":"ff570b3c_019937cf","line":53,"range":{"start_line":50,"start_character":0,"end_line":53,"end_character":52},"in_reply_to":"ff570b3c_8b8608ba","updated":"2020-06-10 15:32:02.000000000","message":"want to implement customer inspector at first. so explict define it here.","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"}],"ironic/drivers/modules/ibmc/raid.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":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2018 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_c2258bb0","line":1,"updated":"2020-06-10 02:37:55.000000000","message":"HPE license?","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2018 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_c2874b12","line":1,"in_reply_to":"ff570b3c_c2258bb0","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        \"\"\""},{"line_number":86,"context_line":"        ibmc \u003d utils.parse_driver_info(task.node)"},{"line_number":87,"context_line":"        with ibmc_client.connect(**ibmc) as conn:"},{"line_number":88,"context_line":"            # - keep all delete logic in python-ibmcclient"},{"line_number":89,"context_line":"            # - keep delete logic synchronized. if async required, do it in"},{"line_number":90,"context_line":"            #   python-ibmcclient, make workflow in ironic simple."},{"line_number":91,"context_line":"            conn.system.storage.delete_all_raid_configuration()"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_8261d3d6","line":88,"range":{"start_line":88,"start_character":12,"end_line":88,"end_character":58},"updated":"2020-06-10 02:37:55.000000000","message":"You might want to handle with note format text\n\n# NOTE(Author): X because of Y, since Z for as many words as you feel you need. :)","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        \"\"\""},{"line_number":86,"context_line":"        ibmc \u003d utils.parse_driver_info(task.node)"},{"line_number":87,"context_line":"        with ibmc_client.connect(**ibmc) as conn:"},{"line_number":88,"context_line":"            # - keep all delete logic in python-ibmcclient"},{"line_number":89,"context_line":"            # - keep delete logic synchronized. if async required, do it in"},{"line_number":90,"context_line":"            #   python-ibmcclient, make workflow in ironic simple."},{"line_number":91,"context_line":"            conn.system.storage.delete_all_raid_configuration()"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_62991f78","line":88,"range":{"start_line":88,"start_character":12,"end_line":88,"end_character":58},"in_reply_to":"ff570b3c_8261d3d6","updated":"2020-06-10 03:23:24.000000000","message":"Done","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":179,"context_line":"            self._create_raid_configuration(task, logical_disks)"},{"line_number":180,"context_line":"            LOG.info(_(\"Succeed to create raid configuration on node %s.\"),"},{"line_number":181,"context_line":"                     task.node.uuid)"},{"line_number":182,"context_line":"        except exception.IBMCError as e:"},{"line_number":183,"context_line":"            # - should we re-raise exception (NodeCleaningFailure)?"},{"line_number":184,"context_line":"            # - is this action correct for both clean and deploy step?"},{"line_number":185,"context_line":"            raise e"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_026e63c8","line":182,"updated":"2020-06-10 02:37:55.000000000","message":"So there is no real reason to catch and then raise e. You can either catch and raise a different exception. To catch and raise the same exception up seems weird to me.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":179,"context_line":"            self._create_raid_configuration(task, logical_disks)"},{"line_number":180,"context_line":"            LOG.info(_(\"Succeed to create raid configuration on node %s.\"),"},{"line_number":181,"context_line":"                     task.node.uuid)"},{"line_number":182,"context_line":"        except exception.IBMCError as e:"},{"line_number":183,"context_line":"            # - should we re-raise exception (NodeCleaningFailure)?"},{"line_number":184,"context_line":"            # - is this action correct for both clean and deploy step?"},{"line_number":185,"context_line":"            raise e"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_42921b5a","line":182,"in_reply_to":"ff570b3c_026e63c8","updated":"2020-06-10 03:23:24.000000000","message":"Yes, after testing, just raise exception is ok.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":205,"context_line":"            LOG.info(_(\"Succeed to delete raid configuration on node %s.\"),"},{"line_number":206,"context_line":"                     task.node.uuid)"},{"line_number":207,"context_line":"        except exception.IBMCError as e:"},{"line_number":208,"context_line":"            # - should we re-raise exception (NodeCleaningFailure)?"},{"line_number":209,"context_line":"            # - is this action correct for both clean and deploy step?"},{"line_number":210,"context_line":"            # deploy_utils.set_failed_state(task, str(e), collect_logs\u003dFalse)"},{"line_number":211,"context_line":"            raise e"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_423e9bb9","line":208,"updated":"2020-06-10 02:37:55.000000000","message":"I suspect emulating the other drivers is best so we have consistent logging when it comes to exception message formatting.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":205,"context_line":"            LOG.info(_(\"Succeed to delete raid configuration on node %s.\"),"},{"line_number":206,"context_line":"                     task.node.uuid)"},{"line_number":207,"context_line":"        except exception.IBMCError as e:"},{"line_number":208,"context_line":"            # - should we re-raise exception (NodeCleaningFailure)?"},{"line_number":209,"context_line":"            # - is this action correct for both clean and deploy step?"},{"line_number":210,"context_line":"            # deploy_utils.set_failed_state(task, str(e), collect_logs\u003dFalse)"},{"line_number":211,"context_line":"            raise e"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_22ca876d","line":208,"in_reply_to":"ff570b3c_423e9bb9","updated":"2020-06-10 03:23:24.000000000","message":"I have test it, just raise exception is good enough. Everything could be logged as usual. Other drivers do not have same behavior at this part. So, I will just raise it.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        except exception.IBMCError as e:"},{"line_number":208,"context_line":"            # - should we re-raise exception (NodeCleaningFailure)?"},{"line_number":209,"context_line":"            # - is this action correct for both clean and deploy step?"},{"line_number":210,"context_line":"            # deploy_utils.set_failed_state(task, str(e), collect_logs\u003dFalse)"},{"line_number":211,"context_line":"            raise e"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_a24fb768","line":210,"updated":"2020-06-10 02:37:55.000000000","message":"If you raise an exception at this point, the state machine _should_ fail it, but I suspect deploy_utils is actually the right way to go.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        except exception.IBMCError as e:"},{"line_number":208,"context_line":"            # - should we re-raise exception (NodeCleaningFailure)?"},{"line_number":209,"context_line":"            # - is this action correct for both clean and deploy step?"},{"line_number":210,"context_line":"            # deploy_utils.set_failed_state(task, str(e), collect_logs\u003dFalse)"},{"line_number":211,"context_line":"            raise e"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_62c47f60","line":210,"in_reply_to":"ff570b3c_a24fb768","updated":"2020-06-10 03:23:24.000000000","message":"deploy_utils.set_failed_state is not intuitional to me. We should not care about exception, there should has an entry that can handle all exception and mark task as failed with exception message. And ironic does do it this way.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"839aaa73c4b0926d7ce2ae572b5333f996783a88","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from oslo_log import log as logging"},{"line_number":19,"context_line":"from oslo_utils import importutils"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from ironic.common import exception"},{"line_number":22,"context_line":"from ironic.common.i18n import _"},{"line_number":23,"context_line":"from ironic.common import raid"},{"line_number":24,"context_line":"from ironic import conf"}],"source_content_type":"text/x-python","patch_set":11,"id":"ff570b3c_04d5d043","line":21,"updated":"2020-06-10 05:19:43.000000000","message":"pep8: F401 \u0027ironic.common.exception\u0027 imported but unused","commit_id":"0513acca7bc93ee44bd420fa401e996caa0c0e31"}],"ironic/drivers/modules/ibmc/vendor.py":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"        :param task: A TaskManager instance containing the node to act on."},{"line_number":98,"context_line":"        :param kwargs: Not used."},{"line_number":99,"context_line":"        :raises: InvalidParameterValue if kwargs does not contain \u0027method\u0027."},{"line_number":100,"context_line":"        :raises: IBMCConnectionError when it fails to connect to iBMC"},{"line_number":101,"context_line":"        :raises: IBMCError when iBMC responses an error information"},{"line_number":102,"context_line":"        :returns: A list of dictionary, every dictionary represents a RAID"}],"source_content_type":"text/x-python","patch_set":12,"id":"ff570b3c_47ea2aac","line":99,"range":{"start_line":99,"start_character":8,"end_line":99,"end_character":75},"updated":"2020-06-10 07:44:49.000000000","message":"if kwargs is not used, I guess this won\u0027t be raised","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"        :param task: A TaskManager instance containing the node to act on."},{"line_number":98,"context_line":"        :param kwargs: Not used."},{"line_number":99,"context_line":"        :raises: InvalidParameterValue if kwargs does not contain \u0027method\u0027."},{"line_number":100,"context_line":"        :raises: IBMCConnectionError when it fails to connect to iBMC"},{"line_number":101,"context_line":"        :raises: IBMCError when iBMC responses an error information"},{"line_number":102,"context_line":"        :returns: A list of dictionary, every dictionary represents a RAID"}],"source_content_type":"text/x-python","patch_set":12,"id":"ff570b3c_a774e6d1","line":99,"range":{"start_line":99,"start_character":8,"end_line":99,"end_character":75},"in_reply_to":"ff570b3c_47ea2aac","updated":"2020-06-10 08:19:21.000000000","message":"right. will remove.","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        :raises: InvalidParameterValue if kwargs does not contain \u0027method\u0027."},{"line_number":100,"context_line":"        :raises: IBMCConnectionError when it fails to connect to iBMC"},{"line_number":101,"context_line":"        :raises: IBMCError when iBMC responses an error information"},{"line_number":102,"context_line":"        :returns: A list of dictionary, every dictionary represents a RAID"},{"line_number":103,"context_line":"            controller summary of node."},{"line_number":104,"context_line":"        \"\"\""},{"line_number":105,"context_line":"        driver_info \u003d utils.parse_driver_info(task.node)"}],"source_content_type":"text/x-python","patch_set":12,"id":"ff570b3c_a7cea658","line":102,"range":{"start_line":102,"start_character":28,"end_line":102,"end_character":38},"updated":"2020-06-10 07:44:49.000000000","message":"nit: dictionaries","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        :raises: InvalidParameterValue if kwargs does not contain \u0027method\u0027."},{"line_number":100,"context_line":"        :raises: IBMCConnectionError when it fails to connect to iBMC"},{"line_number":101,"context_line":"        :raises: IBMCError when iBMC responses an error information"},{"line_number":102,"context_line":"        :returns: A list of dictionary, every dictionary represents a RAID"},{"line_number":103,"context_line":"            controller summary of node."},{"line_number":104,"context_line":"        \"\"\""},{"line_number":105,"context_line":"        driver_info \u003d utils.parse_driver_info(task.node)"}],"source_content_type":"text/x-python","patch_set":12,"id":"ff570b3c_47706add","line":102,"range":{"start_line":102,"start_character":28,"end_line":102,"end_character":38},"in_reply_to":"ff570b3c_a7cea658","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"}],"ironic/tests/unit/drivers/modules/ibmc/test_raid.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":"aef7a1f4bc5677a3930aad0cc8d2143303c725b3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2018 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_42105b50","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":58},"updated":"2020-06-10 02:37:55.000000000","message":"Did you mean to put the HPE copyright text at the top of the file? :)","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"1611c2687518962c8ce9198614f8c5308d38c82e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2018 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":10,"id":"ff570b3c_427b3b28","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":58},"in_reply_to":"ff570b3c_42105b50","updated":"2020-06-10 03:23:24.000000000","message":"XD, I just copy files and forget to check license.","commit_id":"9a50bbc6f3766cf9e7397de19f44ef138c01f3dd"}],"ironic/tests/unit/drivers/modules/ibmc/test_vendor.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a666c7530657053579a99317812be92487c91f04","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        ctrl \u003d mock.Mock()"},{"line_number":70,"context_line":"        summary \u003d mock.Mock()"},{"line_number":71,"context_line":"        ctrl.summary.return_value \u003d summary"},{"line_number":72,"context_line":"        conn.system.storage.list.return_value \u003d [ctrl]"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        with task_manager.acquire(self.context, self.node.uuid,"}],"source_content_type":"text/x-python","patch_set":13,"id":"ff570b3c_4b6b50f0","line":71,"updated":"2020-06-10 14:28:02.000000000","message":"nit: not need for additional mocks, can do\n\n summary \u003d ctl.summary.return_value","commit_id":"cd6e5ec497f489bfbd313256d7d7841e6ca9fe67"}],"ironic/tests/unit/drivers/test_ibmc.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d929085964aceee2ef55325f749d9305bde44118","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                    enabled_management_interfaces\u003d[\u0027ibmc\u0027],"},{"line_number":36,"context_line":"                    enabled_vendor_interfaces\u003d[\u0027ibmc\u0027],"},{"line_number":37,"context_line":"                    enabled_raid_interfaces\u003d[\u0027ibmc\u0027],"},{"line_number":38,"context_line":"                    enabled_inspect_interfaces\u003d[\u0027inspector\u0027,\u0027no-inspect\u0027],)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def test_default_interfaces(self):"},{"line_number":41,"context_line":"        node \u003d obj_utils.create_test_node(self.context, driver\u003d\u0027ibmc\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ff570b3c_3004ce14","line":38,"updated":"2020-05-21 11:33:56.000000000","message":"pep8: E231 missing whitespace after \u0027,\u0027","commit_id":"b1e8690478cff272d5cc6e5a7c04814159cfe49a"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"2640460c13a63796b174f17072058fe3f64c38c2","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                    enabled_management_interfaces\u003d[\u0027ibmc\u0027],"},{"line_number":36,"context_line":"                    enabled_vendor_interfaces\u003d[\u0027ibmc\u0027],"},{"line_number":37,"context_line":"                    enabled_raid_interfaces\u003d[\u0027ibmc\u0027],"},{"line_number":38,"context_line":"                    enabled_inspect_interfaces\u003d[\u0027inspector\u0027,\u0027no-inspect\u0027])"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def test_default_interfaces(self):"},{"line_number":41,"context_line":"        node \u003d obj_utils.create_test_node(self.context, driver\u003d\u0027ibmc\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"ff570b3c_6385db06","line":38,"updated":"2020-05-21 14:33:46.000000000","message":"pep8: E231 missing whitespace after \u0027,\u0027","commit_id":"b7d0f16043fb4b6ec738dd2c80552cf66dce2957"}],"releasenotes/notes/add-ibmc-raid-interface-0c13826e134fb4ce.yaml":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"0f19e1584ae6736cbe88cbb390a21fd66a4ed27d","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Add raid interface for ibmc driver which includes ``delete_configuration``"},{"line_number":5,"context_line":"    and ``create_configuration`` step."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"ff570b3c_87c60249","line":5,"range":{"start_line":5,"start_character":33,"end_line":5,"end_character":37},"updated":"2020-06-10 07:44:49.000000000","message":"nit: steps","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"},{"author":{"_account_id":29702,"name":"QianBiao Ng","email":"iampurse@vip.qq.com","username":"QianBiao.NG"},"change_message_id":"5565d0d8081e6f5dbcb311d6c2298b55034e845a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Add raid interface for ibmc driver which includes ``delete_configuration``"},{"line_number":5,"context_line":"    and ``create_configuration`` step."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"ff570b3c_8771e2e1","line":5,"range":{"start_line":5,"start_character":33,"end_line":5,"end_character":37},"in_reply_to":"ff570b3c_87c60249","updated":"2020-06-10 08:19:21.000000000","message":"Done","commit_id":"eba1c909e86a1eb8e9aa044530c04de9bdef2bce"}]}
