)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Debayan Ray \u003cdebayan.ray@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-02-01 08:59:37 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Redfish inspect attempts local_gb via System extn"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Redfish inspection will now first attempt to get the ``local_gb``"},{"line_number":10,"context_line":"value from Sushy System extension discovered during the inspection"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9fdfeff1_9005127d","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":49},"updated":"2019-02-07 13:56:29.000000000","message":"May be rephrase:\n\nTry to get `local_gb` from Redfish System extn first on inspection\n\n?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Redfish inspect attempts local_gb via System extn"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Redfish inspection will now first attempt to get the ``local_gb``"},{"line_number":10,"context_line":"value from Sushy System extension discovered during the inspection"},{"line_number":11,"context_line":"process. This is in addition to the existing logic of getting the"},{"line_number":12,"context_line":"``local_gb`` value from Sushy system\u0027s ``SimpleStorage`` and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9fdfeff1_3039c63e","line":9,"range":{"start_line":9,"start_character":34,"end_line":9,"end_character":41},"updated":"2019-02-07 13:56:29.000000000","message":"May be explain the motivation/use-case more explicitly?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Redfish inspect attempts local_gb via System extn"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Redfish inspection will now first attempt to get the ``local_gb``"},{"line_number":10,"context_line":"value from Sushy System extension discovered during the inspection"},{"line_number":11,"context_line":"process. This is in addition to the existing logic of getting the"},{"line_number":12,"context_line":"``local_gb`` value from Sushy system\u0027s ``SimpleStorage`` and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9fdfeff1_50ffaa66","line":9,"range":{"start_line":9,"start_character":63,"end_line":9,"end_character":65},"updated":"2019-02-07 13:56:29.000000000","message":"nit: single backpack should be enough?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"}],"ironic/drivers/modules/redfish/inspect.py":[{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"28feb38ed2a5b968773ad3f338a5f4de7bdd6624","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    try:"},{"line_number":46,"context_line":"        LOG.debug(\"Attempting to discover system simple storage size for \""},{"line_number":47,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":48,"context_line":"        if (system_inst.simple_storage and"},{"line_number":49,"context_line":"                system_inst.simple_storage.disks_sizes_bytes):"},{"line_number":50,"context_line":"            simple_storage_size \u003d ["},{"line_number":51,"context_line":"                size for size in system_inst.simple_storage.disks_sizes_bytes"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_94dbe14d","line":48,"range":{"start_line":48,"start_character":12,"end_line":48,"end_character":42},"updated":"2019-02-06 06:34:43.000000000","message":"No need. If it can\u0027t instantiate the object it is an exception which is subtype of SushyError which you are anyway handling.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":16635,"name":"deray","email":"debayan.ray@gmail.com","username":"deray"},"change_message_id":"60105012361dc373160cc0599d20c55731c6865e","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    try:"},{"line_number":46,"context_line":"        LOG.debug(\"Attempting to discover system simple storage size for \""},{"line_number":47,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":48,"context_line":"        if (system_inst.simple_storage and"},{"line_number":49,"context_line":"                system_inst.simple_storage.disks_sizes_bytes):"},{"line_number":50,"context_line":"            simple_storage_size \u003d ["},{"line_number":51,"context_line":"                size for size in system_inst.simple_storage.disks_sizes_bytes"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_aa447e1c","line":48,"range":{"start_line":48,"start_character":12,"end_line":48,"end_character":42},"in_reply_to":"9fdfeff1_94dbe14d","updated":"2019-02-06 09:50:30.000000000","message":"IMO it doesn\u0027t hamper anyway and even there is also no performance gain (since attributes are cached). Also I feel not to do it as it is unrelated to this patch. I hope its fine with you if I don\u0027t change the way it is :)","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"e0bc4b398a957c4abb3603096902003abb7acdc3","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    try:"},{"line_number":46,"context_line":"        LOG.debug(\"Attempting to discover system simple storage size for \""},{"line_number":47,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":48,"context_line":"        if (system_inst.simple_storage and"},{"line_number":49,"context_line":"                system_inst.simple_storage.disks_sizes_bytes):"},{"line_number":50,"context_line":"            simple_storage_size \u003d ["},{"line_number":51,"context_line":"                size for size in system_inst.simple_storage.disks_sizes_bytes"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_8b72ca7b","line":48,"range":{"start_line":48,"start_character":12,"end_line":48,"end_character":42},"in_reply_to":"9fdfeff1_aa447e1c","updated":"2019-02-07 06:13:14.000000000","message":"i am OK even without the change as it doesn\u0027t impact the functionality :).\nBut I think we should not include code that is not required unless it adds any benefit. Removing it adds the performance benefit though its negligible. Perhaps if there is any benefit of adding it which i am overlooking you can point it. I also didn\u0027t get why it is unrelated as this is the new function being introduced here.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"28feb38ed2a5b968773ad3f338a5f4de7bdd6624","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"def _get_system_simple_storage_size(node, system_inst):"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    simple_storage_size \u003d 0"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    try:"},{"line_number":46,"context_line":"        LOG.debug(\"Attempting to discover system simple storage size for \""},{"line_number":47,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":48,"context_line":"        if (system_inst.simple_storage and"},{"line_number":49,"context_line":"                system_inst.simple_storage.disks_sizes_bytes):"},{"line_number":50,"context_line":"            simple_storage_size \u003d ["},{"line_number":51,"context_line":"                size for size in system_inst.simple_storage.disks_sizes_bytes"},{"line_number":52,"context_line":"                if size \u003e\u003d 4 * units.Gi"},{"line_number":53,"context_line":"            ] or [0]"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"            simple_storage_size \u003d simple_storage_size[0]"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    except sushy.exceptions.SushyError as ex:"},{"line_number":58,"context_line":"        LOG.debug(\"No simple storage information discovered \""},{"line_number":59,"context_line":"                  \"for node %(node)s: %(err)s\", {\u0027node\u0027: node.uuid,"},{"line_number":60,"context_line":"                                                 \u0027err\u0027: ex})"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    return simple_storage_size"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_34ec75f2","line":60,"range":{"start_line":43,"start_character":4,"end_line":60,"end_character":60},"updated":"2019-02-06 06:34:43.000000000","message":"Lot of commonality here. See my below comment.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":16635,"name":"deray","email":"debayan.ray@gmail.com","username":"deray"},"change_message_id":"60105012361dc373160cc0599d20c55731c6865e","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"def _get_system_simple_storage_size(node, system_inst):"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    simple_storage_size \u003d 0"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    try:"},{"line_number":46,"context_line":"        LOG.debug(\"Attempting to discover system simple storage size for \""},{"line_number":47,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":48,"context_line":"        if (system_inst.simple_storage and"},{"line_number":49,"context_line":"                system_inst.simple_storage.disks_sizes_bytes):"},{"line_number":50,"context_line":"            simple_storage_size \u003d ["},{"line_number":51,"context_line":"                size for size in system_inst.simple_storage.disks_sizes_bytes"},{"line_number":52,"context_line":"                if size \u003e\u003d 4 * units.Gi"},{"line_number":53,"context_line":"            ] or [0]"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"            simple_storage_size \u003d simple_storage_size[0]"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    except sushy.exceptions.SushyError as ex:"},{"line_number":58,"context_line":"        LOG.debug(\"No simple storage information discovered \""},{"line_number":59,"context_line":"                  \"for node %(node)s: %(err)s\", {\u0027node\u0027: node.uuid,"},{"line_number":60,"context_line":"                                                 \u0027err\u0027: ex})"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    return simple_storage_size"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_aa123e08","line":60,"range":{"start_line":43,"start_character":4,"end_line":60,"end_character":60},"in_reply_to":"9fdfeff1_34ec75f2","updated":"2019-02-06 09:50:30.000000000","message":"see my response below","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"28feb38ed2a5b968773ad3f338a5f4de7bdd6624","unresolved":false,"context_lines":[{"line_number":69,"context_line":"    try:"},{"line_number":70,"context_line":"        LOG.debug(\"Attempting to discover system storage volume size for \""},{"line_number":71,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":72,"context_line":"        if system_inst.storage and system_inst.storage.volumes_sizes_bytes:"},{"line_number":73,"context_line":"            storage_size \u003d ["},{"line_number":74,"context_line":"                size for size in system_inst.storage.volumes_sizes_bytes"},{"line_number":75,"context_line":"                if size \u003e\u003d 4 * units.Gi"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_b4e065fc","line":72,"range":{"start_line":72,"start_character":11,"end_line":72,"end_character":35},"updated":"2019-02-06 06:34:43.000000000","message":"ditto.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":16635,"name":"deray","email":"debayan.ray@gmail.com","username":"deray"},"change_message_id":"60105012361dc373160cc0599d20c55731c6865e","unresolved":false,"context_lines":[{"line_number":69,"context_line":"    try:"},{"line_number":70,"context_line":"        LOG.debug(\"Attempting to discover system storage volume size for \""},{"line_number":71,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":72,"context_line":"        if system_inst.storage and system_inst.storage.volumes_sizes_bytes:"},{"line_number":73,"context_line":"            storage_size \u003d ["},{"line_number":74,"context_line":"                size for size in system_inst.storage.volumes_sizes_bytes"},{"line_number":75,"context_line":"                if size \u003e\u003d 4 * units.Gi"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_ca5ea2e8","line":72,"range":{"start_line":72,"start_character":11,"end_line":72,"end_character":35},"in_reply_to":"9fdfeff1_b4e065fc","updated":"2019-02-06 09:50:30.000000000","message":"see my response above","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"28feb38ed2a5b968773ad3f338a5f4de7bdd6624","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":"def _get_system_storage_size(node, system_inst):"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    storage_size \u003d 0"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    try:"},{"line_number":70,"context_line":"        LOG.debug(\"Attempting to discover system storage volume size for \""},{"line_number":71,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":72,"context_line":"        if system_inst.storage and system_inst.storage.volumes_sizes_bytes:"},{"line_number":73,"context_line":"            storage_size \u003d ["},{"line_number":74,"context_line":"                size for size in system_inst.storage.volumes_sizes_bytes"},{"line_number":75,"context_line":"                if size \u003e\u003d 4 * units.Gi"},{"line_number":76,"context_line":"            ] or [0]"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"            storage_size \u003d storage_size[0]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    except sushy.exceptions.SushyError as ex:"},{"line_number":81,"context_line":"        LOG.debug(\"No storage volume information discovered \""},{"line_number":82,"context_line":"                  \"for node %(node)s: %(err)s\", {\u0027node\u0027: node.uuid,"},{"line_number":83,"context_line":"                                                 \u0027err\u0027: ex})"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    try:"},{"line_number":86,"context_line":"        if not storage_size:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_b4b945ea","line":83,"range":{"start_line":67,"start_character":0,"end_line":83,"end_character":60},"updated":"2019-02-06 06:34:43.000000000","message":"Looks more or less similar to above implementation except resource or field changes.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"e0bc4b398a957c4abb3603096902003abb7acdc3","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":"def _get_system_storage_size(node, system_inst):"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    storage_size \u003d 0"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    try:"},{"line_number":70,"context_line":"        LOG.debug(\"Attempting to discover system storage volume size for \""},{"line_number":71,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":72,"context_line":"        if system_inst.storage and system_inst.storage.volumes_sizes_bytes:"},{"line_number":73,"context_line":"            storage_size \u003d ["},{"line_number":74,"context_line":"                size for size in system_inst.storage.volumes_sizes_bytes"},{"line_number":75,"context_line":"                if size \u003e\u003d 4 * units.Gi"},{"line_number":76,"context_line":"            ] or [0]"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"            storage_size \u003d storage_size[0]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    except sushy.exceptions.SushyError as ex:"},{"line_number":81,"context_line":"        LOG.debug(\"No storage volume information discovered \""},{"line_number":82,"context_line":"                  \"for node %(node)s: %(err)s\", {\u0027node\u0027: node.uuid,"},{"line_number":83,"context_line":"                                                 \u0027err\u0027: ex})"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    try:"},{"line_number":86,"context_line":"        if not storage_size:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_4b0142af","line":83,"range":{"start_line":67,"start_character":0,"end_line":83,"end_character":60},"in_reply_to":"9fdfeff1_4a72b27e","updated":"2019-02-07 06:13:14.000000000","message":"Again i didn\u0027t get why it is unrelated as the methods are newly getting introduced. A separate patch is fine aswell but unless other reviewers are of the same opinion.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":"def _get_system_storage_size(node, system_inst):"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    storage_size \u003d 0"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    try:"},{"line_number":70,"context_line":"        LOG.debug(\"Attempting to discover system storage volume size for \""},{"line_number":71,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":72,"context_line":"        if system_inst.storage and system_inst.storage.volumes_sizes_bytes:"},{"line_number":73,"context_line":"            storage_size \u003d ["},{"line_number":74,"context_line":"                size for size in system_inst.storage.volumes_sizes_bytes"},{"line_number":75,"context_line":"                if size \u003e\u003d 4 * units.Gi"},{"line_number":76,"context_line":"            ] or [0]"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"            storage_size \u003d storage_size[0]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    except sushy.exceptions.SushyError as ex:"},{"line_number":81,"context_line":"        LOG.debug(\"No storage volume information discovered \""},{"line_number":82,"context_line":"                  \"for node %(node)s: %(err)s\", {\u0027node\u0027: node.uuid,"},{"line_number":83,"context_line":"                                                 \u0027err\u0027: ex})"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    try:"},{"line_number":86,"context_line":"        if not storage_size:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_36453e16","line":83,"range":{"start_line":67,"start_character":0,"end_line":83,"end_character":60},"in_reply_to":"9fdfeff1_4b0142af","updated":"2019-02-07 13:56:29.000000000","message":"I feel the same as Vinay... That is:\n\n* These thee new functions seem to benefit from merging into one (parameterized by attribute name, perhaps).\n* If we are talking about the changes to the code introduced by this patch, would that be unrelated?\n\nWDYT?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":16635,"name":"deray","email":"debayan.ray@gmail.com","username":"deray"},"change_message_id":"60105012361dc373160cc0599d20c55731c6865e","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":"def _get_system_storage_size(node, system_inst):"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    storage_size \u003d 0"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    try:"},{"line_number":70,"context_line":"        LOG.debug(\"Attempting to discover system storage volume size for \""},{"line_number":71,"context_line":"                  \"node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":72,"context_line":"        if system_inst.storage and system_inst.storage.volumes_sizes_bytes:"},{"line_number":73,"context_line":"            storage_size \u003d ["},{"line_number":74,"context_line":"                size for size in system_inst.storage.volumes_sizes_bytes"},{"line_number":75,"context_line":"                if size \u003e\u003d 4 * units.Gi"},{"line_number":76,"context_line":"            ] or [0]"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"            storage_size \u003d storage_size[0]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    except sushy.exceptions.SushyError as ex:"},{"line_number":81,"context_line":"        LOG.debug(\"No storage volume information discovered \""},{"line_number":82,"context_line":"                  \"for node %(node)s: %(err)s\", {\u0027node\u0027: node.uuid,"},{"line_number":83,"context_line":"                                                 \u0027err\u0027: ex})"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    try:"},{"line_number":86,"context_line":"        if not storage_size:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_4a72b27e","line":83,"range":{"start_line":67,"start_character":0,"end_line":83,"end_character":60},"in_reply_to":"9fdfeff1_b4b945ea","updated":"2019-02-06 09:50:30.000000000","message":"I can but again I would rather prefer to keep that separate. But again its unrelated to this patch. Let\u0027s have it addressed as part of a different patch if it\u0027s really required.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":18781,"name":"vinay50muddu","email":"vinay50muddu@yahoo.com","username":"vmud213"},"change_message_id":"28feb38ed2a5b968773ad3f338a5f4de7bdd6624","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        if not storage_size:"},{"line_number":87,"context_line":"            LOG.debug(\"Attempting to discover system storage drive size \""},{"line_number":88,"context_line":"                      \"for node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":89,"context_line":"            if system_inst.storage and system_inst.storage.drives_sizes_bytes:"},{"line_number":90,"context_line":"                storage_size \u003d ["},{"line_number":91,"context_line":"                    size for size in system_inst.storage.drives_sizes_bytes"},{"line_number":92,"context_line":"                    if size \u003e\u003d 4 * units.Gi"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_74e2fd03","line":89,"range":{"start_line":89,"start_character":15,"end_line":89,"end_character":39},"updated":"2019-02-06 06:34:43.000000000","message":"ditto.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":16635,"name":"deray","email":"debayan.ray@gmail.com","username":"deray"},"change_message_id":"60105012361dc373160cc0599d20c55731c6865e","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        if not storage_size:"},{"line_number":87,"context_line":"            LOG.debug(\"Attempting to discover system storage drive size \""},{"line_number":88,"context_line":"                      \"for node %(node)s\", {\u0027node\u0027: node.uuid})"},{"line_number":89,"context_line":"            if system_inst.storage and system_inst.storage.drives_sizes_bytes:"},{"line_number":90,"context_line":"                storage_size \u003d ["},{"line_number":91,"context_line":"                    size for size in system_inst.storage.drives_sizes_bytes"},{"line_number":92,"context_line":"                    if size \u003e\u003d 4 * units.Gi"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_ca0302be","line":89,"range":{"start_line":89,"start_character":15,"end_line":89,"end_character":39},"in_reply_to":"9fdfeff1_74e2fd03","updated":"2019-02-06 09:50:30.000000000","message":"see my response above","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        LOG.debug(\"Attempting to discover local_gb size from system OEM \""},{"line_number":182,"context_line":"                  \"extension for node %(node)s\", {\u0027node\u0027: task.node.uuid})"},{"line_number":183,"context_line":"        oem_property_name \u003d redfish_utils.get_oem_property_name(task.node)"},{"line_number":184,"context_line":"        if oem_property_name is None:"},{"line_number":185,"context_line":"            LOG.debug("},{"line_number":186,"context_line":"                \"No Redfish property name set in driver_info/\""},{"line_number":187,"context_line":"                \"redfish_oem_property_name on node %(node)s. Not attempting \""}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_d02ddaa8","line":184,"updated":"2019-02-07 13:56:29.000000000","message":"if not oem_property_name:\n?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":197,"context_line":"                          {\u0027oem_property\u0027: oem_property_name,"},{"line_number":198,"context_line":"                           \u0027node\u0027: task.node.uuid, \u0027err\u0027: ex})"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"        if not local_gb:"},{"line_number":201,"context_line":"            simple_storage_size \u003d _get_system_simple_storage_size("},{"line_number":202,"context_line":"                task.node, system)"},{"line_number":203,"context_line":"            storage_size \u003d _get_system_storage_size(task.node, system)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_965f4ae4","line":200,"range":{"start_line":200,"start_character":15,"end_line":200,"end_character":23},"updated":"2019-02-07 13:56:29.000000000","message":"Would it make sense to debug-log the ultimate source of \u0027local_gb\u0027? Since we have three potential sources.","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"}],"ironic/drivers/modules/redfish/utils.py":[{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":67,"context_line":"                           \u0027\"basic\", \"session\" or \"auto\". If not set, the \u0027"},{"line_number":68,"context_line":"                           \u0027default value is taken from Ironic \u0027"},{"line_number":69,"context_line":"                           \u0027configuration as ``[redfish]auth_type`` option.\u0027),"},{"line_number":70,"context_line":"    \u0027redfish_oem_property_name\u0027: _(\u0027The name of the OEM property which \u0027"},{"line_number":71,"context_line":"                                   \u0027uniquely identifies the OEM-specified \u0027"},{"line_number":72,"context_line":"                                   \u0027JSON objects and contains augmented OEM \u0027"},{"line_number":73,"context_line":"                                   \u0027properties for Redfish resource. Optional\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_16cfda7f","line":70,"range":{"start_line":70,"start_character":56,"end_line":70,"end_character":64},"updated":"2019-02-07 13:56:29.000000000","message":"The use of `property` is a bit confusing to me as an uninitiated user... Also, in sushy we call this ID - `vendor`.\n\nMay be it makes sense to explain that this is the vendor ID under System/OEM?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                           \u0027default value is taken from Ironic \u0027"},{"line_number":69,"context_line":"                           \u0027configuration as ``[redfish]auth_type`` option.\u0027),"},{"line_number":70,"context_line":"    \u0027redfish_oem_property_name\u0027: _(\u0027The name of the OEM property which \u0027"},{"line_number":71,"context_line":"                                   \u0027uniquely identifies the OEM-specified \u0027"},{"line_number":72,"context_line":"                                   \u0027JSON objects and contains augmented OEM \u0027"},{"line_number":73,"context_line":"                                   \u0027properties for Redfish resource. Optional\u0027)"},{"line_number":74,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_368f7e2f","line":71,"range":{"start_line":71,"start_character":64,"end_line":71,"end_character":73},"updated":"2019-02-07 13:56:29.000000000","message":"Would it make sense to list installed OEM (by means of sushy\u0027s `oem_vendors` property)?\n\nAlso, may be note that proper sushy OEM extensions need to be installed on the system for this feature to become operational?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":70,"context_line":"    \u0027redfish_oem_property_name\u0027: _(\u0027The name of the OEM property which \u0027"},{"line_number":71,"context_line":"                                   \u0027uniquely identifies the OEM-specified \u0027"},{"line_number":72,"context_line":"                                   \u0027JSON objects and contains augmented OEM \u0027"},{"line_number":73,"context_line":"                                   \u0027properties for Redfish resource. Optional\u0027)"},{"line_number":74,"context_line":"}"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"COMMON_PROPERTIES \u003d REQUIRED_PROPERTIES.copy()"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_16735a82","line":73,"range":{"start_line":73,"start_character":69,"end_line":73,"end_character":77},"updated":"2019-02-07 13:56:29.000000000","message":"What happens if it is given / not given?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"}],"releasenotes/notes/redfish-allow-local_gb-size-from-vendor-defined-extension-af215e828170de3f.yaml":[{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allows the redfish inspect interface to get ``local_gb`` size from vendor"},{"line_number":5,"context_line":"    defined extension API ``get_local_gb()`` on Sushy System OEM extension."},{"line_number":6,"context_line":"    Adds a new redfish ``driver_info`` field ``redfish_oem_property_name`` to"},{"line_number":7,"context_line":"    allow operators to define the specific OEM extension property name [1] to"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"9fdfeff1_500d6a8e","line":4,"range":{"start_line":4,"start_character":61,"end_line":4,"end_character":65},"updated":"2019-02-07 13:56:29.000000000","message":"nit: value?","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Allows the redfish inspect interface to get ``local_gb`` size from vendor"},{"line_number":5,"context_line":"    defined extension API ``get_local_gb()`` on Sushy System OEM extension."},{"line_number":6,"context_line":"    Adds a new redfish ``driver_info`` field ``redfish_oem_property_name`` to"},{"line_number":7,"context_line":"    allow operators to define the specific OEM extension property name [1] to"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"9fdfeff1_f01b3ec7","line":4,"range":{"start_line":4,"start_character":71,"end_line":4,"end_character":77},"updated":"2019-02-07 13:56:29.000000000","message":"nit: vendor-defined","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9cc951bde1c949713f62613575cdf23e8c569083","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    Adds a new redfish ``driver_info`` field ``redfish_oem_property_name`` to"},{"line_number":7,"context_line":"    allow operators to define the specific OEM extension property name [1] to"},{"line_number":8,"context_line":"    locate the Sushy system extension entry point object registered. This field"},{"line_number":9,"context_line":"    is optional."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"    [1] http://redfish.dmtf.org/schemas/DSP0266_1.6.1.html#oem-property-naming"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"9fdfeff1_3050e65e","line":9,"range":{"start_line":9,"start_character":7,"end_line":9,"end_character":15},"updated":"2019-02-07 13:56:29.000000000","message":"Does this new check conditionally depend on the new field\u0027s presence? This is not clear to me unless digging into the code. ;)","commit_id":"1dd21249f2d83b6adb1cf02ccb81102a3527d61e"}]}
