)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"a0e9d428330ce4525b6a68bd6f4c61f975b52e6e","unresolved":false,"context_lines":[{"line_number":19,"context_line":"    }]"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"The use case is part of the Infinband support to see"},{"line_number":22,"context_line":"https://review.openstack.org/#/c/265635/."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Closes-Bug: #1532534"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7af24918_71d0c51f","line":22,"updated":"2016-03-03 17:02:32.000000000","message":"nit: If there\u0027s a spec or something else to link here, it\u0027s probably better than linking the review.","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"9da5a10bb1f0f61872bb03a6793dac623d0f71d4","unresolved":false,"context_lines":[{"line_number":19,"context_line":"    }]"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"The use case is part of the Infinband support to see"},{"line_number":22,"context_line":"https://review.openstack.org/#/c/265635/."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Closes-Bug: #1532534"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7af24918_fccd6587","line":22,"in_reply_to":"7af24918_71d0c51f","updated":"2016-03-06 09:39:41.000000000","message":"Done","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"22f51a2450b8066a36250704e3a3b9e7297d4065","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":35,"id":"3aaa91ec_66b0abf5","line":18,"range":{"start_line":18,"start_character":22,"end_line":18,"end_character":31},"updated":"2016-06-22 09:44:26.000000000","message":"maybe we should remove the 0x as nova.conf except with it\nsee https://wiki.openstack.org/wiki/Pci_passthrough","commit_id":"498096f7b42cad38422670e4c411afb4373cac6a"},{"author":{"_account_id":14972,"name":"yogananth Subramanian","email":"ysubrama@redhat.com","username":"yogi"},"change_message_id":"aabf06bd770de0d1ccadd29f1193fa0c92ac1527","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":35,"id":"3aaa91ec_82bb00c4","line":18,"range":{"start_line":18,"start_character":22,"end_line":18,"end_character":31},"in_reply_to":"3aaa91ec_66b0abf5","updated":"2016-06-22 10:29:13.000000000","message":"Original intention in leaving the prefix, was to serve as reminder, that it was hexadecimal. But since nova does not expect any prefix, I guess its good to remove them.","commit_id":"498096f7b42cad38422670e4c411afb4373cac6a"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"22f51a2450b8066a36250704e3a3b9e7297d4065","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Depends-On: I2828a7e585449f63887ad5a2e338b4e043d68e63"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":35,"id":"3aaa91ec_e6465bbe","line":20,"range":{"start_line":18,"start_character":8,"end_line":20,"end_character":46},"updated":"2016-06-22 09:44:26.000000000","message":"if we want to put this in port.extra\nmaybe it will be better to create the json like\nu\u0027interfaces\u0027: [\n    {\n        u\u0027mac_address\u0027: u\u002700:0c:29:8c:11:b1\u0027,\n        u\u0027name\u0027: u\u0027eth0\u0027,\n        u\u0027ipv4_address\u0027: None,\n        u\u0027switch_chassis_descr\u0027: None,\n        u\u0027switch_port_descr\u0027: None,\n        u\u0027extra\u0027: {\n                    u\u0027vendor_id\u0027: u\u00270x15b3\u0027,\n                    u\u0027product_id\u0027: u\u00270x1014,\n                    u\u0027vendor_name: u\u0027Mellanox Technologies\u0027\n       }\n}\n\nthan I can push change to the ironic-inspecor to update the port.extra if exist in the interfaces json.\nThis is the same change I meant to do for my infiniband spec\nfor the ironic-inspector https://review.openstack.org/#/c/265635/","commit_id":"498096f7b42cad38422670e4c411afb4373cac6a"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"0a59786d82dcfb08d9367660b65cb02352b1e250","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Depends-On: I2828a7e585449f63887ad5a2e338b4e043d68e63"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":35,"id":"3aaa91ec_a54d6674","line":20,"range":{"start_line":18,"start_character":8,"end_line":20,"end_character":46},"in_reply_to":"3aaa91ec_821780a2","updated":"2016-06-22 10:36:55.000000000","message":"I had something similar for the infiniband, but more complex\nhttps://review.openstack.org/#/c/264257/\n\nI  will update it to just create port with extra","commit_id":"498096f7b42cad38422670e4c411afb4373cac6a"},{"author":{"_account_id":14972,"name":"yogananth Subramanian","email":"ysubrama@redhat.com","username":"yogi"},"change_message_id":"aabf06bd770de0d1ccadd29f1193fa0c92ac1527","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Depends-On: I2828a7e585449f63887ad5a2e338b4e043d68e63"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":35,"id":"3aaa91ec_821780a2","line":20,"range":{"start_line":18,"start_character":8,"end_line":20,"end_character":46},"in_reply_to":"3aaa91ec_e6465bbe","updated":"2016-06-22 10:29:13.000000000","message":"It would be wonderful, if you could do that, expose vendor_id, product_id in port.exta. \nHad submitted patch for ironic-inspector (https://review.openstack.org/#/c/331496/), which exposes Network Interface attributes other then \u0027ipv4_address\u0027, \u0027mac_address\u0027, \u0027name\u0027 through Port\u0027s \"extra\" attribute using the patch_port function.","commit_id":"498096f7b42cad38422670e4c411afb4373cac6a"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"64b704025aa464273a5b74c5d0cd562dd8f6051a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":36,"id":"3aaa91ec_014c316f","line":18,"range":{"start_line":18,"start_character":22,"end_line":18,"end_character":31},"updated":"2016-06-22 09:53:34.000000000","message":"maybe we should remove the 0x as nova.conf except with it see https://wiki.openstack.org/wiki/Pci_passthrough","commit_id":"88b0681cccd0564f2f37a6129e8069c1768a8ca5"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"64b704025aa464273a5b74c5d0cd562dd8f6051a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Depends-On: I2828a7e585449f63887ad5a2e338b4e043d68e63"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":36,"id":"3aaa91ec_01e8b10f","line":20,"range":{"start_line":18,"start_character":0,"end_line":20,"end_character":47},"updated":"2016-06-22 09:53:34.000000000","message":"if we want to put this in port.extra\nmaybe it will be better to create the json like\nu\u0027interfaces\u0027: [\n    {\n        u\u0027mac_address\u0027: u\u002700:0c:29:8c:11:b1\u0027,\n        u\u0027name\u0027: u\u0027eth0\u0027,\n        u\u0027ipv4_address\u0027: None,\n        u\u0027switch_chassis_descr\u0027: None,\n        u\u0027switch_port_descr\u0027: None,\n        u\u0027extra\u0027: {\n                    u\u0027vendor_id\u0027: u\u00270x15b3\u0027,\n                    u\u0027product_id\u0027: u\u00270x1014,\n                    u\u0027vendor_name: u\u0027Mellanox Technologies\u0027\n       }\n}\n\nthan I can push change to the ironic-inspecor to update the port.extra if exist in the interfaces json.\nThis is the same change I meant to do for my infiniband spec\nfor the ironic-inspector https://review.openstack.org/#/c/265635/","commit_id":"88b0681cccd0564f2f37a6129e8069c1768a8ca5"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"c8923da67729291fe89ed71e92167fe427002287","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        u\u0027ipv4_address\u0027: None,"},{"line_number":16,"context_line":"        u\u0027switch_chassis_descr\u0027: None,"},{"line_number":17,"context_line":"        u\u0027switch_port_descr\u0027: None,"},{"line_number":18,"context_line":"        u\u0027vendor_id\u0027: u\u00270x15b3\u0027,"},{"line_number":19,"context_line":"        u\u0027product_id\u0027: u\u00270x1014,"},{"line_number":20,"context_line":"        u\u0027vendor_name: u\u0027Mellanox Technologies\u0027"},{"line_number":21,"context_line":"    }]"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Depends-On: I2828a7e585449f63887ad5a2e338b4e043d68e63"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":36,"id":"3aaa91ec_687875f3","line":20,"range":{"start_line":18,"start_character":0,"end_line":20,"end_character":47},"in_reply_to":"3aaa91ec_01e8b10f","updated":"2016-06-22 11:05:13.000000000","message":"I don\u0027t think that it makes sense to add a extra field to the NetworkInterface object in IPA. The NetworkInterface object in IPA isn\u0027t tied to the Ironic port model, its just a representation of a NIC on a server, creating an extra dict adds unnecessary complexity and doesn\u0027t mean anything without the context of the Ironic port model. I personally think its nicer to add these properties to the NetworkInterface as is being done already, and allow the translation layer that is the Ironic inspector to take what should be a generic representation of a NIC and process it into an Ironic port.","commit_id":"88b0681cccd0564f2f37a6129e8069c1768a8ca5"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"9b044da3d225621c576a5b70585da2489ae243b8","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add vendor id, vendor name and product_id to interface information"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch update the interfaces JSON to include"},{"line_number":10,"context_line":"vendor_id, product_id and vendor_name"},{"line_number":11,"context_line":"u\u0027interfaces\u0027: ["},{"line_number":12,"context_line":"    {"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":38,"id":"3aaa91ec_2a94da88","line":9,"updated":"2016-06-27 11:17:51.000000000","message":"Nit: \"updates\"","commit_id":"a083511d65029f5d5c7ad32250920af5447f792d"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"96f9c9638298b3bb246d2d50ba5dcb3eca10bf7a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add vendor id, vendor name and product_id to interface information"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch update the interfaces JSON to include"},{"line_number":10,"context_line":"vendor_id, product_id and vendor_name"},{"line_number":11,"context_line":"u\u0027interfaces\u0027: ["},{"line_number":12,"context_line":"    {"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":38,"id":"3aaa91ec_cfa8c1de","line":9,"in_reply_to":"3aaa91ec_2a94da88","updated":"2016-06-27 12:50:11.000000000","message":"Done","commit_id":"a083511d65029f5d5c7ad32250920af5447f792d"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"be071f66fe900d095c2ad3476bf8145f4e7a5eaa","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add vendor id, vendor name and product_id to interface information"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch updates the interfaces JSON to include"},{"line_number":10,"context_line":"vendor_id, product_id and vendor_name"},{"line_number":11,"context_line":"u\u0027interfaces\u0027: ["},{"line_number":12,"context_line":"    {"},{"line_number":13,"context_line":"        u\u0027mac_address\u0027: u\u002700:0c:29:8c:11:b1\u0027,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":39,"id":"3aaa91ec_155ad650","line":10,"range":{"start_line":10,"start_character":26,"end_line":10,"end_character":37},"updated":"2016-06-27 12:59:21.000000000","message":"Need to remove this reference to vendor_name and the one above too.","commit_id":"ac486e3ad7c611a6911e121c6aff66e4040c0607"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c5003da112735fd657866c86ec71a2ba644b393a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add vendor id, vendor name and product_id to interface information"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch updates the interfaces JSON to include"},{"line_number":10,"context_line":"vendor_id, product_id and vendor_name"},{"line_number":11,"context_line":"u\u0027interfaces\u0027: ["},{"line_number":12,"context_line":"    {"},{"line_number":13,"context_line":"        u\u0027mac_address\u0027: u\u002700:0c:29:8c:11:b1\u0027,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":39,"id":"3aaa91ec_00a45606","line":10,"range":{"start_line":10,"start_character":26,"end_line":10,"end_character":37},"in_reply_to":"3aaa91ec_155ad650","updated":"2016-06-27 13:01:55.000000000","message":"Done","commit_id":"ac486e3ad7c611a6911e121c6aff66e4040c0607"}],"doc/source/index.rst":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"47b27a7f472f8d5d09789b9407f23531884d0589","unresolved":false,"context_lines":[{"line_number":111,"context_line":"``interfaces``"},{"line_number":112,"context_line":"    list of network interfaces with fields: ``name``, ``mac_address``,"},{"line_number":113,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor_id``,"},{"line_number":114,"context_line":"    ``vendor_name``, ``produce_id``. If configuration option ``collect_lldp``"},{"line_number":115,"context_line":"    is set to True the ``lldp`` field will be populated by a list of TLVs"},{"line_number":116,"context_line":"    pulled from LLDP. Currently IPA also returns 2 fields"},{"line_number":117,"context_line":"    ``switch_port_descr`` and ``switch_chassis_descr`` which were reserved for"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3aaa91ec_f0a3eaaf","line":114,"updated":"2016-06-27 07:25:30.000000000","message":"typo in product","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c6b8917a2267184f181082b96d95b91c9c1cad66","unresolved":false,"context_lines":[{"line_number":111,"context_line":"``interfaces``"},{"line_number":112,"context_line":"    list of network interfaces with fields: ``name``, ``mac_address``,"},{"line_number":113,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor_id``,"},{"line_number":114,"context_line":"    ``vendor_name``, ``produce_id``. If configuration option ``collect_lldp``"},{"line_number":115,"context_line":"    is set to True the ``lldp`` field will be populated by a list of TLVs"},{"line_number":116,"context_line":"    pulled from LLDP. Currently IPA also returns 2 fields"},{"line_number":117,"context_line":"    ``switch_port_descr`` and ``switch_chassis_descr`` which were reserved for"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3aaa91ec_59614904","line":114,"in_reply_to":"3aaa91ec_f0a3eaaf","updated":"2016-06-27 08:57:38.000000000","message":"Done","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"9b044da3d225621c576a5b70585da2489ae243b8","unresolved":false,"context_lines":[{"line_number":116,"context_line":"    pulled from LLDP. Currently IPA also returns 2 fields"},{"line_number":117,"context_line":"    ``switch_port_descr`` and ``switch_chassis_descr`` which were reserved for"},{"line_number":118,"context_line":"    future use, these are now deprecated to be removed in Ocata in favor of"},{"line_number":119,"context_line":"    including all LLDP data in the ``lddp`` field."},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"``system_vendor``"},{"line_number":122,"context_line":"    system vendor information from SMBIOS as reported by ``dmidecode``:"}],"source_content_type":"text/x-rst","patch_set":38,"id":"3aaa91ec_aa3c4a93","line":119,"updated":"2016-06-27 11:17:51.000000000","message":"Typo: s/lddp/lldp/","commit_id":"a083511d65029f5d5c7ad32250920af5447f792d"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"96f9c9638298b3bb246d2d50ba5dcb3eca10bf7a","unresolved":false,"context_lines":[{"line_number":116,"context_line":"    pulled from LLDP. Currently IPA also returns 2 fields"},{"line_number":117,"context_line":"    ``switch_port_descr`` and ``switch_chassis_descr`` which were reserved for"},{"line_number":118,"context_line":"    future use, these are now deprecated to be removed in Ocata in favor of"},{"line_number":119,"context_line":"    including all LLDP data in the ``lddp`` field."},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"``system_vendor``"},{"line_number":122,"context_line":"    system vendor information from SMBIOS as reported by ``dmidecode``:"}],"source_content_type":"text/x-rst","patch_set":38,"id":"3aaa91ec_0f78092b","line":119,"in_reply_to":"3aaa91ec_aa3c4a93","updated":"2016-06-27 12:50:11.000000000","message":"Done","commit_id":"a083511d65029f5d5c7ad32250920af5447f792d"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"be071f66fe900d095c2ad3476bf8145f4e7a5eaa","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"``interfaces``"},{"line_number":112,"context_line":"    list of network interfaces with fields: ``name``, ``mac_address``,"},{"line_number":113,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor_id``,      ``product_id``."},{"line_number":114,"context_line":"    If configuration option ``collect_lldp`` is set to True the ``lldp``"},{"line_number":115,"context_line":"    field will be populated by a list of TLVs pulled from LLDP."},{"line_number":116,"context_line":"    Currently IPA also returns 2 fields  ``switch_port_descr`` and"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3aaa91ec_3501d23a","line":113,"range":{"start_line":113,"start_character":47,"end_line":113,"end_character":52},"updated":"2016-06-27 12:59:21.000000000","message":"Extra spaces.","commit_id":"ac486e3ad7c611a6911e121c6aff66e4040c0607"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c5003da112735fd657866c86ec71a2ba644b393a","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"``interfaces``"},{"line_number":112,"context_line":"    list of network interfaces with fields: ``name``, ``mac_address``,"},{"line_number":113,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor_id``,      ``product_id``."},{"line_number":114,"context_line":"    If configuration option ``collect_lldp`` is set to True the ``lldp``"},{"line_number":115,"context_line":"    field will be populated by a list of TLVs pulled from LLDP."},{"line_number":116,"context_line":"    Currently IPA also returns 2 fields  ``switch_port_descr`` and"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3aaa91ec_40c3fe8a","line":113,"range":{"start_line":113,"start_character":47,"end_line":113,"end_character":52},"in_reply_to":"3aaa91ec_3501d23a","updated":"2016-06-27 13:01:55.000000000","message":"Done","commit_id":"ac486e3ad7c611a6911e121c6aff66e4040c0607"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"be071f66fe900d095c2ad3476bf8145f4e7a5eaa","unresolved":false,"context_lines":[{"line_number":113,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor_id``,      ``product_id``."},{"line_number":114,"context_line":"    If configuration option ``collect_lldp`` is set to True the ``lldp``"},{"line_number":115,"context_line":"    field will be populated by a list of TLVs pulled from LLDP."},{"line_number":116,"context_line":"    Currently IPA also returns 2 fields  ``switch_port_descr`` and"},{"line_number":117,"context_line":"    ``switch_chassis_descr`` which were reserved for future use,"},{"line_number":118,"context_line":"    these are now deprecated to be removed in Ocata in favor of"},{"line_number":119,"context_line":"    including all LLDP data in the ``lldp`` field."}],"source_content_type":"text/x-rst","patch_set":39,"id":"3aaa91ec_75e4faab","line":116,"range":{"start_line":116,"start_character":40,"end_line":116,"end_character":41},"updated":"2016-06-27 12:59:21.000000000","message":"Extra space added here.","commit_id":"ac486e3ad7c611a6911e121c6aff66e4040c0607"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c5003da112735fd657866c86ec71a2ba644b393a","unresolved":false,"context_lines":[{"line_number":113,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor_id``,      ``product_id``."},{"line_number":114,"context_line":"    If configuration option ``collect_lldp`` is set to True the ``lldp``"},{"line_number":115,"context_line":"    field will be populated by a list of TLVs pulled from LLDP."},{"line_number":116,"context_line":"    Currently IPA also returns 2 fields  ``switch_port_descr`` and"},{"line_number":117,"context_line":"    ``switch_chassis_descr`` which were reserved for future use,"},{"line_number":118,"context_line":"    these are now deprecated to be removed in Ocata in favor of"},{"line_number":119,"context_line":"    including all LLDP data in the ``lldp`` field."}],"source_content_type":"text/x-rst","patch_set":39,"id":"3aaa91ec_80bde604","line":116,"range":{"start_line":116,"start_character":40,"end_line":116,"end_character":41},"in_reply_to":"3aaa91ec_75e4faab","updated":"2016-06-27 13:01:55.000000000","message":"Done","commit_id":"ac486e3ad7c611a6911e121c6aff66e4040c0607"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"367f82ac5aecccad3789008c7631cc6d33d49acb","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor`` and ``product``."},{"line_number":122,"context_line":"    If  configuration option ``collect_lldp`` is set to True the ``lldp``"},{"line_number":123,"context_line":"    field will be populated by a list of type-length-value (TLV) fields"},{"line_number":124,"context_line":"    retrieved using the LinkLayer Discovery Protocol (LLDP)."},{"line_number":125,"context_line":"    Currently IPA also returns 2 fields ``switch_port_descr``"},{"line_number":126,"context_line":"    and ``switch_chassis_descr`` which were reserved for future use, these are"},{"line_number":127,"context_line":"    now deprecated to be removed in Ocata in favor of including all LLDP data"}],"source_content_type":"text/x-rst","patch_set":48,"id":"7a8ec9b2_e76e62c8","line":124,"range":{"start_line":124,"start_character":24,"end_line":124,"end_character":33},"updated":"2016-09-14 20:37:23.000000000","message":"nit: you removed the space between Link and Layer","commit_id":"754828ce49fb67cfba00afbf22d1487bbebf0093"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"856352a45856beebe92dba5f810e4ee5315dbfa3","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    ``ipv4_address``, ``lldp``, ``vendor`` and ``product``."},{"line_number":122,"context_line":"    If  configuration option ``collect_lldp`` is set to True the ``lldp``"},{"line_number":123,"context_line":"    field will be populated by a list of type-length-value (TLV) fields"},{"line_number":124,"context_line":"    retrieved using the LinkLayer Discovery Protocol (LLDP)."},{"line_number":125,"context_line":"    Currently IPA also returns 2 fields ``switch_port_descr``"},{"line_number":126,"context_line":"    and ``switch_chassis_descr`` which were reserved for future use, these are"},{"line_number":127,"context_line":"    now deprecated to be removed in Ocata in favor of including all LLDP data"}],"source_content_type":"text/x-rst","patch_set":48,"id":"7a8ec9b2_6fc5b559","line":124,"range":{"start_line":124,"start_character":24,"end_line":124,"end_character":33},"in_reply_to":"7a8ec9b2_e76e62c8","updated":"2016-09-15 09:39:56.000000000","message":"Done","commit_id":"754828ce49fb67cfba00afbf22d1487bbebf0093"}],"imagebuild/tinyipa/build-tinyipa.sh":[{"author":{"_account_id":20772,"name":"Sergei Chipiga","email":"schipiga@mirantis.com","username":"schipiga"},"change_message_id":"2c159e5ca3460d2af5605ac798bfc7d71a9cf52d","unresolved":false,"context_lines":[{"line_number":86,"context_line":"$CHROOT_CMD /bin/sh -c \"cd /tmp/qemu \u0026\u0026 ./configure --disable-system --disable-user --disable-linux-user --disable-bsd-user --disable-guest-agent \u0026\u0026 make \u0026\u0026 make install DESTDIR\u003d/tmp/qemu-utils\""},{"line_number":87,"context_line":"cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/qemu-utils qemu-utils.tcz \u0026\u0026 md5sum qemu-utils.tcz \u003e qemu-utils.tcz.md5.txt"},{"line_number":88,"context_line":"# Build lshw"},{"line_number":89,"context_line":"rm -rf $WORKDIR/build_files/lshw.tcz"},{"line_number":90,"context_line":"$CHROOT_CMD /bin/sh -c \"cd /tmp/lshw/lshw-B.02.17 \u0026\u0026 make SBINDIR\u003d/user/bin \u0026\u0026 make install DESTDIR\u003d/tmp/lshw-installed\""},{"line_number":91,"context_line":"cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/lshw-installed lshw.tcz \u0026\u0026 md5sum lshw.tcz \u003e lshw.tcz.md5.txt"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"# Create qemu-utils.tcz.dep"},{"line_number":94,"context_line":"echo \"glib2.tcz\" \u003e qemu-utils.tcz.dep"}],"source_content_type":"text/x-sh","patch_set":19,"id":"fa0719c6_f413d80b","line":91,"range":{"start_line":89,"start_character":0,"end_line":91,"end_character":113},"updated":"2016-03-20 18:19:53.000000000","message":"may be it\u0027s better to define a version of lshw?\n\n    LSHW_VERSION\u003d-B.02.17\n\n    ...............\n\n    mkdir -p $BUILDDIR/tmp/lshw\n    wget http://www.ezix.org/software/files/lshw$LSHW_VERSION.tar.gz  -O $BUILDDIR/tmp/lshw/lshw$LSHW_VERSION.tar.gz\n    tar -xf $BUILDDIR/tmp/lshw/lshw$LSHW_VERSION.tar.gz -C $BUILDDIR/tmp/lshw\n\n    ...............\n\n    rm -rf $WORKDIR/build_files/lshw.tcz\n    $CHROOT_CMD /bin/sh -c \"cd /tmp/lshw/lshw$LSHW_VERSION \u0026\u0026 make SBINDIR\u003d/user/bin \u0026\u0026 make install DESTDIR\u003d/tmp/lshw-installed\"\n    cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/lshw-installed lshw.tcz \u0026\u0026 md5sum lshw.tcz \u003e lshw.tcz.md5.txt","commit_id":"936cb0b7ad327ed5d0f50624fcfc30d91889351e"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"9d00c96c1be564d649c34a54afc6c7ede2e76893","unresolved":false,"context_lines":[{"line_number":86,"context_line":"$CHROOT_CMD /bin/sh -c \"cd /tmp/qemu \u0026\u0026 ./configure --disable-system --disable-user --disable-linux-user --disable-bsd-user --disable-guest-agent \u0026\u0026 make \u0026\u0026 make install DESTDIR\u003d/tmp/qemu-utils\""},{"line_number":87,"context_line":"cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/qemu-utils qemu-utils.tcz \u0026\u0026 md5sum qemu-utils.tcz \u003e qemu-utils.tcz.md5.txt"},{"line_number":88,"context_line":"# Build lshw"},{"line_number":89,"context_line":"rm -rf $WORKDIR/build_files/lshw.tcz"},{"line_number":90,"context_line":"$CHROOT_CMD /bin/sh -c \"cd /tmp/lshw/lshw-B.02.17 \u0026\u0026 make SBINDIR\u003d/user/bin \u0026\u0026 make install DESTDIR\u003d/tmp/lshw-installed\""},{"line_number":91,"context_line":"cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/lshw-installed lshw.tcz \u0026\u0026 md5sum lshw.tcz \u003e lshw.tcz.md5.txt"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"# Create qemu-utils.tcz.dep"},{"line_number":94,"context_line":"echo \"glib2.tcz\" \u003e qemu-utils.tcz.dep"}],"source_content_type":"text/x-sh","patch_set":19,"id":"fa0719c6_b435e0f8","line":91,"range":{"start_line":89,"start_character":0,"end_line":91,"end_character":113},"in_reply_to":"fa0719c6_f413d80b","updated":"2016-03-20 19:56:40.000000000","message":"Done","commit_id":"936cb0b7ad327ed5d0f50624fcfc30d91889351e"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"596b4f201a42d5bf0c69b80cf450bf607e6b90ee","unresolved":false,"context_lines":[{"line_number":53,"context_line":"git clone https://github.com/fujita/tgt.git $BUILDDIR/tmp/tgt --depth\u003d1 --branch v1.0.62"},{"line_number":54,"context_line":"git clone https://github.com/qemu/qemu.git $BUILDDIR/tmp/qemu --depth\u003d1 --branch v2.5.0"},{"line_number":55,"context_line":"mkdir -p $BUILDDIR/tmp/lshw"},{"line_number":56,"context_line":"wget http://www.ezix.org/software/files/lshw-${LSHW_VERSION}.tar.gz  -O $BUILDDIR/tmp/lshw/lshw-${LSHW_VERSION}.tar.gz"},{"line_number":57,"context_line":"tar -xf $BUILDDIR/tmp/lshw/lshw-${LSHW_VERSION}.tar.gz -C $BUILDDIR/tmp/lshw"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"# Create directory for python local mirror"}],"source_content_type":"text/x-sh","patch_set":26,"id":"7aa08908_cb66df28","line":56,"updated":"2016-06-09 15:32:09.000000000","message":"This is fetched over http, from an unverified source. That\u0027s not really OK for software we\u0027re distributing to people.","commit_id":"b67af8ae04c35e43ebf41a6c3df27586a5f5452e"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"5bf3f61ba782a31bc9bf617c030963cf6b5c08ec","unresolved":false,"context_lines":[{"line_number":53,"context_line":"git clone https://github.com/fujita/tgt.git $BUILDDIR/tmp/tgt --depth\u003d1 --branch v1.0.62"},{"line_number":54,"context_line":"git clone https://github.com/qemu/qemu.git $BUILDDIR/tmp/qemu --depth\u003d1 --branch v2.5.0"},{"line_number":55,"context_line":"mkdir -p $BUILDDIR/tmp/lshw"},{"line_number":56,"context_line":"wget http://www.ezix.org/software/files/lshw-${LSHW_VERSION}.tar.gz  -O $BUILDDIR/tmp/lshw/lshw-${LSHW_VERSION}.tar.gz"},{"line_number":57,"context_line":"tar -xf $BUILDDIR/tmp/lshw/lshw-${LSHW_VERSION}.tar.gz -C $BUILDDIR/tmp/lshw"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"# Create directory for python local mirror"}],"source_content_type":"text/x-sh","patch_set":26,"id":"7aa08908_d7483dcf","line":56,"in_reply_to":"7aa08908_cb66df28","updated":"2016-06-09 17:11:48.000000000","message":"Done","commit_id":"b67af8ae04c35e43ebf41a6c3df27586a5f5452e"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4980c64ed8232e038c373b0568706b434d910ab5","unresolved":false,"context_lines":[{"line_number":51,"context_line":"# Download TGT, Qemu-utils and lshw source"},{"line_number":52,"context_line":"git clone https://github.com/fujita/tgt.git $BUILDDIR/tmp/tgt ; cd $BUILDDIR/tmp/tgt ; git checkout tags/v1.0.62 -b v1.0.62 ; cd -"},{"line_number":53,"context_line":"git clone https://github.com/qemu/qemu.git $BUILDDIR/tmp/qemu ; cd $BUILDDIR/tmp/qemu ; git checkout tags/v2.5.0 -b v2.5.0 ; cd -"},{"line_number":54,"context_line":"git clone git clone https://ezix.org/src/pkg/lshw.git $BUILDDIR/tmp/lshw ; cd $BUILDDIR/tmp/lshw ; git checkout tags/B.02.18 -b B.02.18 ; cd -"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"# Create directory for python local mirror"},{"line_number":57,"context_line":"mkdir -p \"$BUILDDIR/tmp/localpip\""}],"source_content_type":"text/x-sh","patch_set":27,"id":"7aa08908_177805f8","line":54,"updated":"2016-06-09 17:12:09.000000000","message":"This doesn\u0027t really resolve my concern. ezix.org is not a well known open source hoster; can we get some information about why we should trust this website to build packages? Is there a reason we can\u0027t pull the code from github or from the tiny core mirrors?","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"502b07bf0425e456612f96aef0d1ce83fde95e36","unresolved":false,"context_lines":[{"line_number":51,"context_line":"# Download TGT, Qemu-utils and lshw source"},{"line_number":52,"context_line":"git clone https://github.com/fujita/tgt.git $BUILDDIR/tmp/tgt ; cd $BUILDDIR/tmp/tgt ; git checkout tags/v1.0.62 -b v1.0.62 ; cd -"},{"line_number":53,"context_line":"git clone https://github.com/qemu/qemu.git $BUILDDIR/tmp/qemu ; cd $BUILDDIR/tmp/qemu ; git checkout tags/v2.5.0 -b v2.5.0 ; cd -"},{"line_number":54,"context_line":"git clone git clone https://ezix.org/src/pkg/lshw.git $BUILDDIR/tmp/lshw ; cd $BUILDDIR/tmp/lshw ; git checkout tags/B.02.18 -b B.02.18 ; cd -"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"# Create directory for python local mirror"},{"line_number":57,"context_line":"mkdir -p \"$BUILDDIR/tmp/localpip\""}],"source_content_type":"text/x-sh","patch_set":27,"id":"7aa08908_75b85ee6","line":54,"range":{"start_line":54,"start_character":10,"end_line":54,"end_character":19},"updated":"2016-06-09 18:29:55.000000000","message":"double git clone here.\nI suspect you will be victim of the same issue mentioned in your other review. The fix should be the same here.","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"83d76925df9e6afa33dcee951acd861a820826df","unresolved":false,"context_lines":[{"line_number":51,"context_line":"# Download TGT, Qemu-utils and lshw source"},{"line_number":52,"context_line":"git clone https://github.com/fujita/tgt.git $BUILDDIR/tmp/tgt ; cd $BUILDDIR/tmp/tgt ; git checkout tags/v1.0.62 -b v1.0.62 ; cd -"},{"line_number":53,"context_line":"git clone https://github.com/qemu/qemu.git $BUILDDIR/tmp/qemu ; cd $BUILDDIR/tmp/qemu ; git checkout tags/v2.5.0 -b v2.5.0 ; cd -"},{"line_number":54,"context_line":"git clone git clone https://ezix.org/src/pkg/lshw.git $BUILDDIR/tmp/lshw ; cd $BUILDDIR/tmp/lshw ; git checkout tags/B.02.18 -b B.02.18 ; cd -"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"# Create directory for python local mirror"},{"line_number":57,"context_line":"mkdir -p \"$BUILDDIR/tmp/localpip\""}],"source_content_type":"text/x-sh","patch_set":27,"id":"7aa08908_3239cf42","line":54,"in_reply_to":"7aa08908_177805f8","updated":"2016-06-09 17:24:36.000000000","message":"ok It was taken from here \nhttp://www.ezix.org/project/wiki/HardwareLiSter which looks like the official project I can put a comment on it","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"6b348a149531190dfb60f3efda753fedaa92fd85","unresolved":false,"context_lines":[{"line_number":51,"context_line":"# Download TGT, Qemu-utils and lshw source"},{"line_number":52,"context_line":"git clone https://github.com/fujita/tgt.git $BUILDDIR/tmp/tgt ; cd $BUILDDIR/tmp/tgt ; git checkout tags/v1.0.62 -b v1.0.62 ; cd -"},{"line_number":53,"context_line":"git clone https://github.com/qemu/qemu.git $BUILDDIR/tmp/qemu ; cd $BUILDDIR/tmp/qemu ; git checkout tags/v2.5.0 -b v2.5.0 ; cd -"},{"line_number":54,"context_line":"git clone git clone https://ezix.org/src/pkg/lshw.git $BUILDDIR/tmp/lshw ; cd $BUILDDIR/tmp/lshw ; git checkout tags/B.02.18 -b B.02.18 ; cd -"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"# Create directory for python local mirror"},{"line_number":57,"context_line":"mkdir -p \"$BUILDDIR/tmp/localpip\""}],"source_content_type":"text/x-sh","patch_set":27,"id":"7aa08908_0cf90f4e","line":54,"range":{"start_line":54,"start_character":10,"end_line":54,"end_character":19},"in_reply_to":"7aa08908_75b85ee6","updated":"2016-06-09 20:34:59.000000000","message":"Done","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"47b27a7f472f8d5d09789b9407f23531884d0589","unresolved":false,"context_lines":[{"line_number":57,"context_line":"clone_and_checkout \"https://github.com/fujita/tgt.git\" \"${BUILDDIR}/tmp/tgt\" \"v1.0.62\""},{"line_number":58,"context_line":"clone_and_checkout \"https://github.com/qemu/qemu.git\" \"${BUILDDIR}/tmp/qemu\" \"v2.5.0\""},{"line_number":59,"context_line":"# Note: lshw offical site is http://www.ezix.org/project/wiki/HardwareLiSter"},{"line_number":60,"context_line":"clone_and_checkout \"https://ezix.org/src/pkg/lshw.git\" \"${BUILDDIR}/tmp/lshw\" \"B.02.18\""},{"line_number":61,"context_line":"# Create directory for python local mirror"},{"line_number":62,"context_line":"mkdir -p \"$BUILDDIR/tmp/localpip\""},{"line_number":63,"context_line":""}],"source_content_type":"text/x-sh","patch_set":37,"id":"3aaa91ec_90c26651","line":60,"updated":"2016-06-27 07:25:30.000000000","message":"there seem to be an official github mirror: https://github.com/lyonel/lshw\n\nI\u0027m not sure what I personally prefer, but maybe some reviewers would prefer it.","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c6b8917a2267184f181082b96d95b91c9c1cad66","unresolved":false,"context_lines":[{"line_number":57,"context_line":"clone_and_checkout \"https://github.com/fujita/tgt.git\" \"${BUILDDIR}/tmp/tgt\" \"v1.0.62\""},{"line_number":58,"context_line":"clone_and_checkout \"https://github.com/qemu/qemu.git\" \"${BUILDDIR}/tmp/qemu\" \"v2.5.0\""},{"line_number":59,"context_line":"# Note: lshw offical site is http://www.ezix.org/project/wiki/HardwareLiSter"},{"line_number":60,"context_line":"clone_and_checkout \"https://ezix.org/src/pkg/lshw.git\" \"${BUILDDIR}/tmp/lshw\" \"B.02.18\""},{"line_number":61,"context_line":"# Create directory for python local mirror"},{"line_number":62,"context_line":"mkdir -p \"$BUILDDIR/tmp/localpip\""},{"line_number":63,"context_line":""}],"source_content_type":"text/x-sh","patch_set":37,"id":"3aaa91ec_e44fac68","line":60,"in_reply_to":"3aaa91ec_90c26651","updated":"2016-06-27 08:57:38.000000000","message":"if someone will request I will change it","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"9b044da3d225621c576a5b70585da2489ae243b8","unresolved":false,"context_lines":[{"line_number":108,"context_line":""},{"line_number":109,"context_line":"# Build lshw"},{"line_number":110,"context_line":"rm -rf $WORKDIR/build_files/lshw.tcz"},{"line_number":111,"context_line":"$CHROOT_CMD /bin/sh -c \"cd /tmp/lshw \u0026\u0026 touch src/lshw.1 \u0026\u0026 make SBINDIR\u003d/user/bin \u0026\u0026 make install DESTDIR\u003d/tmp/lshw-installed\""},{"line_number":112,"context_line":"find $BUILDDIR/tmp/lshw-installed/ -type f -executable | xargs file | awk -F \u0027:\u0027 \u0027/ELF/ {print $1}\u0027 | sudo xargs strip"},{"line_number":113,"context_line":"cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/lshw-installed lshw.tcz \u0026\u0026 md5sum lshw.tcz \u003e lshw.tcz.md5.txt"},{"line_number":114,"context_line":""}],"source_content_type":"text/x-sh","patch_set":38,"id":"3aaa91ec_60e1e129","line":111,"updated":"2016-06-27 11:17:51.000000000","message":"I suppose the touch command is to force a rebuild of lshw if it\u0027s already been built - why do we want that?","commit_id":"a083511d65029f5d5c7ad32250920af5447f792d"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"96f9c9638298b3bb246d2d50ba5dcb3eca10bf7a","unresolved":false,"context_lines":[{"line_number":108,"context_line":""},{"line_number":109,"context_line":"# Build lshw"},{"line_number":110,"context_line":"rm -rf $WORKDIR/build_files/lshw.tcz"},{"line_number":111,"context_line":"$CHROOT_CMD /bin/sh -c \"cd /tmp/lshw \u0026\u0026 touch src/lshw.1 \u0026\u0026 make SBINDIR\u003d/user/bin \u0026\u0026 make install DESTDIR\u003d/tmp/lshw-installed\""},{"line_number":112,"context_line":"find $BUILDDIR/tmp/lshw-installed/ -type f -executable | xargs file | awk -F \u0027:\u0027 \u0027/ELF/ {print $1}\u0027 | sudo xargs strip"},{"line_number":113,"context_line":"cd $WORKDIR/build_files \u0026\u0026 mksquashfs $BUILDDIR/tmp/lshw-installed lshw.tcz \u0026\u0026 md5sum lshw.tcz \u003e lshw.tcz.md5.txt"},{"line_number":114,"context_line":""}],"source_content_type":"text/x-sh","patch_set":38,"id":"3aaa91ec_cfb3a1e8","line":111,"in_reply_to":"3aaa91ec_60e1e129","updated":"2016-06-27 12:50:11.000000000","message":"no, it is was just a workaround to no build the man pages","commit_id":"a083511d65029f5d5c7ad32250920af5447f792d"}],"imagebuild/tinyipa/finalise-tinyipa.sh":[{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"116bac1cd6b5ab65b3bfda71d92dc112a64590cc","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"$TC_CHROOT_CMD tce-load -ic /tmp/builtin/optional/tgt.tcz"},{"line_number":73,"context_line":"$TC_CHROOT_CMD tce-load -ic /tmp/builtin/optional/qemu-utils.tcz"},{"line_number":74,"context_line":"echo \"lshw.tcz\" | $TC_CHROOT_CMD tee -a /tmp/builtin/onboot.lst"},{"line_number":75,"context_line":"# Ensure tinyipa picks up installed kernel modules"},{"line_number":76,"context_line":"$CHROOT_CMD depmod -a `$WORKDIR/build_files/fakeuname -r`"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-sh","patch_set":25,"id":"7aa08908_cbd37f5e","line":74,"updated":"2016-06-09 15:22:39.000000000","message":"Can you please install lshw like the other requirements above this line, /tmp/builtin gets rm\u0027d below as an optimisation, so this dep will never get loaded into the image.","commit_id":"114d81db756e40ee357f459bfcad39cbced4038c"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"d6b9ed9b6f369b13f2824c6e26a4addfe9a6a526","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"$TC_CHROOT_CMD tce-load -ic /tmp/builtin/optional/tgt.tcz"},{"line_number":73,"context_line":"$TC_CHROOT_CMD tce-load -ic /tmp/builtin/optional/qemu-utils.tcz"},{"line_number":74,"context_line":"echo \"lshw.tcz\" | $TC_CHROOT_CMD tee -a /tmp/builtin/onboot.lst"},{"line_number":75,"context_line":"# Ensure tinyipa picks up installed kernel modules"},{"line_number":76,"context_line":"$CHROOT_CMD depmod -a `$WORKDIR/build_files/fakeuname -r`"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-sh","patch_set":25,"id":"7aa08908_4bfe6f39","line":74,"in_reply_to":"7aa08908_cbd37f5e","updated":"2016-06-09 15:30:22.000000000","message":"Done","commit_id":"114d81db756e40ee357f459bfcad39cbced4038c"}],"ironic_python_agent/hardware.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"6f2357777f2b2f496a80f99ab183b936f0da7599","unresolved":false,"context_lines":[{"line_number":160,"context_line":"    serializable_fields \u003d (\u0027name\u0027, \u0027mac_address\u0027, \u0027switch_port_descr\u0027,"},{"line_number":161,"context_line":"                           \u0027switch_chassis_descr\u0027, \u0027ipv4_address\u0027, \u0027vendor_id\u0027)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    def __init__(self, name, mac_addr, vendor_id, ipv4_address\u003dNone):"},{"line_number":164,"context_line":"        self.name \u003d name"},{"line_number":165,"context_line":"        self.mac_address \u003d mac_addr"},{"line_number":166,"context_line":"        self.ipv4_address \u003d ipv4_address"}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_73847a5d","line":163,"updated":"2016-02-17 10:47:06.000000000","message":"vendor_id\u003dNone (just like with ipv4_address it\u0027s not mandatory)","commit_id":"282c7d7ed525e4a4a000af299526b2607568713f"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"5319cb0fda482e5084d926af345589ddb2280124","unresolved":false,"context_lines":[{"line_number":160,"context_line":"    serializable_fields \u003d (\u0027name\u0027, \u0027mac_address\u0027, \u0027switch_port_descr\u0027,"},{"line_number":161,"context_line":"                           \u0027switch_chassis_descr\u0027, \u0027ipv4_address\u0027, \u0027vendor_id\u0027)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    def __init__(self, name, mac_addr, vendor_id, ipv4_address\u003dNone):"},{"line_number":164,"context_line":"        self.name \u003d name"},{"line_number":165,"context_line":"        self.mac_address \u003d mac_addr"},{"line_number":166,"context_line":"        self.ipv4_address \u003d ipv4_address"}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_d9cda586","line":163,"in_reply_to":"dae33548_73847a5d","updated":"2016-02-17 12:49:41.000000000","message":"Done","commit_id":"282c7d7ed525e4a4a000af299526b2607568713f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"6f2357777f2b2f496a80f99ab183b936f0da7599","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":370,"context_line":"            self.sys_path, interface_name)"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        with open(vendor_id_path) as vendor_id_file:"},{"line_number":373,"context_line":"            vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        return NetworkInterface("}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_53897674","line":372,"updated":"2016-02-17 10:47:06.000000000","message":"+1, it should not be a fatal failure","commit_id":"282c7d7ed525e4a4a000af299526b2607568713f"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"b8d002b8293a44386a5e2fac7a753ac11e2491c9","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":370,"context_line":"            self.sys_path, interface_name)"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        with open(vendor_id_path) as vendor_id_file:"},{"line_number":373,"context_line":"            vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        return NetworkInterface("}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_246f782c","line":372,"updated":"2016-02-16 15:53:18.000000000","message":"We should look for and handle the case where net/{}/device/vendor does not exist, ensure it works, and test for it.","commit_id":"282c7d7ed525e4a4a000af299526b2607568713f"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"5319cb0fda482e5084d926af345589ddb2280124","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":370,"context_line":"            self.sys_path, interface_name)"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        with open(vendor_id_path) as vendor_id_file:"},{"line_number":373,"context_line":"            vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        return NetworkInterface("}],"source_content_type":"text/x-python","patch_set":1,"id":"dae33548_a1018307","line":372,"in_reply_to":"dae33548_53897674","updated":"2016-02-17 12:49:41.000000000","message":"Done","commit_id":"282c7d7ed525e4a4a000af299526b2607568713f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"933270ae5ec9e56dc0d9d65d0a6df148c40a48b7","unresolved":false,"context_lines":[{"line_number":383,"context_line":"        try:"},{"line_number":384,"context_line":"            with open(vendor_id_path) as vendor_id_file:"},{"line_number":385,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":386,"context_line":"        except IOError:"},{"line_number":387,"context_line":"            pass"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"        return NetworkInterface("}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_9d70ed73","line":386,"updated":"2016-02-18 09:24:33.000000000","message":"this should be EnvironmentError to cover all cases","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c7a8f2a221f91a56f49893cd71b6a9b8bccd52af","unresolved":false,"context_lines":[{"line_number":383,"context_line":"        try:"},{"line_number":384,"context_line":"            with open(vendor_id_path) as vendor_id_file:"},{"line_number":385,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":386,"context_line":"        except IOError:"},{"line_number":387,"context_line":"            pass"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"        return NetworkInterface("}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_1d669d50","line":386,"in_reply_to":"dae33548_9d70ed73","updated":"2016-02-18 09:57:36.000000000","message":"Done","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"933270ae5ec9e56dc0d9d65d0a6df148c40a48b7","unresolved":false,"context_lines":[{"line_number":384,"context_line":"            with open(vendor_id_path) as vendor_id_file:"},{"line_number":385,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":386,"context_line":"        except IOError:"},{"line_number":387,"context_line":"            pass"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"        return NetworkInterface("},{"line_number":390,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_fd6bf982","line":387,"updated":"2016-02-18 09:24:33.000000000","message":"please issue a warning here","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c7a8f2a221f91a56f49893cd71b6a9b8bccd52af","unresolved":false,"context_lines":[{"line_number":384,"context_line":"            with open(vendor_id_path) as vendor_id_file:"},{"line_number":385,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":386,"context_line":"        except IOError:"},{"line_number":387,"context_line":"            pass"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"        return NetworkInterface("},{"line_number":390,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_bdde91da","line":387,"in_reply_to":"dae33548_fd6bf982","updated":"2016-02-18 09:57:36.000000000","message":"Done","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"d937d3ad29f0180b2ce61094704b4f0e6beaaa3b","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            mac_addr \u003d addr_file.read().strip()"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":380,"context_line":"            self.sys_path, interface_name)"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":"        vendor_id \u003d None"},{"line_number":383,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"bae84128_093f1826","line":380,"updated":"2016-02-25 14:44:49.000000000","message":"what do you think about using \"lshw -class network\" to get a human-friendly vendor name instead of some hexadecimal?","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"b69e2291e99180b303e6129f7be5d1479ef899ca","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            mac_addr \u003d addr_file.read().strip()"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":380,"context_line":"            self.sys_path, interface_name)"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":"        vendor_id \u003d None"},{"line_number":383,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7af24918_ac75d2fa","line":380,"in_reply_to":"7af24918_31811dc4","updated":"2016-03-03 17:19:52.000000000","message":"+1\nHaving additional field with human readable value would be useful.","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"3c45f5443af83d4dccfd4715bff1b9ff0050e6f5","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            mac_addr \u003d addr_file.read().strip()"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":380,"context_line":"            self.sys_path, interface_name)"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":"        vendor_id \u003d None"},{"line_number":383,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7af24918_c923edbb","line":380,"in_reply_to":"7af24918_ac75d2fa","updated":"2016-03-03 17:54:26.000000000","message":"ok I will update the commit with both fields vendor_id and vendor_name","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"9da5a10bb1f0f61872bb03a6793dac623d0f71d4","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            mac_addr \u003d addr_file.read().strip()"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":380,"context_line":"            self.sys_path, interface_name)"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":"        vendor_id \u003d None"},{"line_number":383,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7af24918_dc5a2950","line":380,"in_reply_to":"7af24918_c923edbb","updated":"2016-03-06 09:39:41.000000000","message":"Done","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"67f7991791a01a3057c7a567d5611453888d6b90","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            mac_addr \u003d addr_file.read().strip()"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":380,"context_line":"            self.sys_path, interface_name)"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":"        vendor_id \u003d None"},{"line_number":383,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7af24918_31811dc4","line":380,"in_reply_to":"7af24918_d18ef92c","updated":"2016-03-03 17:04:25.000000000","message":"maybe we should provide both then?","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"a0e9d428330ce4525b6a68bd6f4c61f975b52e6e","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            mac_addr \u003d addr_file.read().strip()"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"        vendor_id_path \u003d \u0027{0}/class/net/{1}/device/vendor\u0027.format("},{"line_number":380,"context_line":"            self.sys_path, interface_name)"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":"        vendor_id \u003d None"},{"line_number":383,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7af24918_d18ef92c","line":380,"in_reply_to":"bae84128_093f1826","updated":"2016-03-03 17:02:32.000000000","message":"If the human readable names are just as unique, I agree. If multiple values map to the same human friendly name, I\u0027d rather than the ugly hex that\u0027s more accurate :).","commit_id":"9533797444c2aa5897ff77eaf8b8c45d2e035a37"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"7cf980736ab86ca5b76a2abf78c0cb81c45736f4","unresolved":false,"context_lines":[{"line_number":397,"context_line":"            out, _e \u003d utils.execute(cmd, shell\u003dTrue)"},{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %{iface_name}s vendor name\""},{"line_number":401,"context_line":"                        \"information: %{ex}\", e)"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("}],"source_content_type":"text/x-python","patch_set":9,"id":"5aef4532_e8f128cf","line":400,"range":{"start_line":400,"start_character":68,"end_line":400,"end_character":72},"updated":"2016-03-07 16:09:59.000000000","message":"Add a period(.) and a space(\u0027 \u0027) at end.\ns/ \"name\"/ \"name. \"/","commit_id":"07e05b9e9cb1f3c7c9d7d3a2d5d1fb595dff8884"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"7cf980736ab86ca5b76a2abf78c0cb81c45736f4","unresolved":false,"context_lines":[{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %{iface_name}s vendor name\""},{"line_number":401,"context_line":"                        \"information: %{ex}\", e)"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("},{"line_number":404,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":9,"id":"5aef4532_2805d0c1","line":401,"range":{"start_line":401,"start_character":25,"end_line":401,"end_character":36},"updated":"2016-03-07 16:09:59.000000000","message":"May be better to refer it as \u0027Error: \u0027.","commit_id":"07e05b9e9cb1f3c7c9d7d3a2d5d1fb595dff8884"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"d435bd1b3fff5bdfbc49642cc266a0991c11bca8","unresolved":false,"context_lines":[{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %{iface_name}s vendor name\""},{"line_number":401,"context_line":"                        \"information: %{ex}\", e)"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("},{"line_number":404,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":9,"id":"5aef4532_d820629e","line":401,"range":{"start_line":401,"start_character":25,"end_line":401,"end_character":36},"in_reply_to":"5aef4532_2805d0c1","updated":"2016-03-08 02:11:24.000000000","message":"I don\u0027t think this is neccessarily an error; it could be an normal state. Warning may even be overkill.","commit_id":"07e05b9e9cb1f3c7c9d7d3a2d5d1fb595dff8884"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"d3d28b8dcc092b43b193f9b89a417401d29de009","unresolved":false,"context_lines":[{"line_number":384,"context_line":""},{"line_number":385,"context_line":"        vendor_id \u003d None"},{"line_number":386,"context_line":"        try:"},{"line_number":387,"context_line":"            with open(vendor_id_path) as vendor_id_file:"},{"line_number":388,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":389,"context_line":"        except EnvironmentError:"},{"line_number":390,"context_line":"            LOG.warning("}],"source_content_type":"text/x-python","patch_set":10,"id":"5aef4532_83bf74fa","line":387,"updated":"2016-03-08 13:20:59.000000000","message":"for python 3 compatibility you should open a file in \"t\" (text) mode","commit_id":"45bc7bb4fb8c42e3ff6629a5e3544d4df01c6d33"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"72352a558fe0fa82b31f854568d00eb7372b43e2","unresolved":false,"context_lines":[{"line_number":384,"context_line":""},{"line_number":385,"context_line":"        vendor_id \u003d None"},{"line_number":386,"context_line":"        try:"},{"line_number":387,"context_line":"            with open(vendor_id_path) as vendor_id_file:"},{"line_number":388,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":389,"context_line":"        except EnvironmentError:"},{"line_number":390,"context_line":"            LOG.warning("}],"source_content_type":"text/x-python","patch_set":10,"id":"5aef4532_4c50f45e","line":387,"in_reply_to":"5aef4532_83bf74fa","updated":"2016-03-08 16:04:53.000000000","message":"Done","commit_id":"45bc7bb4fb8c42e3ff6629a5e3544d4df01c6d33"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"d3d28b8dcc092b43b193f9b89a417401d29de009","unresolved":false,"context_lines":[{"line_number":388,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":389,"context_line":"        except EnvironmentError:"},{"line_number":390,"context_line":"            LOG.warning("},{"line_number":391,"context_line":"                \"no vendor information for interface %s\", interface_name)"},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"        vendor_name \u003d None"},{"line_number":394,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":10,"id":"5aef4532_63ba280c","line":391,"updated":"2016-03-08 13:20:59.000000000","message":"nit: other logging here starts with a capital letter","commit_id":"45bc7bb4fb8c42e3ff6629a5e3544d4df01c6d33"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"72352a558fe0fa82b31f854568d00eb7372b43e2","unresolved":false,"context_lines":[{"line_number":388,"context_line":"                vendor_id \u003d vendor_id_file.read().strip()"},{"line_number":389,"context_line":"        except EnvironmentError:"},{"line_number":390,"context_line":"            LOG.warning("},{"line_number":391,"context_line":"                \"no vendor information for interface %s\", interface_name)"},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"        vendor_name \u003d None"},{"line_number":394,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":10,"id":"5aef4532_b8ee1789","line":391,"in_reply_to":"5aef4532_63ba280c","updated":"2016-03-08 16:04:53.000000000","message":"Done","commit_id":"45bc7bb4fb8c42e3ff6629a5e3544d4df01c6d33"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"d3d28b8dcc092b43b193f9b89a417401d29de009","unresolved":false,"context_lines":[{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %{iface_name}s vendor name: \""},{"line_number":401,"context_line":"                        \"%{ex}\", {\u0027iface_name\u0027: interface_name, \u0027ex\u0027: e})"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("},{"line_number":404,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":10,"id":"5aef4532_c337bcae","line":401,"updated":"2016-03-08 13:20:59.000000000","message":"incorrect formatting here: %(iface_name)s, not {}","commit_id":"45bc7bb4fb8c42e3ff6629a5e3544d4df01c6d33"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"72352a558fe0fa82b31f854568d00eb7372b43e2","unresolved":false,"context_lines":[{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %{iface_name}s vendor name: \""},{"line_number":401,"context_line":"                        \"%{ex}\", {\u0027iface_name\u0027: interface_name, \u0027ex\u0027: e})"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("},{"line_number":404,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":10,"id":"5aef4532_58e1d399","line":401,"in_reply_to":"5aef4532_c337bcae","updated":"2016-03-08 16:04:53.000000000","message":"Done","commit_id":"45bc7bb4fb8c42e3ff6629a5e3544d4df01c6d33"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3c507827a1bf59a33feca377680c546e3b2637dc","unresolved":false,"context_lines":[{"line_number":394,"context_line":"        try:"},{"line_number":395,"context_line":"            cmd \u003d (\"lshw -class network | grep -n5 -E {0}$ | grep vendor: | \""},{"line_number":396,"context_line":"                   \"cut -d\u0027:\u0027 -f2\".format(interface_name))"},{"line_number":397,"context_line":"            out, _e \u003d utils.execute(cmd, shell\u003dTrue)"},{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %(iface_name)s vendor name: \""}],"source_content_type":"text/x-python","patch_set":11,"id":"1af94dfe_cd3cd0ca","line":397,"updated":"2016-03-17 14:20:15.000000000","message":"this returns empty value in the gate, and it\u0027s hard to figure out why... maybe we should drop this bit for now, until we can figure out how to make it always work","commit_id":"09e434fabb2d1901b7404d80840c31f4b704ed8b"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"eb727e29332bc2f328d5757e7f078a77885b967d","unresolved":false,"context_lines":[{"line_number":394,"context_line":"        try:"},{"line_number":395,"context_line":"            cmd \u003d (\"lshw -class network | grep -n5 -E {0}$ | grep vendor: | \""},{"line_number":396,"context_line":"                   \"cut -d\u0027:\u0027 -f2\".format(interface_name))"},{"line_number":397,"context_line":"            out, _e \u003d utils.execute(cmd, shell\u003dTrue)"},{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %(iface_name)s vendor name: \""}],"source_content_type":"text/x-python","patch_set":11,"id":"1af94dfe_eda54c47","line":397,"in_reply_to":"1af94dfe_cd3cd0ca","updated":"2016-03-17 14:31:50.000000000","message":"let me debug this I will put workflow -1 on the patch","commit_id":"09e434fabb2d1901b7404d80840c31f4b704ed8b"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"ddbea50d4be1d5a51ee15ec6674df8dc0374ba94","unresolved":false,"context_lines":[{"line_number":394,"context_line":"        try:"},{"line_number":395,"context_line":"            cmd \u003d (\"lshw -class network | grep -n5 -E {0}$ | grep vendor: | \""},{"line_number":396,"context_line":"                   \"cut -d\u0027:\u0027 -f2\".format(interface_name))"},{"line_number":397,"context_line":"            out, _e \u003d utils.execute(cmd, shell\u003dTrue)"},{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %(iface_name)s vendor name: \""}],"source_content_type":"text/x-python","patch_set":11,"id":"1af94dfe_cc5776c8","line":397,"in_reply_to":"1af94dfe_eda54c47","updated":"2016-03-18 14:15:34.000000000","message":"ok, so after debugging this issue here are the result\nfor coreos lshw don\u0027t have any vendor_name see \nhttp://logs.openstack.org/40/279940/17/check/gate-ironic-inspector-dsvm-ipa-src-nv/4bf9dcf/logs/ironic-bm-logs/baremetalbrbm_0_console_18-03-2016-13:34:38.txt.gz\n\n[  156.743421] chroot[443]: 2016-03-18 13:34:26.729 443 DEBUG ironic_python_agent.utils [-] Command stdout is: \"  *-network\n[  156.750776] chroot[443]: description: Ethernet interface\n[  156.768769] chroot[443]: physical id: 4\n[  156.786574] chroot[443]: bus info: pci@0000:00:04.0\n[  156.814696] chroot[443]: logical name: ens4\n[  156.845549] chroot[443]: version: 00\n[  156.870713] chroot[443]: serial: 52:54:00:89:af:2b\n[  156.879918] chroot[443]: width: 32 bits\n[  156.889795] chroot[443]: clock: 33MHz\n[  156.900826] chroot[443]: capabilities: msix bus_master cap_list rom ethernet physical\n\nfor the tinyipa I fix the problem you can see in \nhttp://logs.openstack.org/40/279940/17/check/gate-tempest-dsvm-ironic-pxe_ipa-tinyipa-nv/18f5054/logs/ironic-bm-logs/baremetalbrbm_0_console_18-03-2016-13:32:24.txt.gz#_2016-03-18_13_31_34_196","commit_id":"09e434fabb2d1901b7404d80840c31f4b704ed8b"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3c507827a1bf59a33feca377680c546e3b2637dc","unresolved":false,"context_lines":[{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %(iface_name)s vendor name: \""},{"line_number":401,"context_line":"                        \"%(ex)\", {\u0027iface_name\u0027: interface_name, \u0027ex\u0027: e})"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("},{"line_number":404,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":11,"id":"1af94dfe_ad3984d9","line":401,"updated":"2016-03-17 14:20:15.000000000","message":"%(ex)s  (note \u0027s\u0027 in the end)","commit_id":"09e434fabb2d1901b7404d80840c31f4b704ed8b"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"eb727e29332bc2f328d5757e7f078a77885b967d","unresolved":false,"context_lines":[{"line_number":398,"context_line":"            vendor_name \u003d out.strip()"},{"line_number":399,"context_line":"        except (processutils.ProcessExecutionError, OSError) as e:"},{"line_number":400,"context_line":"            LOG.warning(\"Cannot get interface %(iface_name)s vendor name: \""},{"line_number":401,"context_line":"                        \"%(ex)\", {\u0027iface_name\u0027: interface_name, \u0027ex\u0027: e})"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"        return NetworkInterface("},{"line_number":404,"context_line":"            interface_name, mac_addr,"}],"source_content_type":"text/x-python","patch_set":11,"id":"1af94dfe_4dbe0066","line":401,"in_reply_to":"1af94dfe_ad3984d9","updated":"2016-03-17 14:31:50.000000000","message":"will do","commit_id":"09e434fabb2d1901b7404d80840c31f4b704ed8b"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fe01b3b17f8b676ce01afed7cb50762c1b440881","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        with open(\u0027/sys/class/%s/%s/device/vendor\u0027 % (devclass, devname),"},{"line_number":54,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":55,"context_line":"            vendor \u003d f.read().strip()"},{"line_number":56,"context_line":"            if devclass \u003d\u003d \u0027net\u0027:"},{"line_number":57,"context_line":"                vendor \u003d vendor.split(\u0027x\u0027)[1]"},{"line_number":58,"context_line":"            return vendor"},{"line_number":59,"context_line":"    except IOError:"},{"line_number":60,"context_line":"        LOG.warning(\"Can\u0027t find the device vendor for device %s\", dev)"}],"source_content_type":"text/x-python","patch_set":40,"id":"3aaa91ec_3373a7e9","line":57,"range":{"start_line":56,"start_character":10,"end_line":57,"end_character":45},"updated":"2016-06-27 14:11:23.000000000","message":"oh, I didn\u0027t realize we already send a vendor with prefix somewhere :/ then I apologize, please remove this hack and send it as it is (with 0x)","commit_id":"111ba29f0bb704fc217d912e119ef3379e382036"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"58a94e3bbbc3e89275a585d6949cdccbb839abf3","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        with open(\u0027/sys/class/%s/%s/device/vendor\u0027 % (devclass, devname),"},{"line_number":54,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":55,"context_line":"            vendor \u003d f.read().strip()"},{"line_number":56,"context_line":"            if devclass \u003d\u003d \u0027net\u0027:"},{"line_number":57,"context_line":"                vendor \u003d vendor.split(\u0027x\u0027)[1]"},{"line_number":58,"context_line":"            return vendor"},{"line_number":59,"context_line":"    except IOError:"},{"line_number":60,"context_line":"        LOG.warning(\"Can\u0027t find the device vendor for device %s\", dev)"}],"source_content_type":"text/x-python","patch_set":40,"id":"3aaa91ec_562461c5","line":57,"range":{"start_line":56,"start_character":10,"end_line":57,"end_character":45},"in_reply_to":"3aaa91ec_3373a7e9","updated":"2016-06-27 14:45:59.000000000","message":"Done","commit_id":"111ba29f0bb704fc217d912e119ef3379e382036"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fe01b3b17f8b676ce01afed7cb50762c1b440881","unresolved":false,"context_lines":[{"line_number":46,"context_line":"NODE \u003d None"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"def _get_device_vendor(dev, devclass):"},{"line_number":50,"context_line":"    \"\"\"Get the vendor name of a given device.\"\"\""},{"line_number":51,"context_line":"    try:"},{"line_number":52,"context_line":"        devname \u003d os.path.basename(dev)"},{"line_number":53,"context_line":"        with open(\u0027/sys/class/%s/%s/device/vendor\u0027 % (devclass, devname),"},{"line_number":54,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":55,"context_line":"            vendor \u003d f.read().strip()"},{"line_number":56,"context_line":"            if devclass \u003d\u003d \u0027net\u0027:"},{"line_number":57,"context_line":"                vendor \u003d vendor.split(\u0027x\u0027)[1]"},{"line_number":58,"context_line":"            return vendor"},{"line_number":59,"context_line":"    except IOError:"},{"line_number":60,"context_line":"        LOG.warning(\"Can\u0027t find the device vendor for device %s\", dev)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"def _get_device_product(dev, devclass):"},{"line_number":64,"context_line":"    \"\"\"Get the product name of a given device.\"\"\""},{"line_number":65,"context_line":"    try:"},{"line_number":66,"context_line":"        devname \u003d os.path.basename(dev)"},{"line_number":67,"context_line":"        with open(\u0027/sys/class/%s/%s/device/device\u0027 % (devclass, devname),"},{"line_number":68,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":69,"context_line":"            product \u003d f.read().strip()"},{"line_number":70,"context_line":"            if devclass \u003d\u003d \u0027net\u0027:"},{"line_number":71,"context_line":"                product \u003d product.split(\u0027x\u0027)[1]"},{"line_number":72,"context_line":"            return product"},{"line_number":73,"context_line":"    except IOError:"},{"line_number":74,"context_line":"        LOG.warning(\"Can\u0027t find the product id for device %s\", dev)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":40,"id":"3aaa91ec_b3caf718","line":73,"range":{"start_line":49,"start_character":0,"end_line":73,"end_character":19},"updated":"2016-06-27 14:11:23.000000000","message":"it occurred to me that these functions only differ in \"device\" vs \"vendor\". Lets maybe join them into one function:\n\n _get_device_info(dev, devclass, field)\n\nwhere field is \"device\" or \"vendor\"","commit_id":"111ba29f0bb704fc217d912e119ef3379e382036"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"58a94e3bbbc3e89275a585d6949cdccbb839abf3","unresolved":false,"context_lines":[{"line_number":46,"context_line":"NODE \u003d None"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"def _get_device_vendor(dev, devclass):"},{"line_number":50,"context_line":"    \"\"\"Get the vendor name of a given device.\"\"\""},{"line_number":51,"context_line":"    try:"},{"line_number":52,"context_line":"        devname \u003d os.path.basename(dev)"},{"line_number":53,"context_line":"        with open(\u0027/sys/class/%s/%s/device/vendor\u0027 % (devclass, devname),"},{"line_number":54,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":55,"context_line":"            vendor \u003d f.read().strip()"},{"line_number":56,"context_line":"            if devclass \u003d\u003d \u0027net\u0027:"},{"line_number":57,"context_line":"                vendor \u003d vendor.split(\u0027x\u0027)[1]"},{"line_number":58,"context_line":"            return vendor"},{"line_number":59,"context_line":"    except IOError:"},{"line_number":60,"context_line":"        LOG.warning(\"Can\u0027t find the device vendor for device %s\", dev)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"def _get_device_product(dev, devclass):"},{"line_number":64,"context_line":"    \"\"\"Get the product name of a given device.\"\"\""},{"line_number":65,"context_line":"    try:"},{"line_number":66,"context_line":"        devname \u003d os.path.basename(dev)"},{"line_number":67,"context_line":"        with open(\u0027/sys/class/%s/%s/device/device\u0027 % (devclass, devname),"},{"line_number":68,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":69,"context_line":"            product \u003d f.read().strip()"},{"line_number":70,"context_line":"            if devclass \u003d\u003d \u0027net\u0027:"},{"line_number":71,"context_line":"                product \u003d product.split(\u0027x\u0027)[1]"},{"line_number":72,"context_line":"            return product"},{"line_number":73,"context_line":"    except IOError:"},{"line_number":74,"context_line":"        LOG.warning(\"Can\u0027t find the product id for device %s\", dev)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":40,"id":"3aaa91ec_d62fb1a5","line":73,"range":{"start_line":49,"start_character":0,"end_line":73,"end_character":19},"in_reply_to":"3aaa91ec_b3caf718","updated":"2016-06-27 14:45:59.000000000","message":"Done","commit_id":"111ba29f0bb704fc217d912e119ef3379e382036"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"228fc62af67512dd3070b4a393c6114f0388d680","unresolved":false,"context_lines":[{"line_number":54,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":55,"context_line":"            return f.read().strip()"},{"line_number":56,"context_line":"    except IOError:"},{"line_number":57,"context_line":"        LOG.warning(\"Can\u0027t find the device vendor for device %s\", dev)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"def _udev_settle():"}],"source_content_type":"text/x-python","patch_set":41,"id":"3aaa91ec_c4c7f462","line":57,"range":{"start_line":57,"start_character":43,"end_line":57,"end_character":49},"updated":"2016-06-27 16:24:56.000000000","message":"this should be changed based on what we request","commit_id":"07b9995bf4fec1b4499a4f238197020953798f7c"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"bd3bcc10ce8fc0e9f8337a7c8eeca623e8651b4d","unresolved":false,"context_lines":[{"line_number":54,"context_line":"                  \u0027r\u0027) as f:"},{"line_number":55,"context_line":"            return f.read().strip()"},{"line_number":56,"context_line":"    except IOError:"},{"line_number":57,"context_line":"        LOG.warning(\"Can\u0027t find the device vendor for device %s\", dev)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"def _udev_settle():"}],"source_content_type":"text/x-python","patch_set":41,"id":"3aaa91ec_125bfa2f","line":57,"range":{"start_line":57,"start_character":43,"end_line":57,"end_character":49},"in_reply_to":"3aaa91ec_c4c7f462","updated":"2016-06-27 17:03:08.000000000","message":"Done","commit_id":"07b9995bf4fec1b4499a4f238197020953798f7c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"228fc62af67512dd3070b4a393c6114f0388d680","unresolved":false,"context_lines":[{"line_number":489,"context_line":"            has_carrier\u003dself._interface_has_carrier(interface_name),"},{"line_number":490,"context_line":"            lldp\u003dself._get_lldp_data(interface_name),"},{"line_number":491,"context_line":"            vendor_id\u003d_get_device_info(interface_name, \u0027net\u0027, \u0027vendor\u0027),"},{"line_number":492,"context_line":"            product_id\u003d_get_device_info(interface_name, \u0027net\u0027, \u0027product\u0027))"},{"line_number":493,"context_line":""},{"line_number":494,"context_line":"    def get_ipv4_addr(self, interface_id):"},{"line_number":495,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":41,"id":"3aaa91ec_24afd895","line":492,"range":{"start_line":492,"start_character":64,"end_line":492,"end_character":71},"updated":"2016-06-27 16:24:56.000000000","message":"seems like this should be \u0027device\u0027","commit_id":"07b9995bf4fec1b4499a4f238197020953798f7c"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"bd3bcc10ce8fc0e9f8337a7c8eeca623e8651b4d","unresolved":false,"context_lines":[{"line_number":489,"context_line":"            has_carrier\u003dself._interface_has_carrier(interface_name),"},{"line_number":490,"context_line":"            lldp\u003dself._get_lldp_data(interface_name),"},{"line_number":491,"context_line":"            vendor_id\u003d_get_device_info(interface_name, \u0027net\u0027, \u0027vendor\u0027),"},{"line_number":492,"context_line":"            product_id\u003d_get_device_info(interface_name, \u0027net\u0027, \u0027product\u0027))"},{"line_number":493,"context_line":""},{"line_number":494,"context_line":"    def get_ipv4_addr(self, interface_id):"},{"line_number":495,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":41,"id":"3aaa91ec_b24ae653","line":492,"range":{"start_line":492,"start_character":64,"end_line":492,"end_character":71},"in_reply_to":"3aaa91ec_24afd895","updated":"2016-06-27 17:03:08.000000000","message":"Done","commit_id":"07b9995bf4fec1b4499a4f238197020953798f7c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3fb741e3079d8f3374138332a2fd7baa71875748","unresolved":false,"context_lines":[{"line_number":55,"context_line":"            return f.read().strip()"},{"line_number":56,"context_line":"    except IOError:"},{"line_number":57,"context_line":"        LOG.warning("},{"line_number":58,"context_line":"            \"Can\u0027t find the device {0} for device {1}\".format(dev, field))"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"def _udev_settle():"}],"source_content_type":"text/x-python","patch_set":42,"id":"3aaa91ec_3c0bc825","line":58,"updated":"2016-06-30 11:01:29.000000000","message":"first \"device\" should be \"field\" now. otherwise you\u0027ll end with something like \"Can\u0027t find the device device for device\" :)","commit_id":"803d0fbdfb280daf9f2eb998581b53276738d73d"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"f1ba44d411ebb757b289f2dc93b50b4682077e73","unresolved":false,"context_lines":[{"line_number":55,"context_line":"            return f.read().strip()"},{"line_number":56,"context_line":"    except IOError:"},{"line_number":57,"context_line":"        LOG.warning("},{"line_number":58,"context_line":"            \"Can\u0027t find the device {0} for device {1}\".format(dev, field))"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"def _udev_settle():"}],"source_content_type":"text/x-python","patch_set":42,"id":"3aaa91ec_dcee04ec","line":58,"in_reply_to":"3aaa91ec_3c0bc825","updated":"2016-06-30 11:13:49.000000000","message":"Done","commit_id":"803d0fbdfb280daf9f2eb998581b53276738d73d"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"367f82ac5aecccad3789008c7631cc6d33d49acb","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def _get_device_info(dev, devclass, field):"},{"line_number":52,"context_line":"    \"\"\"Get the device info according to field.\"\"\""},{"line_number":53,"context_line":"    try:"},{"line_number":54,"context_line":"        devname \u003d os.path.basename(dev)"},{"line_number":55,"context_line":"        with open(\u0027/sys/class/%s/%s/device/%s\u0027 % (devclass, devname, field),"}],"source_content_type":"text/x-python","patch_set":48,"id":"7a8ec9b2_a7829a50","line":52,"updated":"2016-09-14 20:37:23.000000000","message":"Can you update the docstring to describe the parameters you\u0027re passing? \"devclass\" wasn\u0027t clear until I looked at the code.","commit_id":"754828ce49fb67cfba00afbf22d1487bbebf0093"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"856352a45856beebe92dba5f810e4ee5315dbfa3","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def _get_device_info(dev, devclass, field):"},{"line_number":52,"context_line":"    \"\"\"Get the device info according to field.\"\"\""},{"line_number":53,"context_line":"    try:"},{"line_number":54,"context_line":"        devname \u003d os.path.basename(dev)"},{"line_number":55,"context_line":"        with open(\u0027/sys/class/%s/%s/device/%s\u0027 % (devclass, devname, field),"}],"source_content_type":"text/x-python","patch_set":48,"id":"7a8ec9b2_efb465d2","line":52,"in_reply_to":"7a8ec9b2_a7829a50","updated":"2016-09-15 09:39:56.000000000","message":"Done","commit_id":"754828ce49fb67cfba00afbf22d1487bbebf0093"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"367f82ac5aecccad3789008c7631cc6d33d49acb","unresolved":false,"context_lines":[{"line_number":57,"context_line":"            return f.read().strip()"},{"line_number":58,"context_line":"    except IOError:"},{"line_number":59,"context_line":"        LOG.warning("},{"line_number":60,"context_line":"            \"Can\u0027t find field {0} for device {1}\".format(field, dev))"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"def _udev_settle():"}],"source_content_type":"text/x-python","patch_set":48,"id":"7a8ec9b2_e77ca274","line":60,"updated":"2016-09-14 20:37:23.000000000","message":"You may want to just include the entire path here. devclass is missing too.","commit_id":"754828ce49fb67cfba00afbf22d1487bbebf0093"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"856352a45856beebe92dba5f810e4ee5315dbfa3","unresolved":false,"context_lines":[{"line_number":57,"context_line":"            return f.read().strip()"},{"line_number":58,"context_line":"    except IOError:"},{"line_number":59,"context_line":"        LOG.warning("},{"line_number":60,"context_line":"            \"Can\u0027t find field {0} for device {1}\".format(field, dev))"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"def _udev_settle():"}],"source_content_type":"text/x-python","patch_set":48,"id":"7a8ec9b2_4ff47985","line":60,"in_reply_to":"7a8ec9b2_e77ca274","updated":"2016-09-15 09:39:56.000000000","message":"Done","commit_id":"754828ce49fb67cfba00afbf22d1487bbebf0093"}],"ironic_python_agent/inspector.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"933270ae5ec9e56dc0d9d65d0a6df148c40a48b7","unresolved":false,"context_lines":[{"line_number":176,"context_line":"            continue"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"        if not iface.vendor_id:"},{"line_number":179,"context_line":"            LOG.debug(\u0027no vendor information for interface %s\u0027, iface.name)"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":"        if not iface.ipv4_address:"},{"line_number":182,"context_line":"            LOG.debug(\u0027no IP address for interface %s\u0027, iface.name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_dd66f5b9","line":179,"updated":"2016-02-18 09:24:33.000000000","message":"this should be back in hardware, not here","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c7a8f2a221f91a56f49893cd71b6a9b8bccd52af","unresolved":false,"context_lines":[{"line_number":176,"context_line":"            continue"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"        if not iface.vendor_id:"},{"line_number":179,"context_line":"            LOG.debug(\u0027no vendor information for interface %s\u0027, iface.name)"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":"        if not iface.ipv4_address:"},{"line_number":182,"context_line":"            LOG.debug(\u0027no IP address for interface %s\u0027, iface.name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_7d6c0908","line":179,"in_reply_to":"dae33548_dd66f5b9","updated":"2016-02-18 09:57:36.000000000","message":"Done","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"933270ae5ec9e56dc0d9d65d0a6df148c40a48b7","unresolved":false,"context_lines":[{"line_number":182,"context_line":"            LOG.debug(\u0027no IP address for interface %s\u0027, iface.name)"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"        data[\u0027interfaces\u0027][iface.name] \u003d {\u0027mac\u0027: iface.mac_address,"},{"line_number":185,"context_line":"                                          \u0027vendor_id\u0027: iface.vendor_id,"},{"line_number":186,"context_line":"                                          \u0027ip\u0027: iface.ipv4_address}"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    if data[\u0027interfaces\u0027]:"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_3d08c1d9","line":185,"updated":"2016-02-18 09:24:33.000000000","message":"please don\u0027t update this structure, it\u0027s for backward compatibility. inspector is able to use inventory nowadays.","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c7a8f2a221f91a56f49893cd71b6a9b8bccd52af","unresolved":false,"context_lines":[{"line_number":182,"context_line":"            LOG.debug(\u0027no IP address for interface %s\u0027, iface.name)"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"        data[\u0027interfaces\u0027][iface.name] \u003d {\u0027mac\u0027: iface.mac_address,"},{"line_number":185,"context_line":"                                          \u0027vendor_id\u0027: iface.vendor_id,"},{"line_number":186,"context_line":"                                          \u0027ip\u0027: iface.ipv4_address}"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    if data[\u0027interfaces\u0027]:"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_dd29d59c","line":185,"in_reply_to":"dae33548_3d08c1d9","updated":"2016-02-18 09:57:36.000000000","message":"Done","commit_id":"62bc975c4ff412c7070d2fab1549dc8a4db29738"}],"ironic_python_agent/tests/unit/test_hardware.py":[{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"502b07bf0425e456612f96aef0d1ce83fde95e36","unresolved":false,"context_lines":[{"line_number":286,"context_line":"                                     mocked_exists,"},{"line_number":287,"context_line":"                                     mocked_listdir,"},{"line_number":288,"context_line":"                                     mocked_ifaddresses,"},{"line_number":289,"context_line":"                                     moched_execute):"},{"line_number":290,"context_line":"        mocked_listdir.return_value \u003d [\u0027lo\u0027, \u0027eth0\u0027]"},{"line_number":291,"context_line":"        mocked_exists.side_effect \u003d [False, True]"},{"line_number":292,"context_line":"        mocked_open.return_value.__enter__ \u003d lambda s: s"}],"source_content_type":"text/x-python","patch_set":27,"id":"7aa08908_b59f664f","line":289,"range":{"start_line":289,"start_character":37,"end_line":289,"end_character":51},"updated":"2016-06-09 18:29:55.000000000","message":"mocked","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"6b348a149531190dfb60f3efda753fedaa92fd85","unresolved":false,"context_lines":[{"line_number":286,"context_line":"                                     mocked_exists,"},{"line_number":287,"context_line":"                                     mocked_listdir,"},{"line_number":288,"context_line":"                                     mocked_ifaddresses,"},{"line_number":289,"context_line":"                                     moched_execute):"},{"line_number":290,"context_line":"        mocked_listdir.return_value \u003d [\u0027lo\u0027, \u0027eth0\u0027]"},{"line_number":291,"context_line":"        mocked_exists.side_effect \u003d [False, True]"},{"line_number":292,"context_line":"        mocked_open.return_value.__enter__ \u003d lambda s: s"}],"source_content_type":"text/x-python","patch_set":27,"id":"7aa08908_e712dc57","line":289,"range":{"start_line":289,"start_character":37,"end_line":289,"end_character":51},"in_reply_to":"7aa08908_b59f664f","updated":"2016-06-09 20:34:59.000000000","message":"Done","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"502b07bf0425e456612f96aef0d1ce83fde95e36","unresolved":false,"context_lines":[{"line_number":315,"context_line":"                                                mocked_exists,"},{"line_number":316,"context_line":"                                                mocked_listdir,"},{"line_number":317,"context_line":"                                                mocked_ifaddresses,"},{"line_number":318,"context_line":"                                                moched_execute):"},{"line_number":319,"context_line":"        mocked_listdir.return_value \u003d [\u0027lo\u0027, \u0027eth0\u0027]"},{"line_number":320,"context_line":"        mocked_exists.side_effect \u003d [False, True]"},{"line_number":321,"context_line":"        mocked_open.return_value.__enter__ \u003d lambda s: s"}],"source_content_type":"text/x-python","patch_set":27,"id":"7aa08908_95986a6c","line":318,"range":{"start_line":318,"start_character":48,"end_line":318,"end_character":62},"updated":"2016-06-09 18:29:55.000000000","message":"idem","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"6b348a149531190dfb60f3efda753fedaa92fd85","unresolved":false,"context_lines":[{"line_number":315,"context_line":"                                                mocked_exists,"},{"line_number":316,"context_line":"                                                mocked_listdir,"},{"line_number":317,"context_line":"                                                mocked_ifaddresses,"},{"line_number":318,"context_line":"                                                moched_execute):"},{"line_number":319,"context_line":"        mocked_listdir.return_value \u003d [\u0027lo\u0027, \u0027eth0\u0027]"},{"line_number":320,"context_line":"        mocked_exists.side_effect \u003d [False, True]"},{"line_number":321,"context_line":"        mocked_open.return_value.__enter__ \u003d lambda s: s"}],"source_content_type":"text/x-python","patch_set":27,"id":"7aa08908_8724b8af","line":318,"range":{"start_line":318,"start_character":48,"end_line":318,"end_character":62},"in_reply_to":"7aa08908_95986a6c","updated":"2016-06-09 20:34:59.000000000","message":"Done","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"502b07bf0425e456612f96aef0d1ce83fde95e36","unresolved":false,"context_lines":[{"line_number":346,"context_line":"                                                    mocked_exists,"},{"line_number":347,"context_line":"                                                    mocked_listdir,"},{"line_number":348,"context_line":"                                                    mocked_ifaddresses,"},{"line_number":349,"context_line":"                                                    moched_execute):"},{"line_number":350,"context_line":"        mocked_listdir.return_value \u003d [\u0027lo\u0027, \u0027ib0\u0027]"},{"line_number":351,"context_line":"        mocked_exists.side_effect \u003d [False, True]"},{"line_number":352,"context_line":"        mocked_open.return_value.__enter__ \u003d lambda s: s"}],"source_content_type":"text/x-python","patch_set":27,"id":"7aa08908_95afca7c","line":349,"range":{"start_line":349,"start_character":52,"end_line":349,"end_character":66},"updated":"2016-06-09 18:29:55.000000000","message":"idem","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"6b348a149531190dfb60f3efda753fedaa92fd85","unresolved":false,"context_lines":[{"line_number":346,"context_line":"                                                    mocked_exists,"},{"line_number":347,"context_line":"                                                    mocked_listdir,"},{"line_number":348,"context_line":"                                                    mocked_ifaddresses,"},{"line_number":349,"context_line":"                                                    moched_execute):"},{"line_number":350,"context_line":"        mocked_listdir.return_value \u003d [\u0027lo\u0027, \u0027ib0\u0027]"},{"line_number":351,"context_line":"        mocked_exists.side_effect \u003d [False, True]"},{"line_number":352,"context_line":"        mocked_open.return_value.__enter__ \u003d lambda s: s"}],"source_content_type":"text/x-python","patch_set":27,"id":"7aa08908_4751300e","line":349,"range":{"start_line":349,"start_character":52,"end_line":349,"end_character":66},"in_reply_to":"7aa08908_95afca7c","updated":"2016-06-09 20:34:59.000000000","message":"Done","commit_id":"c763250373f44562545dcba870c4ab3a456fa312"}],"releasenotes/notes/add_interface_vendor_id-74e9815f20ee0cac.yaml":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"7cf980736ab86ca5b76a2abf78c0cb81c45736f4","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027 information to interfaces data -"},{"line_number":4,"context_line":"    This will be able to give Ironic Inspector hints regarding the vendors"},{"line_number":5,"context_line":"    of the interfaces."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"5aef4532_886a2419","line":3,"range":{"start_line":3,"start_character":0,"end_line":3,"end_character":56},"updated":"2016-03-07 16:09:59.000000000","message":"Update this to include \u0027vendor_name\u0027.\nAlso can we document here some way that this needs the  corresponding DIB change to make it work.","commit_id":"07e05b9e9cb1f3c7c9d7d3a2d5d1fb595dff8884"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"b02a259cb1b7a0a315da20952d43c4b297f551c8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027 information to interfaces data -"},{"line_number":4,"context_line":"    This will be able to give Ironic Inspector hints regarding the vendors"},{"line_number":5,"context_line":"    of the interfaces."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"5aef4532_e4bdacd8","line":3,"range":{"start_line":3,"start_character":0,"end_line":3,"end_character":56},"in_reply_to":"5aef4532_886a2419","updated":"2016-03-08 08:58:32.000000000","message":"Done","commit_id":"07e05b9e9cb1f3c7c9d7d3a2d5d1fb595dff8884"},{"author":{"_account_id":20772,"name":"Sergei Chipiga","email":"schipiga@mirantis.com","username":"schipiga"},"change_message_id":"c11f730952240126fbce4103e0368c37bf1fa39a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027 and \u0027vendor_name\u0027 information to interfaces data -"},{"line_number":4,"context_line":"    This will be able to give Ironic Inspector hints regarding the vendors"},{"line_number":5,"context_line":"    of the interfaces. This feature depend on the following patch"},{"line_number":6,"context_line":"    https://review.openstack.org/#/c/289233/ in DIB."}],"source_content_type":"text/x-yaml","patch_set":19,"id":"fa0719c6_544ba42b","line":5,"range":{"start_line":5,"start_character":23,"end_line":5,"end_character":45},"updated":"2016-03-20 18:11:22.000000000","message":"This feature depends on... (as far as I know English)","commit_id":"936cb0b7ad327ed5d0f50624fcfc30d91889351e"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"9d00c96c1be564d649c34a54afc6c7ede2e76893","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027 and \u0027vendor_name\u0027 information to interfaces data -"},{"line_number":4,"context_line":"    This will be able to give Ironic Inspector hints regarding the vendors"},{"line_number":5,"context_line":"    of the interfaces. This feature depend on the following patch"},{"line_number":6,"context_line":"    https://review.openstack.org/#/c/289233/ in DIB."}],"source_content_type":"text/x-yaml","patch_set":19,"id":"fa0719c6_143becec","line":5,"range":{"start_line":5,"start_character":23,"end_line":5,"end_character":45},"in_reply_to":"fa0719c6_544ba42b","updated":"2016-03-20 19:56:40.000000000","message":"Done","commit_id":"936cb0b7ad327ed5d0f50624fcfc30d91889351e"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"47b27a7f472f8d5d09789b9407f23531884d0589","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027, \u0027vendor_name\u0027 and \u0027product_id\u0027 information to"},{"line_number":4,"context_line":"    interfaces data. This will be able to give Ironic Inspector hints regarding"},{"line_number":5,"context_line":"    the vendor and product ids of the interface. This feature depends on the"},{"line_number":6,"context_line":"    following patch https://review.openstack.org/#/c/289233/ in DIB."}],"source_content_type":"text/x-yaml","patch_set":37,"id":"3aaa91ec_d0a6aebf","line":3,"updated":"2016-06-27 07:25:30.000000000","message":"s/information/fields/ I think","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c6b8917a2267184f181082b96d95b91c9c1cad66","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027, \u0027vendor_name\u0027 and \u0027product_id\u0027 information to"},{"line_number":4,"context_line":"    interfaces data. This will be able to give Ironic Inspector hints regarding"},{"line_number":5,"context_line":"    the vendor and product ids of the interface. This feature depends on the"},{"line_number":6,"context_line":"    following patch https://review.openstack.org/#/c/289233/ in DIB."}],"source_content_type":"text/x-yaml","patch_set":37,"id":"3aaa91ec_c479d094","line":3,"in_reply_to":"3aaa91ec_d0a6aebf","updated":"2016-06-27 08:57:38.000000000","message":"Done","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"47b27a7f472f8d5d09789b9407f23531884d0589","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027, \u0027vendor_name\u0027 and \u0027product_id\u0027 information to"},{"line_number":4,"context_line":"    interfaces data. This will be able to give Ironic Inspector hints regarding"},{"line_number":5,"context_line":"    the vendor and product ids of the interface. This feature depends on the"},{"line_number":6,"context_line":"    following patch https://review.openstack.org/#/c/289233/ in DIB."}],"source_content_type":"text/x-yaml","patch_set":37,"id":"3aaa91ec_30aa9285","line":6,"updated":"2016-06-27 07:25:30.000000000","message":"I don\u0027t think we need a reference to the patch. Instead it\u0027s better to say \"This feature requires lshw utility to be present on the ramdisk.\"","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"c6b8917a2267184f181082b96d95b91c9c1cad66","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027, \u0027vendor_name\u0027 and \u0027product_id\u0027 information to"},{"line_number":4,"context_line":"    interfaces data. This will be able to give Ironic Inspector hints regarding"},{"line_number":5,"context_line":"    the vendor and product ids of the interface. This feature depends on the"},{"line_number":6,"context_line":"    following patch https://review.openstack.org/#/c/289233/ in DIB."}],"source_content_type":"text/x-yaml","patch_set":37,"id":"3aaa91ec_247b747c","line":6,"in_reply_to":"3aaa91ec_30aa9285","updated":"2016-06-27 08:57:38.000000000","message":"Done","commit_id":"e67d80b5951b477913e2826807ee877ce5c7ea08"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3fb741e3079d8f3374138332a2fd7baa71875748","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027 and \u0027product_id\u0027 fields to"},{"line_number":4,"context_line":"    interfaces data. This will be able to give Ironic Inspector hints regarding"},{"line_number":5,"context_line":"    the vendor and product ids of the interface."}],"source_content_type":"text/x-yaml","patch_set":42,"id":"3aaa91ec_9c147c44","line":5,"updated":"2016-06-30 11:01:29.000000000","message":"I think the second sentences is redundant. Maybe just \"Add ... fields to interfaces data for future use in Ironic Inspector.\"","commit_id":"803d0fbdfb280daf9f2eb998581b53276738d73d"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"f1ba44d411ebb757b289f2dc93b50b4682077e73","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add new \u0027vendor_id\u0027 and \u0027product_id\u0027 fields to"},{"line_number":4,"context_line":"    interfaces data. This will be able to give Ironic Inspector hints regarding"},{"line_number":5,"context_line":"    the vendor and product ids of the interface."}],"source_content_type":"text/x-yaml","patch_set":42,"id":"3aaa91ec_7c8710b5","line":5,"in_reply_to":"3aaa91ec_9c147c44","updated":"2016-06-30 11:13:49.000000000","message":"Done","commit_id":"803d0fbdfb280daf9f2eb998581b53276738d73d"}]}
