)]}'
{"devstack/lib/ironic":[{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":140,"context_line":"# driver / hardware type options"},{"line_number":141,"context_line":"# TODO(jroll) add enabled/default interfaces here"},{"line_number":142,"context_line":"IRONIC_ENABLED_DRIVERS\u003d${IRONIC_ENABLED_DRIVERS:-fake,pxe_ssh,pxe_ipmitool}"},{"line_number":143,"context_line":"IRONIC_ENABLED_HARDWARE_TYPES\u003d${IRONIC_ENABLED_HARDWARE_TYPES:-ipmi,manual-management}"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"# NOTE(vsaienko) nova already pick right libvirt type at"},{"line_number":146,"context_line":"# https://review.openstack.org/#/c/31177/4/lib/nova@240"}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"5a3905b3_d7ac8a37","line":143,"updated":"2017-01-20 18:51:23.000000000","message":"Feels like we should disable manual-management in this patch, as it isn\u0027t really useful except to test that hardware types load fine (which we can now test with ipmi) :)","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":140,"context_line":"# driver / hardware type options"},{"line_number":141,"context_line":"# TODO(jroll) add enabled/default interfaces here"},{"line_number":142,"context_line":"IRONIC_ENABLED_DRIVERS\u003d${IRONIC_ENABLED_DRIVERS:-fake,pxe_ssh,pxe_ipmitool}"},{"line_number":143,"context_line":"IRONIC_ENABLED_HARDWARE_TYPES\u003d${IRONIC_ENABLED_HARDWARE_TYPES:-ipmi,manual-management}"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"# NOTE(vsaienko) nova already pick right libvirt type at"},{"line_number":146,"context_line":"# https://review.openstack.org/#/c/31177/4/lib/nova@240"}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"5a3905b3_0fd4f8ba","line":143,"in_reply_to":"5a3905b3_d7ac8a37","updated":"2017-01-23 12:04:09.000000000","message":"\u003e it isn\u0027t really useful\n\nit\u0027s quite useful, even in production (sigh). but I agree, it shouldn\u0027t be on by default here.","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"}],"etc/ironic/ironic.conf.sample":[{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"841706951a437c2b8b5449bb7397151bdf64d0d2","unresolved":false,"context_lines":[{"line_number":33,"context_line":"# Specify the list of hardware types to load during service"},{"line_number":34,"context_line":"# initialization. Missing hardware types, or hardware types"},{"line_number":35,"context_line":"# which fail to initialize, will prevent the conductor service"},{"line_number":36,"context_line":"# from starting. No hardware types are enabled by default now,"},{"line_number":37,"context_line":"# but in the future this option will default to a recommended"},{"line_number":38,"context_line":"# set of production-oriented hardware types. A complete list"},{"line_number":39,"context_line":"# of hardware types present on your system may be found by"},{"line_number":40,"context_line":"# enumerating the \"ironic.hardware.types\" entrypoint. (list"},{"line_number":41,"context_line":"# value)"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"5a3905b3_e1fcce74","line":38,"range":{"start_line":36,"start_character":17,"end_line":38,"end_character":44},"updated":"2017-01-24 18:45:20.000000000","message":"This comment needs to be updated - now ipmi will be enabled by default","commit_id":"ccc07a4faa36ffc8cb101818412cf5d25cc49a30"}],"ironic/conf/default.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"c188dfc03fa413b0844a156cb04a76ce85aa2c58","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                       \u0027hardware types which fail to initialize, will prevent \u0027"},{"line_number":86,"context_line":"                       \u0027the conductor service from starting. This option \u0027"},{"line_number":87,"context_line":"                       \u0027defaults to a recommended set of production-oriented \u0027"},{"line_number":88,"context_line":"                       \u0027hardware types. \u0027"},{"line_number":89,"context_line":"                       \u0027A complete list of hardware types present on your \u0027"},{"line_number":90,"context_line":"                       \u0027system may be found by enumerating the \u0027"},{"line_number":91,"context_line":"                       \u0027\"ironic.hardware.types\" entrypoint.\u0027)),"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_b9582658","line":88,"updated":"2017-01-25 22:46:20.000000000","message":"nit, if you want to be consistent with the other descriptions, eg L75, \u0027The option default is a recommended set of production-oriented hardware types\u0027 :)","commit_id":"0fc1aa6d6551456c9c18ccd77bd04fb545c4d2f3"}],"ironic/drivers/agent.py":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"a401e4b1473fdc034a021d89fc405eb75b0fb379","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from ironic.drivers.modules import virtualbox"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class AgentAndIPMIToolDriver(base.BaseDriver):"},{"line_number":34,"context_line":"    \"\"\"Agent + IPMITool driver."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    This driver implements the `core` functionality, combining"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_f97fd963","side":"PARENT","line":33,"range":{"start_line":33,"start_character":11,"end_line":33,"end_character":46},"updated":"2017-01-20 09:04:36.000000000","message":"I\u0027m wondered if it is save to just move this class without any deprecation? There might be cases when out of tree drivers were inherited from this class, and override only some interface internally.","commit_id":"3d22fa4270931edf344a5396f5333f73f4a5f0f2"}],"ironic/drivers/ipmi.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d6b7494b3ff84240fc113e37dd2f1025474d2287","unresolved":false,"context_lines":[{"line_number":23,"context_line":"from ironic.drivers.modules import noop"},{"line_number":24,"context_line":"from ironic.drivers.modules import pxe"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class PXEAndIPMIToolDriver(base.BaseDriver):"},{"line_number":28,"context_line":"    \"\"\"PXE + IPMITool driver."},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_0840eda4","line":26,"updated":"2017-01-19 19:25:45.000000000","message":"nit: My preference would be to see class IPMIHardware first cuz it is the future and it rules. And cuz I am hoping that when I look at this file, it is to look at IPMIHardware, not the old drivers :)","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @property"},{"line_number":35,"context_line":"    def supported_console_interfaces(self):"},{"line_number":36,"context_line":"        \"\"\"List of supported console interfaces.\"\"\""},{"line_number":37,"context_line":"        return [ipmitool.IPMIShellinaboxConsole, ipmitool.IPMISocatConsole,"},{"line_number":38,"context_line":"                noop.NoConsole]"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_fa040bc1","line":37,"updated":"2017-01-20 18:51:23.000000000","message":"I feel like socat should be first priority, since it\u0027s the one that is compatible with nova.","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @property"},{"line_number":35,"context_line":"    def supported_console_interfaces(self):"},{"line_number":36,"context_line":"        \"\"\"List of supported console interfaces.\"\"\""},{"line_number":37,"context_line":"        return [ipmitool.IPMIShellinaboxConsole, ipmitool.IPMISocatConsole,"},{"line_number":38,"context_line":"                noop.NoConsole]"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_efe5eca3","line":37,"in_reply_to":"5a3905b3_fa040bc1","updated":"2017-01-23 12:04:09.000000000","message":"Done","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    @property"},{"line_number":41,"context_line":"    def supported_management_interfaces(self):"},{"line_number":42,"context_line":"        \"\"\"List of supported management interfaces.\"\"\""},{"line_number":43,"context_line":"        return [ipmitool.IPMIManagement]"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    @property"},{"line_number":46,"context_line":"    def supported_power_interfaces(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_da366fe6","line":43,"updated":"2017-01-20 18:51:23.000000000","message":"Hm, should we add in ipminative here? Other than maybe being untested (for now), it seems there is no reason not to.\n\nWhich makes me realize, we probably want to move/copy the unsupported attribute to interfaces.","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    @property"},{"line_number":41,"context_line":"    def supported_management_interfaces(self):"},{"line_number":42,"context_line":"        \"\"\"List of supported management interfaces.\"\"\""},{"line_number":43,"context_line":"        return [ipmitool.IPMIManagement]"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    @property"},{"line_number":46,"context_line":"    def supported_power_interfaces(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_efb32c98","line":43,"in_reply_to":"5a3905b3_da366fe6","updated":"2017-01-23 12:04:09.000000000","message":"I\u0027d prefer we don\u0027t add anything pending removal, not until we un-deprecate it.","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @property"},{"line_number":46,"context_line":"    def supported_power_interfaces(self):"},{"line_number":47,"context_line":"        \"\"\"List of supported power interfaces.\"\"\""},{"line_number":48,"context_line":"        return [ipmitool.IPMIPower]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"class PXEAndIPMIToolDriver(base.BaseDriver):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_fa35ebd9","line":48,"updated":"2017-01-20 18:51:23.000000000","message":"Ditto","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @property"},{"line_number":46,"context_line":"    def supported_power_interfaces(self):"},{"line_number":47,"context_line":"        \"\"\"List of supported power interfaces.\"\"\""},{"line_number":48,"context_line":"        return [ipmitool.IPMIPower]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"class PXEAndIPMIToolDriver(base.BaseDriver):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_2fb29494","line":48,"in_reply_to":"5a3905b3_fa35ebd9","updated":"2017-01-23 12:04:09.000000000","message":"Ditto","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    \"\"\"PXE + IPMITool driver."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    This driver implements the `core` functionality, combining"},{"line_number":55,"context_line":"    :class:`ironic.drivers.modules.ipmi.IPMI` for power on/off"},{"line_number":56,"context_line":"    and reboot with"},{"line_number":57,"context_line":"    :class:`ironic.drivers.modules.iscsi_deploy.ISCSIDeploy` for"},{"line_number":58,"context_line":"    image deployment. Implementations are in those respective"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_9a7227ac","line":55,"updated":"2017-01-20 18:51:23.000000000","message":"nit: this should still be ironic.drivers.modules.ipmitool.IPMIPower","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    \"\"\"PXE + IPMITool driver."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    This driver implements the `core` functionality, combining"},{"line_number":55,"context_line":"    :class:`ironic.drivers.modules.ipmi.IPMI` for power on/off"},{"line_number":56,"context_line":"    and reboot with"},{"line_number":57,"context_line":"    :class:`ironic.drivers.modules.iscsi_deploy.ISCSIDeploy` for"},{"line_number":58,"context_line":"    image deployment. Implementations are in those respective"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_2f79b4c8","line":55,"in_reply_to":"5a3905b3_9a7227ac","updated":"2017-01-23 12:04:09.000000000","message":"Done","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":74,"context_line":"    \"\"\"PXE + IPMITool + socat driver."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    This driver implements the `core` functionality, combining"},{"line_number":77,"context_line":"    :class:`ironic.drivers.modules.ipmi.IPMI` for power on/off"},{"line_number":78,"context_line":"    and reboot with"},{"line_number":79,"context_line":"    :class:`ironic.drivers.modules.iscsi_deploy.ISCSIDeploy` (for"},{"line_number":80,"context_line":"    image deployment) and with"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_fa632bda","line":77,"updated":"2017-01-20 18:51:23.000000000","message":"ditto","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":74,"context_line":"    \"\"\"PXE + IPMITool + socat driver."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    This driver implements the `core` functionality, combining"},{"line_number":77,"context_line":"    :class:`ironic.drivers.modules.ipmi.IPMI` for power on/off"},{"line_number":78,"context_line":"    and reboot with"},{"line_number":79,"context_line":"    :class:`ironic.drivers.modules.iscsi_deploy.ISCSIDeploy` (for"},{"line_number":80,"context_line":"    image deployment) and with"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a3905b3_6f7f3cab","line":77,"in_reply_to":"5a3905b3_fa632bda","updated":"2017-01-23 12:04:09.000000000","message":"Done","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"}],"ironic/tests/unit/drivers/test_ipmi.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d6b7494b3ff84240fc113e37dd2f1025474d2287","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            self.assertIsInstance(task.driver.deploy, iscsi_deploy.ISCSIDeploy)"},{"line_number":43,"context_line":"            self.assertIsInstance(task.driver.console, noop.NoConsole)"},{"line_number":44,"context_line":"            self.assertIsInstance(task.driver.inspect, noop.NoInspect)"},{"line_number":45,"context_line":"            self.assertIsInstance(task.driver.raid, noop.NoRAID)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def test_override_with_shellinabox(self):"},{"line_number":48,"context_line":"        self.config(enabled_console_interfaces\u003d[\u0027ipmitool-shellinabox\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_686a5182","line":45,"updated":"2017-01-19 19:25:45.000000000","message":"for completeness, what about vendor, network, storage?","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"9fc41acc45fe8a46c461659d05305b36cea48349","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            self.assertIsInstance(task.driver.deploy, iscsi_deploy.ISCSIDeploy)"},{"line_number":43,"context_line":"            self.assertIsInstance(task.driver.console, noop.NoConsole)"},{"line_number":44,"context_line":"            self.assertIsInstance(task.driver.inspect, noop.NoInspect)"},{"line_number":45,"context_line":"            self.assertIsInstance(task.driver.raid, noop.NoRAID)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def test_override_with_shellinabox(self):"},{"line_number":48,"context_line":"        self.config(enabled_console_interfaces\u003d[\u0027ipmitool-shellinabox\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_75c037e1","line":45,"in_reply_to":"5a3905b3_686a5182","updated":"2017-01-20 16:29:13.000000000","message":"I only check those that differ for this IPMI type (and I can exclude inspect btw)","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d6b7494b3ff84240fc113e37dd2f1025474d2287","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        node \u003d obj_utils.create_test_node("},{"line_number":51,"context_line":"            self.context, driver\u003d\u0027ipmi\u0027,"},{"line_number":52,"context_line":"            deploy_interface\u003d\u0027direct\u0027,"},{"line_number":53,"context_line":"            raid_interface\u003d\u0027agent\u0027,"},{"line_number":54,"context_line":"            console_interface\u003d\u0027ipmitool-shellinabox\u0027)"},{"line_number":55,"context_line":"        with task_manager.acquire(self.context, node.id) as task:"},{"line_number":56,"context_line":"            self.assertIsInstance(task.driver.management,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_48c5953a","line":53,"updated":"2017-01-19 19:25:45.000000000","message":"oh. why do we have a \u0027direct\u0027 (agent) deploy interface, but an \u0027agent\u0027 raid interface? [Not related to this patch, just noticed/wondered.]","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"9fc41acc45fe8a46c461659d05305b36cea48349","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        node \u003d obj_utils.create_test_node("},{"line_number":51,"context_line":"            self.context, driver\u003d\u0027ipmi\u0027,"},{"line_number":52,"context_line":"            deploy_interface\u003d\u0027direct\u0027,"},{"line_number":53,"context_line":"            raid_interface\u003d\u0027agent\u0027,"},{"line_number":54,"context_line":"            console_interface\u003d\u0027ipmitool-shellinabox\u0027)"},{"line_number":55,"context_line":"        with task_manager.acquire(self.context, node.id) as task:"},{"line_number":56,"context_line":"            self.assertIsInstance(task.driver.management,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_95a04345","line":53,"in_reply_to":"5a3905b3_48c5953a","updated":"2017-01-20 16:29:13.000000000","message":"because both deployment methods are agent-based. for RAID we have one common agent-based and other non-agent-based. confusing, yeah :)","commit_id":"5758666d7947a18125ce49769717c5a879c28066"}],"releasenotes/notes/ipmi-hardware-type-c536fbeeae610147.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3667206dc18f64f7834183bcd0e8405481210895","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":"    Introduce new hardware type ``ipmi`` for IPMI-compatible hardware."},{"line_number":5,"context_line":"    This type is enabled by default. Uses ``ipmitool`` utility under the hood,"},{"line_number":6,"context_line":"    similar to existing classic drivers ``pxe_ipmitool`` and"},{"line_number":7,"context_line":"    ``agent_ipmitool``. Supports both types of serial console: via"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"5a3905b3_c241660d","line":4,"updated":"2017-01-19 18:48:00.000000000","message":"nit s/Introduce/Introduces/","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"9fc41acc45fe8a46c461659d05305b36cea48349","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":"    Introduce new hardware type ``ipmi`` for IPMI-compatible hardware."},{"line_number":5,"context_line":"    This type is enabled by default. Uses ``ipmitool`` utility under the hood,"},{"line_number":6,"context_line":"    similar to existing classic drivers ``pxe_ipmitool`` and"},{"line_number":7,"context_line":"    ``agent_ipmitool``. Supports both types of serial console: via"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"5a3905b3_489c7ec0","line":4,"in_reply_to":"5a3905b3_c241660d","updated":"2017-01-20 16:29:13.000000000","message":"Done","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"7ab66fac30b7cc8c153f318080ce2ac2ed766489","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    This type is enabled by default. Uses ``ipmitool`` utility under the hood,"},{"line_number":6,"context_line":"    similar to existing classic drivers ``pxe_ipmitool`` and"},{"line_number":7,"context_line":"    ``agent_ipmitool``. Supports both types of serial console: via"},{"line_number":8,"context_line":"    ``shellinabox`` and via ``socat``, both are not enabled by default."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5a3905b3_7a59fbfd","line":8,"updated":"2017-01-20 18:51:23.000000000","message":"nit: s/not enabled/disabled/. for some reason \"both are not enabled\" sounds odd to me.","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8fe6332dcb5cec7e5259c1387c29b668f26adfb1","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    This type is enabled by default. Uses ``ipmitool`` utility under the hood,"},{"line_number":6,"context_line":"    similar to existing classic drivers ``pxe_ipmitool`` and"},{"line_number":7,"context_line":"    ``agent_ipmitool``. Supports both types of serial console: via"},{"line_number":8,"context_line":"    ``shellinabox`` and via ``socat``, both are not enabled by default."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5a3905b3_cf503035","line":8,"in_reply_to":"5a3905b3_7a59fbfd","updated":"2017-01-23 12:04:09.000000000","message":"Done","commit_id":"eac31fbb409c88a0316630146bcb0fed8a1fa7db"}],"setup.cfg":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3667206dc18f64f7834183bcd0e8405481210895","unresolved":false,"context_lines":[{"line_number":141,"context_line":"ironic.hardware.types \u003d"},{"line_number":142,"context_line":"    fake-hardware \u003d ironic.drivers.fake_hardware:FakeHardware"},{"line_number":143,"context_line":"    manual-management \u003d ironic.drivers.generic:ManualManagementHardware"},{"line_number":144,"context_line":"    ipmi \u003d ironic.drivers.ipmi:IPMIHardware"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"ironic.database.migration_backend \u003d"},{"line_number":147,"context_line":"    sqlalchemy \u003d ironic.db.sqlalchemy.migration"}],"source_content_type":"text/x-ttcn-cfg","patch_set":2,"id":"5a3905b3_42e656b5","line":144,"updated":"2017-01-19 18:48:00.000000000","message":"I was wondering why we call this \u0027ipmi\u0027 versus \u0027ipmitool\u0027. Since the interfaces are \u0027ipmitool\u0027, not \u0027ipmi\u0027.\n\nAlso, if we add something for ipminative -- would it be \u0027ipminative\u0027 or \u0027ipmi-native\u0027 or ??\n\nIt may seem silly to be asking this but I think it is worth spending a few minutes. We\u0027re going to copy/paste for future hardware types/interfaces...\n\nOr would we use ipmi hardware type for both, and add ipminative_* interfaces to the list of supported interfaces for iPMIHardware? hmm, can we mix and match, ipminative-power \u0026 ipmitool-management? :)","commit_id":"5758666d7947a18125ce49769717c5a879c28066"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5e0e50839a41a201c826c1f620614948ee3ed66e","unresolved":false,"context_lines":[{"line_number":141,"context_line":"ironic.hardware.types \u003d"},{"line_number":142,"context_line":"    fake-hardware \u003d ironic.drivers.fake_hardware:FakeHardware"},{"line_number":143,"context_line":"    manual-management \u003d ironic.drivers.generic:ManualManagementHardware"},{"line_number":144,"context_line":"    ipmi \u003d ironic.drivers.ipmi:IPMIHardware"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"ironic.database.migration_backend \u003d"},{"line_number":147,"context_line":"    sqlalchemy \u003d ironic.db.sqlalchemy.migration"}],"source_content_type":"text/x-ttcn-cfg","patch_set":2,"id":"5a3905b3_251eb40c","line":144,"in_reply_to":"5a3905b3_42e656b5","updated":"2017-01-19 18:55:14.000000000","message":"We call drivers by technology, not its specific implementation. IPMI, Drac, iLO, maybe add generation.\n\nSo yes, if we don\u0027t remove ipminative, we\u0027ll use the same IPMI type, and yes, if people want some fun, they\u0027ll be able to mix ipminative-power \u0026 ipmitool-management :)","commit_id":"5758666d7947a18125ce49769717c5a879c28066"}]}
