)]}'
{"specs/mitaka/approved/ironic-networks-support.rst":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"dc97a084e2e6f8b3a9471e2d9593f85f13c3249b","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* The ironic driver will need updates to be able to handle Ironic\u0027s \"port"},{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":62,"context_line":"  was previously added in Neutron."}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_701c7777","line":59,"updated":"2015-11-10 16:55:25.000000000","message":"What does supporting that concept entail?\n\nThere is talk for PCI passthrough for providing multiple VIFs across different PCI devices to enable a bond to be created. although the spec does not go as far to configure the bond, at this stage.\nhttps://review.openstack.org/#/c/142094/6/specs/mitaka/approved/distribute-pci-allocations.rst,cm","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5d02913233f2b58aa3926fa2b002810a47586a37","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* The ironic driver will need updates to be able to handle Ironic\u0027s \"port"},{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":62,"context_line":"  was previously added in Neutron."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba8a016a_c3b346e8","line":59,"in_reply_to":"da85f559_701c7777","updated":"2015-11-17 15:44:13.000000000","message":"tl;dr where Ironic reports mac addresses, it should also report the macs for these groups. Will add words :)","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"dc97a084e2e6f8b3a9471e2d9593f85f13c3249b","unresolved":false,"context_lines":[{"line_number":102,"context_line":"Users will be able to use arbitrary networks with Ironic instances. In the"},{"line_number":103,"context_line":"future, we should investigate how to allow the user to specify which physical"},{"line_number":104,"context_line":"connection gets connected to which network; however, that is outside the scope"},{"line_number":105,"context_line":"of this spec."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Performance Impact"},{"line_number":108,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_505ff3e4","line":105,"updated":"2015-11-10 16:55:25.000000000","message":"That should be all done in the neutron port configuration, and the user just passes the port into the API, as with virtualised instances, I assume? Am I missing something extra there?","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5d02913233f2b58aa3926fa2b002810a47586a37","unresolved":false,"context_lines":[{"line_number":102,"context_line":"Users will be able to use arbitrary networks with Ironic instances. In the"},{"line_number":103,"context_line":"future, we should investigate how to allow the user to specify which physical"},{"line_number":104,"context_line":"connection gets connected to which network; however, that is outside the scope"},{"line_number":105,"context_line":"of this spec."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Performance Impact"},{"line_number":108,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba8a016a_8e57a501","line":105,"in_reply_to":"da85f559_505ff3e4","updated":"2015-11-17 15:44:13.000000000","message":"I need more info, I guess. The issue here is that we can\u0027t use arbitrary MAC addresses with Ironic hardware, as we can\u0027t change the MAC for the existing NICs. And the user, in theory, doesn\u0027t know the MACs for the node that will be assigned. We\u0027ve basically decided to punt on this for now - I\u0027d be happy to be convinced otherwise. :)","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"dc97a084e2e6f8b3a9471e2d9593f85f13c3249b","unresolved":false,"context_lines":[{"line_number":116,"context_line":"if it\u0027s using the old flat network configuration, or if it\u0027s using the new"},{"line_number":117,"context_line":"configuration. I believe an attribute on the node can do what we need here,"},{"line_number":118,"context_line":"but need to investigate further. Should have no other deployer impact on the"},{"line_number":119,"context_line":"Nova side."},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"Developer impact"},{"line_number":122,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_d097638e","line":119,"updated":"2015-11-10 16:55:25.000000000","message":"Is this just nova-network vs neutron, or is there something else going on here too?","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5d02913233f2b58aa3926fa2b002810a47586a37","unresolved":false,"context_lines":[{"line_number":116,"context_line":"if it\u0027s using the old flat network configuration, or if it\u0027s using the new"},{"line_number":117,"context_line":"configuration. I believe an attribute on the node can do what we need here,"},{"line_number":118,"context_line":"but need to investigate further. Should have no other deployer impact on the"},{"line_number":119,"context_line":"Nova side."},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"Developer impact"},{"line_number":122,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba8a016a_aea869dc","line":119,"in_reply_to":"da85f559_d097638e","updated":"2015-11-17 15:44:13.000000000","message":"No, both are Neutron. The difference is that in the old case (flat network) we do want to bind the port immediately, and in the new case we do not (see the first paragraph in proposed change).","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"f6daf52703023f9210badf7767044a891079024c","unresolved":false,"context_lines":[{"line_number":171,"context_line":"[0] https://blueprints.launchpad.net/ironic/+spec/network-provider"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"[1] https://blueprints.launchpad.net/ironic/+spec/ironic-ml2-integration"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"History"},{"line_number":177,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3a29b11f_377840f2","line":174,"updated":"2015-10-20 05:56:09.000000000","message":"You may want to add Neutron blueprint as a reference as well. See here - https://blueprints.launchpad.net/neutron/+spec/neutron-ironic-integration","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5d02913233f2b58aa3926fa2b002810a47586a37","unresolved":false,"context_lines":[{"line_number":171,"context_line":"[0] https://blueprints.launchpad.net/ironic/+spec/network-provider"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"[1] https://blueprints.launchpad.net/ironic/+spec/ironic-ml2-integration"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"History"},{"line_number":177,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba8a016a_eed3d15d","line":174,"in_reply_to":"3a29b11f_377840f2","updated":"2015-11-17 15:44:13.000000000","message":"Done","commit_id":"4bf8f8f82b0ff17e807d95d53dd9c9ac65af00e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Proposed change"},{"line_number":47,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"* The port-create calls to Neutron need to be made with a null binding:host_id."},{"line_number":50,"context_line":"  This signals to Neutron that it shouldn\u0027t bind the port yet. To keep the"},{"line_number":51,"context_line":"  provisioning process away from the tenant network, we need to wait for the"},{"line_number":52,"context_line":"  deployment to complete before binding the port, which only Ironic can"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_29e377da","line":49,"updated":"2015-11-20 02:31:25.000000000","message":"port-create during instance spawn in the ironic driver?  Does this include interface attach?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Proposed change"},{"line_number":47,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"* The port-create calls to Neutron need to be made with a null binding:host_id."},{"line_number":50,"context_line":"  This signals to Neutron that it shouldn\u0027t bind the port yet. To keep the"},{"line_number":51,"context_line":"  provisioning process away from the tenant network, we need to wait for the"},{"line_number":52,"context_line":"  deployment to complete before binding the port, which only Ironic can"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_04e9511a","line":49,"in_reply_to":"ba8a016a_29e377da","updated":"2015-11-23 15:31:47.000000000","message":"Just during spawn, it isn\u0027t necessary when the instance is active.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  This signals to Neutron that it shouldn\u0027t bind the port yet. To keep the"},{"line_number":51,"context_line":"  provisioning process away from the tenant network, we need to wait for the"},{"line_number":52,"context_line":"  deployment to complete before binding the port, which only Ironic can"},{"line_number":53,"context_line":"  control. After completing the deployment, Ironic will make a port-update call"},{"line_number":54,"context_line":"  with: 1) a binding:host_id value of \"baremetal:$node_uuid\", and 2) physical"},{"line_number":55,"context_line":"  switchport information necessary to connect the port."},{"line_number":56,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_e9b7af82","line":53,"updated":"2015-11-20 02:31:25.000000000","message":"So the nova driver does the port-create to neutron without the binding:host_id, and then calls off to ironic to complete it\u0027s part and update the port (ironic calls neutron).\n\nWhat is the ironic driver doing while this is going on?  Do you plan on implementing something like the libvirt driver has for waiting on vif plug events via the os-server-external-events API so that we aren\u0027t asynchronously racing during spawn while waiting for networking to be setup?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  This signals to Neutron that it shouldn\u0027t bind the port yet. To keep the"},{"line_number":51,"context_line":"  provisioning process away from the tenant network, we need to wait for the"},{"line_number":52,"context_line":"  deployment to complete before binding the port, which only Ironic can"},{"line_number":53,"context_line":"  control. After completing the deployment, Ironic will make a port-update call"},{"line_number":54,"context_line":"  with: 1) a binding:host_id value of \"baremetal:$node_uuid\", and 2) physical"},{"line_number":55,"context_line":"  switchport information necessary to connect the port."},{"line_number":56,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_24ec9528","line":53,"in_reply_to":"ba8a016a_e9b7af82","updated":"2015-11-23 15:31:47.000000000","message":"Done","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  switchport information necessary to connect the port."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* The ironic driver will need updates to be able to handle Ironic\u0027s \"port"},{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":"  We\u0027ll need to change any driver methods where MAC addresses are reported to"},{"line_number":61,"context_line":"  report MACs for port groups and ungrouped ports, rather than just all ports."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_49803b8b","line":58,"updated":"2015-11-20 02:31:25.000000000","message":"Is a port group a PortCollection as defined here?\n\nhttp://docs.openstack.org/developer/ironic/webapi/v1.html#ports\n\nIf not, is it a new thing that\u0027s being added in [1] or [2] below?  Can you provide some background references here?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"3f4c38f944c4d708a90f4799202da95cf4c5df19","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  switchport information necessary to connect the port."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* The ironic driver will need updates to be able to handle Ironic\u0027s \"port"},{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":"  We\u0027ll need to change any driver methods where MAC addresses are reported to"},{"line_number":61,"context_line":"  report MACs for port groups and ungrouped ports, rather than just all ports."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_5b0bd67d","line":58,"in_reply_to":"ba8a016a_49803b8b","updated":"2015-11-22 21:07:14.000000000","message":"Correct. This is being defined as part of [1]. Here is the spec with details - https://review.openstack.org/#/c/188528/7/specs/liberty/ironic-ml2-integration.rst. \n\nPlease see line 229 in the spec and other places it he spec as well","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":"  We\u0027ll need to change any driver methods where MAC addresses are reported to"},{"line_number":61,"context_line":"  report MACs for port groups and ungrouped ports, rather than just all ports."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":64,"context_line":"  was previously added in Neutron."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_e9456f6e","line":61,"updated":"2015-11-20 02:31:25.000000000","message":"How does the ironic driver in nova know the difference?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"534478676031d1f182b11747c009a141650e8cab","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":"  We\u0027ll need to change any driver methods where MAC addresses are reported to"},{"line_number":61,"context_line":"  report MACs for port groups and ungrouped ports, rather than just all ports."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":64,"context_line":"  was previously added in Neutron."}],"source_content_type":"text/x-rst","patch_set":2,"id":"9a8ffd7b_1111c852","line":61,"in_reply_to":"ba8a016a_1b26ae16","updated":"2015-11-24 20:00:44.000000000","message":"OK, it\u0027d be helpful to have the basics from the other specs in here as a reference, since it\u0027s not fun bouncing between specs, and not being an ironic person, the details in the ironic specs are lost on me at times.  So as a nova reviewer, I really care about what the changes are in ironic (at a high level) and how they are used in nova.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"3f4c38f944c4d708a90f4799202da95cf4c5df19","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  groups\" as well as \"ports\". A port group is a single logical connection"},{"line_number":59,"context_line":"  comprised of multiple physical NICs; used in LAG and MLAG configurations."},{"line_number":60,"context_line":"  We\u0027ll need to change any driver methods where MAC addresses are reported to"},{"line_number":61,"context_line":"  report MACs for port groups and ungrouped ports, rather than just all ports."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":64,"context_line":"  was previously added in Neutron."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_1b26ae16","line":61,"in_reply_to":"ba8a016a_e9456f6e","updated":"2015-11-22 21:07:14.000000000","message":"The details are described in the same spec which I copied above.\nEssentially, the Ironic API configures this, and DB models have this information - this how ironic driver knows this information.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":63,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":64,"context_line":"  was previously added in Neutron."},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"This will support the basic tenant networking support we\u0027ve built out in"},{"line_number":67,"context_line":"Ironic; some thought should be put into the future of this integration. For"},{"line_number":68,"context_line":"example, in the future we\u0027ll want to support multiple networks via VLAN or"},{"line_number":69,"context_line":"VXLAN over a pair of bonded NICs (currently Nova enforces a 1:1 mapping of NICs"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_e93c8fe2","line":66,"updated":"2015-11-20 02:31:25.000000000","message":"\u0027we\u0027ve built out\u0027 as in [1] and [2] which are approved but not complete?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":63,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":64,"context_line":"  was previously added in Neutron."},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"This will support the basic tenant networking support we\u0027ve built out in"},{"line_number":67,"context_line":"Ironic; some thought should be put into the future of this integration. For"},{"line_number":68,"context_line":"example, in the future we\u0027ll want to support multiple networks via VLAN or"},{"line_number":69,"context_line":"VXLAN over a pair of bonded NICs (currently Nova enforces a 1:1 mapping of NICs"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_c48269c8","line":66,"in_reply_to":"ba8a016a_db76e605","updated":"2015-11-23 15:31:47.000000000","message":"Done","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"3f4c38f944c4d708a90f4799202da95cf4c5df19","unresolved":false,"context_lines":[{"line_number":63,"context_line":"* A BAREMETAL vnic type will be added to support the BAREMETAL vnic type that"},{"line_number":64,"context_line":"  was previously added in Neutron."},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"This will support the basic tenant networking support we\u0027ve built out in"},{"line_number":67,"context_line":"Ironic; some thought should be put into the future of this integration. For"},{"line_number":68,"context_line":"example, in the future we\u0027ll want to support multiple networks via VLAN or"},{"line_number":69,"context_line":"VXLAN over a pair of bonded NICs (currently Nova enforces a 1:1 mapping of NICs"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_db76e605","line":66,"in_reply_to":"ba8a016a_e93c8fe2","updated":"2015-11-22 21:07:14.000000000","message":"They both are pretty much complete and reasonably tested.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":72,"context_line":"Alternatives"},{"line_number":73,"context_line":"------------"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"One alternative is to subclass the NeutronAPI to have it do what we want. This"},{"line_number":76,"context_line":"may help make the future work noted above easier. However, as this is used at"},{"line_number":77,"context_line":"the API and conductor layers, doing this may break multi-hypervisor"},{"line_number":78,"context_line":"deployments."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_8c3dd1c5","line":75,"updated":"2015-11-20 02:31:25.000000000","message":"Are you referring to this?\n\nhttps://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L256\n\nI guess breaking it would depend - if you could special case it such that if the port type is BAREMETAL you do fancy new thing, then that shouldn\u0027t break multi-hypervisor deployments.\n\nThis does, however, make me wonder where the changes go in this spec, in the ironic driver, in the neutronv2 API in nova, both?  Can we get more specific about where the changes go and what the flow is?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":72,"context_line":"Alternatives"},{"line_number":73,"context_line":"------------"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"One alternative is to subclass the NeutronAPI to have it do what we want. This"},{"line_number":76,"context_line":"may help make the future work noted above easier. However, as this is used at"},{"line_number":77,"context_line":"the API and conductor layers, doing this may break multi-hypervisor"},{"line_number":78,"context_line":"deployments."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_d743f911","line":75,"in_reply_to":"ba8a016a_8c3dd1c5","updated":"2015-11-23 15:31:47.000000000","message":"Yeah, I\u0027ve added some more details.\n\nAs far as looking for the BAREMETAL port type, that won\u0027t work out here as we need to modify the initial port-create call.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":142,"context_line":"Work Items"},{"line_number":143,"context_line":"----------"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* Cause port-create calls to send a null binding:host_id."},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_ec6fbdc1","line":145,"updated":"2015-11-20 02:31:25.000000000","message":"Since this is a cross-project spec, and depends on the changes in ironic to know that the capability is there to handle this scenario, how will the ironic driver know that the ironic installation it\u0027s talking to understands this?\n\nAlso, is this change in the neutronv2 API code in nova, or the ironic driver?  I\u0027m assuming the neutronv2 API code that deals with baremetal ports.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":142,"context_line":"Work Items"},{"line_number":143,"context_line":"----------"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* Cause port-create calls to send a null binding:host_id."},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_978491b1","line":145,"in_reply_to":"ba8a016a_7bd57ab7","updated":"2015-11-23 15:31:47.000000000","message":"Done","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"3f4c38f944c4d708a90f4799202da95cf4c5df19","unresolved":false,"context_lines":[{"line_number":142,"context_line":"Work Items"},{"line_number":143,"context_line":"----------"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* Cause port-create calls to send a null binding:host_id."},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_7bd57ab7","line":145,"in_reply_to":"ba8a016a_ec6fbdc1","updated":"2015-11-22 21:07:14.000000000","message":"Please see here - https://review.openstack.org/#/c/194413\n\nThis should be able to answer your question, I believe.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"* Make changes to the Ironic driver to handle Ironic \"port groups\" in addition"},{"line_number":150,"context_line":"  to Ironic \"ports\"."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_8cb2b14a","line":149,"updated":"2015-11-20 02:31:25.000000000","message":"We need more details on how it will tell the difference.  Does ironic put that information in the port\u0027s \"extra\" metadata details?","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"* Make changes to the Ironic driver to handle Ironic \"port groups\" in addition"},{"line_number":150,"context_line":"  to Ironic \"ports\"."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_b7b5157f","line":149,"in_reply_to":"ba8a016a_5be756ac","updated":"2015-11-23 15:31:47.000000000","message":"Done","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"534478676031d1f182b11747c009a141650e8cab","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"* Make changes to the Ironic driver to handle Ironic \"port groups\" in addition"},{"line_number":150,"context_line":"  to Ironic \"ports\"."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9a8ffd7b_d18d807c","line":149,"in_reply_to":"ba8a016a_5be756ac","updated":"2015-11-24 20:00:44.000000000","message":"Sukhdev, as noted earlier, I\u0027m not interested in knowing at a very low level how ironic works with this, only what it means for nova and how nova will interact with it.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"3f4c38f944c4d708a90f4799202da95cf4c5df19","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"* Make changes to the Ironic driver to handle Ironic \"port groups\" in addition"},{"line_number":150,"context_line":"  to Ironic \"ports\"."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_5be756ac","line":149,"in_reply_to":"ba8a016a_8cb2b14a","updated":"2015-11-22 21:07:14.000000000","message":"Please see the spec that I pasted to earlier comment. It has all the details. \n\nIf you interested in more details of the implementation - all patches are listed here - https://etherpad.openstack.org/p/ironic-neutron-mid-cycle\n\nPlease see patches at lines - 26 through 30","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02614d63bc29595806bc4c895e026ace886c5add","unresolved":false,"context_lines":[{"line_number":165,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"There is substantial documentation work to be done on the Ironic side, however"},{"line_number":168,"context_line":"there isn\u0027t any work to do on the Nova side."},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"References"},{"line_number":171,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_cc7af976","line":168,"updated":"2015-11-20 02:31:25.000000000","message":"There are no docs today in the ops guides or manuals about networking limitations with nova/ironic that would need to be updated?  Maybe that\u0027s all covered in the ironic docs.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6558,"name":"Sukhdev Kapur","email":"sukhdevkapur@gmail.com","username":"sukhdev-8"},"change_message_id":"3f4c38f944c4d708a90f4799202da95cf4c5df19","unresolved":false,"context_lines":[{"line_number":165,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"There is substantial documentation work to be done on the Ironic side, however"},{"line_number":168,"context_line":"there isn\u0027t any work to do on the Nova side."},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"References"},{"line_number":171,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_dbfb4646","line":168,"in_reply_to":"ba8a016a_cc7af976","updated":"2015-11-22 21:07:14.000000000","message":"Here is the spec which addresses documentation from the Ironic side - https://review.openstack.org/#/c/228496\n\nWe would appriciate your feedback on the spec","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"fcff5e7bacb0e79840451827ed6ac4a456f50add","unresolved":false,"context_lines":[{"line_number":165,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"There is substantial documentation work to be done on the Ironic side, however"},{"line_number":168,"context_line":"there isn\u0027t any work to do on the Nova side."},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"References"},{"line_number":171,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba8a016a_1a2e88fa","line":168,"in_reply_to":"ba8a016a_dbfb4646","updated":"2015-11-23 15:31:47.000000000","message":"No, I can\u0027t find anything about Ironic in the ops guides or manuals (something I\u0027d like to fix this cycle). All of Ironic\u0027s docs are in the Ironic tree right now.","commit_id":"763e7d47b3cdb1b062bca6072c566a99f53dc6f2"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":52,"context_line":"  deployment process, Ironic will make a port-update call with: 1) a"},{"line_number":53,"context_line":"  binding:host_id value of \"baremetal:$node_uuid\", and 2) physical switchport"},{"line_number":54,"context_line":"  information necessary to connect the port. This will happen while the virt"},{"line_number":55,"context_line":"  driver is waiting for the Ironic node to get a state of \"active\"."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"  To accomplish this, we\u0027ll need to allow the virt driver to define the"},{"line_number":58,"context_line":"  `binding:host_id` field. So we\u0027ll need to add a method to the base virt"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_71b614de","line":55,"updated":"2015-11-24 20:14:36.000000000","message":"Do we have timeouts in place for this? Or I guess if the port-update from the ironic side fails, the deploy should fail and we\u0027d be going to an error state on the ironic side, detected on the nova virt driver side and fail the spawn.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"777ca751de6419f9034d5ae62d88bf6e7e5160b9","unresolved":false,"context_lines":[{"line_number":52,"context_line":"  deployment process, Ironic will make a port-update call with: 1) a"},{"line_number":53,"context_line":"  binding:host_id value of \"baremetal:$node_uuid\", and 2) physical switchport"},{"line_number":54,"context_line":"  information necessary to connect the port. This will happen while the virt"},{"line_number":55,"context_line":"  driver is waiting for the Ironic node to get a state of \"active\"."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"  To accomplish this, we\u0027ll need to allow the virt driver to define the"},{"line_number":58,"context_line":"  `binding:host_id` field. So we\u0027ll need to add a method to the base virt"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_1fe54f08","line":55,"in_reply_to":"9a8ffd7b_71b614de","updated":"2015-11-24 20:53:09.000000000","message":"Yeah, it\u0027s all part of the general deploy process, so a timeout or failure is treated like any other deploy timeout or failure.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  will be available in the network_provider attribute for the Ironic node)."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"  The `plug_vifs` and `unplug_vifs` methods will also need to be similarly"},{"line_number":64,"context_line":"  modified to put the pass the VIF UUID to port groups and ungrouped port"},{"line_number":65,"context_line":"  objects, rather than all ports."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"* Ironic now has a concept of \"port groups\"[1], which is a single logical"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_91a618c0","line":64,"updated":"2015-11-24 20:14:36.000000000","message":"s/to put the pass/to pass/","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":78,"context_line":"     [portgroup.address for portgroup in get_portgroups_for_node()])"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* A BAREMETAL vnic type will be added to the network model to support the"},{"line_number":81,"context_line":"  BAREMETAL vnic type that was previously added in Neutron."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"This will support the basic tenant networking support we are building out in"},{"line_number":84,"context_line":"Ironic; some thought should be put into the future of this integration. For"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_d11d80be","line":81,"updated":"2015-11-24 20:14:36.000000000","message":"nit: would be good to have a reference to the neutron change that added this so we see when it was added.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":81,"context_line":"  BAREMETAL vnic type that was previously added in Neutron."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"This will support the basic tenant networking support we are building out in"},{"line_number":84,"context_line":"Ironic; some thought should be put into the future of this integration. For"},{"line_number":85,"context_line":"example, in the future we\u0027ll want to support multiple networks via VLAN or"},{"line_number":86,"context_line":"VXLAN over a pair of bonded NICs (currently Nova enforces a 1:1 mapping of NICs"},{"line_number":87,"context_line":"to networks, as in the virtual world NICs can be created on the fly)."}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_515f5072","line":84,"updated":"2015-11-24 20:14:36.000000000","message":"I\u0027m not sure how I feel about this \u0027some thought should be put into\u0027 wording here - do we need to think about this now? Does doing what\u0027s proposed make doing these other things harder in the future? Or just stating limitations here?","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"777ca751de6419f9034d5ae62d88bf6e7e5160b9","unresolved":false,"context_lines":[{"line_number":81,"context_line":"  BAREMETAL vnic type that was previously added in Neutron."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"This will support the basic tenant networking support we are building out in"},{"line_number":84,"context_line":"Ironic; some thought should be put into the future of this integration. For"},{"line_number":85,"context_line":"example, in the future we\u0027ll want to support multiple networks via VLAN or"},{"line_number":86,"context_line":"VXLAN over a pair of bonded NICs (currently Nova enforces a 1:1 mapping of NICs"},{"line_number":87,"context_line":"to networks, as in the virtual world NICs can be created on the fly)."}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_3fe7f3e5","line":84,"in_reply_to":"9a8ffd7b_515f5072","updated":"2015-11-24 20:53:09.000000000","message":"You\u0027re right, I should probably drop this, I wanted to be sure I didn\u0027t accidentally make the future hard. These changes should (IMO) be fine for the future stuff we need to do.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"Users will be able to use arbitrary networks with Ironic instances. In the"},{"line_number":122,"context_line":"future, we should investigate how to allow the user to specify which physical"},{"line_number":123,"context_line":"connection gets connected to which network; however, that is outside the scope"},{"line_number":124,"context_line":"of this spec."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_51a43056","line":123,"updated":"2015-11-24 20:14:36.000000000","message":"Sounds like API changes for the network model stuff in the boot request, which everyone seems to want to do lately, because neutron allows you do about a billion different things but you can only do so much with the existing nova API when specifying network details in the request.\n\nSo yeah, good to leave that out of this spec.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":"TODO(jroll): we\u0027ll need to come up with some sort of signal for Nova to tell"},{"line_number":135,"context_line":"if it\u0027s using the old flat network configuration, or if it\u0027s using the new"},{"line_number":136,"context_line":"configuration. I believe an attribute on the node can do what we need here,"},{"line_number":137,"context_line":"but need to investigate further. Should have no other deployer impact on the"},{"line_number":138,"context_line":"Nova side."},{"line_number":139,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_7163741b","line":136,"updated":"2015-11-24 20:14:36.000000000","message":"Isn\u0027t that done here?\n\nhttps://review.openstack.org/#/c/194413/6/nova/virt/ironic/driver.py\n\nIs this TODO valid anymore? Or is there something that needs to be handled on the Ironic side before we can move forward with this spec?  Basically, a TODO in the spec to me means it\u0027s not ready to be approved.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"777ca751de6419f9034d5ae62d88bf6e7e5160b9","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":"TODO(jroll): we\u0027ll need to come up with some sort of signal for Nova to tell"},{"line_number":135,"context_line":"if it\u0027s using the old flat network configuration, or if it\u0027s using the new"},{"line_number":136,"context_line":"configuration. I believe an attribute on the node can do what we need here,"},{"line_number":137,"context_line":"but need to investigate further. Should have no other deployer impact on the"},{"line_number":138,"context_line":"Nova side."},{"line_number":139,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_7f881b23","line":136,"in_reply_to":"9a8ffd7b_7163741b","updated":"2015-11-24 20:53:09.000000000","message":"You\u0027re right, I should drop this.","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"94831d64d2ce03e5f3bfc78686d306e5a99aa402","unresolved":false,"context_lines":[{"line_number":159,"context_line":"Work Items"},{"line_number":160,"context_line":"----------"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"* Cause port-create calls to send a null binding:host_id."},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":165,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_91361802","line":162,"updated":"2015-11-24 20:14:36.000000000","message":"Isn\u0027t this already the case today? As in, we don\u0027t specify binding:host_id on port-create during allocate_for_instance, so isn\u0027t omitting the same thing?\n\nhttps://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L337","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"75957b7891d5ccd3374c39e23182132b6eb1c39a","unresolved":false,"context_lines":[{"line_number":159,"context_line":"Work Items"},{"line_number":160,"context_line":"----------"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"* Cause port-create calls to send a null binding:host_id."},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":165,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_b41a256d","line":162,"in_reply_to":"9a8ffd7b_5f1197ab","updated":"2015-11-24 22:13:11.000000000","message":"Oh right, OK, god, neutron API sadness....","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"777ca751de6419f9034d5ae62d88bf6e7e5160b9","unresolved":false,"context_lines":[{"line_number":159,"context_line":"Work Items"},{"line_number":160,"context_line":"----------"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"* Cause port-create calls to send a null binding:host_id."},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"* Add the BAREMETAL vnic type."},{"line_number":165,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"9a8ffd7b_5f1197ab","line":162,"in_reply_to":"9a8ffd7b_91361802","updated":"2015-11-24 20:53:09.000000000","message":"We do specify it, actually: https://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L794","commit_id":"3e6a58df8fbd0c67def719fd6226fe87f779111d"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"d42c996d9f734d8701aa04164e25ea1eb877173e","unresolved":false,"context_lines":[{"line_number":84,"context_line":"Ironic. In the future, we\u0027ll want to support multiple networks via VLAN or"},{"line_number":85,"context_line":"VXLAN over a pair of bonded NICs (currently Nova enforces a 1:1 mapping of NICs"},{"line_number":86,"context_line":"to networks, as in the virtual world NICs can be created on the fly), but these"},{"line_number":87,"context_line":"items are outside the scope of this spec."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"Alternatives"},{"line_number":90,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a8ffd7b_a2e39904","line":87,"updated":"2015-11-26 16:10:16.000000000","message":"Nit: I guess os vif lib might be affected by this, eventually. But lets keen that out of it for now.","commit_id":"2922bc01b5c3496cbde7209ac2a3779d3362e1a7"}]}
