)]}'
{"specs/kilo/capabilties.rst":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"134f4ef9a25d85beee72f2e31f2fa2efbc4166c0","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"The first proposed change is to change the newly introduced ``boot_option``"},{"line_number":37,"context_line":"in Ironic.  Currently ``boot_option`` is a boolean can have just two values -"},{"line_number":38,"context_line":"``netboot`` or ``localboot``. ``netboot`` is the default value. When"},{"line_number":39,"context_line":"scheduling from Nova, using ``localboot\u003dtrue`` might seem better than providing"},{"line_number":40,"context_line":"``boot_option\u003dlocal``.  Hereafter in the spec, ``boot_option\u003dlocal`` is"},{"line_number":41,"context_line":"referred to as ``localboot\u003dtrue``."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_3b11cf05","line":38,"updated":"2015-02-23 21:40:01.000000000","message":"I think you mean \u0027local\u0027, not \u0027localboot\u0027.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"2fce02e2f98f5af35b8c0d48f0b147716f23630b","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"The first proposed change is to change the newly introduced ``boot_option``"},{"line_number":37,"context_line":"in Ironic.  Currently ``boot_option`` is a boolean can have just two values -"},{"line_number":38,"context_line":"``netboot`` or ``localboot``. ``netboot`` is the default value. When"},{"line_number":39,"context_line":"scheduling from Nova, using ``localboot\u003dtrue`` might seem better than providing"},{"line_number":40,"context_line":"``boot_option\u003dlocal``.  Hereafter in the spec, ``boot_option\u003dlocal`` is"},{"line_number":41,"context_line":"referred to as ``localboot\u003dtrue``."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_b43829d4","line":38,"in_reply_to":"ba7be1f8_3b11cf05","updated":"2015-02-25 08:36:33.000000000","message":"Yeah, sorry I meant ``local``.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"134f4ef9a25d85beee72f2e31f2fa2efbc4166c0","unresolved":false,"context_lines":[{"line_number":38,"context_line":"``netboot`` or ``localboot``. ``netboot`` is the default value. When"},{"line_number":39,"context_line":"scheduling from Nova, using ``localboot\u003dtrue`` might seem better than providing"},{"line_number":40,"context_line":"``boot_option\u003dlocal``.  Hereafter in the spec, ``boot_option\u003dlocal`` is"},{"line_number":41,"context_line":"referred to as ``localboot\u003dtrue``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"There are two kinds of capabilities in Ironic right now:"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_3b846f0b","line":41,"updated":"2015-02-23 21:40:01.000000000","message":"I don\u0027t know what you mean by the above two sentences.\n\nWhat do you mean by \u0027might seem better\u0027? Is the nova scheduling now using \u0027boot_option\u003dlocal\u0027? I also don\u0027t understand from reading this, whether it is the nova scheduler code that is looking for this stuff, or whether you mean the ironic code is using this stuff. Given that this spec is about ironic, not nova, I would think ironic, except that you say \u0027When scheduling from Nova, using...\u0027 and it isn\u0027t clear WHAT is using...?","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"2fce02e2f98f5af35b8c0d48f0b147716f23630b","unresolved":false,"context_lines":[{"line_number":38,"context_line":"``netboot`` or ``localboot``. ``netboot`` is the default value. When"},{"line_number":39,"context_line":"scheduling from Nova, using ``localboot\u003dtrue`` might seem better than providing"},{"line_number":40,"context_line":"``boot_option\u003dlocal``.  Hereafter in the spec, ``boot_option\u003dlocal`` is"},{"line_number":41,"context_line":"referred to as ``localboot\u003dtrue``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"There are two kinds of capabilities in Ironic right now:"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_4aa2e8fd","line":41,"in_reply_to":"ba7be1f8_3b846f0b","updated":"2015-02-25 08:36:33.000000000","message":"Yes, as explained below, similar to L94, if someone adds like below in Ironic,\n\n  ironic node-update \u003c\u003e replace properties/capabilities\u003d\"boot_option:local\"\n\nthen Ironic will pass on that information to nova scheduler which can be used for scheduling.  Then nova scheduler can match a flavor key of capabilities:boot_option as local.  I will make it clear here.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"134f4ef9a25d85beee72f2e31f2fa2efbc4166c0","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"#. Hardware Capabilities - These are populated in Ironic by introspection or"},{"line_number":46,"context_line":"   can be filled by operator manually in Node\u0027s properties in Ironic database."},{"line_number":47,"context_line":"   These capabilities are just for scheduling purposes only and Ironic doesn\u0027t"},{"line_number":48,"context_line":"   take any action on them.  Some examples include \u0027iLO Firmware version\u0027,"},{"line_number":49,"context_line":"   \u0027Server Name/Model\u0027, etc."},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_9bcd5b60","line":47,"updated":"2015-02-23 21:40:01.000000000","message":"How about something like \u0027These capabilities are passed from Ironic to nova, and used by nova for scheduling purposes. Ironic doesn\u0027t use this information in any of its algorithms.\u0027 (I think that\u0027s what you mean, although I\u0027m not sure I like my last sentence.)","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"2fce02e2f98f5af35b8c0d48f0b147716f23630b","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"#. Hardware Capabilities - These are populated in Ironic by introspection or"},{"line_number":46,"context_line":"   can be filled by operator manually in Node\u0027s properties in Ironic database."},{"line_number":47,"context_line":"   These capabilities are just for scheduling purposes only and Ironic doesn\u0027t"},{"line_number":48,"context_line":"   take any action on them.  Some examples include \u0027iLO Firmware version\u0027,"},{"line_number":49,"context_line":"   \u0027Server Name/Model\u0027, etc."},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_2a84d45c","line":47,"in_reply_to":"ba7be1f8_9bcd5b60","updated":"2015-02-25 08:36:33.000000000","message":"Yeah it\u0027s the same.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"134f4ef9a25d85beee72f2e31f2fa2efbc4166c0","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"      ironic node-update \u003c\u003e replace properties/capabilities\u003d\"foo:true\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"   * This is polled by Ironic virt driver in Nova and then it is passed to Nova"},{"line_number":60,"context_line":"     scheduler."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"   * The user may request a node having a particular feature or a particular"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_db735313","line":59,"updated":"2015-02-23 21:40:01.000000000","message":"It might be useful to expand on what \u0027This\u0027 is.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"2fce02e2f98f5af35b8c0d48f0b147716f23630b","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"      ironic node-update \u003c\u003e replace properties/capabilities\u003d\"foo:true\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"   * This is polled by Ironic virt driver in Nova and then it is passed to Nova"},{"line_number":60,"context_line":"     scheduler."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"   * The user may request a node having a particular feature or a particular"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_4a890874","line":59,"in_reply_to":"ba7be1f8_db735313","updated":"2015-02-25 08:36:33.000000000","message":"Done","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"134f4ef9a25d85beee72f2e31f2fa2efbc4166c0","unresolved":false,"context_lines":[{"line_number":65,"context_line":"       nova flavor-key baremetal-flavor set capabilities:foo\u003d\"true\""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"     If introspection populates some hardware properties, then it can be used"},{"line_number":68,"context_line":"     with any of the supported operators in Nova::"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"       nova flavor-key baremetal-flavor set capabilities:model\u003d\"\u003cin\u003e Proliant\""},{"line_number":71,"context_line":"       nova flavor-key baremetal-flavor set capabilities:nic_cap_gbps\u003d\"\u003e\u003d 10\""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_1bcc0b35","line":68,"updated":"2015-02-23 21:40:01.000000000","message":"Why is it only introspection, can\u0027t the operator manually add properties/capabilities that can also be used this way?","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"2fce02e2f98f5af35b8c0d48f0b147716f23630b","unresolved":false,"context_lines":[{"line_number":65,"context_line":"       nova flavor-key baremetal-flavor set capabilities:foo\u003d\"true\""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"     If introspection populates some hardware properties, then it can be used"},{"line_number":68,"context_line":"     with any of the supported operators in Nova::"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"       nova flavor-key baremetal-flavor set capabilities:model\u003d\"\u003cin\u003e Proliant\""},{"line_number":71,"context_line":"       nova flavor-key baremetal-flavor set capabilities:nic_cap_gbps\u003d\"\u003e\u003d 10\""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_8a7f8065","line":68,"in_reply_to":"ba7be1f8_1bcc0b35","updated":"2015-02-25 08:36:33.000000000","message":"Yes, it can be added manually be operator also.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"134f4ef9a25d85beee72f2e31f2fa2efbc4166c0","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"   * Once a nova boot request comes with the above flavor, Nova scheduler"},{"line_number":74,"context_line":"     matches nodes with the mentioned capabilities and then Ironic virt driver"},{"line_number":75,"context_line":"     passes them down to Node\u0027s instance_info."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"   * Ironic doesn\u0027t need to take any action on them.  This is because"},{"line_number":78,"context_line":"     Nova scheduler has already made sure that the selected node supports"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_a63686e5","line":75,"updated":"2015-02-23 21:40:01.000000000","message":"How about something like \u0027When a \u0027nova boot\u0027 request with baremetal-flavor specified, the Nova scheduler will try to match an Ironic node with the mentioned capabilities. If a node is matched, the virt.ironic.driver passes the node with the flavor capabilities to Ironic, via the node\u0027s instance_info.","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"},{"author":{"_account_id":9315,"name":"ramesh","email":"rameshg87@gmail.com","username":"rameshg87"},"change_message_id":"2fce02e2f98f5af35b8c0d48f0b147716f23630b","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"   * Once a nova boot request comes with the above flavor, Nova scheduler"},{"line_number":74,"context_line":"     matches nodes with the mentioned capabilities and then Ironic virt driver"},{"line_number":75,"context_line":"     passes them down to Node\u0027s instance_info."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"   * Ironic doesn\u0027t need to take any action on them.  This is because"},{"line_number":78,"context_line":"     Nova scheduler has already made sure that the selected node supports"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba7be1f8_aa97e48e","line":75,"in_reply_to":"ba7be1f8_a63686e5","updated":"2015-02-25 08:36:33.000000000","message":"Done","commit_id":"c0b75695e03065f7934ae250cb9ab52ea466f2c6"}]}
