)]}'
{"api-ref/source/extensions.inc":[{"author":{"_account_id":15293,"name":"Karen Bradshaw","email":"kbhawkey@gmail.com","username":"karenb"},"change_message_id":"bfadebc5d7b8620bf4bd8859f0dbcf2cd67c738f","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Nova originally supported the concept of API extensions, that allowed"},{"line_number":11,"context_line":"implementations of Nova to change the API (add new resources, or"},{"line_number":12,"context_line":"attributes to existing resource objects) via extensions. In an attempt"},{"line_number":13,"context_line":"to expose to the user what was supported in a particular site, the"},{"line_number":14,"context_line":"extensions resource provided a list of extensions and detailed"},{"line_number":15,"context_line":"information on each. The net result was gratuitous differentiation in"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_f8219c4e","line":12,"updated":"2016-05-09 18:53:44.000000000","message":"Do you mean different versions of Nova or different deployments of Nova?","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"822b6d5ed3f44ca2a2833c4cbb7b9d9b31d59ed4","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Nova originally supported the concept of API extensions, that allowed"},{"line_number":11,"context_line":"implementations of Nova to change the API (add new resources, or"},{"line_number":12,"context_line":"attributes to existing resource objects) via extensions. In an attempt"},{"line_number":13,"context_line":"to expose to the user what was supported in a particular site, the"},{"line_number":14,"context_line":"extensions resource provided a list of extensions and detailed"},{"line_number":15,"context_line":"information on each. The net result was gratuitous differentiation in"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_43c7f463","line":12,"in_reply_to":"dab17558_f8219c4e","updated":"2016-05-10 11:07:07.000000000","message":"In summary, both. I like the word implementations here, although deployments would be enough as well.","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":15293,"name":"Karen Bradshaw","email":"kbhawkey@gmail.com","username":"karenb"},"change_message_id":"bfadebc5d7b8620bf4bd8859f0dbcf2cd67c738f","unresolved":false,"context_lines":[{"line_number":11,"context_line":"implementations of Nova to change the API (add new resources, or"},{"line_number":12,"context_line":"attributes to existing resource objects) via extensions. In an attempt"},{"line_number":13,"context_line":"to expose to the user what was supported in a particular site, the"},{"line_number":14,"context_line":"extensions resource provided a list of extensions and detailed"},{"line_number":15,"context_line":"information on each. The net result was gratuitous differentiation in"},{"line_number":16,"context_line":"the API that required all users of OpenStack clouds to write specific"},{"line_number":17,"context_line":"code to interact with every cloud."}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_f896bc4a","line":14,"updated":"2016-05-09 18:53:44.000000000","message":"supported at OR supported in","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":15293,"name":"Karen Bradshaw","email":"kbhawkey@gmail.com","username":"karenb"},"change_message_id":"bfadebc5d7b8620bf4bd8859f0dbcf2cd67c738f","unresolved":false,"context_lines":[{"line_number":13,"context_line":"to expose to the user what was supported in a particular site, the"},{"line_number":14,"context_line":"extensions resource provided a list of extensions and detailed"},{"line_number":15,"context_line":"information on each. The net result was gratuitous differentiation in"},{"line_number":16,"context_line":"the API that required all users of OpenStack clouds to write specific"},{"line_number":17,"context_line":"code to interact with every cloud."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"As such, the entire extensions concept is deprecated, and will be"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_18ef40b1","line":16,"updated":"2016-05-09 18:53:44.000000000","message":"Seems a bit heavy handed to say gratuitous differentiation.\nCould say something like, the result was a loose/imperfect (come up with another word) API that required users of ....","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"822b6d5ed3f44ca2a2833c4cbb7b9d9b31d59ed4","unresolved":false,"context_lines":[{"line_number":13,"context_line":"to expose to the user what was supported in a particular site, the"},{"line_number":14,"context_line":"extensions resource provided a list of extensions and detailed"},{"line_number":15,"context_line":"information on each. The net result was gratuitous differentiation in"},{"line_number":16,"context_line":"the API that required all users of OpenStack clouds to write specific"},{"line_number":17,"context_line":"code to interact with every cloud."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"As such, the entire extensions concept is deprecated, and will be"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_63bdd8b6","line":16,"in_reply_to":"dab17558_18ef40b1","updated":"2016-05-10 11:07:07.000000000","message":"I duno, I quite like the current phrasing.","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"a59a39053328d47789ab559cb44041f9a2dec2ef","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":".. rest_method:: GET /v2.1/{tenant_id}/extensions"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Lists all extensions on a server."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Normal response codes: 200"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_131a836e","line":31,"range":{"start_line":31,"start_character":20,"end_line":31,"end_character":32},"updated":"2016-05-09 19:08:16.000000000","message":"maybe \u0027on a cloud\u0027?","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"822b6d5ed3f44ca2a2833c4cbb7b9d9b31d59ed4","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":".. rest_method:: GET /v2.1/{tenant_id}/extensions"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Lists all extensions on a server."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Normal response codes: 200"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_63967840","line":31,"range":{"start_line":31,"start_character":20,"end_line":31,"end_character":32},"in_reply_to":"dab17558_131a836e","updated":"2016-05-10 11:07:07.000000000","message":"+1","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"822b6d5ed3f44ca2a2833c4cbb7b9d9b31d59ed4","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"**Example Show Extension Details**"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Shows details about the ``os-agents`` extension."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":".. literalinclude:: ../../doc/api_samples/extension-info/extensions-get-resp.json"},{"line_number":102,"context_line":"   :language: javascript"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_a3ea20aa","line":99,"updated":"2016-05-10 11:07:07.000000000","message":"Nit: given we are thinking of destroying this one, maybe we should pick another example, but thats a TODO for later.","commit_id":"ec955cd5d1c2a599015c2d5a1cd6bd2034c044b7"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"67b762430324ffd9a219f6ed691614ba00efdce7","unresolved":false,"context_lines":[{"line_number":17,"context_line":"code to interact with every cloud."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"As such, the entire extensions concept is deprecated, and will be"},{"line_number":20,"context_line":"removed in the near future. The whole of the API documented is the API"},{"line_number":21,"context_line":"expected out of all OpenStack Compute installations."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"For information about extensions, see `Extensions"},{"line_number":24,"context_line":"\u003chttp://developer.openstack.org/api-guide/compute/extensions.html\u003e`__."}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_78c89955","line":21,"range":{"start_line":20,"start_character":28,"end_line":21,"end_character":52},"updated":"2016-05-11 15:52:35.000000000","message":"I\u0027m having a hard time parsing this.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"c5bfcaf84f8316ba9cc843f2896cb9e15f7dcc68","unresolved":false,"context_lines":[{"line_number":17,"context_line":"code to interact with every cloud."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"As such, the entire extensions concept is deprecated, and will be"},{"line_number":20,"context_line":"removed in the near future. The whole of the API documented is the API"},{"line_number":21,"context_line":"expected out of all OpenStack Compute installations."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"For information about extensions, see `Extensions"},{"line_number":24,"context_line":"\u003chttp://developer.openstack.org/api-guide/compute/extensions.html\u003e`__."}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_871036aa","line":21,"range":{"start_line":20,"start_character":28,"end_line":21,"end_character":52},"in_reply_to":"dab17558_78c89955","updated":"2016-05-12 18:34:34.000000000","message":"yeh, I\u0027ll just delete it.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"67b762430324ffd9a219f6ed691614ba00efdce7","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Normal response codes: 200"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Error response codes: unauthorized(401), forbidden(403)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"Request"},{"line_number":38,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_b81a01c4","line":35,"range":{"start_line":35,"start_character":51,"end_line":35,"end_character":54},"updated":"2016-05-11 15:52:35.000000000","message":"Is this right? I don\u0027t see us doing a policy check for listing extensions.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"c5bfcaf84f8316ba9cc843f2896cb9e15f7dcc68","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Normal response codes: 200"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Error response codes: unauthorized(401), forbidden(403)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"Request"},{"line_number":38,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_27206af7","line":35,"range":{"start_line":35,"start_character":51,"end_line":35,"end_character":54},"in_reply_to":"dab17558_b81a01c4","updated":"2016-05-12 18:34:34.000000000","message":"Done","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"67b762430324ffd9a219f6ed691614ba00efdce7","unresolved":false,"context_lines":[{"line_number":49,"context_line":"  - extensions: extensions"},{"line_number":50,"context_line":"  - name: extension_name"},{"line_number":51,"context_line":"  - alias: alias"},{"line_number":52,"context_line":"  - links: links"},{"line_number":53,"context_line":"  - namespace: namespace"},{"line_number":54,"context_line":"  - description: extension_description"},{"line_number":55,"context_line":"  - updated: updated"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_785c194b","line":52,"range":{"start_line":52,"start_character":11,"end_line":52,"end_character":16},"updated":"2016-05-11 15:52:35.000000000","message":"links_1 actually sounds like a more accurate description for this.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"c5bfcaf84f8316ba9cc843f2896cb9e15f7dcc68","unresolved":false,"context_lines":[{"line_number":49,"context_line":"  - extensions: extensions"},{"line_number":50,"context_line":"  - name: extension_name"},{"line_number":51,"context_line":"  - alias: alias"},{"line_number":52,"context_line":"  - links: links"},{"line_number":53,"context_line":"  - namespace: namespace"},{"line_number":54,"context_line":"  - description: extension_description"},{"line_number":55,"context_line":"  - updated: updated"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_074ba6b1","line":52,"range":{"start_line":52,"start_character":11,"end_line":52,"end_character":16},"in_reply_to":"dab17558_785c194b","updated":"2016-05-12 18:34:34.000000000","message":"Done","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"67b762430324ffd9a219f6ed691614ba00efdce7","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Normal response codes: 200"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Request"},{"line_number":77,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_1b6187a9","line":74,"range":{"start_line":74,"start_character":51,"end_line":74,"end_character":54},"updated":"2016-05-11 15:52:35.000000000","message":"We don\u0027t do a policy check on showing extensions.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"c5bfcaf84f8316ba9cc843f2896cb9e15f7dcc68","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Normal response codes: 200"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Request"},{"line_number":77,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_67c6f217","line":74,"range":{"start_line":74,"start_character":51,"end_line":74,"end_character":54},"in_reply_to":"dab17558_1b6187a9","updated":"2016-05-12 18:34:34.000000000","message":"Done","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"67b762430324ffd9a219f6ed691614ba00efdce7","unresolved":false,"context_lines":[{"line_number":89,"context_line":"  - extension: extension"},{"line_number":90,"context_line":"  - name: extension_name"},{"line_number":91,"context_line":"  - alias: alias"},{"line_number":92,"context_line":"  - links: links"},{"line_number":93,"context_line":"  - namespace: namespace"},{"line_number":94,"context_line":"  - description: extension_description"},{"line_number":95,"context_line":"  - updated: updated"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_9b757765","line":92,"range":{"start_line":92,"start_character":11,"end_line":92,"end_character":16},"updated":"2016-05-11 15:52:35.000000000","message":"Same as above, links_1 is probably more accurate.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"c5bfcaf84f8316ba9cc843f2896cb9e15f7dcc68","unresolved":false,"context_lines":[{"line_number":89,"context_line":"  - extension: extension"},{"line_number":90,"context_line":"  - name: extension_name"},{"line_number":91,"context_line":"  - alias: alias"},{"line_number":92,"context_line":"  - links: links"},{"line_number":93,"context_line":"  - namespace: namespace"},{"line_number":94,"context_line":"  - description: extension_description"},{"line_number":95,"context_line":"  - updated: updated"}],"source_content_type":"text/x-c++src","patch_set":3,"id":"dab17558_c7507e61","line":92,"range":{"start_line":92,"start_character":11,"end_line":92,"end_character":16},"in_reply_to":"dab17558_9b757765","updated":"2016-05-12 18:34:34.000000000","message":"Done","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"67b762430324ffd9a219f6ed691614ba00efdce7","unresolved":false,"context_lines":[{"line_number":40,"context_line":"  in: body"},{"line_number":41,"context_line":"  required: true"},{"line_number":42,"context_line":"  type: string"},{"line_number":43,"context_line":"alias_1:"},{"line_number":44,"context_line":"  description: |"},{"line_number":45,"context_line":"    An alias for the extension name. For example, ``os-server-external-events``."},{"line_number":46,"context_line":"  in: path"},{"line_number":47,"context_line":"  required: true"},{"line_number":48,"context_line":"  type: string"},{"line_number":49,"context_line":"api_version:"},{"line_number":50,"context_line":"  in: path"},{"line_number":51,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"dab17558_38b8d174","line":48,"range":{"start_line":43,"start_character":0,"end_line":48,"end_character":14},"updated":"2016-05-11 15:52:35.000000000","message":"This is unused and could be removed.","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"c5bfcaf84f8316ba9cc843f2896cb9e15f7dcc68","unresolved":false,"context_lines":[{"line_number":40,"context_line":"  in: body"},{"line_number":41,"context_line":"  required: true"},{"line_number":42,"context_line":"  type: string"},{"line_number":43,"context_line":"alias_1:"},{"line_number":44,"context_line":"  description: |"},{"line_number":45,"context_line":"    An alias for the extension name. For example, ``os-server-external-events``."},{"line_number":46,"context_line":"  in: path"},{"line_number":47,"context_line":"  required: true"},{"line_number":48,"context_line":"  type: string"},{"line_number":49,"context_line":"api_version:"},{"line_number":50,"context_line":"  in: path"},{"line_number":51,"context_line":"  required: true"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"dab17558_87ecb690","line":48,"range":{"start_line":43,"start_character":0,"end_line":48,"end_character":14},"in_reply_to":"dab17558_38b8d174","updated":"2016-05-12 18:34:34.000000000","message":"Done","commit_id":"4777bd9ff47aa8f314f44d7a4b6abbe244d41c14"}]}
