)]}'
{"releasenotes/notes/add_portgroup_support-7d5c6663bb00684a.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for portgroups with a new endpoint ``/v1/portgroups/``"},{"line_number":5,"context_line":"    in REST API version 1.23. Ports can be combined into"},{"line_number":6,"context_line":"    portgroups to support static LAG and MLAG configurations."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a430d35_3d5c2ded","line":4,"updated":"2017-02-09 21:42:17.000000000","message":"i don\u0027t think it is worth changing all occurrence, but I think when we talk about port groups, it is s/portgroups/port groups/ :)","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for portgroups with a new endpoint ``/v1/portgroups/``"},{"line_number":5,"context_line":"    in REST API version 1.23. Ports can be combined into"},{"line_number":6,"context_line":"    portgroups to support static LAG and MLAG configurations."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_e8955d40","line":4,"in_reply_to":"1a430d35_3d5c2ded","updated":"2017-02-10 20:16:48.000000000","message":"Well, it isn\u0027t difficult, so I\u0027ll do that. Done.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fa31d9ce_b03060a0","line":7,"updated":"2017-02-09 21:42:17.000000000","message":"There\u0027s a bunch of feature stuff that relates to port groups. I think it would be good to have them under one feature. I\u0027d probably also just mention the highest API version that supports port groups, might be 1.26, unless we really want to mention which API version had which part of portgroups supported. :)","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fa31d9ce_68888d23","line":7,"in_reply_to":"fa31d9ce_b03060a0","updated":"2017-02-10 20:16:48.000000000","message":"Makes sense, can do. Will probably put a patch on the end of this chain so we don\u0027t have conflicts between patches.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for port groups with a new endpoint ``/v1/portgroups/``."},{"line_number":5,"context_line":"    Ports can be combined into port groups to support static LAG and MLAG"},{"line_number":6,"context_line":"    configurations."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    Note the if the optional ``mode`` field for a port group is not specified,"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_def8507f","line":5,"range":{"start_line":5,"start_character":61,"end_line":5,"end_character":73},"updated":"2017-02-10 23:22:44.000000000","message":"nit: I would prefer that we spell out the acronyms.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for port groups with a new endpoint ``/v1/portgroups/``."},{"line_number":5,"context_line":"    Ports can be combined into port groups to support static LAG and MLAG"},{"line_number":6,"context_line":"    configurations."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    Note the if the optional ``mode`` field for a port group is not specified,"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_68ef7bb0","line":5,"range":{"start_line":5,"start_character":61,"end_line":5,"end_character":73},"in_reply_to":"fa31d9ce_11fd793a","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for port groups with a new endpoint ``/v1/portgroups/``."},{"line_number":5,"context_line":"    Ports can be combined into port groups to support static LAG and MLAG"},{"line_number":6,"context_line":"    configurations."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    Note the if the optional ``mode`` field for a port group is not specified,"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_11fd793a","line":5,"range":{"start_line":5,"start_character":61,"end_line":5,"end_character":73},"in_reply_to":"fa31d9ce_def8507f","updated":"2017-02-11 00:15:39.000000000","message":"+1 I remember that in textbooks an acronym is only spelled out the first time is introduced. But in code/docs, there is not \u0027a first time\u0027 :)","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    * a new endpoint ``/v1/nodes/\u003cnode\u003e/portgroups``."},{"line_number":15,"context_line":"    * a new endpoint ``/v1/portgroups/\u003cportgroup\u003e/ports``."},{"line_number":16,"context_line":"    * a new field ``portgroup_uuid`` on the port object. This is the UUID"},{"line_number":17,"context_line":"      of a port group that this port belongs to, or None if it doesn\u0027t"},{"line_number":18,"context_line":"      belong to any port group."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    All port group API functions are available in version 1.26 of the REST API."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_fe3c3431","line":17,"range":{"start_line":17,"start_character":63,"end_line":17,"end_character":70},"updated":"2017-02-10 23:22:44.000000000","message":"nit: I think \u0027does not\u0027 might read better, but it is just me.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    * a new endpoint ``/v1/nodes/\u003cnode\u003e/portgroups``."},{"line_number":15,"context_line":"    * a new endpoint ``/v1/portgroups/\u003cportgroup\u003e/ports``."},{"line_number":16,"context_line":"    * a new field ``portgroup_uuid`` on the port object. This is the UUID"},{"line_number":17,"context_line":"      of a port group that this port belongs to, or None if it doesn\u0027t"},{"line_number":18,"context_line":"      belong to any port group."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    All port group API functions are available in version 1.26 of the REST API."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_a87df3e8","line":17,"range":{"start_line":17,"start_character":63,"end_line":17,"end_character":70},"in_reply_to":"fa31d9ce_fe3c3431","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":17,"context_line":"      of a port group that this port belongs to, or None if it doesn\u0027t"},{"line_number":18,"context_line":"      belong to any port group."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    All port group API functions are available in version 1.26 of the REST API."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_de269015","line":20,"range":{"start_line":20,"start_character":47,"end_line":20,"end_character":49},"updated":"2017-02-10 23:22:44.000000000","message":"nit s/in/starting in/","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":17,"context_line":"      of a port group that this port belongs to, or None if it doesn\u0027t"},{"line_number":18,"context_line":"      belong to any port group."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    All port group API functions are available in version 1.26 of the REST API."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_c884e7d5","line":20,"range":{"start_line":20,"start_character":47,"end_line":20,"end_character":49},"in_reply_to":"fa31d9ce_de269015","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    Ports can be combined into port groups to support static Link Aggregation"},{"line_number":6,"context_line":"    Group (LAG) and Multi-Chassis LAG (MLAG) configurations."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    Note the if the optional ``mode`` field for a port group is not specified,"},{"line_number":9,"context_line":"    its value will be set to the value of the configuration option"},{"line_number":10,"context_line":"    ``[DEFAULT]default_portgroup_mode``, which defaults to ``active-backup``."},{"line_number":11,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_6d2a142e","line":8,"updated":"2017-02-13 19:27:03.000000000","message":"nit s/the if/that if/ ?","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    Ports can be combined into port groups to support static Link Aggregation"},{"line_number":6,"context_line":"    Group (LAG) and Multi-Chassis LAG (MLAG) configurations."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    Note the if the optional ``mode`` field for a port group is not specified,"},{"line_number":9,"context_line":"    its value will be set to the value of the configuration option"},{"line_number":10,"context_line":"    ``[DEFAULT]default_portgroup_mode``, which defaults to ``active-backup``."},{"line_number":11,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_bd88bbc6","line":8,"in_reply_to":"fa31d9ce_6d2a142e","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"}],"releasenotes/notes/add_standalone_ports_supported_field-4c59702a052acf38.yaml":[{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add the field `standalone_ports_supported` to the"},{"line_number":4,"context_line":"    port group object. This field indicates whether"},{"line_number":5,"context_line":"    ports that are members of this port group can be"},{"line_number":6,"context_line":"    used as stand-alone ports. The default is True."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_f17465d0","line":6,"range":{"start_line":6,"start_character":46,"end_line":6,"end_character":50},"updated":"2017-02-11 00:15:39.000000000","message":"nit: Other docs show it in verbatim format: ``True``","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add the field `standalone_ports_supported` to the"},{"line_number":4,"context_line":"    port group object. This field indicates whether"},{"line_number":5,"context_line":"    ports that are members of this port group can be"},{"line_number":6,"context_line":"    used as stand-alone ports. The default is True."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_a8641349","line":6,"range":{"start_line":6,"start_character":46,"end_line":6,"end_character":50},"in_reply_to":"fa31d9ce_f17465d0","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add the field `standalone_ports_supported` to the"},{"line_number":4,"context_line":"    port group object. This field indicates whether"},{"line_number":5,"context_line":"    ports that are members of this port group can be"},{"line_number":6,"context_line":"    used as stand-alone ports. The default is ``True``."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_2d649c47","line":3,"updated":"2017-02-13 19:27:03.000000000","message":"nit s/Add/Adds/\n\nDo we need to mention which API version this is in? (I can\u0027t remember if it is microversioned or not but it definitely won\u0027t be avail before portgroups is.)","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add the field `standalone_ports_supported` to the"},{"line_number":4,"context_line":"    port group object. This field indicates whether"},{"line_number":5,"context_line":"    ports that are members of this port group can be"},{"line_number":6,"context_line":"    used as stand-alone ports. The default is ``True``."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_0d7a78f1","line":6,"updated":"2017-02-13 19:27:03.000000000","message":"we don\u0027t want to combine this with the portgroups one? add_portgroup_support-7d5c6663bb00684a.yaml","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add the field `standalone_ports_supported` to the"},{"line_number":4,"context_line":"    port group object. This field indicates whether"},{"line_number":5,"context_line":"    ports that are members of this port group can be"},{"line_number":6,"context_line":"    used as stand-alone ports. The default is ``True``."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_80ae2a96","line":6,"in_reply_to":"fa31d9ce_0d7a78f1","updated":"2017-02-13 20:43:52.000000000","message":"I looked back in commit history, turns out this note was in newton, and already cleaned up once. I\u0027m not sure how I came across it, maybe grepping for \u0027portgroup\u0027. Anyway, so this is about the port group object, not the API, and not in Ocata, so I\u0027m going to leave this exactly as is.","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"}],"releasenotes/notes/allow-attach-vif-to-portgroup-ce24b72632ec5772.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    its ports. Otherwise, only the unattached ports of this portgroup are"},{"line_number":7,"context_line":"    available for attachment. If there are no free port groups, the first"},{"line_number":8,"context_line":"    available port is used instead, with ports that have ``pxe_enabled`` set"},{"line_number":9,"context_line":"    to ``True`` taking higher priority."},{"line_number":10,"context_line":"deprecations:"},{"line_number":11,"context_line":"  - Using portgroup.extra[\u0027vif_port_id\u0027] for attaching/detaching"},{"line_number":12,"context_line":"    VIFs to port groups is deprecated and will be removed in Pike release."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a430d35_fd08e5db","line":9,"updated":"2017-02-09 21:42:17.000000000","message":"maybe \u0027where ports with pxe_enabled set to True have higher priority\u0027.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    its ports. Otherwise, only the unattached ports of this portgroup are"},{"line_number":7,"context_line":"    available for attachment. If there are no free port groups, the first"},{"line_number":8,"context_line":"    available port is used instead, with ports that have ``pxe_enabled`` set"},{"line_number":9,"context_line":"    to ``True`` taking higher priority."},{"line_number":10,"context_line":"deprecations:"},{"line_number":11,"context_line":"  - Using portgroup.extra[\u0027vif_port_id\u0027] for attaching/detaching"},{"line_number":12,"context_line":"    VIFs to port groups is deprecated and will be removed in Pike release."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_28f3f59f","line":9,"in_reply_to":"1a430d35_fd08e5db","updated":"2017-02-10 20:16:48.000000000","message":"Done","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"}],"releasenotes/notes/build_instance_info-c7e3f12426b48965.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"deprecations:"},{"line_number":3,"context_line":"  - The function ``build_instance_info_for_deploy()`` is deprecated from"},{"line_number":4,"context_line":"    ``ironic.drivers.modules.agent`` and will be removed in the Pike cycle."},{"line_number":5,"context_line":"    Its new home is ``ironic.drivers.modules.deploy_utils``. Out-of-tree"},{"line_number":6,"context_line":"    drivers that use this function should be updated accordingly."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_3efa4c43","line":3,"range":{"start_line":3,"start_character":49,"end_line":3,"end_character":51},"updated":"2017-02-10 23:22:44.000000000","message":"nit: s/()//","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"deprecations:"},{"line_number":3,"context_line":"  - The function ``build_instance_info_for_deploy()`` is deprecated from"},{"line_number":4,"context_line":"    ``ironic.drivers.modules.agent`` and will be removed in the Pike cycle."},{"line_number":5,"context_line":"    Its new home is ``ironic.drivers.modules.deploy_utils``. Out-of-tree"},{"line_number":6,"context_line":"    drivers that use this function should be updated accordingly."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_c85b0786","line":3,"range":{"start_line":3,"start_character":49,"end_line":3,"end_character":51},"in_reply_to":"fa31d9ce_1182d994","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"deprecations:"},{"line_number":3,"context_line":"  - The function ``build_instance_info_for_deploy()`` is deprecated from"},{"line_number":4,"context_line":"    ``ironic.drivers.modules.agent`` and will be removed in the Pike cycle."},{"line_number":5,"context_line":"    Its new home is ``ironic.drivers.modules.deploy_utils``. Out-of-tree"},{"line_number":6,"context_line":"    drivers that use this function should be updated accordingly."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_1182d994","line":3,"range":{"start_line":3,"start_character":49,"end_line":3,"end_character":51},"in_reply_to":"fa31d9ce_3efa4c43","updated":"2017-02-11 00:15:39.000000000","message":"+1","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - The function ``build_instance_info_for_deploy`` is deprecated from"},{"line_number":4,"context_line":"    ``ironic.drivers.modules.agent`` and will be removed in the Pike cycle."},{"line_number":5,"context_line":"    Its new home is ``ironic.drivers.modules.deploy_utils``. Out-of-tree"},{"line_number":6,"context_line":"    drivers that use this function should be updated accordingly."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_4db71086","line":6,"updated":"2017-02-13 19:27:03.000000000","message":"oh. do we also put this in upgrades section?","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - The function ``build_instance_info_for_deploy`` is deprecated from"},{"line_number":4,"context_line":"    ``ironic.drivers.modules.agent`` and will be removed in the Pike cycle."},{"line_number":5,"context_line":"    Its new home is ``ironic.drivers.modules.deploy_utils``. Out-of-tree"},{"line_number":6,"context_line":"    drivers that use this function should be updated accordingly."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_dd048f19","line":6,"in_reply_to":"fa31d9ce_4db71086","updated":"2017-02-13 20:43:52.000000000","message":"No, we will when we remove it.","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"}],"releasenotes/notes/check-for-whole-disk-image-uefi-3bf2146588de2423.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Removes a check that was preventing whole disk images from being deployed"},{"line_number":4,"context_line":"    in UEFI mode without explicitly setting the ``boot_option`` capability to"},{"line_number":5,"context_line":"    ``local``. For whole disk images, ironic already assumes booting from"},{"line_number":6,"context_line":"    the hard-drive by default."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_9eb6d888","line":6,"range":{"start_line":6,"start_character":8,"end_line":6,"end_character":18},"updated":"2017-02-10 23:22:44.000000000","message":"super-nit: s/hard-drive/local storage/? :)","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Removes a check that was preventing whole disk images from being deployed"},{"line_number":4,"context_line":"    in UEFI mode without explicitly setting the ``boot_option`` capability to"},{"line_number":5,"context_line":"    ``local``. For whole disk images, ironic already assumes booting from"},{"line_number":6,"context_line":"    the hard-drive by default."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_e8ec4b91","line":6,"range":{"start_line":6,"start_character":8,"end_line":6,"end_character":18},"in_reply_to":"fa31d9ce_9eb6d888","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/cleanup-provision-ports-before-retry-ec3c89c193766d70.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Fixes an issue with the neutron network interface that could lead to an"},{"line_number":4,"context_line":"    inability to retry the deployment in case of failure on boot interface\u0027s"},{"line_number":5,"context_line":"    ``prepare_ramdisk`` stage."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_8d5f4840","line":3,"updated":"2017-02-13 19:27:03.000000000","message":"nit s/neutron/``neutron``/","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Fixes an issue with the neutron network interface that could lead to an"},{"line_number":4,"context_line":"    inability to retry the deployment in case of failure on boot interface\u0027s"},{"line_number":5,"context_line":"    ``prepare_ramdisk`` stage."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_00195a79","line":3,"in_reply_to":"fa31d9ce_8d5f4840","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"}],"releasenotes/notes/create-on-conductor-c1c52a1f022c4048.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":8,"context_line":"  - The ``[DEFAULT]/default_network_interface`` and ``[dhcp]/dhcp_provider``"},{"line_number":9,"context_line":"    configuration options were previously required for the ironic-api service"},{"line_number":10,"context_line":"    to calculate the correct \"network_interface\" default. Now these options"},{"line_number":11,"context_line":"    are only required by the ironic-conductor service."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a430d35_9dc7e163","line":11,"updated":"2017-02-09 21:42:17.000000000","message":"I don\u0027t remember. were those required by both api \u0026 conductor before? If only api before, i wonder if we should be more explicit and say that the config file needs to be updated on the conductor side. that\u0027s what this is \u0027implying\u0027. (I\u0027m not sure how explicit we need to be...)","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":8,"context_line":"  - The ``[DEFAULT]/default_network_interface`` and ``[dhcp]/dhcp_provider``"},{"line_number":9,"context_line":"    configuration options were previously required for the ironic-api service"},{"line_number":10,"context_line":"    to calculate the correct \"network_interface\" default. Now these options"},{"line_number":11,"context_line":"    are only required by the ironic-conductor service."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_881781a2","line":11,"in_reply_to":"1a430d35_9dc7e163","updated":"2017-02-10 20:16:48.000000000","message":"It was both, in the past. So nothing *needs* to be updated, it\u0027s just a note that the api config no longer needs it, and the deployer could clean that up.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"}],"releasenotes/notes/deprecate-dhcp-update-mac-address-f12a4959432c8e20.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    ``update_mac_address`` method in the DHCP provider interface is"},{"line_number":19,"context_line":"    deprecated and will be removed in the Pike release."},{"line_number":20,"context_line":"    The logic should be moved to a custom network"},{"line_number":21,"context_line":"    interface\u0027s ``port_changed`` and ``portgroup_changed``."},{"line_number":22,"context_line":"fixes:"},{"line_number":23,"context_line":"  - |"},{"line_number":24,"context_line":"    Fixes an issue where a pre-created tenant port was automatically"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a430d35_fdb9c5cc","line":21,"updated":"2017-02-09 21:42:17.000000000","message":"s/./ methods./","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    ``update_mac_address`` method in the DHCP provider interface is"},{"line_number":19,"context_line":"    deprecated and will be removed in the Pike release."},{"line_number":20,"context_line":"    The logic should be moved to a custom network"},{"line_number":21,"context_line":"    interface\u0027s ``port_changed`` and ``portgroup_changed``."},{"line_number":22,"context_line":"fixes:"},{"line_number":23,"context_line":"  - |"},{"line_number":24,"context_line":"    Fixes an issue where a pre-created tenant port was automatically"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_2894d5e0","line":21,"in_reply_to":"1a430d35_fdb9c5cc","updated":"2017-02-10 20:16:48.000000000","message":"Done","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"}],"releasenotes/notes/dynamic-allocation-spt-has-physical-mac-8967a1d926ed9301.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - Bumps minimum version of python-oneviewclient to 2.5.2."},{"line_number":4,"context_line":"fixes:"},{"line_number":5,"context_line":"  - A validation step is added to verify that the Server Profile"},{"line_number":6,"context_line":"    Template\u0027s MAC type is set to Physical when dynamic allocation"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_d13a01cd","line":3,"range":{"start_line":3,"start_character":4,"end_line":3,"end_character":10},"updated":"2017-02-10 23:22:44.000000000","message":"nit:I feel like this format may be better: \"The minimum version of \u003clibrary\u003e is now \u003cversion\u003e.\"","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - Bumps minimum version of python-oneviewclient to 2.5.2."},{"line_number":4,"context_line":"fixes:"},{"line_number":5,"context_line":"  - A validation step is added to verify that the Server Profile"},{"line_number":6,"context_line":"    Template\u0027s MAC type is set to Physical when dynamic allocation"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_8864af22","line":3,"range":{"start_line":3,"start_character":4,"end_line":3,"end_character":10},"in_reply_to":"fa31d9ce_d13a01cd","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/dynamic-driver-list-show-apis-235e9fca26fc580d.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":19,"context_line":"    For more details, see the `REST API Version History documentation"},{"line_number":20,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/webapi-version-history.html\u003e`_."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"  - Using a dynamic driver in a node\u0027s driver field is now possible, though"},{"line_number":23,"context_line":"    customizing the interfaces is not yet exposed in the REST API."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"  - Hardware interfaces are now loaded at conductor startup,"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_6daa9172","line":22,"updated":"2017-02-09 21:42:17.000000000","message":"What do you think about indenting these all, so they are all grouped under the one feature ^^ Provide support for dynamic drivers?","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/webapi-version-history.html\u003e`_."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"  - Using a dynamic driver in a node\u0027s driver field is now possible, though"},{"line_number":23,"context_line":"    customizing the interfaces is not yet exposed in the REST API."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"  - Hardware interfaces are now loaded at conductor startup,"},{"line_number":26,"context_line":"    and registered in the database. ``[default]/enabled_*_interfaces``"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_6a7ef7af","line":23,"updated":"2017-02-09 21:42:17.000000000","message":"what does this mean? if it means you can\u0027t specify a particular x_interface at the node level, then this isn\u0027t true because we can (in 1.31)","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    ``agent_ipmitool``. Supports both types of serial console: via"},{"line_number":35,"context_line":"    ``shellinabox`` and via ``socat``, both are disabled by default."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"  - Adds new hardware type \u0027irmc\u0027 for FUJITSU PRIMERGY servers."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"  - |"},{"line_number":40,"context_line":"    Adds version 1.31 of the REST API, which exposes the following fields on"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_adbac9be","line":37,"updated":"2017-02-09 21:42:17.000000000","message":"s/`irmc`/``irmc``/","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    * vendor_interface"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"  - |"},{"line_number":54,"context_line":"    Adds dynamic interface fields to node-related notifications:"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    * boot_interface"},{"line_number":57,"context_line":"    * console_interface"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_f02498b0","line":54,"updated":"2017-02-09 21:42:17.000000000","message":"We can delete releasenotes/notes/notify-dynamic-if-fields-4b8cd0c5731cff0b.yaml, cuz the contents are here.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    * baremetal.node.power_state_corrected.*, new payload version 1.3"},{"line_number":74,"context_line":"    * baremetal.node.provision_set.*, new payload version 1.3"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"  - The conductor process no longer requires at least one classic driver"},{"line_number":77,"context_line":"    to start. Instead, it requires at least one classic driver *or* at least"},{"line_number":78,"context_line":"    one dynamic driver."},{"line_number":79,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_cde61de8","line":76,"updated":"2017-02-09 21:42:17.000000000","message":"What about combining this with L28, or at least move this up to be adjacent to the one at L28?","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"faaa5aac1a5047c33e15740f3ef8c2db6c9b1922","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    provided, such that a default interface implementation for any enabled"},{"line_number":87,"context_line":"    hardware type cannot be found."},{"line_number":88,"context_line":"  - The conductor process will refuse to start if a dynamic driver and"},{"line_number":89,"context_line":"    a classic driver with the same name are both enabled."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a430d35_c8028e72","line":89,"updated":"2017-02-09 18:23:52.000000000","message":"This whole file needs editing to make a coherent note or two.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    provided, such that a default interface implementation for any enabled"},{"line_number":87,"context_line":"    hardware type cannot be found."},{"line_number":88,"context_line":"  - The conductor process will refuse to start if a dynamic driver and"},{"line_number":89,"context_line":"    a classic driver with the same name are both enabled."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_ad080993","line":89,"in_reply_to":"1a430d35_c8028e72","updated":"2017-02-09 21:42:17.000000000","message":"Darn, I should have seen this comment first! :)","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    * baremetal.node.provision_set.*, new payload version 1.3"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    For full documentation on dynamic drivers, see the `driver documentation"},{"line_number":89,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/drivers.html\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_54743f9b","line":89,"range":{"start_line":89,"start_character":5,"end_line":89,"end_character":9},"updated":"2017-02-11 00:15:39.000000000","message":"I wonder if we should use https for openstack.org links.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    * baremetal.node.provision_set.*, new payload version 1.3"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    For full documentation on dynamic drivers, see the `driver documentation"},{"line_number":89,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/drivers.html\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_48839798","line":89,"range":{"start_line":89,"start_character":5,"end_line":89,"end_character":9},"in_reply_to":"fa31d9ce_54743f9b","updated":"2017-02-13 12:06:08.000000000","message":"+1, but there\u0027s a lot of these, I think it would be better to do in a separate patch.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for dynamic drivers. Using a dynamic driver in a node\u0027s driver"},{"line_number":5,"context_line":"    field is now possible. Dynamic drivers are composed of a ``hardware type``"},{"line_number":6,"context_line":"    and a number of ``hardware interfaces``."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_e8e1929b","line":3,"updated":"2017-02-13 19:27:03.000000000","message":"You mention it in the summary but I think we should mention it here too. that it is experimental because not all classic drivers have a corresponding dynamic driver, and CI isn\u0027t all there.","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for dynamic drivers. Using a dynamic driver in a node\u0027s driver"},{"line_number":5,"context_line":"    field is now possible. Dynamic drivers are composed of a ``hardware type``"},{"line_number":6,"context_line":"    and a number of ``hardware interfaces``."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_00e31a34","line":3,"in_reply_to":"fa31d9ce_e8e1929b","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for dynamic drivers. Using a dynamic driver in a node\u0027s driver"},{"line_number":5,"context_line":"    field is now possible. Dynamic drivers are composed of a ``hardware type``"},{"line_number":6,"context_line":"    and a number of ``hardware interfaces``."},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_883bb6d0","line":4,"updated":"2017-02-13 19:27:03.000000000","message":"do we want to s/driver/``driver``/ ? (Can\u0027t recall if we do that for an object\u0027s attributes.)","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support for dynamic drivers. Using a dynamic driver in a node\u0027s driver"},{"line_number":5,"context_line":"    field is now possible. Dynamic drivers are composed of a ``hardware type``"},{"line_number":6,"context_line":"    and a number of ``hardware interfaces``."},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_805aaa28","line":4,"in_reply_to":"fa31d9ce_883bb6d0","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    configuration option, and hardware interfaces are enabled via the"},{"line_number":10,"context_line":"    ``[DEFAULT]/enabled_*_interfaces`` configuration option. A default"},{"line_number":11,"context_line":"    interface to use when creating or updating nodes can be specified with the"},{"line_number":12,"context_line":"    ``[DEFAULT]/default_*_interfaces`` configuration option."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    The ironic-conductor process will now fail to start up if a default"},{"line_number":15,"context_line":"    interface implementation for any enabled hardware type cannot be found."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_28780a8f","line":12,"updated":"2017-02-13 19:27:03.000000000","message":"s/interfaces/interface/","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    configuration option, and hardware interfaces are enabled via the"},{"line_number":10,"context_line":"    ``[DEFAULT]/enabled_*_interfaces`` configuration option. A default"},{"line_number":11,"context_line":"    interface to use when creating or updating nodes can be specified with the"},{"line_number":12,"context_line":"    ``[DEFAULT]/default_*_interfaces`` configuration option."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    The ironic-conductor process will now fail to start up if a default"},{"line_number":15,"context_line":"    interface implementation for any enabled hardware type cannot be found."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_c0402237","line":12,"in_reply_to":"fa31d9ce_28780a8f","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    The ironic-conductor process will now fail to start up if a default"},{"line_number":15,"context_line":"    interface implementation for any enabled hardware type cannot be found."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"    The ironic-conductor process will refuse to start if a dynamic driver and"},{"line_number":18,"context_line":"    a classic driver with the same name are both enabled."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    The ironic-conductor process no longer requires at least one classic driver"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_28864a65","line":17,"updated":"2017-02-13 19:27:03.000000000","message":"what\u0027s the diff between \u0027fail\u0027 (L14) and \u0027refuse\u0027 ? If they mean the same thing, you could use two bullets, eg,The ic process will fail to start if:\n    - blah 1\n    - blah 2","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    The ironic-conductor process will now fail to start up if a default"},{"line_number":15,"context_line":"    interface implementation for any enabled hardware type cannot be found."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"    The ironic-conductor process will refuse to start if a dynamic driver and"},{"line_number":18,"context_line":"    a classic driver with the same name are both enabled."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    The ironic-conductor process no longer requires at least one classic driver"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_20849e5c","line":17,"in_reply_to":"fa31d9ce_28864a65","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":27,"context_line":"      Uses the ``ipmitool`` utility under the hood, similar to existing classic"},{"line_number":28,"context_line":"      drivers ``pxe_ipmitool`` and ``agent_ipmitool``. Supports both types of"},{"line_number":29,"context_line":"      serial console: via ``shellinabox`` and via ``socat``, both are disabled"},{"line_number":30,"context_line":"      by default."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - \u0027irmc\u0027 for FUJITSU PRIMERGY servers, disabled by default."},{"line_number":33,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_08bb46e6","line":30,"updated":"2017-02-13 19:27:03.000000000","message":"would it be too much to provide a list of classic driver names, agent_ipmitool, agent_ipmitool_socat, pxe_ipmitool, pxe_ipmitool_socat?\n\nditto for irmc, what are the classic drivers that correspond to that hw type?","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":27,"context_line":"      Uses the ``ipmitool`` utility under the hood, similar to existing classic"},{"line_number":28,"context_line":"      drivers ``pxe_ipmitool`` and ``agent_ipmitool``. Supports both types of"},{"line_number":29,"context_line":"      serial console: via ``shellinabox`` and via ``socat``, both are disabled"},{"line_number":30,"context_line":"      by default."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - \u0027irmc\u0027 for FUJITSU PRIMERGY servers, disabled by default."},{"line_number":33,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_40a272fe","line":30,"in_reply_to":"fa31d9ce_08bb46e6","updated":"2017-02-13 20:43:52.000000000","message":"I\u0027d prefer to leave that for upgrade/driver documentation, if that\u0027s okay.","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":29,"context_line":"      serial console: via ``shellinabox`` and via ``socat``, both are disabled"},{"line_number":30,"context_line":"      by default."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - \u0027irmc\u0027 for FUJITSU PRIMERGY servers, disabled by default."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    This feature has a number of REST API changes, all of which are available"},{"line_number":35,"context_line":"    in API version 1.31."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_48429e11","line":32,"updated":"2017-02-13 19:27:03.000000000","message":"s/\u0027irmc\u0027/``irmc``/","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":29,"context_line":"      serial console: via ``shellinabox`` and via ``socat``, both are disabled"},{"line_number":30,"context_line":"      by default."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    - \u0027irmc\u0027 for FUJITSU PRIMERGY servers, disabled by default."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    This feature has a number of REST API changes, all of which are available"},{"line_number":35,"context_line":"    in API version 1.31."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_40899274","line":32,"in_reply_to":"fa31d9ce_48429e11","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    * baremetal.node.provision_set.*, new payload version 1.3"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    For full documentation on dynamic drivers, see the `driver documentation"},{"line_number":89,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/drivers.html\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_a86eba93","line":89,"updated":"2017-02-13 19:27:03.000000000","message":"I don\u0027t think we should put this sentence in, unless there is info on dynamic drivers there.","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    * baremetal.node.provision_set.*, new payload version 1.3"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    For full documentation on dynamic drivers, see the `driver documentation"},{"line_number":89,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/drivers.html\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_e0e52638","line":89,"in_reply_to":"fa31d9ce_a86eba93","updated":"2017-02-13 20:43:52.000000000","message":"Okay, I can remove it, but I hope it will be populated by the time anyone reads this.","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"0f0092303c18cc54f9d426bcb033fbd4ba37dd09","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    * baremetal.node.provision_set.*, new payload version 1.3"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    For full documentation on dynamic drivers, see the `driver documentation"},{"line_number":89,"context_line":"    \u003chttp://docs.openstack.org/developer/ironic/dev/drivers.html\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_409c320f","line":89,"in_reply_to":"fa31d9ce_e0e52638","updated":"2017-02-13 20:55:31.000000000","message":"I hope so too...","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"}],"releasenotes/notes/fix-rpc-exceptions-12c70eb6ba177e39.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Ironic exceptions that contained arbitrary objects in kwargs and were sent"},{"line_number":4,"context_line":"    via RPC were causing ``oslo_messaging`` serializer to fail. This was"},{"line_number":5,"context_line":"    leading to 500 errors from ironic API, timing out waiting for response from"},{"line_number":6,"context_line":"    the conductor. Starting with this release, all non-serializable objects"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_71a075f5","line":3,"range":{"start_line":3,"start_character":58,"end_line":3,"end_character":64},"updated":"2017-02-10 23:22:44.000000000","message":"maybe-nit: s/kwargs/``kwargs``/ ?","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Ironic exceptions that contained arbitrary objects in kwargs and were sent"},{"line_number":4,"context_line":"    via RPC were causing ``oslo_messaging`` serializer to fail. This was"},{"line_number":5,"context_line":"    leading to 500 errors from ironic API, timing out waiting for response from"},{"line_number":6,"context_line":"    the conductor. Starting with this release, all non-serializable objects"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_485ab750","line":3,"range":{"start_line":3,"start_character":58,"end_line":3,"end_character":64},"in_reply_to":"fa31d9ce_71a075f5","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/glance-v2-83b04fec247cd22f.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Ironic now uses only the Image Service (glance) v2 API by default. Use of"},{"line_number":5,"context_line":"    the deprecated v1 API for certain basic tasks can still be enabled by setting"},{"line_number":6,"context_line":"    ``[glance]/glance_api_version`` to ``1``. This option, however, does not"},{"line_number":7,"context_line":"    affect temporary URL generation, as it always requires v2 API."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_b1810d4d","line":7,"range":{"start_line":7,"start_character":58,"end_line":7,"end_character":59},"updated":"2017-02-10 23:22:44.000000000","message":"nit: \"the v2 API.\"","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Ironic now uses only the Image Service (glance) v2 API by default. Use of"},{"line_number":5,"context_line":"    the deprecated v1 API for certain basic tasks can still be enabled by setting"},{"line_number":6,"context_line":"    ``[glance]/glance_api_version`` to ``1``. This option, however, does not"},{"line_number":7,"context_line":"    affect temporary URL generation, as it always requires v2 API."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_a835f3f7","line":7,"range":{"start_line":7,"start_character":58,"end_line":7,"end_character":59},"in_reply_to":"fa31d9ce_b1810d4d","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/inject-nmi-dacd692b1f259a30.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"edd8cf569262543be5d50203f27cc1edda8ba2f1","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add support for the injection of Non-Masking Interrupts (NMI) for"},{"line_number":4,"context_line":"    a node in REST API version 1.29. This feature can be used for hardware"},{"line_number":5,"context_line":"    diagnostics, and actual support depends on a driver. This is currently"},{"line_number":6,"context_line":"    available in the ipmitool and iRMC drivers."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"1a430d35_8671690e","line":5,"range":{"start_line":5,"start_character":65,"end_line":5,"end_character":74},"updated":"2017-02-09 13:15:10.000000000","message":"nit: I would replace currently with reference to the release, but that is just me.","commit_id":"cf36cf75aeb8de04656881adaf5c30be1de887ff"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"f018583a00de5bde141dd8eca2dc3b3afc358128","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add support for the injection of Non-Masking Interrupts (NMI) for"},{"line_number":4,"context_line":"    a node in REST API version 1.29. This feature can be used for hardware"},{"line_number":5,"context_line":"    diagnostics, and actual support depends on a driver. This is currently"},{"line_number":6,"context_line":"    available in the ipmitool and iRMC drivers."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"1a430d35_61f0e7c9","line":5,"range":{"start_line":5,"start_character":65,"end_line":5,"end_character":74},"in_reply_to":"1a430d35_8671690e","updated":"2017-02-09 13:30:08.000000000","message":"I figure people will be reading this in the context of \"I\u0027m reading (ocata|7.0.0) release notes\", but yeah, I can update.","commit_id":"cf36cf75aeb8de04656881adaf5c30be1de887ff"},{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add support for the injection of Non-Masking Interrupts (NMI) for"},{"line_number":4,"context_line":"    a node in REST API version 1.29. This feature can be used for hardware"},{"line_number":5,"context_line":"    diagnostics, and actual support depends on a driver. In 7.0.0, this is"},{"line_number":6,"context_line":"    available in the ipmitool and iRMC drivers."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_f4ac53ef","line":5,"range":{"start_line":5,"start_character":47,"end_line":5,"end_character":48},"updated":"2017-02-11 00:15:39.000000000","message":"nit?: s/a/the","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add support for the injection of Non-Masking Interrupts (NMI) for"},{"line_number":4,"context_line":"    a node in REST API version 1.29. This feature can be used for hardware"},{"line_number":5,"context_line":"    diagnostics, and actual support depends on a driver. In 7.0.0, this is"},{"line_number":6,"context_line":"    available in the ipmitool and iRMC drivers."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_e83febd3","line":5,"range":{"start_line":5,"start_character":47,"end_line":5,"end_character":48},"in_reply_to":"fa31d9ce_f4ac53ef","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/multi-arch-deploy-bcf840107fc94bef.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support to deploy to nodes with different CPU architectures"},{"line_number":5,"context_line":"    from a single conductor. This depends on"},{"line_number":6,"context_line":"    two new config options, ``[pxe]/pxe_config_template_by_arch``"},{"line_number":7,"context_line":"    and ``[pxe]/pxe_bootfile_name_by_arch``. Each is a"},{"line_number":8,"context_line":"    dictionary mapping CPU architecture to PXE config template or"},{"line_number":9,"context_line":"    PXE boot file name, respectively."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_8d78a5fa","line":6,"updated":"2017-02-09 21:42:17.000000000","message":"nit s/config/configuration/","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds support to deploy to nodes with different CPU architectures"},{"line_number":5,"context_line":"    from a single conductor. This depends on"},{"line_number":6,"context_line":"    two new config options, ``[pxe]/pxe_config_template_by_arch``"},{"line_number":7,"context_line":"    and ``[pxe]/pxe_bootfile_name_by_arch``. Each is a"},{"line_number":8,"context_line":"    dictionary mapping CPU architecture to PXE config template or"},{"line_number":9,"context_line":"    PXE boot file name, respectively."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_28821595","line":6,"in_reply_to":"fa31d9ce_8d78a5fa","updated":"2017-02-10 20:16:48.000000000","message":"Done","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"}],"releasenotes/notes/multiple-workers-for-send-sensor-data-89d29c12da30ec54.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    to specify the time to wait for all spawned green threads before"},{"line_number":8,"context_line":"    running the periodic task again."},{"line_number":9,"context_line":"upgrade:"},{"line_number":10,"context_line":"  - Increases default number of workers from 1 to 4 for the"},{"line_number":11,"context_line":"    ``send_sensor_data`` periodic task."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_b1466d21","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":14},"updated":"2017-02-10 23:22:44.000000000","message":"nit: \"the default\"\nIt may be better as: \"Increases the default number of ``send_sensor_data`` periodic task workers from 1 to 4.\"","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    to specify the time to wait for all spawned green threads before"},{"line_number":8,"context_line":"    running the periodic task again."},{"line_number":9,"context_line":"upgrade:"},{"line_number":10,"context_line":"  - Increases default number of workers from 1 to 4 for the"},{"line_number":11,"context_line":"    ``send_sensor_data`` periodic task."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_a303540c","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":14},"in_reply_to":"fa31d9ce_b1466d21","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Adds new option ``[conductor]/send_sensor_data_workers``"},{"line_number":4,"context_line":"    to allow concurrently sending sensor data using the specified"},{"line_number":5,"context_line":"    number of green threads."},{"line_number":6,"context_line":"    ``[conductor]/wait_timeout_for_send_sensor_data`` option allows"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_88a496a6","line":3,"updated":"2017-02-13 19:27:03.000000000","message":"s/option/configuration option/","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Adds new option ``[conductor]/send_sensor_data_workers``"},{"line_number":4,"context_line":"    to allow concurrently sending sensor data using the specified"},{"line_number":5,"context_line":"    number of green threads."},{"line_number":6,"context_line":"    ``[conductor]/wait_timeout_for_send_sensor_data`` option allows"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_8029ca39","line":3,"in_reply_to":"fa31d9ce_88a496a6","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Adds new option ``[conductor]/send_sensor_data_workers``"},{"line_number":4,"context_line":"    to allow concurrently sending sensor data using the specified"},{"line_number":5,"context_line":"    number of green threads."},{"line_number":6,"context_line":"    ``[conductor]/wait_timeout_for_send_sensor_data`` option allows"},{"line_number":7,"context_line":"    to specify the time to wait for all spawned green threads before"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_c8ae8e84","line":4,"updated":"2017-02-13 19:27:03.000000000","message":"nit s/concurrently sending/concurrent sending of/","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Adds new option ``[conductor]/send_sensor_data_workers``"},{"line_number":4,"context_line":"    to allow concurrently sending sensor data using the specified"},{"line_number":5,"context_line":"    number of green threads."},{"line_number":6,"context_line":"    ``[conductor]/wait_timeout_for_send_sensor_data`` option allows"},{"line_number":7,"context_line":"    to specify the time to wait for all spawned green threads before"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_6024d65f","line":4,"in_reply_to":"fa31d9ce_c8ae8e84","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"8ad901a7ff07d0c0bdf227bac18dc6cdfab6a7da","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Adds new option ``[conductor]/send_sensor_data_workers``"},{"line_number":4,"context_line":"    to allow concurrently sending sensor data using the specified"},{"line_number":5,"context_line":"    number of green threads."},{"line_number":6,"context_line":"    ``[conductor]/wait_timeout_for_send_sensor_data`` option allows"},{"line_number":7,"context_line":"    to specify the time to wait for all spawned green threads before"},{"line_number":8,"context_line":"    running the periodic task again."},{"line_number":9,"context_line":"upgrade:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_68ebe2b0","line":6,"updated":"2017-02-13 19:27:03.000000000","message":"how about s/option allows to specify the time/configuration option is the time/","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"6fbd8220db3d15bdf227c9fa35ffe3f253b0ece1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Adds new option ``[conductor]/send_sensor_data_workers``"},{"line_number":4,"context_line":"    to allow concurrently sending sensor data using the specified"},{"line_number":5,"context_line":"    number of green threads."},{"line_number":6,"context_line":"    ``[conductor]/wait_timeout_for_send_sensor_data`` option allows"},{"line_number":7,"context_line":"    to specify the time to wait for all spawned green threads before"},{"line_number":8,"context_line":"    running the periodic task again."},{"line_number":9,"context_line":"upgrade:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa31d9ce_403352ab","line":6,"in_reply_to":"fa31d9ce_68ebe2b0","updated":"2017-02-13 20:43:52.000000000","message":"Done","commit_id":"63dcd5f2775c1963c98ca70d449107d8d5b459b6"}],"releasenotes/notes/net-names-b8a36aa30659ce2f.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    called ``[neutron]/cleaning_network_uuid`` and"},{"line_number":7,"context_line":"    ``[neutron]/provisioning_network_uuid``)."},{"line_number":8,"context_line":"    Care has to be taken to ensure that the"},{"line_number":9,"context_line":"    names are unique among all networks in this case. Note that mapping between"},{"line_number":10,"context_line":"    a name and a UUID is cached for the lifetime of the conductor."},{"line_number":11,"context_line":"deprecations:"},{"line_number":12,"context_line":"  - Configuration options ``[neutron]/cleaning_network_uuid`` and"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_6d7451fd","line":9,"updated":"2017-02-09 21:42:17.000000000","message":"nit s/that mapping/that the mapping/","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    called ``[neutron]/cleaning_network_uuid`` and"},{"line_number":7,"context_line":"    ``[neutron]/provisioning_network_uuid``)."},{"line_number":8,"context_line":"    Care has to be taken to ensure that the"},{"line_number":9,"context_line":"    names are unique among all networks in this case. Note that mapping between"},{"line_number":10,"context_line":"    a name and a UUID is cached for the lifetime of the conductor."},{"line_number":11,"context_line":"deprecations:"},{"line_number":12,"context_line":"  - Configuration options ``[neutron]/cleaning_network_uuid`` and"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_487f49aa","line":9,"in_reply_to":"fa31d9ce_6d7451fd","updated":"2017-02-10 20:16:48.000000000","message":"Done","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"}],"releasenotes/notes/node-console-notifications-17875f95a378adb4.yaml":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add notifications for start and stop console on the node."},{"line_number":4,"context_line":"    Event types are"},{"line_number":5,"context_line":"    ``baremetal.node.console_{set,restore}.{start,end,error}``."},{"line_number":6,"context_line":"    For more details, see the developer documentation."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_cd59bd90","line":3,"updated":"2017-02-09 21:42:17.000000000","message":"nit: s/Add/Adds/","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Add notifications for start and stop console on the node."},{"line_number":4,"context_line":"    Event types are"},{"line_number":5,"context_line":"    ``baremetal.node.console_{set,restore}.{start,end,error}``."},{"line_number":6,"context_line":"    For more details, see the developer documentation."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_082391be","line":3,"in_reply_to":"fa31d9ce_cd59bd90","updated":"2017-02-10 20:16:48.000000000","message":"Done","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add notifications for start and stop console on the node."},{"line_number":4,"context_line":"    Event types are"},{"line_number":5,"context_line":"    ``baremetal.node.console_{set,restore}.{start,end,error}``."},{"line_number":6,"context_line":"    For more details, see the developer documentation."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_6da7f14f","line":6,"updated":"2017-02-09 21:42:17.000000000","message":"I think it means http://docs.openstack.org/developer/ironic/deploy/notifications.html.\n\nDo we hardcode the Ocata link? http://docs.openstack.org/developer/ironic/ocata/deploy/notifications.html.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add notifications for start and stop console on the node."},{"line_number":4,"context_line":"    Event types are"},{"line_number":5,"context_line":"    ``baremetal.node.console_{set,restore}.{start,end,error}``."},{"line_number":6,"context_line":"    For more details, see the developer documentation."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fa31d9ce_c8409959","line":6,"in_reply_to":"fa31d9ce_6da7f14f","updated":"2017-02-10 20:16:48.000000000","message":"I\u0027ll do this when I combine them.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"76136cda5aae38285f8e779ed910446c8aba38e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fa31d9ce_6de291a1","line":7,"updated":"2017-02-09 21:42:17.000000000","message":"I think it\u0027d be good to have one notifications feature that lists all the new notifications. (Except for the ones related to the node interfaces; those you have with dynamic drivers feature.)","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c043c15d37b58b0aa63a55abbb901da59ac7c934","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fa31d9ce_68316d0b","line":7,"in_reply_to":"fa31d9ce_6de291a1","updated":"2017-02-10 20:16:48.000000000","message":"Can do.","commit_id":"b5338c2b012829a6fe7f1fe8b176c0f560c84fbd"}],"releasenotes/notes/oneview-onetime-boot-64a68e135a45f5e2.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Fixes the OneView driver to make the ``set_boot_device`` method work as"},{"line_number":4,"context_line":"    expected with ``persistent\u003dFalse``."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_d120414c","line":4,"range":{"start_line":4,"start_character":13,"end_line":4,"end_character":39},"updated":"2017-02-10 23:22:44.000000000","message":"\"as expected with the ``persistent`` option set to ``False``. ?","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Fixes the OneView driver to make the ``set_boot_device`` method work as"},{"line_number":4,"context_line":"    expected with ``persistent\u003dFalse``."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_a3519410","line":4,"range":{"start_line":4,"start_character":13,"end_line":4,"end_character":39},"in_reply_to":"fa31d9ce_d120414c","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/remove-agent-passthru-complete-a6b2df65b95889d5.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    (e.g. ``agent.AgentVendorInterface`` and ``iscsi_deploy.VendorPassthru``)."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    This means that ironic is incompatible with deploy ramdisks based on Ironic"},{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators should update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update those to use"},{"line_number":13,"context_line":"    top-level ironic lookup/heartbeats REST API (available since ironic API"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_31efdde9","line":10,"range":{"start_line":10,"start_character":42,"end_line":10,"end_character":48},"updated":"2017-02-10 23:22:44.000000000","message":"Nit: It seems like this is more of a must action instead of a should action.  s/should/must/","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    (e.g. ``agent.AgentVendorInterface`` and ``iscsi_deploy.VendorPassthru``)."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    This means that ironic is incompatible with deploy ramdisks based on Ironic"},{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators should update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update those to use"},{"line_number":13,"context_line":"    top-level ironic lookup/heartbeats REST API (available since ironic API"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_03434043","line":10,"range":{"start_line":10,"start_character":42,"end_line":10,"end_character":48},"in_reply_to":"fa31d9ce_31efdde9","updated":"2017-02-13 12:06:08.000000000","message":"Done, I also just noticed the same info is covered in the previous release note, so removed it there.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    This means that ironic is incompatible with deploy ramdisks based on Ironic"},{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators should update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update those to use"},{"line_number":13,"context_line":"    top-level ironic lookup/heartbeats REST API (available since ironic API"},{"line_number":14,"context_line":"    v1.22)."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_f1cb8570","line":12,"range":{"start_line":12,"start_character":59,"end_line":12,"end_character":64},"updated":"2017-02-10 23:22:44.000000000","message":"Perhaps s/those/their ramdisks/ ?","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    This means that ironic is incompatible with deploy ramdisks based on Ironic"},{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators should update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update those to use"},{"line_number":13,"context_line":"    top-level ironic lookup/heartbeats REST API (available since ironic API"},{"line_number":14,"context_line":"    v1.22)."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_03fb40c2","line":12,"range":{"start_line":12,"start_character":59,"end_line":12,"end_character":64},"in_reply_to":"fa31d9ce_f1cb8570","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators should update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update those to use"},{"line_number":13,"context_line":"    top-level ironic lookup/heartbeats REST API (available since ironic API"},{"line_number":14,"context_line":"    v1.22)."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_31c6fd67","line":14,"range":{"start_line":13,"start_character":48,"end_line":14,"end_character":11},"updated":"2017-02-10 23:22:44.000000000","message":"nit: This seems like vital information for this sentence, I would remove the ()","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators should update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update those to use"},{"line_number":13,"context_line":"    top-level ironic lookup/heartbeats REST API (available since ironic API"},{"line_number":14,"context_line":"    v1.22)."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_430538ba","line":14,"range":{"start_line":13,"start_character":48,"end_line":14,"end_character":11},"in_reply_to":"fa31d9ce_31c6fd67","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"153d980788c7fedfe47be9c57b0451a8cd24506a","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators must update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update their ramdisks to"},{"line_number":13,"context_line":"    use top-level ironic lookup/heartbeats REST API, available since ironic API"},{"line_number":14,"context_line":"    v1.22."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"fa31d9ce_0b319605","line":13,"range":{"start_line":13,"start_character":7,"end_line":13,"end_character":8},"updated":"2017-02-13 13:14:09.000000000","message":"nit: I would say \"the top level\"","commit_id":"4077cc7d8d28ef333ee1aeddf495c3cc5275ea83"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5236bd5e5aaac81538461157deee1fc3926c2e1d","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    Python Agent (IPA) \u003c 1.5.0. Operators must update their IPA-based deploy"},{"line_number":11,"context_line":"    ramdisks in this case. Operators using non-IPA based deploy ramdisks which"},{"line_number":12,"context_line":"    use ironic lookup/heartbeats functionality must update their ramdisks to"},{"line_number":13,"context_line":"    use top-level ironic lookup/heartbeats REST API, available since ironic API"},{"line_number":14,"context_line":"    v1.22."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"fa31d9ce_1c69db8b","line":13,"range":{"start_line":13,"start_character":7,"end_line":13,"end_character":8},"in_reply_to":"fa31d9ce_0b319605","updated":"2017-02-13 14:33:48.000000000","message":"Done","commit_id":"4077cc7d8d28ef333ee1aeddf495c3cc5275ea83"}],"releasenotes/notes/remove-deprecated-dhcp-provider-methods-582742f3000be3c7.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"a2c1f9dcb9591283d9a070d5b4a7d5becbb1bf6f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Removes these deprecated methods from the neutron DHCPprovider built into"},{"line_number":5,"context_line":"    ironic:"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    * create_cleaning_ports"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_91ab2989","line":4,"range":{"start_line":4,"start_character":58,"end_line":4,"end_character":59},"updated":"2017-02-10 23:22:44.000000000","message":"I feel like we need a space between DHCP and provider.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Removes these deprecated methods from the neutron DHCPprovider built into"},{"line_number":5,"context_line":"    ironic:"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    * create_cleaning_ports"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_e3b8ece7","line":4,"range":{"start_line":4,"start_character":58,"end_line":4,"end_character":59},"in_reply_to":"fa31d9ce_91ab2989","updated":"2017-02-13 12:06:08.000000000","message":"Heh, yes, that was not intentional :)","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/remove-driver-object-periodic-tasks-1357a1cd3589becf.yaml":[{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Removes support for attaching periodic tasks on a driver object (rather"},{"line_number":5,"context_line":"    than an interface)."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_94ab1789","line":5,"range":{"start_line":4,"start_character":68,"end_line":5,"end_character":23},"updated":"2017-02-11 00:15:39.000000000","message":"nit: IMO, it doesn\u0027t hurt if we remove the parentheses.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Removes support for attaching periodic tasks on a driver object (rather"},{"line_number":5,"context_line":"    than an interface)."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_c383e802","line":5,"range":{"start_line":4,"start_character":68,"end_line":5,"end_character":23},"in_reply_to":"fa31d9ce_94ab1789","updated":"2017-02-13 12:06:08.000000000","message":"Done","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}],"releasenotes/notes/resources-crud-notifications-70cba9f761da3afe.yaml":[{"author":{"_account_id":22860,"name":"Solio Sarabia","email":"solio.sarabia@intel.com","username":"ssarabia"},"change_message_id":"e6584173f5f21ea7b3a8fe869d208e5c521d9876","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    These are only emitted when notifications are enabled."},{"line_number":22,"context_line":"    For more details, see the developer documentation:"},{"line_number":23,"context_line":"    http://docs.openstack.org/developer/ironic/deploy/notifications.html."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_349d0b66","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":8},"updated":"2017-02-11 00:15:39.000000000","message":"Wonder if should we use https or http.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"c837e250446d8e625ff892c6036d26b1c532ce6d","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    These are only emitted when notifications are enabled."},{"line_number":22,"context_line":"    For more details, see the developer documentation:"},{"line_number":23,"context_line":"    http://docs.openstack.org/developer/ironic/deploy/notifications.html."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa31d9ce_23792430","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":8},"in_reply_to":"fa31d9ce_349d0b66","updated":"2017-02-13 12:06:08.000000000","message":"Again, +1 for https, but think it should be a separate patch.","commit_id":"9425d0f03d90c5082f237cb104ad055556177104"}]}
