)]}'
{"ironic/drivers/modules/intel_ipmi/management.py":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"a42c73b41ddeb2193a9e4e22de9d3182b0766174","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        }"},{"line_number":49,"context_line":"    })"},{"line_number":50,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":51,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":52,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":53,"context_line":"        LOG.debug(\"Going to set Intel SST-PP %(config)s configuration level \""},{"line_number":54,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":55,"context_line":"                                        \"node\": task.node.uuid})"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_9dc8ef55","line":52,"range":{"start_line":51,"start_character":8,"end_line":52,"end_character":44},"updated":"2019-06-04 06:39:54.000000000","message":"Need to validate that these are valid values before using them.","commit_id":"46f199bfdb1c61aba5f7f44129418190c5c02dbf"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"3e77c02df7f1dd3990239265be3fa2be4c53eea4","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        }"},{"line_number":49,"context_line":"    })"},{"line_number":50,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":51,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":52,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":53,"context_line":"        LOG.debug(\"Going to set Intel SST-PP %(config)s configuration level \""},{"line_number":54,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":55,"context_line":"                                        \"node\": task.node.uuid})"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_e2506735","line":52,"range":{"start_line":51,"start_character":8,"end_line":52,"end_character":44},"in_reply_to":"9fb8cfa7_9dc8ef55","updated":"2019-06-04 10:07:27.000000000","message":"Agree. I will add the validation method in the next patch. Thanks.","commit_id":"46f199bfdb1c61aba5f7f44129418190c5c02dbf"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"0b5446f266d251335e316e8ae5a18b2d8ba5bb76","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        }"},{"line_number":49,"context_line":"    })"},{"line_number":50,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":51,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":52,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":53,"context_line":"        LOG.debug(\"Going to set Intel SST-PP %(config)s configuration level \""},{"line_number":54,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":55,"context_line":"                                        \"node\": task.node.uuid})"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_3baecf98","line":52,"range":{"start_line":51,"start_character":8,"end_line":52,"end_character":44},"in_reply_to":"9fb8cfa7_9dc8ef55","updated":"2019-06-17 06:45:28.000000000","message":"Done","commit_id":"46f199bfdb1c61aba5f7f44129418190c5c02dbf"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"a42c73b41ddeb2193a9e4e22de9d3182b0766174","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    def _configure_intel_speed_select(self, task, config, sockets):"},{"line_number":60,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":61,"context_line":"        socket_count \u003d sockets or 1"},{"line_number":62,"context_line":"        for socket in range(socket_count):"},{"line_number":63,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"},{"line_number":64,"context_line":"            ipmitool.send_raw(task, hexa_code)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_9dcd4f5f","line":61,"range":{"start_line":61,"start_character":8,"end_line":61,"end_character":35},"updated":"2019-06-04 06:39:54.000000000","message":"Better to do this in args:\ndef _configure_intel_speed_select(self, task, config, sockets\u003d1):","commit_id":"46f199bfdb1c61aba5f7f44129418190c5c02dbf"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"0b5446f266d251335e316e8ae5a18b2d8ba5bb76","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    def _configure_intel_speed_select(self, task, config, sockets):"},{"line_number":60,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":61,"context_line":"        socket_count \u003d sockets or 1"},{"line_number":62,"context_line":"        for socket in range(socket_count):"},{"line_number":63,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"},{"line_number":64,"context_line":"            ipmitool.send_raw(task, hexa_code)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_db921359","line":61,"range":{"start_line":61,"start_character":8,"end_line":61,"end_character":35},"in_reply_to":"9fb8cfa7_9dcd4f5f","updated":"2019-06-17 06:45:28.000000000","message":"Done","commit_id":"46f199bfdb1c61aba5f7f44129418190c5c02dbf"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":50,"context_line":"                raise ValueError"},{"line_number":51,"context_line":"        except ValueError:"},{"line_number":52,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":53,"context_line":"                \"Invalid socket_count %(socket)s value specified. Please input\""},{"line_number":54,"context_line":"                \" a non-negative integer.\") % {\"socket\": sockets})"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_bb3ff1b3","line":53,"updated":"2019-06-19 08:10:36.000000000","message":"nit: \"Invalid socket_count value: %(socket)s. Expected a positive integer.\" (you cannot say non-negative since it includes zero, and you don\u0027t accept it)","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":50,"context_line":"                raise ValueError"},{"line_number":51,"context_line":"        except ValueError:"},{"line_number":52,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":53,"context_line":"                \"Invalid socket_count %(socket)s value specified. Please input\""},{"line_number":54,"context_line":"                \" a non-negative integer.\") % {\"socket\": sockets})"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_1bb63ddb","line":53,"in_reply_to":"9fb8cfa7_bb3ff1b3","updated":"2019-06-19 09:57:41.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"},{"line_number":57,"context_line":"        \u0027intel_speedselect_config\u0027: {"},{"line_number":58,"context_line":"            \u0027description\u0027: ("},{"line_number":59,"context_line":"                \"Hexadecimal code of Intel SST-PP configuration.\""},{"line_number":60,"context_line":"            ),"},{"line_number":61,"context_line":"            \u0027required\u0027: True"},{"line_number":62,"context_line":"        },"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_db3c25c1","line":59,"updated":"2019-06-19 08:10:36.000000000","message":"nit: provide accepted values and mention that it\u0027s a string (not an integer)","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"},{"line_number":57,"context_line":"        \u0027intel_speedselect_config\u0027: {"},{"line_number":58,"context_line":"            \u0027description\u0027: ("},{"line_number":59,"context_line":"                \"Hexadecimal code of Intel SST-PP configuration.\""},{"line_number":60,"context_line":"            ),"},{"line_number":61,"context_line":"            \u0027required\u0027: True"},{"line_number":62,"context_line":"        },"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_1bee3d88","line":59,"in_reply_to":"9fb8cfa7_db3c25c1","updated":"2019-06-19 09:57:41.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        },"},{"line_number":63,"context_line":"        \u0027socket_count\u0027: {"},{"line_number":64,"context_line":"            \u0027description\u0027: ("},{"line_number":65,"context_line":"                \"No. of sockets.\""},{"line_number":66,"context_line":"            )"},{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":"    })"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_7b49795e","line":65,"updated":"2019-06-19 08:10:36.000000000","message":"nit: s/No./Number/","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        },"},{"line_number":63,"context_line":"        \u0027socket_count\u0027: {"},{"line_number":64,"context_line":"            \u0027description\u0027: ("},{"line_number":65,"context_line":"                \"No. of sockets.\""},{"line_number":66,"context_line":"            )"},{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":"    })"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_7bfc193e","line":65,"in_reply_to":"9fb8cfa7_7b49795e","updated":"2019-06-19 09:57:41.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":66,"context_line":"            )"},{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":"    })"},{"line_number":69,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":70,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":71,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":72,"context_line":"        self.validate_input(config, sockets)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_9b46ad4f","line":69,"updated":"2019-06-19 08:10:36.000000000","message":"let\u0027s provide arguments explicitly instead of using **kwargs","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":66,"context_line":"            )"},{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":"    })"},{"line_number":69,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":70,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":71,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":72,"context_line":"        self.validate_input(config, sockets)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_44ca846e","line":69,"in_reply_to":"9fb8cfa7_69fc533e","updated":"2019-06-20 05:23:07.000000000","message":"I tested changing it to arguments list and it failed.","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":66,"context_line":"            )"},{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":"    })"},{"line_number":69,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":70,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":71,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":72,"context_line":"        self.validate_input(config, sockets)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_fb9d690a","line":69,"in_reply_to":"9fb8cfa7_9b46ad4f","updated":"2019-06-19 09:57:41.000000000","message":"The deploy steps are executed with a keyword argument list.\n\nhttps://github.com/openstack/ironic/blob/master/ironic/drivers/base.py#L246","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"686b0ecc999577970c89496a0090b7aa9840a434","unresolved":false,"context_lines":[{"line_number":66,"context_line":"            )"},{"line_number":67,"context_line":"        }"},{"line_number":68,"context_line":"    })"},{"line_number":69,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":70,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":71,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":72,"context_line":"        self.validate_input(config, sockets)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_69fc533e","line":69,"in_reply_to":"9fb8cfa7_fb9d690a","updated":"2019-06-19 10:36:05.000000000","message":"It shouldn\u0027t matter, you can still have explicit arguments here.","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":71,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":72,"context_line":"        self.validate_input(config, sockets)"},{"line_number":73,"context_line":"        LOG.debug(\"Going to set Intel SST-PP %(config)s configuration level \""},{"line_number":74,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":75,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":76,"context_line":"        self._configure_intel_speed_select(task, config, sockets)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_3b754199","line":73,"updated":"2019-06-19 08:10:36.000000000","message":"nit: move %(config)s after \"level\"","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":71,"context_line":"        sockets \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":72,"context_line":"        self.validate_input(config, sockets)"},{"line_number":73,"context_line":"        LOG.debug(\"Going to set Intel SST-PP %(config)s configuration level \""},{"line_number":74,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":75,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":76,"context_line":"        self._configure_intel_speed_select(task, config, sockets)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_db8425b4","line":73,"in_reply_to":"9fb8cfa7_3b754199","updated":"2019-06-19 09:57:41.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":74,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":75,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":76,"context_line":"        self._configure_intel_speed_select(task, config, sockets)"},{"line_number":77,"context_line":"        return None"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def _configure_intel_speed_select(self, task, config, sockets\u003d1):"},{"line_number":80,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_5b7a7588","line":77,"updated":"2019-06-19 08:10:36.000000000","message":"nit: not needed","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":74,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":75,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":76,"context_line":"        self._configure_intel_speed_select(task, config, sockets)"},{"line_number":77,"context_line":"        return None"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def _configure_intel_speed_select(self, task, config, sockets\u003d1):"},{"line_number":80,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_5bc275eb","line":77,"in_reply_to":"9fb8cfa7_5b7a7588","updated":"2019-06-19 09:57:41.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":81,"context_line":"        for socket in range(sockets):"},{"line_number":82,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"},{"line_number":83,"context_line":"            ipmitool.send_raw(task, hexa_code)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_fb6ec9c7","line":83,"updated":"2019-06-19 08:10:36.000000000","message":"do we need to handle exceptions here? it could be useful to catch exception and to re-raise them with a message that mentions the intention and the socket number.","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"686b0ecc999577970c89496a0090b7aa9840a434","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":81,"context_line":"        for socket in range(sockets):"},{"line_number":82,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"},{"line_number":83,"context_line":"            ipmitool.send_raw(task, hexa_code)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_6991b3f1","line":83,"in_reply_to":"9fb8cfa7_5b67d526","updated":"2019-06-19 10:36:05.000000000","message":"You can override the whole error string, like\n\n raise IPMIFailure(message\u003d_(\u0027...\u0027))","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":81,"context_line":"        for socket in range(sockets):"},{"line_number":82,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"},{"line_number":83,"context_line":"            ipmitool.send_raw(task, hexa_code)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_e4c85875","line":83,"in_reply_to":"9fb8cfa7_6991b3f1","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":81,"context_line":"        for socket in range(sockets):"},{"line_number":82,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"},{"line_number":83,"context_line":"            ipmitool.send_raw(task, hexa_code)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb8cfa7_5b67d526","line":83,"in_reply_to":"9fb8cfa7_fb6ec9c7","updated":"2019-06-19 09:57:41.000000000","message":"Good point.\nI am not sure which error to raise. The IPMIFailure only accepts a cmd. Can you suggest which exception?","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# coding\u003dutf-8"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 Hewlett-Packard Development Company, L.P."},{"line_number":4,"context_line":"# Copyright (c) 2012 NTT DOCOMO, INC."},{"line_number":5,"context_line":"# Copyright 2014 International Business Machines Corporation"},{"line_number":6,"context_line":"# All Rights Reserved."},{"line_number":7,"context_line":"#"},{"line_number":8,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":9,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_7ed642f4","line":6,"range":{"start_line":3,"start_character":0,"end_line":6,"end_character":22},"updated":"2019-06-19 14:46:28.000000000","message":"This can be removed.","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# coding\u003dutf-8"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 Hewlett-Packard Development Company, L.P."},{"line_number":4,"context_line":"# Copyright (c) 2012 NTT DOCOMO, INC."},{"line_number":5,"context_line":"# Copyright 2014 International Business Machines Corporation"},{"line_number":6,"context_line":"# All Rights Reserved."},{"line_number":7,"context_line":"#"},{"line_number":8,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":9,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_246990bd","line":6,"range":{"start_line":3,"start_character":0,"end_line":6,"end_character":22},"in_reply_to":"9fb8cfa7_7ed642f4","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":37,"context_line":""},{"line_number":38,"context_line":"class IntelIPMIManagement(ipmitool.IPMIManagement):"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def validate_input(self, config, sockets):"},{"line_number":41,"context_line":"        if config not in INTEL_SST_PP_CONFIG_HEXA_CODES:"},{"line_number":42,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":43,"context_line":"                \"Invalid Intel SST-PP configuration value %(config)s \""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_5eaa5e19","line":40,"range":{"start_line":40,"start_character":8,"end_line":40,"end_character":22},"updated":"2019-06-19 14:46:28.000000000","message":"Make it a private method.\ns/ validate_input / _validate_input /","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":37,"context_line":""},{"line_number":38,"context_line":"class IntelIPMIManagement(ipmitool.IPMIManagement):"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def validate_input(self, config, sockets):"},{"line_number":41,"context_line":"        if config not in INTEL_SST_PP_CONFIG_HEXA_CODES:"},{"line_number":42,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":43,"context_line":"                \"Invalid Intel SST-PP configuration value %(config)s \""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_4464c4e5","line":40,"range":{"start_line":40,"start_character":8,"end_line":40,"end_character":22},"in_reply_to":"9fb8cfa7_5eaa5e19","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":50,"context_line":"                raise ValueError"},{"line_number":51,"context_line":"        except ValueError:"},{"line_number":52,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":53,"context_line":"                \"Invalid socket_count %(socket)s value specified. Expected a \""},{"line_number":54,"context_line":"                \" positive integer.\") % {\"socket\": sockets})"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_7e4ba2af","line":53,"range":{"start_line":53,"start_character":25,"end_line":53,"end_character":37},"updated":"2019-06-19 14:46:28.000000000","message":"s/ socket_count / number of socket /","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":50,"context_line":"                raise ValueError"},{"line_number":51,"context_line":"        except ValueError:"},{"line_number":52,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":53,"context_line":"                \"Invalid socket_count %(socket)s value specified. Expected a \""},{"line_number":54,"context_line":"                \" positive integer.\") % {\"socket\": sockets})"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_045ecc11","line":53,"range":{"start_line":53,"start_character":25,"end_line":53,"end_character":37},"in_reply_to":"9fb8cfa7_7e4ba2af","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        except ValueError:"},{"line_number":52,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":53,"context_line":"                \"Invalid socket_count %(socket)s value specified. Expected a \""},{"line_number":54,"context_line":"                \" positive integer.\") % {\"socket\": sockets})"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"},{"line_number":57,"context_line":"        \u0027intel_speedselect_config\u0027: {"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_9ed9b6f5","line":54,"range":{"start_line":54,"start_character":17,"end_line":54,"end_character":18},"updated":"2019-06-19 14:46:28.000000000","message":"Remove extra space.","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        except ValueError:"},{"line_number":52,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":53,"context_line":"                \"Invalid socket_count %(socket)s value specified. Expected a \""},{"line_number":54,"context_line":"                \" positive integer.\") % {\"socket\": sockets})"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @base.deploy_step(priority\u003d200, argsinfo\u003d{"},{"line_number":57,"context_line":"        \u0027intel_speedselect_config\u0027: {"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_c49d14bc","line":54,"range":{"start_line":54,"start_character":17,"end_line":54,"end_character":18},"in_reply_to":"9fb8cfa7_9ed9b6f5","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        socket_count \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":74,"context_line":"        self.validate_input(config, socket_count)"},{"line_number":75,"context_line":"        LOG.debug(\"Going to set Intel SST-PP configuration level %(config)s \""},{"line_number":76,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":77,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":78,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":79,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_9e23f6be","line":76,"range":{"start_line":76,"start_character":28,"end_line":76,"end_character":36},"updated":"2019-06-19 14:46:28.000000000","message":"It would be useful to add the socket count to this message.","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        socket_count \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":74,"context_line":"        self.validate_input(config, socket_count)"},{"line_number":75,"context_line":"        LOG.debug(\"Going to set Intel SST-PP configuration level %(config)s \""},{"line_number":76,"context_line":"                  \"for node %(node)s\", {\"config\": config,"},{"line_number":77,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":78,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":79,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_64a46809","line":76,"range":{"start_line":76,"start_character":28,"end_line":76,"end_character":36},"in_reply_to":"9fb8cfa7_9e23f6be","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":78,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _configure_intel_speed_select(self, task, config, socket_count\u003d1):"},{"line_number":81,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":82,"context_line":"        for socket in range(socket_count):"},{"line_number":83,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_fe49d28a","line":80,"range":{"start_line":80,"start_character":70,"end_line":80,"end_character":72},"updated":"2019-06-19 14:46:28.000000000","message":"Is this default value required?","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                                        \"node\": task.node.uuid})"},{"line_number":78,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _configure_intel_speed_select(self, task, config, socket_count\u003d1):"},{"line_number":81,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":82,"context_line":"        for socket in range(socket_count):"},{"line_number":83,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_04b32c4f","line":80,"range":{"start_line":80,"start_character":70,"end_line":80,"end_character":72},"in_reply_to":"9fb8cfa7_fe49d28a","updated":"2019-06-20 05:23:07.000000000","message":"Yes, in case the value is not provided by the user.\nOr we can also make socket_count as required param. WDYT?","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"d9e823635a84af866e66373288c9d7172b9d1984","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    })"},{"line_number":65,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":66,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":67,"context_line":"        socket_count \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":68,"context_line":"        self._validate_input(config, socket_count)"},{"line_number":69,"context_line":"        LOG.debug(\"Going to set Intel SST-PP configuration level %(config)s \""},{"line_number":70,"context_line":"                  \"for node %(node)s with socket count %(socket)s\","}],"source_content_type":"text/x-python","patch_set":7,"id":"9fb8cfa7_d60fc585","line":67,"range":{"start_line":67,"start_character":23,"end_line":67,"end_character":49},"updated":"2019-06-25 05:22:23.000000000","message":"Based on your doc patch, you intend to have a behavior of socket_count as 1 if its not passed. Currently the validation would fail at L68 with TypeError when socket_count is not passed. You probably need this as:\nsocket_count \u003d kwargs.get(\u0027socket_count\u0027, 1)","commit_id":"41d9e9c7b96d6e3abeda22d25fc00bc22187d5cb"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"9a46c500f203dd3bbe61fd7b3ed479a09fd92510","unresolved":false,"context_lines":[{"line_number":64,"context_line":"    })"},{"line_number":65,"context_line":"    def configure_intel_speedselect(self, task, **kwargs):"},{"line_number":66,"context_line":"        config \u003d kwargs.get(\u0027intel_speedselect_config\u0027)"},{"line_number":67,"context_line":"        socket_count \u003d kwargs.get(\u0027socket_count\u0027)"},{"line_number":68,"context_line":"        self._validate_input(config, socket_count)"},{"line_number":69,"context_line":"        LOG.debug(\"Going to set Intel SST-PP configuration level %(config)s \""},{"line_number":70,"context_line":"                  \"for node %(node)s with socket count %(socket)s\","}],"source_content_type":"text/x-python","patch_set":7,"id":"9fb8cfa7_943f0524","line":67,"range":{"start_line":67,"start_character":23,"end_line":67,"end_character":49},"in_reply_to":"9fb8cfa7_d60fc585","updated":"2019-06-25 08:43:10.000000000","message":"Done","commit_id":"41d9e9c7b96d6e3abeda22d25fc00bc22187d5cb"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"d9e823635a84af866e66373288c9d7172b9d1984","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                   \"socket\": socket_count})"},{"line_number":73,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def _configure_intel_speed_select(self, task, config, socket_count\u003d1):"},{"line_number":76,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":77,"context_line":"        for socket in range(socket_count):"},{"line_number":78,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fb8cfa7_9625cd0b","line":75,"range":{"start_line":75,"start_character":70,"end_line":75,"end_character":72},"updated":"2019-06-25 05:22:23.000000000","message":"This may not be required, as method call to this always passes socket_count parameter.","commit_id":"41d9e9c7b96d6e3abeda22d25fc00bc22187d5cb"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"9a46c500f203dd3bbe61fd7b3ed479a09fd92510","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                   \"socket\": socket_count})"},{"line_number":73,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def _configure_intel_speed_select(self, task, config, socket_count\u003d1):"},{"line_number":76,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":77,"context_line":"        for socket in range(socket_count):"},{"line_number":78,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fb8cfa7_54450db3","line":75,"range":{"start_line":75,"start_character":70,"end_line":75,"end_character":72},"in_reply_to":"9fb8cfa7_9625cd0b","updated":"2019-06-25 08:43:10.000000000","message":"Done","commit_id":"41d9e9c7b96d6e3abeda22d25fc00bc22187d5cb"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            socket_count \u003d int(sockets)"},{"line_number":43,"context_line":"            if socket_count \u003c\u003d 0:"},{"line_number":44,"context_line":"                raise ValueError"},{"line_number":45,"context_line":"        except ValueError:"},{"line_number":46,"context_line":"            raise exception.InvalidParameterValue(_("},{"line_number":47,"context_line":"                \"Invalid number of socket %(socket)s value specified. \""},{"line_number":48,"context_line":"                \"Expected a positive integer.\") % {\"socket\": sockets})"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_232500c3","line":45,"updated":"2019-07-09 08:50:33.000000000","message":"nit: int() can raise TypeError as well","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":52,"context_line":"            \u0027description\u0027: ("},{"line_number":53,"context_line":"                \"Hexadecimal code of Intel SST-PP configuration provided. \""},{"line_number":54,"context_line":"                \"Input value should be string. Accepted values are \""},{"line_number":55,"context_line":"                \"[\u00270x00\u0027, \u00270x01\u0027, \u00270x02\u0027]. \""},{"line_number":56,"context_line":"            ),"},{"line_number":57,"context_line":"            \u0027required\u0027: True"},{"line_number":58,"context_line":"        },"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_43203cb1","line":55,"updated":"2019-07-09 08:50:33.000000000","message":"nit: use INTEL_SST_PP_CONFIG_HEXA_CODES to populate this","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":72,"context_line":"                   \"socket\": socket_count})"},{"line_number":73,"context_line":"        self._configure_intel_speed_select(task, config, socket_count)"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def _configure_intel_speed_select(self, task, config, socket_count):"},{"line_number":76,"context_line":"        iss_conf \u003d \"0x2c 0x41 0x04 0x00 0x0%s %s\""},{"line_number":77,"context_line":"        for socket in range(socket_count):"},{"line_number":78,"context_line":"            hexa_code \u003d iss_conf % (socket, config)"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_e32e08a4","line":75,"updated":"2019-07-09 08:50:33.000000000","message":"nit: this separate method is not really needed, can be merge with the main method above","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            try:"},{"line_number":80,"context_line":"                ipmitool.send_raw(task, hexa_code)"},{"line_number":81,"context_line":"            except exception.IPMIFailure as e:"},{"line_number":82,"context_line":"                msg \u003d (\"Failed to set Intel SST-PP configuration level \""},{"line_number":83,"context_line":"                       \"%(cfg)s on socket number %(skt)s due to reason \""},{"line_number":84,"context_line":"                       \"%(exc)s.\" % {\"cfg\": config, \"skt\": socket, \"exc\": e})"},{"line_number":85,"context_line":"                LOG.exception(msg)"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_032a448f","line":82,"updated":"2019-07-09 08:50:33.000000000","message":"missing _()","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                msg \u003d (\"Failed to set Intel SST-PP configuration level \""},{"line_number":83,"context_line":"                       \"%(cfg)s on socket number %(skt)s due to reason \""},{"line_number":84,"context_line":"                       \"%(exc)s.\" % {\"cfg\": config, \"skt\": socket, \"exc\": e})"},{"line_number":85,"context_line":"                LOG.exception(msg)"},{"line_number":86,"context_line":"                raise exception.IPMIFailure(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_a31a507a","line":85,"updated":"2019-07-09 08:50:33.000000000","message":"s/exception/error/ (traceback won\u0027t be particularly useful here IMO)","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"}],"ironic/tests/unit/drivers/modules/intel_ipmi/test_management.py":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":32,"context_line":"                       autospec\u003dTrue)"},{"line_number":33,"context_line":"    def test_configure_intel_speedselect(self, send_raw_mock):"},{"line_number":34,"context_line":"        send_raw_mock.return_value \u003d [None, None]"},{"line_number":35,"context_line":"        config \u003d {\"intel_speedselect_config\": \"0x02\", \"socket_count\": 1}"},{"line_number":36,"context_line":"        with task_manager.acquire(self.context, self.node.uuid) as task:"},{"line_number":37,"context_line":"            ret \u003d task.driver.management.configure_intel_speedselect(task,"},{"line_number":38,"context_line":"                                                                     **config)"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_2183cf58","line":35,"range":{"start_line":35,"start_character":54,"end_line":35,"end_character":71},"updated":"2019-06-19 14:46:28.000000000","message":"May be you can add a testcase wherein socket count is \u003e1","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":32,"context_line":"                       autospec\u003dTrue)"},{"line_number":33,"context_line":"    def test_configure_intel_speedselect(self, send_raw_mock):"},{"line_number":34,"context_line":"        send_raw_mock.return_value \u003d [None, None]"},{"line_number":35,"context_line":"        config \u003d {\"intel_speedselect_config\": \"0x02\", \"socket_count\": 1}"},{"line_number":36,"context_line":"        with task_manager.acquire(self.context, self.node.uuid) as task:"},{"line_number":37,"context_line":"            ret \u003d task.driver.management.configure_intel_speedselect(task,"},{"line_number":38,"context_line":"                                                                     **config)"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_c4d4344a","line":35,"range":{"start_line":35,"start_character":54,"end_line":35,"end_character":71},"in_reply_to":"9fb8cfa7_2183cf58","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        config \u003d {\"intel_speedselect_config\": \"0x02\", \"socket_count\": 1}"},{"line_number":48,"context_line":"        with task_manager.acquire(self.context, self.node.uuid) as task:"},{"line_number":49,"context_line":"            self.assertRaises("},{"line_number":50,"context_line":"                exception.PasswordFileFailedToCreate,"},{"line_number":51,"context_line":"                task.driver.management.configure_intel_speedselect,"},{"line_number":52,"context_line":"                task, **config)"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_c1aaf3d0","line":50,"range":{"start_line":50,"start_character":26,"end_line":50,"end_character":52},"updated":"2019-06-19 14:46:28.000000000","message":"Shouldn\u0027t this be IPMIFailure?","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        config \u003d {\"intel_speedselect_config\": \"0x02\", \"socket_count\": 1}"},{"line_number":48,"context_line":"        with task_manager.acquire(self.context, self.node.uuid) as task:"},{"line_number":49,"context_line":"            self.assertRaises("},{"line_number":50,"context_line":"                exception.PasswordFileFailedToCreate,"},{"line_number":51,"context_line":"                task.driver.management.configure_intel_speedselect,"},{"line_number":52,"context_line":"                task, **config)"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_a4834056","line":50,"range":{"start_line":50,"start_character":26,"end_line":50,"end_character":52},"in_reply_to":"9fb8cfa7_c1aaf3d0","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                exception.IPMIFailure,"},{"line_number":69,"context_line":"                task.driver.management.configure_intel_speedselect,"},{"line_number":70,"context_line":"                task, **config)"},{"line_number":71,"context_line":"            self.assertIn(\"Failed to set Intel SST-PP configuration\", str(e))"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def test_configure_intel_speedselect_invalid_input(self):"},{"line_number":74,"context_line":"        config \u003d {\"intel_speedselect_config\": \"0\", \"socket_count\": 1}"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_c31d0c74","line":71,"updated":"2019-07-09 08:50:33.000000000","message":"nit: you can also use assertRaisesRegex","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3ca8454e327498554db9e00354e3c6b140907aaa","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                task.driver.management.configure_intel_speedselect,"},{"line_number":79,"context_line":"                task, **config)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        config \u003d {\"intel_speedselect_config\": \"0x00\", \"socket_count\": -1}"},{"line_number":82,"context_line":"        with task_manager.acquire(self.context, self.node.uuid) as task:"},{"line_number":83,"context_line":"            self.assertRaises("},{"line_number":84,"context_line":"                exception.InvalidParameterValue,"}],"source_content_type":"text/x-python","patch_set":8,"id":"7faddb67_6314584f","line":81,"updated":"2019-07-09 08:50:33.000000000","message":"nit: add another test on \"socket_count\" of invalid type (e.g. None)","commit_id":"5127b6f6ddaddba329e2e250399b334a6a58dbba"}],"ironic/tests/unit/drivers/test_intel_ipmi.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"ea480a4f58890146b5970769e0219e8a176b079a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9fb8cfa7_1b5b9d2e","updated":"2019-06-19 08:10:36.000000000","message":"please move under intel_ipmi directory, probably merging with base.py","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f38d672ef532e9270c95dd69d9aa4b91dbbc5d6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9fb8cfa7_fe331761","in_reply_to":"9fb8cfa7_1b5b9d2e","updated":"2019-06-19 09:57:41.000000000","message":"Done","commit_id":"474835d847359bcf5f86bc6104f924b6f7e95ba1"}],"releasenotes/notes/intel-ipmi-hardware-30aaa65cdbcb779a.yaml":[{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_c193d3a2","line":4,"range":{"start_line":4,"start_character":36,"end_line":4,"end_character":44},"updated":"2019-06-19 14:46:28.000000000","message":"s/ Hardware / Hardware with hardware type ``intel-ipmitool``. /","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_21e8af14","line":4,"range":{"start_line":4,"start_character":51,"end_line":4,"end_character":59},"updated":"2019-06-19 14:46:28.000000000","message":"s/ hardware / hardware type /","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_e4be18fe","line":4,"range":{"start_line":4,"start_character":51,"end_line":4,"end_character":59},"in_reply_to":"9fb8cfa7_21e8af14","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_44c0447d","line":4,"range":{"start_line":4,"start_character":36,"end_line":4,"end_character":44},"in_reply_to":"9fb8cfa7_c193d3a2","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"},{"line_number":8,"context_line":"    the desired configuration level for Intel SST-PP."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_a1db3f7b","line":5,"range":{"start_line":4,"start_character":71,"end_line":5,"end_character":12},"updated":"2019-06-19 14:46:28.000000000","message":"s/ IPMI hardware / ``ipmi`` hardware type/","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"},{"line_number":8,"context_line":"    the desired configuration level for Intel SST-PP."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_c43994a3","line":5,"range":{"start_line":4,"start_character":71,"end_line":5,"end_character":12},"in_reply_to":"9fb8cfa7_a1db3f7b","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"ed8cf071d1091caa73614ea15f7fabd92f0ab143","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"},{"line_number":8,"context_line":"    the desired configuration level for Intel SST-PP."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_41d60352","line":7,"range":{"start_line":7,"start_character":12,"end_line":7,"end_character":15},"updated":"2019-06-19 14:46:28.000000000","message":"s/ new //","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"4af35205495b4cb537c70be425800f1685d9bde1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Adds support for the Intel IPMI Hardware. This hardware is same as IPMI"},{"line_number":5,"context_line":"    hardware with additional support of `Intel Speed Select Performance Profile"},{"line_number":6,"context_line":"    Technology \u003chttps://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-article.html\u003e`."},{"line_number":7,"context_line":"    It uses new management interface ``intel-ipmitool``. It supports setting"},{"line_number":8,"context_line":"    the desired configuration level for Intel SST-PP."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9fb8cfa7_84439c13","line":7,"range":{"start_line":7,"start_character":12,"end_line":7,"end_character":15},"in_reply_to":"9fb8cfa7_41d60352","updated":"2019-06-20 05:23:07.000000000","message":"Done","commit_id":"2998cdc8b2ff13630061d5c502932467f99e5b5f"}]}
