)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10453,"name":"octopuszhang","email":"zhangyf@rc.inesa.com","username":"1"},"change_message_id":"9826eb9ad82755a7f0c383deb10a61781b114e0c","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add the new capabilities to the capabilities list"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds the new capabilities to iLO inspection"},{"line_number":10,"context_line":"as listed in the specification."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-Bug: 1599425"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9f436f4f_7f7052dd","line":9,"range":{"start_line":9,"start_character":44,"end_line":9,"end_character":54},"updated":"2017-08-10 09:15:12.000000000","message":"InspectInterface","commit_id":"ab3b0d04026ce134a68965af63885fc53c847976"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"c0b50e7caac1a5e145194575ee91755158597b8c","unresolved":false,"context_lines":[{"line_number":21,"context_line":"BootMode - This capability required Nova to change as the value"},{"line_number":22,"context_line":"was supposed to be a list of supported boot modes on the system."},{"line_number":23,"context_line":"Nova asked to implement the Boolean capabilities instead. We"},{"line_number":24,"context_line":"have added ``boot_mode_uefi`` and ``boot_mode_bios``"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Closes-Bug: 1599425"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"9f436f4f_b21655a7","line":24,"updated":"2017-08-16 17:23:41.000000000","message":"The point being that they were there in the code, but never implemented, right?","commit_id":"681fcafdd30dc6ffd62eb354d32e6508a53e0d6d"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"736e3babea5832ac6e13895a72675d93baae88fd","unresolved":false,"context_lines":[{"line_number":21,"context_line":"BootMode - This capability required Nova to change as the value"},{"line_number":22,"context_line":"was supposed to be a list of supported boot modes on the system."},{"line_number":23,"context_line":"Nova asked to implement the Boolean capabilities instead. We"},{"line_number":24,"context_line":"have added ``boot_mode_uefi`` and ``boot_mode_bios``"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Closes-Bug: 1599425"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"9f436f4f_52eba976","line":24,"in_reply_to":"9f436f4f_b21655a7","updated":"2017-08-16 17:27:32.000000000","message":"Yes","commit_id":"681fcafdd30dc6ffd62eb354d32e6508a53e0d6d"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"4342a4cf8e68be1205d251981fdeab629309abf9","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Inband mechanism to discover this."},{"line_number":21,"context_line":"BootMode - This capability required Nova to change as the value"},{"line_number":22,"context_line":"was supposed to be a list of supported boot modes on the system."},{"line_number":23,"context_line":"Nova asked to implement the Boolean capabilities instead. We"},{"line_number":24,"context_line":"have added ``boot_mode_uefi`` and ``boot_mode_bios``"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Closes-Bug: 1599425"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":23,"id":"9f436f4f_a4528533","line":24,"range":{"start_line":23,"start_character":0,"end_line":24,"end_character":52},"updated":"2017-08-17 08:37:48.000000000","message":"This can be removed.","commit_id":"425a6aae33a13020050b25d5750ed48a8dcda0df"}],"doc/source/admin/drivers/ilo.rst":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":959,"context_line":""},{"line_number":960,"context_line":"* ``nic_capacity``: the max speed of the embedded NIC adapter."},{"line_number":961,"context_line":""},{"line_number":962,"context_line":"* ``boot_mocde_uefi``: true, if server supports UEFI boot mode."},{"line_number":963,"context_line":""},{"line_number":964,"context_line":"* ``boot_mocde_bios``: true, if server supports BIOS boot mode."},{"line_number":965,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_5e2f19f6","line":962,"range":{"start_line":962,"start_character":4,"end_line":962,"end_character":20},"updated":"2017-08-08 06:45:04.000000000","message":"nit: typo \ns/ boot_mocde_uefi / boot_mode_uefi /","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"efbdadde43c47dd94ccff19d24970258d71b1e65","unresolved":false,"context_lines":[{"line_number":959,"context_line":""},{"line_number":960,"context_line":"* ``nic_capacity``: the max speed of the embedded NIC adapter."},{"line_number":961,"context_line":""},{"line_number":962,"context_line":"* ``boot_mocde_uefi``: true, if server supports UEFI boot mode."},{"line_number":963,"context_line":""},{"line_number":964,"context_line":"* ``boot_mocde_bios``: true, if server supports BIOS boot mode."},{"line_number":965,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_fb901a51","line":962,"range":{"start_line":962,"start_character":4,"end_line":962,"end_character":20},"in_reply_to":"9f436f4f_5e2f19f6","updated":"2017-08-08 09:28:46.000000000","message":"Done","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":961,"context_line":""},{"line_number":962,"context_line":"* ``boot_mocde_uefi``: true, if server supports UEFI boot mode."},{"line_number":963,"context_line":""},{"line_number":964,"context_line":"* ``boot_mocde_bios``: true, if server supports BIOS boot mode."},{"line_number":965,"context_line":""},{"line_number":966,"context_line":"* ``sriov_enabled``: true, if server has the SRIOV supporting NIC."},{"line_number":967,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_be4725bd","line":964,"range":{"start_line":964,"start_character":4,"end_line":964,"end_character":19},"updated":"2017-08-08 06:45:04.000000000","message":"ditto","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"efbdadde43c47dd94ccff19d24970258d71b1e65","unresolved":false,"context_lines":[{"line_number":961,"context_line":""},{"line_number":962,"context_line":"* ``boot_mocde_uefi``: true, if server supports UEFI boot mode."},{"line_number":963,"context_line":""},{"line_number":964,"context_line":"* ``boot_mocde_bios``: true, if server supports BIOS boot mode."},{"line_number":965,"context_line":""},{"line_number":966,"context_line":"* ``sriov_enabled``: true, if server has the SRIOV supporting NIC."},{"line_number":967,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_db9d5667","line":964,"range":{"start_line":964,"start_character":4,"end_line":964,"end_character":19},"in_reply_to":"9f436f4f_be4725bd","updated":"2017-08-08 09:28:46.000000000","message":"Done","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":973,"context_line":""},{"line_number":974,"context_line":"* ``cpu_vt``: true, if server supports cpu virtualization."},{"line_number":975,"context_line":""},{"line_number":976,"context_line":"* ``hardware_supports_raid``: true, if RAID can be configured on the server."},{"line_number":977,"context_line":""},{"line_number":978,"context_line":"* ``nvdimm_n``: true, if server has NVDIMM_N type of persistent memory."},{"line_number":979,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_3e0d7590","line":976,"range":{"start_line":976,"start_character":39,"end_line":976,"end_character":43},"updated":"2017-08-08 06:45:04.000000000","message":"You mean using hardware RAID controller, right?","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"efbdadde43c47dd94ccff19d24970258d71b1e65","unresolved":false,"context_lines":[{"line_number":973,"context_line":""},{"line_number":974,"context_line":"* ``cpu_vt``: true, if server supports cpu virtualization."},{"line_number":975,"context_line":""},{"line_number":976,"context_line":"* ``hardware_supports_raid``: true, if RAID can be configured on the server."},{"line_number":977,"context_line":""},{"line_number":978,"context_line":"* ``nvdimm_n``: true, if server has NVDIMM_N type of persistent memory."},{"line_number":979,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_89366db4","line":976,"range":{"start_line":976,"start_character":39,"end_line":976,"end_character":43},"in_reply_to":"9f436f4f_3e0d7590","updated":"2017-08-08 09:28:46.000000000","message":"yes","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":985,"context_line":"  ``rotational_drive_4800_rpm``, ``rotational_drive_5400_rpm``,"},{"line_number":986,"context_line":"  ``rotational_drive_7200_rpm``, ``rotational_drive_10000_rpm``, and"},{"line_number":987,"context_line":"  ``rotational_drive_15000_rpm`` are set to true if the server has HDD"},{"line_number":988,"context_line":"  drives with speed among any of these 4800, 5400, 7200, 10000, and 15000."},{"line_number":989,"context_line":""},{"line_number":990,"context_line":"* ``logical_raid_level_\u003craid_level\u003e``: The capabilities"},{"line_number":991,"context_line":"  ``logical_raid_level_0``, ``logical_raid_level_1``, ``logical_raid_level_2``,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_3e8215ca","line":988,"range":{"start_line":988,"start_character":14,"end_line":988,"end_character":74},"updated":"2017-08-08 06:45:04.000000000","message":"s/ \u0027speed among any of these 4800, 5400, 7200, 10000, and 15000.\u0027 / \u0027speed of 4800, 5400, 7200, 10000, and 15000 respectively.\u0027","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":990,"context_line":"* ``logical_raid_level_\u003craid_level\u003e``: The capabilities"},{"line_number":991,"context_line":"  ``logical_raid_level_0``, ``logical_raid_level_1``, ``logical_raid_level_2``,"},{"line_number":992,"context_line":"  ``logical_raid_level_5``, ``logical_raid_level_6``, ``logical_raid_level_10``,"},{"line_number":993,"context_line":"  ``logical_raid_level_50``, and ``logical_raid_level_60`` are set if any of the"},{"line_number":994,"context_line":"  raid levels among 0, 1, 2, 5, 6, 10, 50, and 60 are configured on the system."},{"line_number":995,"context_line":""},{"line_number":996,"context_line":"  .. note::"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_de68a922","line":993,"range":{"start_line":993,"start_character":59,"end_line":993,"end_character":66},"updated":"2017-08-08 06:45:04.000000000","message":"s/ \u0027are set\u0027 / \u0027are set to true\u0027 /","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":990,"context_line":"* ``logical_raid_level_\u003craid_level\u003e``: The capabilities"},{"line_number":991,"context_line":"  ``logical_raid_level_0``, ``logical_raid_level_1``, ``logical_raid_level_2``,"},{"line_number":992,"context_line":"  ``logical_raid_level_5``, ``logical_raid_level_6``, ``logical_raid_level_10``,"},{"line_number":993,"context_line":"  ``logical_raid_level_50``, and ``logical_raid_level_60`` are set if any of the"},{"line_number":994,"context_line":"  raid levels among 0, 1, 2, 5, 6, 10, 50, and 60 are configured on the system."},{"line_number":995,"context_line":""},{"line_number":996,"context_line":"  .. note::"},{"line_number":997,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_fe548d56","line":994,"range":{"start_line":993,"start_character":67,"end_line":994,"end_character":79},"updated":"2017-08-08 06:45:04.000000000","message":"s/ \u0027if any of the raid levels among 0, 1, 2, 5, 6, 10, 50, and 60 are configured on the system.\u0027 / \u0027if raid levels 0, 1, 2, 5, 6, 10, 50 and 60 respectively are configured on the system.\u0027 /","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":1011,"context_line":"  nova flavor-key my-baremetal-flavor set capabilities:ilo_firmware_version\u003d\"\u003cin\u003e 2.10\""},{"line_number":1012,"context_line":""},{"line_number":1013,"context_line":"  Following capbilities can be set in flavor as given below:"},{"line_number":1014,"context_line":"  \u0027sriov_enabled\u0027, \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":1015,"context_line":"  \u0027has_ssd\u0027, \u0027has_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":1016,"context_line":"  \u0027rotational_drive_4800_rpm\u0027, \u0027rotational_drive_5400_rpm\u0027,"},{"line_number":1017,"context_line":"  \u0027rotational_drive_7200_rpm\u0027, \u0027rotational_drive_10000_rpm\u0027,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_5e503933","line":1014,"range":{"start_line":1014,"start_character":38,"end_line":1014,"end_character":50},"updated":"2017-08-08 06:45:04.000000000","message":"This assumes TPM is manually enabled on the node. iLO drivers cannot enable TPM based on request unlike secure_boot. https://docs.openstack.org/ironic/latest/install/advanced.html#trusted-boot-with-partition-image","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":1011,"context_line":"  nova flavor-key my-baremetal-flavor set capabilities:ilo_firmware_version\u003d\"\u003cin\u003e 2.10\""},{"line_number":1012,"context_line":""},{"line_number":1013,"context_line":"  Following capbilities can be set in flavor as given below:"},{"line_number":1014,"context_line":"  \u0027sriov_enabled\u0027, \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":1015,"context_line":"  \u0027has_ssd\u0027, \u0027has_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":1016,"context_line":"  \u0027rotational_drive_4800_rpm\u0027, \u0027rotational_drive_5400_rpm\u0027,"},{"line_number":1017,"context_line":"  \u0027rotational_drive_7200_rpm\u0027, \u0027rotational_drive_10000_rpm\u0027,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_3e3a15e7","line":1014,"range":{"start_line":1014,"start_character":53,"end_line":1014,"end_character":66},"updated":"2017-08-08 06:45:04.000000000","message":"This is related to BFV and shouldn\u0027t it be enabled when OOB BFV is supported on node?","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"efbdadde43c47dd94ccff19d24970258d71b1e65","unresolved":false,"context_lines":[{"line_number":1011,"context_line":"  nova flavor-key my-baremetal-flavor set capabilities:ilo_firmware_version\u003d\"\u003cin\u003e 2.10\""},{"line_number":1012,"context_line":""},{"line_number":1013,"context_line":"  Following capbilities can be set in flavor as given below:"},{"line_number":1014,"context_line":"  \u0027sriov_enabled\u0027, \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":1015,"context_line":"  \u0027has_ssd\u0027, \u0027has_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":1016,"context_line":"  \u0027rotational_drive_4800_rpm\u0027, \u0027rotational_drive_5400_rpm\u0027,"},{"line_number":1017,"context_line":"  \u0027rotational_drive_7200_rpm\u0027, \u0027rotational_drive_10000_rpm\u0027,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9f436f4f_0e739e82","line":1014,"range":{"start_line":1014,"start_character":38,"end_line":1014,"end_character":50},"in_reply_to":"9f436f4f_5e503933","updated":"2017-08-08 09:28:46.000000000","message":"Shiv, i understand your concern. Just kept these attributes for now. Lets have opinion from others too.","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":10453,"name":"octopuszhang","email":"zhangyf@rc.inesa.com","username":"1"},"change_message_id":"9826eb9ad82755a7f0c383deb10a61781b114e0c","unresolved":false,"context_lines":[{"line_number":1021,"context_line":"  \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027, \u0027nvdimm_n\u0027,"},{"line_number":1022,"context_line":"  \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027, \u0027persistent_memory\u0027."},{"line_number":1023,"context_line":""},{"line_number":1024,"context_line":"  nova flavor-key my-baremetal-flavor set capabilities:has_ssd\u003d\"true\""},{"line_number":1025,"context_line":""},{"line_number":1026,"context_line":"See :ref:`capabilities-discovery` for more details and examples."},{"line_number":1027,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f436f4f_1f50265d","line":1024,"range":{"start_line":1024,"start_character":2,"end_line":1024,"end_character":68},"updated":"2017-08-10 09:15:12.000000000","message":"This should be placed on line 1014","commit_id":"ab3b0d04026ce134a68965af63885fc53c847976"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":984,"context_line":""},{"line_number":985,"context_line":"* ``rotational_drive_\u003cspeed\u003e_rpm``: The capabilities"},{"line_number":986,"context_line":"  ``rotational_drive_4800_rpm``, ``rotational_drive_5400_rpm``,"},{"line_number":987,"context_line":"  ``rotational_drive_7200_rpm``, ``rotational_drive_10000_rpm``, and"},{"line_number":988,"context_line":"  ``rotational_drive_15000_rpm`` are set to true if the server has HDD"},{"line_number":989,"context_line":"  drives with speed of 4800, 5400, 7200, 10000, and 15000 respectively."},{"line_number":990,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f436f4f_e2092f2c","line":987,"range":{"start_line":987,"start_character":63,"end_line":987,"end_character":64},"updated":"2017-08-11 04:01:51.000000000","message":"nit: extra comma \u0027,\u0027","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":986,"context_line":"  ``rotational_drive_4800_rpm``, ``rotational_drive_5400_rpm``,"},{"line_number":987,"context_line":"  ``rotational_drive_7200_rpm``, ``rotational_drive_10000_rpm``, and"},{"line_number":988,"context_line":"  ``rotational_drive_15000_rpm`` are set to true if the server has HDD"},{"line_number":989,"context_line":"  drives with speed of 4800, 5400, 7200, 10000, and 15000 respectively."},{"line_number":990,"context_line":""},{"line_number":991,"context_line":"* ``logical_raid_level_\u003craid_level\u003e``: The capabilities"},{"line_number":992,"context_line":"  ``logical_raid_level_0``, ``logical_raid_level_1``, ``logical_raid_level_2``,"}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f436f4f_af2550c4","line":989,"range":{"start_line":989,"start_character":58,"end_line":989,"end_character":70},"updated":"2017-08-11 04:01:51.000000000","message":"s/ \u0027respectively\u0027 / \u0027rpm respectively\u0027","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":991,"context_line":"* ``logical_raid_level_\u003craid_level\u003e``: The capabilities"},{"line_number":992,"context_line":"  ``logical_raid_level_0``, ``logical_raid_level_1``, ``logical_raid_level_2``,"},{"line_number":993,"context_line":"  ``logical_raid_level_5``, ``logical_raid_level_6``, ``logical_raid_level_10``,"},{"line_number":994,"context_line":"  ``logical_raid_level_50``, and ``logical_raid_level_60`` are set if any of the"},{"line_number":995,"context_line":"  raid levels among 0, 1, 2, 5, 6, 10, 50, and 60 are configured on the system."},{"line_number":996,"context_line":""},{"line_number":997,"context_line":"  .. note::"}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f436f4f_af0e7038","line":994,"range":{"start_line":994,"start_character":59,"end_line":994,"end_character":66},"updated":"2017-08-11 04:01:51.000000000","message":"s/ \u0027are set\u0027/ \u0027are set to true\u0027/","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":992,"context_line":"  ``logical_raid_level_0``, ``logical_raid_level_1``, ``logical_raid_level_2``,"},{"line_number":993,"context_line":"  ``logical_raid_level_5``, ``logical_raid_level_6``, ``logical_raid_level_10``,"},{"line_number":994,"context_line":"  ``logical_raid_level_50``, and ``logical_raid_level_60`` are set if any of the"},{"line_number":995,"context_line":"  raid levels among 0, 1, 2, 5, 6, 10, 50, and 60 are configured on the system."},{"line_number":996,"context_line":""},{"line_number":997,"context_line":"  .. note::"},{"line_number":998,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f436f4f_0f1e9c6f","line":995,"range":{"start_line":995,"start_character":39,"end_line":995,"end_character":49},"updated":"2017-08-11 04:01:51.000000000","message":"nit: extra comma \u0027,\u0027\ns/ \u002750 and 60\u0027 / \u002750, and 60\u0027 /","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"  nova flavor-key my-baremetal-flavor set capabilities:has_ssd\u003d\"true\""},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"  Following capbilities can be set in flavor as given above for has_ssd:"},{"line_number":1017,"context_line":""},{"line_number":1018,"context_line":"  \u0027sriov_enabled\u0027, \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"},{"line_number":1019,"context_line":"  \u0027boot_mode_bios\u0027, \u0027rotational_drive_4800_rpm\u0027, \u0027rotational_drive_5400_rpm\u0027,"},{"line_number":1020,"context_line":"  \u0027rotational_drive_7200_rpm\u0027, \u0027rotational_drive_10000_rpm\u0027,"},{"line_number":1021,"context_line":"  \u0027rotational_drive_15000_rpm\u0027, \u0027logical_raid_level_0\u0027, \u0027logical_raid_level_1\u0027,"},{"line_number":1022,"context_line":"  \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027, \u0027logical_raid_level_5\u0027,"},{"line_number":1023,"context_line":"  \u0027logical_raid_level_6\u0027, \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":1024,"context_line":"  \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027, \u0027nvdimm_n\u0027,"},{"line_number":1025,"context_line":"  \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027, \u0027persistent_memory\u0027."},{"line_number":1026,"context_line":""},{"line_number":1027,"context_line":"See :ref:`capabilities-discovery` for more details and examples."},{"line_number":1028,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9f436f4f_e257ef01","line":1025,"range":{"start_line":1016,"start_character":2,"end_line":1025,"end_character":58},"updated":"2017-08-11 04:01:51.000000000","message":"Bad formatting. This is not required, I suppose.","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"703e6e462c8fda6530ceac69c0a91d06adf6362d","unresolved":false,"context_lines":[{"line_number":900,"context_line":"* ``pxe_ilo``"},{"line_number":901,"context_line":"* ``iscsi_ilo``"},{"line_number":902,"context_line":"* ``agent_ilo``"},{"line_number":903,"context_line":""},{"line_number":904,"context_line":".. note::"},{"line_number":905,"context_line":""},{"line_number":906,"context_line":"   * The disk size is returned by RIBCL/RIS only when RAID is preconfigured"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9f436f4f_780c8ca4","line":903,"updated":"2017-08-14 18:45:20.000000000","message":"isn\u0027t the new-style driver missing in the list[1]? \n\n[1] https://github.com/openstack/ironic/blob/master/ironic/drivers/ilo.py#L56","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"84c94f2360aa85e6e43b78991a4f9d3d7797f296","unresolved":false,"context_lines":[{"line_number":900,"context_line":"* ``pxe_ilo``"},{"line_number":901,"context_line":"* ``iscsi_ilo``"},{"line_number":902,"context_line":"* ``agent_ilo``"},{"line_number":903,"context_line":""},{"line_number":904,"context_line":".. note::"},{"line_number":905,"context_line":""},{"line_number":906,"context_line":"   * The disk size is returned by RIBCL/RIS only when RAID is preconfigured"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9f436f4f_491fbc5a","line":903,"in_reply_to":"9f436f4f_780c8ca4","updated":"2017-08-14 21:53:45.000000000","message":"Done","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"703e6e462c8fda6530ceac69c0a91d06adf6362d","unresolved":false,"context_lines":[{"line_number":994,"context_line":"  ``logical_raid_level_50`` and ``logical_raid_level_60`` are set to true if any"},{"line_number":995,"context_line":"  of the raid levels among 0, 1, 2, 5, 6, 10, 50 and 60 are configured on"},{"line_number":996,"context_line":"  the system."},{"line_number":997,"context_line":""},{"line_number":998,"context_line":"  .. note::"},{"line_number":999,"context_line":""},{"line_number":1000,"context_line":"     * The capability ``nic_capacity`` can only be discovered if ipmitool"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9f436f4f_13b0c342","line":997,"updated":"2017-08-14 18:45:20.000000000","message":"misses the ``boot_mode``, ``raid_level`` keys from https://review.openstack.org/#/c/422902/11/ironic/drivers/modules/ilo/inspect.py","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"84c94f2360aa85e6e43b78991a4f9d3d7797f296","unresolved":false,"context_lines":[{"line_number":994,"context_line":"  ``logical_raid_level_50`` and ``logical_raid_level_60`` are set to true if any"},{"line_number":995,"context_line":"  of the raid levels among 0, 1, 2, 5, 6, 10, 50 and 60 are configured on"},{"line_number":996,"context_line":"  the system."},{"line_number":997,"context_line":""},{"line_number":998,"context_line":"  .. note::"},{"line_number":999,"context_line":""},{"line_number":1000,"context_line":"     * The capability ``nic_capacity`` can only be discovered if ipmitool"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9f436f4f_f3853a5b","line":997,"in_reply_to":"9f436f4f_13b0c342","updated":"2017-08-14 21:53:45.000000000","message":"those are not inspected by inspection in ilo drivers. `boot_mpde` is supposed to be populated by operator manually as of now. `raid-level` is populated by ironic for the root volume after successful raid configuration.\n\nI have removed these keys from capabilities keys in code.","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":822,"context_line":"    servers. By default, this step is disabled."},{"line_number":823,"context_line":"  ``reset_ilo``:"},{"line_number":824,"context_line":"    Resets the iLO. By default, this step is disabled."},{"line_number":825,"context_line":"  ``erase_devices``:"},{"line_number":826,"context_line":"    An inband clean step that performs disk erase on all the disks including"},{"line_number":827,"context_line":"    the disks visible to OS as well as the raw disks visible to Smart"},{"line_number":828,"context_line":"    Storage Administrator (SSA). This step supports erasing of the raw disks"},{"line_number":829,"context_line":"    visible to SSA in Proliant servers only with the ramdisk created using"},{"line_number":830,"context_line":"    diskimage-builder from Ocata release. By default, this step is disabled."},{"line_number":831,"context_line":"    See `Disk Erase Support`_ for more details."},{"line_number":832,"context_line":""},{"line_number":833,"context_line":"* For in-band cleaning operations supported by ``agent_ilo`` driver, see"},{"line_number":834,"context_line":"  :ref:`InbandvsOutOfBandCleaning`."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f436f4f_e0531538","line":831,"range":{"start_line":825,"start_character":1,"end_line":831,"end_character":47},"updated":"2017-08-15 10:22:04.000000000","message":"this seems an unrelated change, no?","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"82ab3256a0d5001396d989958b655df416a45250","unresolved":false,"context_lines":[{"line_number":822,"context_line":"    servers. By default, this step is disabled."},{"line_number":823,"context_line":"  ``reset_ilo``:"},{"line_number":824,"context_line":"    Resets the iLO. By default, this step is disabled."},{"line_number":825,"context_line":"  ``erase_devices``:"},{"line_number":826,"context_line":"    An inband clean step that performs disk erase on all the disks including"},{"line_number":827,"context_line":"    the disks visible to OS as well as the raw disks visible to Smart"},{"line_number":828,"context_line":"    Storage Administrator (SSA). This step supports erasing of the raw disks"},{"line_number":829,"context_line":"    visible to SSA in Proliant servers only with the ramdisk created using"},{"line_number":830,"context_line":"    diskimage-builder from Ocata release. By default, this step is disabled."},{"line_number":831,"context_line":"    See `Disk Erase Support`_ for more details."},{"line_number":832,"context_line":""},{"line_number":833,"context_line":"* For in-band cleaning operations supported by ``agent_ilo`` driver, see"},{"line_number":834,"context_line":"  :ref:`InbandvsOutOfBandCleaning`."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f436f4f_9b52783a","line":831,"range":{"start_line":825,"start_character":1,"end_line":831,"end_character":47},"in_reply_to":"9f436f4f_e0531538","updated":"2017-08-15 10:49:19.000000000","message":"this is existing doc. Nothing to do with patch changes i have proposed.","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":841,"context_line":"* Updating clean step priority to 0, will disable that particular clean step"},{"line_number":842,"context_line":"  and will not run during automated cleaning."},{"line_number":843,"context_line":""},{"line_number":844,"context_line":"* Configuration Options for the automated clean steps are listed under"},{"line_number":845,"context_line":"  ``[ilo]`` and ``[deploy]`` section in ironic.conf ::"},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"   [ilo]"},{"line_number":848,"context_line":"   clean_priority_reset_ilo\u003d0"},{"line_number":849,"context_line":"   clean_priority_reset_bios_to_default\u003d10"},{"line_number":850,"context_line":"   clean_priority_reset_secure_boot_keys_to_default\u003d20"},{"line_number":851,"context_line":"   clean_priority_clear_secure_boot_keys\u003d0"},{"line_number":852,"context_line":"   clean_priority_reset_ilo_credential\u003d30"},{"line_number":853,"context_line":""},{"line_number":854,"context_line":"   [deploy]"},{"line_number":855,"context_line":"   erase_devices_priority\u003d0"},{"line_number":856,"context_line":""},{"line_number":857,"context_line":"For more information on node automated cleaning, see :ref:`automated_cleaning`"},{"line_number":858,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f436f4f_402661d0","line":855,"range":{"start_line":844,"start_character":1,"end_line":855,"end_character":27},"updated":"2017-08-15 10:22:04.000000000","message":"ditto","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"82ab3256a0d5001396d989958b655df416a45250","unresolved":false,"context_lines":[{"line_number":841,"context_line":"* Updating clean step priority to 0, will disable that particular clean step"},{"line_number":842,"context_line":"  and will not run during automated cleaning."},{"line_number":843,"context_line":""},{"line_number":844,"context_line":"* Configuration Options for the automated clean steps are listed under"},{"line_number":845,"context_line":"  ``[ilo]`` and ``[deploy]`` section in ironic.conf ::"},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"   [ilo]"},{"line_number":848,"context_line":"   clean_priority_reset_ilo\u003d0"},{"line_number":849,"context_line":"   clean_priority_reset_bios_to_default\u003d10"},{"line_number":850,"context_line":"   clean_priority_reset_secure_boot_keys_to_default\u003d20"},{"line_number":851,"context_line":"   clean_priority_clear_secure_boot_keys\u003d0"},{"line_number":852,"context_line":"   clean_priority_reset_ilo_credential\u003d30"},{"line_number":853,"context_line":""},{"line_number":854,"context_line":"   [deploy]"},{"line_number":855,"context_line":"   erase_devices_priority\u003d0"},{"line_number":856,"context_line":""},{"line_number":857,"context_line":"For more information on node automated cleaning, see :ref:`automated_cleaning`"},{"line_number":858,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f436f4f_fb56242a","line":855,"range":{"start_line":844,"start_character":1,"end_line":855,"end_character":27},"in_reply_to":"9f436f4f_402661d0","updated":"2017-08-15 10:49:19.000000000","message":"ditto","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":1639,"context_line":""},{"line_number":1640,"context_line":"  disk-image-create -o proliant-agent-ramdisk ironic-agent fedora proliant-tools"},{"line_number":1641,"context_line":""},{"line_number":1642,"context_line":"Disk Erase Support"},{"line_number":1643,"context_line":"^^^^^^^^^^^^^^^^^^"},{"line_number":1644,"context_line":""},{"line_number":1645,"context_line":"``erase_devices`` is an inband clean step supported by iLO drives. It"},{"line_number":1646,"context_line":"performs erase on all the disks including the disks visible to OS as"},{"line_number":1647,"context_line":"well as the raw disks visible to the Smart Storage Administrator (SSA)."},{"line_number":1648,"context_line":""},{"line_number":1649,"context_line":"This inband clean step requires ``ssacli`` utility starting from version"},{"line_number":1650,"context_line":"``2.60-19.0`` to perform the erase on physical disks. See the"},{"line_number":1651,"context_line":"`ssacli documentation`_ for more information on ssacli utility and different"},{"line_number":1652,"context_line":"erase methods supported by SSA."},{"line_number":1653,"context_line":""},{"line_number":1654,"context_line":"The disk erasure via ``shred`` is used to erase disks visible to the OS"},{"line_number":1655,"context_line":"and its implementation is available in Ironic Python Agent. The raw disks"},{"line_number":1656,"context_line":"connected to the Smart Storage Controller are erased using Sanitize erase"},{"line_number":1657,"context_line":"which is a ssacli supported erase method. If Sanitize erase is not supported"},{"line_number":1658,"context_line":"on the Smart Storage Controller the disks are erased using One-pass"},{"line_number":1659,"context_line":"erase (overwrite with zeros)."},{"line_number":1660,"context_line":""},{"line_number":1661,"context_line":"This clean step is supported when the agent ramdisk contains the"},{"line_number":1662,"context_line":"``Proliant Hardware Manager`` from the proliantutils version 2.3.0 or higher."},{"line_number":1663,"context_line":"This clean step is performed as part of automated cleaning and it is disabled"},{"line_number":1664,"context_line":"by default. See :ref:`InbandvsOutOfBandCleaning` for more information on"},{"line_number":1665,"context_line":"enabling/disabling a clean step."},{"line_number":1666,"context_line":""},{"line_number":1667,"context_line":"To create an agent ramdisk with ``Proliant Hardware Manager``, use the"},{"line_number":1668,"context_line":"``proliant-tools`` element in DIB::"},{"line_number":1669,"context_line":""},{"line_number":1670,"context_line":"    disk-image-create -o proliant-agent-ramdisk ironic-agent fedora proliant-tools"},{"line_number":1671,"context_line":""},{"line_number":1672,"context_line":"See the `proliant-tools`_ for more information on creating agent ramdisk with"},{"line_number":1673,"context_line":"``proliant-tools`` element in DIB."},{"line_number":1674,"context_line":""},{"line_number":1675,"context_line":".. _`ssacli documentation`: http://h20566.www2.hpe.com/hpsc/doc/public/display?docId\u003dc03909334"},{"line_number":1676,"context_line":".. _`proliant-tools`: http://docs.openstack.org/developer/diskimage-builder/elements/proliant-tools/README.html"},{"line_number":1677,"context_line":".. _`Enabling HTTPS in Swift`: http://docs.openstack.org/project-install-guide/baremetal/draft/enabling-https.html#enabling-https-in-swift"},{"line_number":1678,"context_line":".. _`Enabling HTTPS in Image service`: http://docs.openstack.org/project-install-guide/baremetal/draft/enabling-https.html#enabling-https-in-image-service"},{"line_number":1679,"context_line":".. _`HPE iLO4 User Guide`: http://h20566.www2.hpe.com/hpsc/doc/public/display?docId\u003dc03334051"}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f436f4f_60160558","line":1676,"range":{"start_line":1642,"start_character":0,"end_line":1676,"end_character":111},"updated":"2017-08-15 10:22:04.000000000","message":"ditto: seems unrelated","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"82ab3256a0d5001396d989958b655df416a45250","unresolved":false,"context_lines":[{"line_number":1639,"context_line":""},{"line_number":1640,"context_line":"  disk-image-create -o proliant-agent-ramdisk ironic-agent fedora proliant-tools"},{"line_number":1641,"context_line":""},{"line_number":1642,"context_line":"Disk Erase Support"},{"line_number":1643,"context_line":"^^^^^^^^^^^^^^^^^^"},{"line_number":1644,"context_line":""},{"line_number":1645,"context_line":"``erase_devices`` is an inband clean step supported by iLO drives. It"},{"line_number":1646,"context_line":"performs erase on all the disks including the disks visible to OS as"},{"line_number":1647,"context_line":"well as the raw disks visible to the Smart Storage Administrator (SSA)."},{"line_number":1648,"context_line":""},{"line_number":1649,"context_line":"This inband clean step requires ``ssacli`` utility starting from version"},{"line_number":1650,"context_line":"``2.60-19.0`` to perform the erase on physical disks. See the"},{"line_number":1651,"context_line":"`ssacli documentation`_ for more information on ssacli utility and different"},{"line_number":1652,"context_line":"erase methods supported by SSA."},{"line_number":1653,"context_line":""},{"line_number":1654,"context_line":"The disk erasure via ``shred`` is used to erase disks visible to the OS"},{"line_number":1655,"context_line":"and its implementation is available in Ironic Python Agent. The raw disks"},{"line_number":1656,"context_line":"connected to the Smart Storage Controller are erased using Sanitize erase"},{"line_number":1657,"context_line":"which is a ssacli supported erase method. If Sanitize erase is not supported"},{"line_number":1658,"context_line":"on the Smart Storage Controller the disks are erased using One-pass"},{"line_number":1659,"context_line":"erase (overwrite with zeros)."},{"line_number":1660,"context_line":""},{"line_number":1661,"context_line":"This clean step is supported when the agent ramdisk contains the"},{"line_number":1662,"context_line":"``Proliant Hardware Manager`` from the proliantutils version 2.3.0 or higher."},{"line_number":1663,"context_line":"This clean step is performed as part of automated cleaning and it is disabled"},{"line_number":1664,"context_line":"by default. See :ref:`InbandvsOutOfBandCleaning` for more information on"},{"line_number":1665,"context_line":"enabling/disabling a clean step."},{"line_number":1666,"context_line":""},{"line_number":1667,"context_line":"To create an agent ramdisk with ``Proliant Hardware Manager``, use the"},{"line_number":1668,"context_line":"``proliant-tools`` element in DIB::"},{"line_number":1669,"context_line":""},{"line_number":1670,"context_line":"    disk-image-create -o proliant-agent-ramdisk ironic-agent fedora proliant-tools"},{"line_number":1671,"context_line":""},{"line_number":1672,"context_line":"See the `proliant-tools`_ for more information on creating agent ramdisk with"},{"line_number":1673,"context_line":"``proliant-tools`` element in DIB."},{"line_number":1674,"context_line":""},{"line_number":1675,"context_line":".. _`ssacli documentation`: http://h20566.www2.hpe.com/hpsc/doc/public/display?docId\u003dc03909334"},{"line_number":1676,"context_line":".. _`proliant-tools`: http://docs.openstack.org/developer/diskimage-builder/elements/proliant-tools/README.html"},{"line_number":1677,"context_line":".. _`Enabling HTTPS in Swift`: http://docs.openstack.org/project-install-guide/baremetal/draft/enabling-https.html#enabling-https-in-swift"},{"line_number":1678,"context_line":".. _`Enabling HTTPS in Image service`: http://docs.openstack.org/project-install-guide/baremetal/draft/enabling-https.html#enabling-https-in-image-service"},{"line_number":1679,"context_line":".. _`HPE iLO4 User Guide`: http://h20566.www2.hpe.com/hpsc/doc/public/display?docId\u003dc03334051"}],"source_content_type":"text/x-rst","patch_set":12,"id":"9f436f4f_5b489085","line":1676,"range":{"start_line":1642,"start_character":0,"end_line":1676,"end_character":111},"in_reply_to":"9f436f4f_60160558","updated":"2017-08-15 10:49:19.000000000","message":"ditto","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"}],"ironic/drivers/modules/ilo/inspect.py":[{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027BootMode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027max_raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sr_iov_devices\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":38,"context_line":"                     \u0027drive_ssd\u0027, \u0027drive_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":39,"context_line":"                     \u0027rotational_drive_max_rpm\u0027,"},{"line_number":40,"context_line":"                     \u0027logical_raid_level_0\u0027, \u0027logical_raid_level_1\u0027,"},{"line_number":41,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":42,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":43,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":44,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_raid_capable\u0027, \u0027cpu_fpgas\u0027,}"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"# Unused inbelow code for now. But added it for ironic records."},{"line_number":47,"context_line":"# DYNAMIC_KEYS \u003d {\u0027\u003cvendor\u003e_gpu_count\u0027, \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_35c6be48","line":44,"range":{"start_line":34,"start_character":0,"end_line":44,"end_character":69},"updated":"2017-03-02 09:46:29.000000000","message":"Also if we remove this from here, and include it in proliantutils/ilo/client.py and provide a method there like \"supported_capabilities\" and access it from here it would reduce the dependency on the upstream.Like wherever in this file we use CAPABILITIES_KEYS we can just call ilo_obj.supported_capabilities()","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027BootMode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027max_raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sr_iov_devices\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":38,"context_line":"                     \u0027drive_ssd\u0027, \u0027drive_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":39,"context_line":"                     \u0027rotational_drive_max_rpm\u0027,"},{"line_number":40,"context_line":"                     \u0027logical_raid_level_0\u0027, \u0027logical_raid_level_1\u0027,"},{"line_number":41,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":42,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":43,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":44,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_raid_capable\u0027, \u0027cpu_fpgas\u0027,}"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"# Unused inbelow code for now. But added it for ironic records."},{"line_number":47,"context_line":"# DYNAMIC_KEYS \u003d {\u0027\u003cvendor\u003e_gpu_count\u0027, \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_921ce078","line":44,"range":{"start_line":34,"start_character":0,"end_line":44,"end_character":69},"updated":"2017-03-02 09:46:29.000000000","message":"Just a thought. Wouldn\u0027t it be better to manage them as a set instead of dictionary?","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"6a8dbac3f1b1698d90958c18e191c0f636331980","unresolved":false,"context_lines":[{"line_number":41,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":42,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":43,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":44,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_raid_capable\u0027, \u0027cpu_fpgas\u0027,}"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"# Unused inbelow code for now. But added it for ironic records."},{"line_number":47,"context_line":"# DYNAMIC_KEYS \u003d {\u0027\u003cvendor\u003e_gpu_count\u0027, \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_22728111","line":44,"range":{"start_line":44,"start_character":67,"end_line":44,"end_character":69},"updated":"2017-01-24 04:49:06.000000000","message":"nit: I think there needs an extra space here.","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"d40b246baf26d3f11faabc31188c94278d3216b0","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027BootMode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027max_raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sr_iov_devices\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":38,"context_line":"                     \u0027drive_ssd\u0027, \u0027drive_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":39,"context_line":"                     \u0027rotational_drive_max_rpm\u0027,"},{"line_number":40,"context_line":"                     \u0027logical_raid_level_0\u0027, \u0027logical_raid_level_1\u0027,"},{"line_number":41,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":42,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":43,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":44,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_raid_capable\u0027, \u0027cpu_fpgas\u0027,}"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"# Unused inbelow code for now. But added it for ironic records."},{"line_number":47,"context_line":"# DYNAMIC_KEYS \u003d {\u0027\u003cvendor\u003e_gpu_count\u0027, \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_576cda34","line":44,"range":{"start_line":34,"start_character":0,"end_line":44,"end_character":69},"in_reply_to":"ba2be162_8183ac55","updated":"2017-03-03 08:18:21.000000000","message":"Got it. I am wrong.","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":16635,"name":"deray","email":"debayan.ray@gmail.com","username":"deray"},"change_message_id":"a1d3e9594925dacf7f0c06cbbeb24a72b7d98936","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027BootMode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027max_raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sr_iov_devices\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":38,"context_line":"                     \u0027drive_ssd\u0027, \u0027drive_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":39,"context_line":"                     \u0027rotational_drive_max_rpm\u0027,"},{"line_number":40,"context_line":"                     \u0027logical_raid_level_0\u0027, \u0027logical_raid_level_1\u0027,"},{"line_number":41,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":42,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":43,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":44,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_raid_capable\u0027, \u0027cpu_fpgas\u0027,}"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"# Unused inbelow code for now. But added it for ironic records."},{"line_number":47,"context_line":"# DYNAMIC_KEYS \u003d {\u0027\u003cvendor\u003e_gpu_count\u0027, \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_8183ac55","line":44,"range":{"start_line":34,"start_character":0,"end_line":44,"end_character":69},"in_reply_to":"ba2be162_921ce078","updated":"2017-03-02 10:45:59.000000000","message":"@vinay, this is a set and not a dict. I guess this may be used for doing intersection/union somewhere down the line. If not, then better to make it a tuple","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"6a8dbac3f1b1698d90958c18e191c0f636331980","unresolved":false,"context_lines":[{"line_number":43,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":44,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_raid_capable\u0027, \u0027cpu_fpgas\u0027,}"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"# Unused inbelow code for now. But added it for ironic records."},{"line_number":47,"context_line":"# DYNAMIC_KEYS \u003d {\u0027\u003cvendor\u003e_gpu_count\u0027, \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027}"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"VOLUME_CONNECTOR_KEYS \u003d {\u0027iscsi_iqn\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_cf98067b","line":46,"range":{"start_line":46,"start_character":9,"end_line":46,"end_character":16},"updated":"2017-01-24 04:49:06.000000000","message":"nit: in below","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    \"\"\""},{"line_number":92,"context_line":"    try:"},{"line_number":93,"context_line":"        # Retrieve the mandatory properties from hardware"},{"line_number":94,"context_line":"        result \u003d ilo_object.get_essential_properties()"},{"line_number":95,"context_line":"    except ilo_error.IloError as e:"},{"line_number":96,"context_line":"        raise exception.HardwareInspectionFailure(error\u003de)"},{"line_number":97,"context_line":"    _validate(node, result)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_7513d6b8","line":94,"range":{"start_line":93,"start_character":8,"end_line":94,"end_character":54},"updated":"2017-03-02 09:46:29.000000000","message":"Here you can say:\n CAPABILITIES \u003d ilo_object.supported_capabilities()","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"6a8dbac3f1b1698d90958c18e191c0f636331980","unresolved":false,"context_lines":[{"line_number":167,"context_line":"    for key, value in capabilities.items():"},{"line_number":168,"context_line":"        # for \u0027\u003cvendor\u003e_gpu_count\u0027"},{"line_number":169,"context_line":"        if \u0027_gpu_count\u0027 in key:"},{"line_number":170,"context_line":"            valid_cap[key] \u003d capabilities.get(key)"},{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_6f31d259","line":170,"range":{"start_line":170,"start_character":12,"end_line":170,"end_character":50},"updated":"2017-01-24 04:49:06.000000000","message":"nit:\nvalid_cap[key] \u003d capabilities[key]","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":167,"context_line":"    for key, value in capabilities.items():"},{"line_number":168,"context_line":"        # for \u0027\u003cvendor\u003e_gpu_count\u0027"},{"line_number":169,"context_line":"        if \u0027_gpu_count\u0027 in key:"},{"line_number":170,"context_line":"            valid_cap[key] \u003d capabilities.get(key)"},{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_f2a43ca7","line":170,"range":{"start_line":170,"start_character":29,"end_line":170,"end_character":50},"updated":"2017-03-02 09:46:29.000000000","message":"valid_cap[key] \u003d value","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"7a9f342002c5ff164cf1c01b0dfcbd25f0f39aca","unresolved":false,"context_lines":[{"line_number":167,"context_line":"    for key, value in capabilities.items():"},{"line_number":168,"context_line":"        # for \u0027\u003cvendor\u003e_gpu_count\u0027"},{"line_number":169,"context_line":"        if \u0027_gpu_count\u0027 in key:"},{"line_number":170,"context_line":"            valid_cap[key] \u003d capabilities.get(key)"},{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_bd61773b","line":170,"range":{"start_line":170,"start_character":29,"end_line":170,"end_character":50},"in_reply_to":"ba2be162_f2a43ca7","updated":"2017-03-03 09:22:27.000000000","message":"+1","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"6a8dbac3f1b1698d90958c18e191c0f636331980","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        if \u0027_gpu_count\u0027 in key:"},{"line_number":170,"context_line":"            valid_cap[key] \u003d capabilities.get(key)"},{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"},{"line_number":174,"context_line":"                valid_cap[key] \u003d capabilities.get(key)"},{"line_number":175,"context_line":"    return valid_cap"},{"line_number":176,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_4f15f699","line":173,"range":{"start_line":172,"start_character":8,"end_line":173,"end_character":29},"updated":"2017-01-24 04:49:06.000000000","message":"nit: \nif \u0027_for_vendor_\u0027 and \u0027gpu_\u0027 in key:\n    valid_cap[key] \u003d capabilities[key]","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"7a9f342002c5ff164cf1c01b0dfcbd25f0f39aca","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        if \u0027_gpu_count\u0027 in key:"},{"line_number":170,"context_line":"            valid_cap[key] \u003d capabilities.get(key)"},{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"},{"line_number":174,"context_line":"                valid_cap[key] \u003d capabilities.get(key)"},{"line_number":175,"context_line":"    return valid_cap"},{"line_number":176,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_a85db716","line":173,"range":{"start_line":172,"start_character":8,"end_line":173,"end_character":29},"in_reply_to":"5a3905b3_4f15f699","updated":"2017-03-03 09:22:27.000000000","message":"@Shivanand, the code in patch and your suggestion are different.\n\nThe code in patch will never hold true because the key value at line 173 will always be \"_for_vendor_\".\n\nI just want to understand what are we trying to achieve. Store the _for_vendor_ or gpu_ in valid cap?","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"6a8dbac3f1b1698d90958c18e191c0f636331980","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"},{"line_number":174,"context_line":"                valid_cap[key] \u003d capabilities.get(key)"},{"line_number":175,"context_line":"    return valid_cap"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_2249a1b7","line":174,"range":{"start_line":174,"start_character":16,"end_line":174,"end_character":54},"updated":"2017-01-24 04:49:06.000000000","message":"valid_cap[key] \u003d capabilities[key]","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"},{"line_number":174,"context_line":"                valid_cap[key] \u003d capabilities.get(key)"},{"line_number":175,"context_line":"    return valid_cap"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_d55c82ef","line":174,"range":{"start_line":174,"start_character":16,"end_line":174,"end_character":54},"updated":"2017-03-02 09:46:29.000000000","message":"valid_cap[key] \u003d value","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"7a9f342002c5ff164cf1c01b0dfcbd25f0f39aca","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        # for \u0027gpu_\u003cproduct_id\u003e_for_vendor_\u003cvendor\u003e\u0027"},{"line_number":172,"context_line":"        if \u0027_for_vendor_\u0027 in key:"},{"line_number":173,"context_line":"            if \u0027gpu_\u0027 in key:"},{"line_number":174,"context_line":"                valid_cap[key] \u003d capabilities.get(key)"},{"line_number":175,"context_line":"    return valid_cap"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_e8a16ff9","line":174,"range":{"start_line":174,"start_character":16,"end_line":174,"end_character":54},"in_reply_to":"ba2be162_d55c82ef","updated":"2017-03-03 09:22:27.000000000","message":"+1","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"6a8dbac3f1b1698d90958c18e191c0f636331980","unresolved":false,"context_lines":[{"line_number":186,"context_line":"    \"\"\""},{"line_number":187,"context_line":"    valid_cap \u003d {}"},{"line_number":188,"context_line":"    for key in VOLUME_CONNECTOR_KEYS.intersection(capabilities):"},{"line_number":189,"context_line":"        valid_cap[key] \u003d capabilities.get(key)"},{"line_number":190,"context_line":"    return valid_cap"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_4f633642","line":189,"range":{"start_line":189,"start_character":25,"end_line":189,"end_character":46},"updated":"2017-01-24 04:49:06.000000000","message":"nit: \ncapabilities[key]","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":186,"context_line":"    \"\"\""},{"line_number":187,"context_line":"    valid_cap \u003d {}"},{"line_number":188,"context_line":"    for key in VOLUME_CONNECTOR_KEYS.intersection(capabilities):"},{"line_number":189,"context_line":"        valid_cap[key] \u003d capabilities.get(key)"},{"line_number":190,"context_line":"    return valid_cap"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_d21018ab","line":189,"range":{"start_line":189,"start_character":25,"end_line":189,"end_character":46},"in_reply_to":"5a3905b3_4f633642","updated":"2017-03-02 09:46:29.000000000","message":"I prefer \"get\" here since it can return None without throwing any exception.","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"7c045a03370824b703b5519b418a71b0f216db40","unresolved":false,"context_lines":[{"line_number":295,"context_line":"        # for these capabilities."},{"line_number":296,"context_line":"        capabilities \u003d _get_capabilities(task.node, ilo_object)"},{"line_number":297,"context_line":"        if capabilities:"},{"line_number":298,"context_line":"            valid_cap \u003d _create_supported_capabilities_dict(capabilities)"},{"line_number":299,"context_line":"            dyn_cap \u003d _create_supported_dynamic_cap_dict(capabilities)"},{"line_number":300,"context_line":"            capabilities \u003d utils.get_updated_capabilities("},{"line_number":301,"context_line":"                task.node.properties.get(\u0027capabilities\u0027), valid_cap)"},{"line_number":302,"context_line":"            capabilities \u003d utils.get_updated_capabilities("},{"line_number":303,"context_line":"                task.node.properties.get(\u0027capabilities\u0027), dyn_cap)"},{"line_number":304,"context_line":"            # TODO(nisha): Add the below capabilities in vol_cap to volume"},{"line_number":305,"context_line":"            # connector table."},{"line_number":306,"context_line":"            # vol_cap \u003d _create_supported_volume_connector_dict(capabilities)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba2be162_b2a00445","line":303,"range":{"start_line":298,"start_character":12,"end_line":303,"end_character":66},"updated":"2017-03-02 09:46:29.000000000","message":"Can we merge valid_cap and dyn_cap and make a single dict and avoid multiple calls to utils.get_updated_capabilities() ?","commit_id":"acd203f0c69da01b85f9ac496e20c6bd95bd1ba7"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"303760626d7b5875ebef10ceceb9f0e8412ff726","unresolved":false,"context_lines":[{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027boot_mode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sr_iov_devices\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027trusted_boot\u0027, \u0027iscsi_boot\u0027,"},{"line_number":38,"context_line":"                     \u0027has_ssd\u0027, \u0027has_rotational\u0027, \u0027boot_mode_bios\u0027,"},{"line_number":39,"context_line":"                     \u0027rotational_drive_4800_rpm\u0027,"},{"line_number":40,"context_line":"                     \u0027rotational_drive_5400_rpm\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"df140735_5685c905","line":37,"range":{"start_line":37,"start_character":38,"end_line":37,"end_character":67},"updated":"2017-06-06 04:04:16.000000000","message":"Does not make to have these capabilities here till corresponding feature implementation is available in iLO drivers as these are not merely scheduling properties.","commit_id":"9982de2548c4582cd35f929b699160f3821e7297"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"303760626d7b5875ebef10ceceb9f0e8412ff726","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027, \u0027cpu_aes\u0027, \u0027cpu_txt\u0027,"},{"line_number":51,"context_line":"                     \u0027cpu_hugepages\u0027, \u0027cpu_hugepages_1g\u0027, \u0027switch_id\u0027,"},{"line_number":52,"context_line":"                     \u0027port_id\u0027, \u0027switch_info\u0027}"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def _create_ports_if_not_exist(task, macs):"}],"source_content_type":"text/x-python","patch_set":2,"id":"df140735_7697ad3b","line":52,"range":{"start_line":52,"start_character":21,"end_line":52,"end_character":46},"updated":"2017-06-06 04:04:16.000000000","message":"May be it would be useful to have one additional testcase that tests all the supported capability keys.","commit_id":"9982de2548c4582cd35f929b699160f3821e7297"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"b00cfccfbaa052470bcc124128c4a4812861484f","unresolved":false,"context_lines":[{"line_number":48,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027, \u0027cpu_aes\u0027, \u0027cpu_txt\u0027,"},{"line_number":51,"context_line":"                     \u0027cpu_hugepages\u0027, \u0027cpu_hugepages_1g\u0027, \u0027switch_id\u0027,"},{"line_number":52,"context_line":"                     \u0027port_id\u0027, \u0027switch_info\u0027}"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9f436f4f_93cc17bd","line":51,"range":{"start_line":51,"start_character":22,"end_line":51,"end_character":68},"updated":"2017-08-10 05:55:00.000000000","message":"these are not defined in ilo.rst doc.","commit_id":"6b3ad99efe7a4a6ba9a5e751247dd5d1a09c9c1d"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"703e6e462c8fda6530ceac69c0a91d06adf6362d","unresolved":false,"context_lines":[{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027boot_mode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sriov_enabled\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"},{"line_number":38,"context_line":"                     \u0027boot_mode_bios\u0027,"}],"source_content_type":"text/x-python","patch_set":11,"id":"9f436f4f_73d82f7a","line":35,"range":{"start_line":35,"start_character":62,"end_line":35,"end_character":72},"updated":"2017-08-14 18:45:20.000000000","message":"isn\u0027t this redundant with logical_raid_level_\u003cnum\u003e?","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"84c94f2360aa85e6e43b78991a4f9d3d7797f296","unresolved":false,"context_lines":[{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027boot_mode\u0027, \u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027, \u0027raid_level\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sriov_enabled\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"},{"line_number":38,"context_line":"                     \u0027boot_mode_bios\u0027,"}],"source_content_type":"text/x-python","patch_set":11,"id":"9f436f4f_29591834","line":35,"range":{"start_line":35,"start_character":62,"end_line":35,"end_character":72},"in_reply_to":"9f436f4f_73d82f7a","updated":"2017-08-14 21:53:45.000000000","message":"No. This is root volume raid_level added during raid configuration.","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"703e6e462c8fda6530ceac69c0a91d06adf6362d","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":47,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":48,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027}"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9f436f4f_18610006","line":49,"range":{"start_line":49,"start_character":53,"end_line":49,"end_character":67},"updated":"2017-08-14 18:45:20.000000000","message":"duplicate","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"84c94f2360aa85e6e43b78991a4f9d3d7797f296","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":47,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":48,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027}"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9f436f4f_899c84c0","line":49,"range":{"start_line":49,"start_character":53,"end_line":49,"end_character":67},"in_reply_to":"9f436f4f_18610006","updated":"2017-08-14 21:53:45.000000000","message":"No. This is when a system has NVMe device(which is SSD AFAIK). Not sure though if NVMe can be HDD. so the capability is has_nvme_ssd. has-ssd essentialy doesnt mean its a NVMe device.","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":45,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":46,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":47,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":48,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027}"},{"line_number":51,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_5b0bf022","line":48,"range":{"start_line":48,"start_character":58,"end_line":48,"end_character":70},"updated":"2017-08-15 10:22:04.000000000","message":"appears again on line 49","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"82ab3256a0d5001396d989958b655df416a45250","unresolved":false,"context_lines":[{"line_number":45,"context_line":"                     \u0027logical_raid_level_2\u0027, \u0027logical_raid_level_10\u0027,"},{"line_number":46,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":47,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":48,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027}"},{"line_number":51,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_9b2038ae","line":48,"range":{"start_line":48,"start_character":58,"end_line":48,"end_character":70},"in_reply_to":"9f436f4f_5b0bf022","updated":"2017-08-15 10:49:19.000000000","message":"oh yes. I will just fix in next patch set.","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                     \u0027logical_raid_level_5\u0027, \u0027logical_raid_level_6\u0027,"},{"line_number":47,"context_line":"                     \u0027logical_raid_level_50\u0027, \u0027logical_raid_level_60\u0027,"},{"line_number":48,"context_line":"                     \u0027cpu_vt\u0027, \u0027hardware_supports_raid\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":49,"context_line":"                     \u0027nvdimm_n\u0027, \u0027logical_nvdimm_n\u0027, \u0027has_nvme_ssd\u0027,"},{"line_number":50,"context_line":"                     \u0027persistent_memory\u0027}"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_fb198479","line":49,"range":{"start_line":49,"start_character":54,"end_line":49,"end_character":66},"updated":"2017-08-15 10:22:04.000000000","message":"already appeared on line 48","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"597d080fe202bf2f13b46ed8b543565a37c85237","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sriov_enabled\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_22ab3c75","line":34,"updated":"2017-08-16 14:42:09.000000000","message":"so what happened to the keys in the original list, \u0027BootMode\u0027, \u0027max_raid_level\u0027, \u0027sr_iov_devices\u0027 ?","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"2d6f1112683fbb976596ec91377b87ac8670b2ec","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sriov_enabled\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_3c97dc4a","line":34,"in_reply_to":"9f436f4f_22ab3c75","updated":"2017-08-16 16:12:24.000000000","message":"The original BootMode was to have the value as list of Supported boot modes. like [\u0027uefi\u0027, \u0027bios\u0027]. But since this required changes in Nova to have this supported, and nova was not ok to do that change we proposed boolean boot_mode_uefi and boot_mode_bios capabilities. \n\nmax_raid_level : was changed to raid_level when raid configuration was implemented and thats not discovered by proliantutils so far, its only set during raid configuration.\n\nsr_iov_devices: somehow it was never implemented because it was possible to discover count of such devices only inband.\n\nLet me know if it clarifies the doubts.","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"451859a6dd7754199a0b523c4a93c310316bb034","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sriov_enabled\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_7f20b69b","line":34,"in_reply_to":"9f436f4f_3c97dc4a","updated":"2017-08-16 16:25:44.000000000","message":"If I understand, it seems like BootMode was implemented? What happens if a node already has the BootMode capability? Do we need to mention that it is deprecated or ignored or ??\n\nIt would help if your commit msg indicated what happened to these three keys :)","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"bd2365a2a9fa73f3db5a0a3e524b840e681882e7","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"METRICS \u003d metrics_utils.get_metrics_logger(__name__)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"CAPABILITIES_KEYS \u003d {\u0027secure_boot\u0027, \u0027rom_firmware_version\u0027,"},{"line_number":35,"context_line":"                     \u0027ilo_firmware_version\u0027, \u0027server_model\u0027,"},{"line_number":36,"context_line":"                     \u0027pci_gpu_devices\u0027, \u0027sriov_enabled\u0027, \u0027nic_capacity\u0027,"},{"line_number":37,"context_line":"                     \u0027boot_mode_uefi\u0027, \u0027has_ssd\u0027, \u0027has_rotational\u0027,"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_5258492f","line":34,"in_reply_to":"9f436f4f_7f20b69b","updated":"2017-08-16 17:03:03.000000000","message":"BootMode was not implemented. We tried to but since it could have multiple values, and that required Nova changes we had to come up with boolean form of capabilities as boot_mode_uefi and boot_mode_bios.\nI will add that in commit message","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"}],"ironic/tests/unit/drivers/modules/ilo/test_inspect.py":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":416,"context_line":"                          ilo_inspect._validate, self.node, data)"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"    def test___create_supported_capabilities_dict(self):"},{"line_number":419,"context_line":"        capabilities \u003d {\u0027sriov_enabled\u0027: \u0027true\u0027,"},{"line_number":420,"context_line":"                        \u0027hardware_supports_raid\u0027: \u0027true\u0027,"},{"line_number":421,"context_line":"                        \u0027unknown_capability\u0027: \u0027true\u0027}"},{"line_number":422,"context_line":"        expected \u003d {\u0027sriov_enabled\u0027: \u0027true\u0027,"},{"line_number":423,"context_line":"                    \u0027hardware_supports_raid\u0027: \u0027true\u0027}"},{"line_number":424,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f436f4f_c9491561","line":421,"range":{"start_line":419,"start_character":8,"end_line":421,"end_character":53},"updated":"2017-08-08 06:45:04.000000000","message":"Need to add all supported capabilities here.","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"703e6e462c8fda6530ceac69c0a91d06adf6362d","unresolved":false,"context_lines":[{"line_number":418,"context_line":"    def test___create_supported_capabilities_dict(self):"},{"line_number":419,"context_line":"        capabilities \u003d {}"},{"line_number":420,"context_line":"        expected \u003d {}"},{"line_number":421,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS:"},{"line_number":422,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":423,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":424,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS:"}],"source_content_type":"text/x-python","patch_set":11,"id":"9f436f4f_b31577e7","line":421,"range":{"start_line":421,"start_character":31,"end_line":421,"end_character":49},"updated":"2017-08-14 18:45:20.000000000","message":"unsure if it makes sense to check excluded keys aren\u0027t present in the result besides making sure no unknown ones are? e.g:\n\n  for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"84c94f2360aa85e6e43b78991a4f9d3d7797f296","unresolved":false,"context_lines":[{"line_number":418,"context_line":"    def test___create_supported_capabilities_dict(self):"},{"line_number":419,"context_line":"        capabilities \u003d {}"},{"line_number":420,"context_line":"        expected \u003d {}"},{"line_number":421,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS:"},{"line_number":422,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":423,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":424,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS:"}],"source_content_type":"text/x-python","patch_set":11,"id":"9f436f4f_700f0037","line":421,"range":{"start_line":421,"start_character":31,"end_line":421,"end_character":49},"in_reply_to":"9f436f4f_b31577e7","updated":"2017-08-14 21:53:45.000000000","message":"ok","commit_id":"e6f08c13fea4d937a4a2846f324045b04445f79a"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        self.assertEqual(expected, cap)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    def test___create_supported_capabilities_dict_excluded_capability(self):"},{"line_number":430,"context_line":"        capabilities \u003d {}"},{"line_number":431,"context_line":"        expected \u003d {}"},{"line_number":432,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":433,"context_line":"            capabilities.update({key: \u0027true\u0027})"}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_fbff44a8","line":430,"range":{"start_line":430,"start_character":8,"end_line":430,"end_character":25},"updated":"2017-08-15 10:22:04.000000000","message":"I\u0027d add the {\u0027unknown_property\u0027: \u0027true\u0027} back here","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"82ab3256a0d5001396d989958b655df416a45250","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        self.assertEqual(expected, cap)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    def test___create_supported_capabilities_dict_excluded_capability(self):"},{"line_number":430,"context_line":"        capabilities \u003d {}"},{"line_number":431,"context_line":"        expected \u003d {}"},{"line_number":432,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":433,"context_line":"            capabilities.update({key: \u0027true\u0027})"}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_3b26eccf","line":430,"range":{"start_line":430,"start_character":8,"end_line":430,"end_character":25},"in_reply_to":"9f436f4f_fbff44a8","updated":"2017-08-15 10:49:19.000000000","message":"ok","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"42c3f43c9159d607357340ce8f73147c0ffa29b8","unresolved":false,"context_lines":[{"line_number":434,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":435,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":436,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":437,"context_line":"        self.assertTrue(\u0027has_ssd\u0027 not in cap)"},{"line_number":438,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_1b20c847","line":437,"range":{"start_line":437,"start_character":0,"end_line":437,"end_character":45},"updated":"2017-08-15 10:22:04.000000000","message":"redundant per next line","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"82ab3256a0d5001396d989958b655df416a45250","unresolved":false,"context_lines":[{"line_number":434,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":435,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":436,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":437,"context_line":"        self.assertTrue(\u0027has_ssd\u0027 not in cap)"},{"line_number":438,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":12,"id":"9f436f4f_fb2bc491","line":437,"range":{"start_line":437,"start_character":0,"end_line":437,"end_character":45},"in_reply_to":"9f436f4f_1b20c847","updated":"2017-08-15 10:49:19.000000000","message":"yeah but i just added to make it different from above testcase. Else i dont see a need of this new test case added as per comment on previous patch set","commit_id":"e653e7df2dcdb262cf8bd0e582c0ac104cdd2125"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"597d080fe202bf2f13b46ed8b543565a37c85237","unresolved":false,"context_lines":[{"line_number":422,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":423,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":424,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS:"},{"line_number":425,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":426,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":427,"context_line":"        self.assertEqual(expected, cap)"},{"line_number":428,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_42c3e089","line":425,"updated":"2017-08-16 14:42:09.000000000","message":"expected \u003d\u003d capabilities, I don\u0027t think we need this for loop to set it...","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"2d6f1112683fbb976596ec91377b87ac8670b2ec","unresolved":false,"context_lines":[{"line_number":422,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":423,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":424,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS:"},{"line_number":425,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":426,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":427,"context_line":"        self.assertEqual(expected, cap)"},{"line_number":428,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_7cb0c4dd","line":425,"in_reply_to":"9f436f4f_42c3e089","updated":"2017-08-16 16:12:24.000000000","message":"i need to set the value also to the keys for this function.","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"97d5468510bb16bf8343cbdef11992e2c7ace90d","unresolved":false,"context_lines":[{"line_number":432,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":433,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":435,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":436,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":437,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":438,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_3c700608","line":436,"range":{"start_line":435,"start_character":8,"end_line":436,"end_character":42},"updated":"2017-08-16 10:01:31.000000000","message":"why not do it in the same loop on L433?","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"877f8644a0a96413d1bca81f3d0bdbe5d056c2bc","unresolved":false,"context_lines":[{"line_number":432,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":433,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":435,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":436,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":437,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":438,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_f7f5f957","line":436,"range":{"start_line":435,"start_character":8,"end_line":436,"end_character":42},"in_reply_to":"9f436f4f_3c700608","updated":"2017-08-16 12:29:49.000000000","message":"yes, but will do if really required to post the new patch set. Is that fine?","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"2d6f1112683fbb976596ec91377b87ac8670b2ec","unresolved":false,"context_lines":[{"line_number":432,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":433,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":435,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":436,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":437,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":438,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_3ca59ca2","line":436,"range":{"start_line":435,"start_character":8,"end_line":436,"end_character":42},"in_reply_to":"9f436f4f_629a64b9","updated":"2017-08-16 16:12:24.000000000","message":"I would do a follow up for this if its ok(or i dont really need to patch for any other comment)\n\nI added unknown_property part here as per comment on previous patchsets. See patchset 12. comment on line 430","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"597d080fe202bf2f13b46ed8b543565a37c85237","unresolved":false,"context_lines":[{"line_number":432,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":433,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        capabilities.update({\u0027unknown_property\u0027: \u0027true\u0027})"},{"line_number":435,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":436,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":437,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":438,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":21,"id":"9f436f4f_629a64b9","line":436,"range":{"start_line":435,"start_character":8,"end_line":436,"end_character":42},"in_reply_to":"9f436f4f_f7f5f957","updated":"2017-08-16 14:42:09.000000000","message":"yes, or a follow up. You could just set expected to capabilities without unknown_property. or not bother with unknown_property; it is tested above.","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"c0b50e7caac1a5e145194575ee91755158597b8c","unresolved":false,"context_lines":[{"line_number":430,"context_line":"        expected \u003d {}"},{"line_number":431,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":432,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":433,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":435,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":22,"id":"9f436f4f_f2f17d96","line":433,"updated":"2017-08-16 17:23:41.000000000","message":"expected \u003d\u003d capabilities, so we don\u0027t really need this but anyway.","commit_id":"681fcafdd30dc6ffd62eb354d32e6508a53e0d6d"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8c50dac4e4283895b7f39e3280e6524ff7bd1f7d","unresolved":false,"context_lines":[{"line_number":430,"context_line":"        expected \u003d {}"},{"line_number":431,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":432,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":433,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":435,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":22,"id":"9f436f4f_b24e5594","line":433,"in_reply_to":"9f436f4f_92f59159","updated":"2017-08-16 17:31:46.000000000","message":"only if you do another revision. or if someone else wants you to.","commit_id":"681fcafdd30dc6ffd62eb354d32e6508a53e0d6d"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"736e3babea5832ac6e13895a72675d93baae88fd","unresolved":false,"context_lines":[{"line_number":430,"context_line":"        expected \u003d {}"},{"line_number":431,"context_line":"        for key in ilo_inspect.CAPABILITIES_KEYS - {\u0027has_ssd\u0027}:"},{"line_number":432,"context_line":"            capabilities.update({key: \u0027true\u0027})"},{"line_number":433,"context_line":"            expected.update({key: \u0027true\u0027})"},{"line_number":434,"context_line":"        cap \u003d ilo_inspect._create_supported_capabilities_dict(capabilities)"},{"line_number":435,"context_line":"        self.assertEqual(expected, cap)"}],"source_content_type":"text/x-python","patch_set":22,"id":"9f436f4f_92f59159","line":433,"in_reply_to":"9f436f4f_f2f17d96","updated":"2017-08-16 17:27:32.000000000","message":"oh i missed it. do you want me to patch it?","commit_id":"681fcafdd30dc6ffd62eb354d32e6508a53e0d6d"}],"releasenotes/notes/new_capabilities-5241619c4b46a460.yaml":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds following capabilities keys to iLO drivers"},{"line_number":5,"context_line":"    boot_mode_uefi,"},{"line_number":6,"context_line":"    boot_mode_bios,"},{"line_number":7,"context_line":"    trusted_boot,"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9f436f4f_290d4137","line":4,"range":{"start_line":4,"start_character":51,"end_line":4,"end_character":62},"updated":"2017-08-08 06:45:04.000000000","message":"s/ \u0027iLO drivers\u0027 / \u0027 ``ilo`` inspect interface. /","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"e0a223e119bf10cc11a45664c614cc9be3f15a09","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds following capabilities keys to iLO drivers"},{"line_number":5,"context_line":"    boot_mode_uefi,"},{"line_number":6,"context_line":"    boot_mode_bios,"},{"line_number":7,"context_line":"    trusted_boot,"},{"line_number":8,"context_line":"    iscsi_boot,"},{"line_number":9,"context_line":"    has_ssd,"},{"line_number":10,"context_line":"    has_rotational,"},{"line_number":11,"context_line":"    rotational_drive_4800_rpm,"},{"line_number":12,"context_line":"    rotational_drive_5400_rpm,"},{"line_number":13,"context_line":"    rotational_drive_7200_rpm,"},{"line_number":14,"context_line":"    rotational_drive_10000_rpm,"},{"line_number":15,"context_line":"    rotational_drive_15000_rpm,"},{"line_number":16,"context_line":"    logical_raid_level_0,"},{"line_number":17,"context_line":"    logical_raid_level_1,"},{"line_number":18,"context_line":"    logical_raid_level_2,"},{"line_number":19,"context_line":"    logical_raid_level_10,"},{"line_number":20,"context_line":"    logical_raid_level_5,"},{"line_number":21,"context_line":"    logical_raid_level_6,"},{"line_number":22,"context_line":"    logical_raid_level_50,"},{"line_number":23,"context_line":"    logical_raid_level_60,"},{"line_number":24,"context_line":"    cpu_vt,"},{"line_number":25,"context_line":"    hardware_supports_raid,"},{"line_number":26,"context_line":"    has_nvme_ssd,"},{"line_number":27,"context_line":"    nvdimm_n,"},{"line_number":28,"context_line":"    logical_nvdimm_n,"},{"line_number":29,"context_line":"    has_nvme_ssd,"},{"line_number":30,"context_line":"    persistent_memory,"},{"line_number":31,"context_line":"    cpu_aes,"},{"line_number":32,"context_line":"    cpu_txt,"},{"line_number":33,"context_line":"    cpu_hugepages,"},{"line_number":34,"context_line":"    cpu_hugepages_1g,"},{"line_number":35,"context_line":"    switch_id,"},{"line_number":36,"context_line":"    port_id,"},{"line_number":37,"context_line":"    switch_info"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9f436f4f_89fe6d03","line":37,"range":{"start_line":5,"start_character":4,"end_line":37,"end_character":15},"updated":"2017-08-08 06:45:04.000000000","message":"These should be added into \"``\" Ex. ``boot_mode_uefi``","commit_id":"2c93ba39b554d4e480f32ecb7cb545405be1424f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"b00cfccfbaa052470bcc124128c4a4812861484f","unresolved":false,"context_lines":[{"line_number":29,"context_line":"    ``logical_nvdimm_n``,"},{"line_number":30,"context_line":"    ``has_nvme_ssd``,"},{"line_number":31,"context_line":"    ``persistent_memory``,"},{"line_number":32,"context_line":"    ``cpu_aes``,"},{"line_number":33,"context_line":"    ``cpu_txt``,"},{"line_number":34,"context_line":"    ``cpu_hugepages``,"},{"line_number":35,"context_line":"    ``cpu_hugepages_1g``,"},{"line_number":36,"context_line":"    ``switch_id``,"},{"line_number":37,"context_line":"    ``port_id``,"},{"line_number":38,"context_line":"    ``switch_info``"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"9f436f4f_7344131c","line":38,"range":{"start_line":32,"start_character":6,"end_line":38,"end_character":17},"updated":"2017-08-10 05:55:00.000000000","message":"ditto","commit_id":"6b3ad99efe7a4a6ba9a5e751247dd5d1a09c9c1d"},{"author":{"_account_id":10453,"name":"octopuszhang","email":"zhangyf@rc.inesa.com","username":"1"},"change_message_id":"9826eb9ad82755a7f0c383deb10a61781b114e0c","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds following capabilities keys to iLO"},{"line_number":5,"context_line":"    InspectInterface."},{"line_number":6,"context_line":"    ``boot_mode_uefi``,"},{"line_number":7,"context_line":"    ``boot_mode_bios``,"},{"line_number":8,"context_line":"    ``has_ssd``,"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9f436f4f_3fad2a31","line":5,"range":{"start_line":5,"start_character":20,"end_line":5,"end_character":21},"updated":"2017-08-10 09:15:12.000000000","message":":","commit_id":"ab3b0d04026ce134a68965af63885fc53c847976"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds following capabilities keys to iLO"},{"line_number":5,"context_line":"    InspectInterface -"},{"line_number":6,"context_line":"    ``boot_mode_uefi``,"},{"line_number":7,"context_line":"    ``boot_mode_bios``,"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f436f4f_c2cf4bae","line":4,"range":{"start_line":4,"start_character":20,"end_line":4,"end_character":42},"updated":"2017-08-11 04:01:51.000000000","message":"s/ \u0027following capabilities \u0027 / \u0027 support for following boolean capabilities \u0027/","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds following capabilities keys to iLO"},{"line_number":5,"context_line":"    InspectInterface -"},{"line_number":6,"context_line":"    ``boot_mode_uefi``,"},{"line_number":7,"context_line":"    ``boot_mode_bios``,"},{"line_number":8,"context_line":"    ``has_ssd``,"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f436f4f_22ea970e","line":5,"range":{"start_line":4,"start_character":51,"end_line":5,"end_character":20},"updated":"2017-08-11 04:01:51.000000000","message":"s/ \u0027iLO InspectInterface\u0027 / \u0027 ``ilo`` inspect interface\u0027 /","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"bbf59e9101d0b64d1f189234f7207a18130fffc0","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds following capabilities keys to iLO"},{"line_number":5,"context_line":"    InspectInterface -"},{"line_number":6,"context_line":"    ``boot_mode_uefi``,"},{"line_number":7,"context_line":"    ``boot_mode_bios``,"},{"line_number":8,"context_line":"    ``has_ssd``,"},{"line_number":9,"context_line":"    ``has_rotational``,"},{"line_number":10,"context_line":"    ``rotational_drive_4800_rpm``,"},{"line_number":11,"context_line":"    ``rotational_drive_5400_rpm``,"},{"line_number":12,"context_line":"    ``rotational_drive_7200_rpm``,"},{"line_number":13,"context_line":"    ``rotational_drive_10000_rpm``,"},{"line_number":14,"context_line":"    ``rotational_drive_15000_rpm``,"},{"line_number":15,"context_line":"    ``logical_raid_level_0``,"},{"line_number":16,"context_line":"    ``logical_raid_level_1``,"},{"line_number":17,"context_line":"    ``logical_raid_level_2``,"},{"line_number":18,"context_line":"    ``logical_raid_level_10``,"},{"line_number":19,"context_line":"    ``logical_raid_level_5``,"},{"line_number":20,"context_line":"    ``logical_raid_level_6``,"},{"line_number":21,"context_line":"    ``logical_raid_level_50``,"},{"line_number":22,"context_line":"    ``logical_raid_level_60``,"},{"line_number":23,"context_line":"    ``cpu_vt``,"},{"line_number":24,"context_line":"    ``hardware_supports_raid``,"},{"line_number":25,"context_line":"    ``has_nvme_ssd``,"},{"line_number":26,"context_line":"    ``nvdimm_n``,"},{"line_number":27,"context_line":"    ``logical_nvdimm_n``,"},{"line_number":28,"context_line":"    ``has_nvme_ssd``,"},{"line_number":29,"context_line":"    ``persistent_memory``."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f436f4f_4217dbee","line":29,"range":{"start_line":5,"start_character":21,"end_line":29,"end_character":26},"updated":"2017-08-11 04:01:51.000000000","message":"This is not formatted properly. I think one capability per line would be better. Ex:\ncapabilities keys to iLOInspectInterface:\n* ``boot_mode_uefi``\n* ``boot_mode_bios``\n* ``has_ssd``","commit_id":"e6024155ab4cc772d17b8577ac916393e873794c"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"a0a7940e2494af7f435d3bab7785b2793166d8be","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds support for following boolean capabilities keys to"},{"line_number":5,"context_line":"    ``ilo`` inspect interface: "},{"line_number":6,"context_line":"    * ``boot_mode_uefi``"},{"line_number":7,"context_line":"    * ``boot_mode_bios``"},{"line_number":8,"context_line":"    * ``has_ssd``"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"9f436f4f_be6fa0fa","line":5,"range":{"start_line":5,"start_character":25,"end_line":5,"end_character":31},"updated":"2017-08-12 01:01:42.000000000","message":"nit: extra space at end.\nAlso an extra empty line is required here.","commit_id":"1143e767e7e4eec03b99654ee14917fcf007cf93"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"a60a4b70c9865c0f51c530b7731265a2c9ae794d","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    * ``logical_raid_level_60``"},{"line_number":24,"context_line":"    * ``cpu_vt``"},{"line_number":25,"context_line":"    * ``hardware_supports_raid``"},{"line_number":26,"context_line":"    * ``has_nvme_ssd``"},{"line_number":27,"context_line":"    * ``nvdimm_n``"},{"line_number":28,"context_line":"    * ``logical_nvdimm_n``"},{"line_number":29,"context_line":"    * ``has_nvme_ssd``"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9f436f4f_fd8177c4","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":22},"updated":"2017-08-15 12:45:26.000000000","message":"nit: duplicate","commit_id":"87d105295984f3bd7ee7019d17ac2c6743a5c8f3"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"a60a4b70c9865c0f51c530b7731265a2c9ae794d","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    * ``has_nvme_ssd``"},{"line_number":27,"context_line":"    * ``nvdimm_n``"},{"line_number":28,"context_line":"    * ``logical_nvdimm_n``"},{"line_number":29,"context_line":"    * ``has_nvme_ssd``"},{"line_number":30,"context_line":"    * ``persistent_memory``"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9f436f4f_3d7c9fea","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":22},"updated":"2017-08-15 12:45:26.000000000","message":"nit: duplicate","commit_id":"87d105295984f3bd7ee7019d17ac2c6743a5c8f3"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ce67403f8f9fab344b9d1535cacfd1271ae3161d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds support for following boolean capabilities keys to"},{"line_number":5,"context_line":"    ``ilo`` inspect interface:"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    * ``boot_mode_uefi``"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"9f436f4f_f27bd488","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":20},"updated":"2017-08-15 22:49:21.000000000","message":"The patch is not delineated in the release notes.\n\n\"Adds support to the ``ilo`` inspect interface for the following capabilities keys:\"","commit_id":"0970555e8e416ca3f89fd6f00e9302b8551ebf56"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"7f2eac240bb7661e093faa9f9d6d2b2396ed6874","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    This patch adds support for following boolean capabilities keys to"},{"line_number":5,"context_line":"    ``ilo`` inspect interface:"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    * ``boot_mode_uefi``"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"9f436f4f_123ad897","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":20},"in_reply_to":"9f436f4f_f27bd488","updated":"2017-08-15 23:00:57.000000000","message":"Done","commit_id":"0970555e8e416ca3f89fd6f00e9302b8551ebf56"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"44cf668c15503390c56c93126476d0defbfc37d3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"9f436f4f_327cb7ea","line":30,"updated":"2017-08-16 04:53:38.000000000","message":"Missing parameter: sriov_enabled","commit_id":"ae4caab5e1badedb2bcdd95e1ae27ab4e6db1d98"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"9591d5eadd30cd47efa6c4210c4fdc62f6488ac0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"9f436f4f_35d6e129","line":30,"in_reply_to":"9f436f4f_327cb7ea","updated":"2017-08-16 06:03:59.000000000","message":"Done","commit_id":"ae4caab5e1badedb2bcdd95e1ae27ab4e6db1d98"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"597d080fe202bf2f13b46ed8b543565a37c85237","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for following boolean capabilities keys to"},{"line_number":5,"context_line":"    ``ilo`` inspect interface:"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    * ``boot_mode_uefi``"}],"source_content_type":"text/x-yaml","patch_set":21,"id":"9f436f4f_67ddd6de","line":4,"updated":"2017-08-16 14:42:09.000000000","message":"nit s/following boolean/the following Boolean/","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"2d6f1112683fbb976596ec91377b87ac8670b2ec","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for following boolean capabilities keys to"},{"line_number":5,"context_line":"    ``ilo`` inspect interface:"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    * ``boot_mode_uefi``"}],"source_content_type":"text/x-yaml","patch_set":21,"id":"9f436f4f_bc086c91","line":4,"in_reply_to":"9f436f4f_67ddd6de","updated":"2017-08-16 16:12:24.000000000","message":"can fix it in follow up, if its fine.","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"597d080fe202bf2f13b46ed8b543565a37c85237","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"9f436f4f_c736c203","line":31,"updated":"2017-08-16 14:42:09.000000000","message":"Shouldn\u0027t we mention that it needs proliantutils \u003e\u003d 2.4.0?\n\nAnd/or also update the release notes for ilo-update-proliantutils-version-fd41a7c2a27be735.yaml?","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"451859a6dd7754199a0b523c4a93c310316bb034","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"9f436f4f_1c22d8b9","line":31,"in_reply_to":"9f436f4f_7cfe846b","updated":"2017-08-16 16:25:44.000000000","message":"well, the parent patch mentions why 2.4.0 is needed, and this feature isn\u0027t included in that list. This is all going out in the same release, so it would be more cohesive if we mentioned it.","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"},{"author":{"_account_id":11297,"name":"Nisha Agarwal","email":"agarwalnisha1980@gmail.com","username":"Nisha"},"change_message_id":"2d6f1112683fbb976596ec91377b87ac8670b2ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"9f436f4f_7cfe846b","line":31,"in_reply_to":"9f436f4f_c736c203","updated":"2017-08-16 16:12:24.000000000","message":"I believe when we say the feature is in Pike, we dont need to explicitly tell Proliantutils version here in releasenotes because driver-requirements clearly say it is in 2.4.0 after the parent patch goes in.","commit_id":"1b0fbfd501c4e8cf2e8be2a7ba85f958b23d99c5"}]}
