)]}'
{"specs/pike/approved/delete-inventories-placement-api.rst":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"ff8b36c50759f59e09ca366f9a9c48889c9b0576","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"It would be easier and more intuitive to support"},{"line_number":31,"context_line":"DELETE /resource_providers/{uuid}/inventories with no request payload and"},{"line_number":32,"context_line":"returning a 204 No Content on success."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Use Cases"},{"line_number":35,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_82aca636","line":32,"updated":"2017-01-03 14:16:38.000000000","message":"Not that it particularly matters but: If you want to be complete there is an existing method for deleting a single inventory that could be referenced here: \n\nhttps://github.com/openstack/nova/blob/master/nova/api/openstack/placement/handler.py#L88","commit_id":"d50f4ec60efe8b0a55b32fefb924140c4d3df533"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"c3893400b6e5ff5615b93218c8510ff239caddaa","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"It would be easier and more intuitive to support"},{"line_number":31,"context_line":"DELETE /resource_providers/{uuid}/inventories with no request payload and"},{"line_number":32,"context_line":"returning a 204 No Content on success."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Use Cases"},{"line_number":35,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_6fc5ea8c","line":32,"in_reply_to":"ba5201f7_82aca636","updated":"2017-01-03 14:45:58.000000000","message":"Ack.","commit_id":"d50f4ec60efe8b0a55b32fefb924140c4d3df533"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"ff8b36c50759f59e09ca366f9a9c48889c9b0576","unresolved":false,"context_lines":[{"line_number":62,"context_line":"------------"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Continue non-intuitive delete of all inventory through the PUT method with"},{"line_number":65,"context_line":"empty resources in the request payload."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Data model impact"},{"line_number":68,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_2213fa67","line":65,"updated":"2017-01-03 14:16:38.000000000","message":"See above for the other alternative.","commit_id":"d50f4ec60efe8b0a55b32fefb924140c4d3df533"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"c3893400b6e5ff5615b93218c8510ff239caddaa","unresolved":false,"context_lines":[{"line_number":62,"context_line":"------------"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Continue non-intuitive delete of all inventory through the PUT method with"},{"line_number":65,"context_line":"empty resources in the request payload."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Data model impact"},{"line_number":68,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_8fd92e86","line":65,"in_reply_to":"ba5201f7_2213fa67","updated":"2017-01-03 14:45:58.000000000","message":"If I understand it right, the other alternative is to get all inventories and delete one by one with the existing DELETE method, one at a time.","commit_id":"d50f4ec60efe8b0a55b32fefb924140c4d3df533"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"ff8b36c50759f59e09ca366f9a9c48889c9b0576","unresolved":false,"context_lines":[{"line_number":146,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"The in-tree API reference will be updated for the os-aggregates REST API"},{"line_number":149,"context_line":"documentation."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"References"},{"line_number":152,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_fd027308","line":149,"updated":"2017-01-03 14:16:38.000000000","message":"Is this a pasto from somewhere else?","commit_id":"d50f4ec60efe8b0a55b32fefb924140c4d3df533"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"c3893400b6e5ff5615b93218c8510ff239caddaa","unresolved":false,"context_lines":[{"line_number":146,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"The in-tree API reference will be updated for the os-aggregates REST API"},{"line_number":149,"context_line":"documentation."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"References"},{"line_number":152,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_6f97aa90","line":149,"in_reply_to":"ba5201f7_fd027308","updated":"2017-01-03 14:45:58.000000000","message":"Evil temptation of copy/paste. It should be placement api instead.","commit_id":"d50f4ec60efe8b0a55b32fefb924140c4d3df533"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    \u0027DELETE\u0027: inventory.delete_inventory"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"https://github.com/openstack/nova/blob/master/nova/api/openstack/placement/handler.py#L88"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Use Cases"},{"line_number":41,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_fff00769","line":38,"updated":"2017-03-06 00:31:50.000000000","message":"Use a git hash or tag since this line number is going to change over time.\n\nhttps://github.com/openstack/nova/blob/15.0.0/nova/api/openstack/placement/handler.py#L88","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    \u0027DELETE\u0027: inventory.delete_inventory"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"https://github.com/openstack/nova/blob/master/nova/api/openstack/placement/handler.py#L88"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Use Cases"},{"line_number":41,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_1d14f14a","line":38,"in_reply_to":"ba2be162_fff00769","updated":"2017-03-06 13:46:24.000000000","message":"ack","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":49,"context_line":"Add DELETE /resource_providers/{uuid}/inventories and return 204 no content"},{"line_number":50,"context_line":"on success. Changes include:"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* /nova/api/openstack/placement/handlers/inventory.py, set_inventories(req)"},{"line_number":53,"context_line":"* A reno note advertising the additional placement REST API microversion and"},{"line_number":54,"context_line":"functionality"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_ff9727e9","line":52,"range":{"start_line":52,"start_character":55,"end_line":52,"end_character":70},"updated":"2017-03-06 00:31:50.000000000","message":"Looking at https://review.openstack.org/#/c/416669/10/nova/api/openstack/placement/handlers/inventory.py I think you meant delete_inventories here?","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":49,"context_line":"Add DELETE /resource_providers/{uuid}/inventories and return 204 no content"},{"line_number":50,"context_line":"on success. Changes include:"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* /nova/api/openstack/placement/handlers/inventory.py, set_inventories(req)"},{"line_number":53,"context_line":"* A reno note advertising the additional placement REST API microversion and"},{"line_number":54,"context_line":"functionality"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_88198124","line":52,"range":{"start_line":52,"start_character":55,"end_line":52,"end_character":70},"in_reply_to":"ba2be162_ff9727e9","updated":"2017-03-06 13:46:24.000000000","message":"Right. Initial implementation was set_inventories, where I started looking at.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* /nova/api/openstack/placement/handlers/inventory.py, set_inventories(req)"},{"line_number":53,"context_line":"* A reno note advertising the additional placement REST API microversion and"},{"line_number":54,"context_line":"functionality"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"},{"line_number":57,"context_line":"DELETE /resource_providers/{uuid}/inventories and construct a call to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_5feaf374","line":54,"updated":"2017-03-06 00:31:50.000000000","message":"nit: this needs to align with the line above for the formatting to be correct.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* /nova/api/openstack/placement/handlers/inventory.py, set_inventories(req)"},{"line_number":53,"context_line":"* A reno note advertising the additional placement REST API microversion and"},{"line_number":54,"context_line":"functionality"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"},{"line_number":57,"context_line":"DELETE /resource_providers/{uuid}/inventories and construct a call to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_08b3d10a","line":54,"in_reply_to":"ba2be162_5feaf374","updated":"2017-03-06 13:46:24.000000000","message":"done","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"},{"line_number":57,"context_line":"DELETE /resource_providers/{uuid}/inventories and construct a call to"},{"line_number":58,"context_line":"ResourceProvider.set_inventory(), passing in an empty InventorList() object."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"We still want the DELETE /resource_providers/{uuid}/inventories call to return"},{"line_number":61,"context_line":"a 409 if the inventory is in use or if there was a concurrent attempt to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_9f00eb35","line":58,"range":{"start_line":58,"start_character":17,"end_line":58,"end_character":30},"updated":"2017-03-06 00:31:50.000000000","message":"set_inventory or set_inventories since L52 above says set_inventories?","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"},{"line_number":57,"context_line":"DELETE /resource_providers/{uuid}/inventories and construct a call to"},{"line_number":58,"context_line":"ResourceProvider.set_inventory(), passing in an empty InventorList() object."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"We still want the DELETE /resource_providers/{uuid}/inventories call to return"},{"line_number":61,"context_line":"a 409 if the inventory is in use or if there was a concurrent attempt to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_55c8fd54","line":58,"range":{"start_line":58,"start_character":17,"end_line":58,"end_character":30},"in_reply_to":"ba2be162_9f00eb35","updated":"2017-03-06 13:46:24.000000000","message":"No, this is the method called from objects.ResourceProvider:\nresource_provider.set_inventory(inventories)\nThis will be called inside the new delete_inventories(req) method.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Continue non-intuitive delete of all inventory through the PUT method with"},{"line_number":71,"context_line":"empty resources in the request payload."},{"line_number":72,"context_line":"The other alternative is to get all inventories from a resource provider and"},{"line_number":73,"context_line":"use the DELETE method one at a time."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"Data model impact"},{"line_number":76,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_df8d03d4","line":73,"range":{"start_line":72,"start_character":0,"end_line":73,"end_character":36},"updated":"2017-03-06 00:31:50.000000000","message":"I believe this is what the scheduler report client does today and it has to handle parsing the 409 which is ugly and why we wanted to do this new microversion.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Continue non-intuitive delete of all inventory through the PUT method with"},{"line_number":71,"context_line":"empty resources in the request payload."},{"line_number":72,"context_line":"The other alternative is to get all inventories from a resource provider and"},{"line_number":73,"context_line":"use the DELETE method one at a time."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"Data model impact"},{"line_number":76,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_235c367c","line":73,"range":{"start_line":72,"start_character":0,"end_line":73,"end_character":36},"in_reply_to":"ba2be162_df8d03d4","updated":"2017-03-06 13:46:24.000000000","message":"updated, hope it is ok.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":100,"context_line":"Other end user impact"},{"line_number":101,"context_line":"---------------------"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"Additional placement REST API microversion and functionality."},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Performance Impact"},{"line_number":106,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_1fc23be9","line":103,"updated":"2017-03-06 00:31:50.000000000","message":"I think this is just None.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":100,"context_line":"Other end user impact"},{"line_number":101,"context_line":"---------------------"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"Additional placement REST API microversion and functionality."},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Performance Impact"},{"line_number":106,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_e3f3fe70","line":103,"in_reply_to":"ba2be162_1fc23be9","updated":"2017-03-06 13:46:24.000000000","message":"done","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7ecddca5c05258f03125e8df4c5fe95730874ab","unresolved":false,"context_lines":[{"line_number":170,"context_line":""},{"line_number":171,"context_line":"   * - Release Name"},{"line_number":172,"context_line":"     - Description"},{"line_number":173,"context_line":"   * - Ocata"},{"line_number":174,"context_line":"     - Introduced"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_3fb53f7d","line":173,"range":{"start_line":173,"start_character":7,"end_line":173,"end_character":12},"updated":"2017-03-06 00:31:50.000000000","message":"Pike","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"22faf68f167671fc83743c05f228a2c196328045","unresolved":false,"context_lines":[{"line_number":170,"context_line":""},{"line_number":171,"context_line":"   * - Release Name"},{"line_number":172,"context_line":"     - Description"},{"line_number":173,"context_line":"   * - Ocata"},{"line_number":174,"context_line":"     - Introduced"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba2be162_03e732ac","line":173,"range":{"start_line":173,"start_character":7,"end_line":173,"end_character":12},"in_reply_to":"ba2be162_3fb53f7d","updated":"2017-03-06 13:46:24.000000000","message":"done.","commit_id":"597f21d31fd74d4afc961d96bf95604dfc289702"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8a439347e777999cd72eaf74f6e0810f710a6f6c","unresolved":false,"context_lines":[{"line_number":71,"context_line":"  empty resources in the request payload."},{"line_number":72,"context_line":"* The other alternative is to get all inventories from a resource provider and"},{"line_number":73,"context_line":"  use the DELETE method one at a time."},{"line_number":74,"context_line":"These methods are ugly and require a new microversion with a new method for"},{"line_number":75,"context_line":"deleting all inventories from a resource provider at once, which should report"},{"line_number":76,"context_line":"the appropriate return codes."},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a30ddce_d056b205","line":74,"updated":"2017-03-06 22:52:29.000000000","message":"Put a blank line between this paragraph and the bulleted list.","commit_id":"24cdf8eaf011c27a3cd5e26648b4b2bdbfcd880c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8a439347e777999cd72eaf74f6e0810f710a6f6c","unresolved":false,"context_lines":[{"line_number":83,"context_line":"REST API impact"},{"line_number":84,"context_line":"---------------"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"New API method: DELETE /resource_providers/{uuid}/inventories"},{"line_number":87,"context_line":"    Empty payload"},{"line_number":88,"context_line":"    Return 204 No Content on success"},{"line_number":89,"context_line":"    Return 409 on error"},{"line_number":90,"context_line":"        409 resource generation out of sync"},{"line_number":91,"context_line":"        409 inventory in use"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"Security impact"},{"line_number":94,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a30ddce_10412a3a","line":91,"range":{"start_line":86,"start_character":0,"end_line":91,"end_character":28},"updated":"2017-03-06 22:52:29.000000000","message":"The formatting on this is odd:\n\nhttp://docs-draft.openstack.org/85/415885/5/check/gate-nova-specs-docs-ubuntu-xenial/43266a9//doc/build/html/specs/pike/approved/delete-inventories-placement-api.html#rest-api-impact","commit_id":"24cdf8eaf011c27a3cd5e26648b4b2bdbfcd880c"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"b288d2f84a0d4161b4d56f04c0ac736c1f6d9ccb","unresolved":false,"context_lines":[{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently (version 1.3 or before of the placement API), in order to delete"},{"line_number":21,"context_line":"all inventory for a resource provider, one must call"},{"line_number":22,"context_line":"PUT /resource_providers/{uuid}/inventories and pass in the following request"},{"line_number":23,"context_line":"payload::"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a30ddce_43bbc2c4","line":20,"updated":"2017-03-07 14:03:55.000000000","message":"We could say 1.4 but I don\u0027t think that\u0027s necessary.","commit_id":"9e7510bcd24d6fe7f6bb5d5b5fa8bdf83992f29a"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"cee8b2e891cb1c676e337fd023ce02d256aa95d9","unresolved":false,"context_lines":[{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently (version 1.3 or before of the placement API), in order to delete"},{"line_number":21,"context_line":"all inventory for a resource provider, one must call"},{"line_number":22,"context_line":"PUT /resource_providers/{uuid}/inventories and pass in the following request"},{"line_number":23,"context_line":"payload::"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a30ddce_77f31c0b","line":20,"in_reply_to":"9a30ddce_43bbc2c4","updated":"2017-03-07 14:41:57.000000000","message":"ack","commit_id":"9e7510bcd24d6fe7f6bb5d5b5fa8bdf83992f29a"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"0f60462d86a656ff4145be2fb42c93b5a3ad62b4","unresolved":false,"context_lines":[{"line_number":50,"context_line":"on success. Changes include:"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* /nova/api/openstack/placement/handlers/inventory.py, delete_inventories(req)"},{"line_number":53,"context_line":"* A reno note advertising the additional placement REST API microversion and"},{"line_number":54,"context_line":"  functionality"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a30ddce_29a14daa","line":53,"range":{"start_line":53,"start_character":4,"end_line":53,"end_character":13},"updated":"2017-03-07 14:08:04.000000000","message":"pedantic nit: \"reno\" \u003d\u003d \"release note\". \"reno note\" is redundant. :)","commit_id":"9e7510bcd24d6fe7f6bb5d5b5fa8bdf83992f29a"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"cee8b2e891cb1c676e337fd023ce02d256aa95d9","unresolved":false,"context_lines":[{"line_number":50,"context_line":"on success. Changes include:"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* /nova/api/openstack/placement/handlers/inventory.py, delete_inventories(req)"},{"line_number":53,"context_line":"* A reno note advertising the additional placement REST API microversion and"},{"line_number":54,"context_line":"  functionality"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a30ddce_f7e70c3e","line":53,"range":{"start_line":53,"start_character":4,"end_line":53,"end_character":13},"in_reply_to":"9a30ddce_29a14daa","updated":"2017-03-07 14:41:57.000000000","message":"done","commit_id":"9e7510bcd24d6fe7f6bb5d5b5fa8bdf83992f29a"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"b288d2f84a0d4161b4d56f04c0ac736c1f6d9ccb","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"},{"line_number":57,"context_line":"DELETE /resource_providers/{uuid}/inventories and construct a call to"},{"line_number":58,"context_line":"ResourceProvider.set_inventory(), passing in an empty InventorList() object."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"We still want the DELETE /resource_providers/{uuid}/inventories call to return"},{"line_number":61,"context_line":"a 409 if the inventory is in use or if there was a concurrent attempt to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a30ddce_03c2aa33","line":58,"updated":"2017-03-07 14:03:55.000000000","message":"InventoryList","commit_id":"9e7510bcd24d6fe7f6bb5d5b5fa8bdf83992f29a"},{"author":{"_account_id":8175,"name":"Rafael Folco","email":"rfolco@redhat.com","username":"rfolco"},"change_message_id":"cee8b2e891cb1c676e337fd023ce02d256aa95d9","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The handler file for inventory.py should just take a call to"},{"line_number":57,"context_line":"DELETE /resource_providers/{uuid}/inventories and construct a call to"},{"line_number":58,"context_line":"ResourceProvider.set_inventory(), passing in an empty InventorList() object."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"We still want the DELETE /resource_providers/{uuid}/inventories call to return"},{"line_number":61,"context_line":"a 409 if the inventory is in use or if there was a concurrent attempt to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a30ddce_770f9ce1","line":58,"in_reply_to":"9a30ddce_03c2aa33","updated":"2017-03-07 14:41:57.000000000","message":"done","commit_id":"9e7510bcd24d6fe7f6bb5d5b5fa8bdf83992f29a"}]}
