)]}'
{"specs/newton/approved/deprecate-api-proxies.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":40,"context_line":"Proposed change"},{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"The API Ref site will be updated to state that all the following"},{"line_number":44,"context_line":"resources are deprecated:"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"* /images"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_df459843","line":43,"updated":"2016-05-04 19:10:06.000000000","message":"I guess we aren\u0027t really proxying these, but I was thinking about deprecation for os-certificates, os-agents and os-cloudpipe. Do we just want to handle these as separate specs? I\u0027d say at least one separate spec, yes, so it doesn\u0027t confuse things here with the topic of deprecating proxies.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"78265305f6871fdd4648a6149070999ebf142340","unresolved":false,"context_lines":[{"line_number":40,"context_line":"Proposed change"},{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"The API Ref site will be updated to state that all the following"},{"line_number":44,"context_line":"resources are deprecated:"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"* /images"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_bb894028","line":43,"in_reply_to":"1a122d0e_df459843","updated":"2016-05-18 00:19:55.000000000","message":"Yes, all the funky extensions should be deprecated in a second spec.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":56,"context_line":"* /os-security-group-rules"},{"line_number":57,"context_line":"* /os-security-groups"},{"line_number":58,"context_line":"* /os-tenant-networks"},{"line_number":59,"context_line":"* /servers/{id}/os-baremetal ? (what is the path to get there otherwise)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"The documentation for all of these will be moved to the end of the API"},{"line_number":62,"context_line":"Ref site, and it will be visually clear this is part of the deprecated"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_04b9892e","line":59,"updated":"2016-05-04 19:10:06.000000000","message":"Also os-baremetal-nodes which is what novaclient is using.\n\nI guess it\u0027s not a resource, but it\u0027s a proxy API.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"d24a5fe0124ab8bd2a50b5f900dd79d413e0c1a6","unresolved":false,"context_lines":[{"line_number":56,"context_line":"* /os-security-group-rules"},{"line_number":57,"context_line":"* /os-security-groups"},{"line_number":58,"context_line":"* /os-tenant-networks"},{"line_number":59,"context_line":"* /servers/{id}/os-baremetal ? (what is the path to get there otherwise)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"The documentation for all of these will be moved to the end of the API"},{"line_number":62,"context_line":"Ref site, and it will be visually clear this is part of the deprecated"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bab6814e_2177b83b","line":59,"in_reply_to":"1a122d0e_04b9892e","updated":"2016-05-18 14:55:07.000000000","message":"Done","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":71,"context_line":"All the servers resources which have an imageRef field that point back"},{"line_number":72,"context_line":"to the /images API will be updated to point to glance. (Note: Nova\u0027s"},{"line_number":73,"context_line":"only understanding of glance today is via glance.api_servers so for"},{"line_number":74,"context_line":"sites that use non accessable api_servers this could case a problem.)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"The current ``alternate`` links which point to the glance.api_servers"},{"line_number":77,"context_line":"will be removed."}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_118ef6cf","line":74,"updated":"2016-05-05 11:29:23.000000000","message":"Do we want to actually drop these in the new microversion as well, and only do this change for the older microversions.\n\nWe can add them back in when we work out how to do them properly, via the service catalog, or something better?","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":71,"context_line":"All the servers resources which have an imageRef field that point back"},{"line_number":72,"context_line":"to the /images API will be updated to point to glance. (Note: Nova\u0027s"},{"line_number":73,"context_line":"only understanding of glance today is via glance.api_servers so for"},{"line_number":74,"context_line":"sites that use non accessable api_servers this could case a problem.)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"The current ``alternate`` links which point to the glance.api_servers"},{"line_number":77,"context_line":"will be removed."}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_c4c31189","line":74,"range":{"start_line":74,"start_character":53,"end_line":74,"end_character":57},"updated":"2016-05-04 19:10:06.000000000","message":"cause","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"78265305f6871fdd4648a6149070999ebf142340","unresolved":false,"context_lines":[{"line_number":71,"context_line":"All the servers resources which have an imageRef field that point back"},{"line_number":72,"context_line":"to the /images API will be updated to point to glance. (Note: Nova\u0027s"},{"line_number":73,"context_line":"only understanding of glance today is via glance.api_servers so for"},{"line_number":74,"context_line":"sites that use non accessable api_servers this could case a problem.)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"The current ``alternate`` links which point to the glance.api_servers"},{"line_number":77,"context_line":"will be removed."}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_9b2f1cf5","line":74,"in_reply_to":"1a122d0e_118ef6cf","updated":"2016-05-18 00:19:55.000000000","message":"I think imageRef link is a very valid construct, and should still exist. I think we\u0027re just going to have to doc this case for people that put addresses in api_servers that aren\u0027t public.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":79,"context_line":"Networking API"},{"line_number":80,"context_line":"--------------"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"Nova Network is deprecated, as such the APIs around that networking"},{"line_number":83,"context_line":"will also be marked as deprecated, as is their use in talking to the"},{"line_number":84,"context_line":"proxy. A preamble will be written for this section to clarify the"},{"line_number":85,"context_line":"deprecation of the network API as well as the the proxy to Neutron"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_04ad0988","line":82,"updated":"2016-05-04 19:10:06.000000000","message":"Are we planning on fixing os-limits and os-used-limits as part of this spec or another more specific one? What we discussed at the summit was adding a microversion that drops the networking related resource keys from the response if using neutron since they are wrong. And eventually we\u0027d remove the networking keys entirely once we drop nova-network.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":86,"context_line":"functionality."},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"Obviously we can\u0027t remove these APIs entirely until nova-network is"},{"line_number":89,"context_line":"removed from the tree. There is no specific timeline for that."},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"Maintenance Status"},{"line_number":92,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_112a7690","line":89,"updated":"2016-05-05 11:29:23.000000000","message":"Well, I think we could drop them from new microversions, folks can always use the older versions to get those APIs.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b95c94fb591ce31348f660ab750d2dd75ec895b5","unresolved":false,"context_lines":[{"line_number":86,"context_line":"functionality."},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"Obviously we can\u0027t remove these APIs entirely until nova-network is"},{"line_number":89,"context_line":"removed from the tree. There is no specific timeline for that."},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"Maintenance Status"},{"line_number":92,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_431a3770","line":89,"in_reply_to":"1a122d0e_112a7690","updated":"2016-05-05 11:57:20.000000000","message":"Perhaps what we should do is drop them if use_neutron\u003dTrue in newer microversions. Which complicates the matrix, but I don\u0027t really want to drop these entirely for nova-net, because that\u0027s going to make it harder for people to stay on a current microversion.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a484bd075caaecec89888eb6af65cc0a037f4c24","unresolved":false,"context_lines":[{"line_number":86,"context_line":"functionality."},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"Obviously we can\u0027t remove these APIs entirely until nova-network is"},{"line_number":89,"context_line":"removed from the tree. There is no specific timeline for that."},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"Maintenance Status"},{"line_number":92,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_ad55621e","line":89,"in_reply_to":"1a122d0e_431a3770","updated":"2016-05-06 13:42:21.000000000","message":"Yeah I\u0027m -1 on dropping them for the microversion and then making people have to use older microversions to get things for nova-net. We shouldn\u0027t drop the nova-net stuff from the API until we drop nova-net, IMO. As a client I\u0027d be pretty annoyed if I had to write special code just to know how to get network API information from Nova because I hit this microversion wrinkle that\u0027s deprecating things.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"The following rules will exist for all of these APIs."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"* No new features will be added to them"},{"line_number":97,"context_line":"* The code behind these APIs will be in soft freeze, bug fixing kept"},{"line_number":98,"context_line":"  to a minimum."},{"line_number":99,"context_line":"* Bugs that do not cause a 500 error are likely to be unfixed."}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_44dc2118","line":96,"updated":"2016-05-04 19:10:06.000000000","message":"At first I thought cburgess\u0027 spec about specifying volume_type when doing boot from volume would contradict with this, but I don\u0027t think it does, since that goes through server create, not something on the volumes proxy API.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b95c94fb591ce31348f660ab750d2dd75ec895b5","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"The following rules will exist for all of these APIs."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"* No new features will be added to them"},{"line_number":97,"context_line":"* The code behind these APIs will be in soft freeze, bug fixing kept"},{"line_number":98,"context_line":"  to a minimum."},{"line_number":99,"context_line":"* Bugs that do not cause a 500 error are likely to be unfixed."}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_0342ff3d","line":96,"in_reply_to":"1a122d0e_2d7baabf","updated":"2016-05-05 11:57:20.000000000","message":"Right, this kind of fits under \u0027Internal Representations Remain\u0027. If data is integral to a composite operation, that\u0027s cool.\n\nHowever, we really don\u0027t want to be doing a strict proxy.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"The following rules will exist for all of these APIs."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"* No new features will be added to them"},{"line_number":97,"context_line":"* The code behind these APIs will be in soft freeze, bug fixing kept"},{"line_number":98,"context_line":"  to a minimum."},{"line_number":99,"context_line":"* Bugs that do not cause a 500 error are likely to be unfixed."}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_2d7baabf","line":96,"in_reply_to":"1a122d0e_44dc2118","updated":"2016-05-05 11:29:23.000000000","message":"Thats a good point to raise, we have blocked that change in the past, but I don\u0027t think we can if we don\u0027t remove that.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":96,"context_line":"* No new features will be added to them"},{"line_number":97,"context_line":"* The code behind these APIs will be in soft freeze, bug fixing kept"},{"line_number":98,"context_line":"  to a minimum."},{"line_number":99,"context_line":"* Bugs that do not cause a 500 error are likely to be unfixed."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"Internal Representations Remain"},{"line_number":102,"context_line":"-------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_947e7468","line":99,"updated":"2016-05-05 11:29:23.000000000","message":"Don\u0027t we also mean, regressions might be fixed, but newly discovered bugs are unlikely to be fixed.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a484bd075caaecec89888eb6af65cc0a037f4c24","unresolved":false,"context_lines":[{"line_number":96,"context_line":"* No new features will be added to them"},{"line_number":97,"context_line":"* The code behind these APIs will be in soft freeze, bug fixing kept"},{"line_number":98,"context_line":"  to a minimum."},{"line_number":99,"context_line":"* Bugs that do not cause a 500 error are likely to be unfixed."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"Internal Representations Remain"},{"line_number":102,"context_line":"-------------------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_ed1c8a79","line":99,"in_reply_to":"1a122d0e_947e7468","updated":"2016-05-06 13:42:21.000000000","message":"I read \u0027bug fixing kept to a minimum\u0027 as regressions will also be fixed. These last two bullets are essentially what we have in the devref for fixing bugs for the legacy v2 API:\n\nhttp://docs.openstack.org/developer/nova/code-review.html#fixing-bugs-in-v2-0","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Administrative Control?"},{"line_number":130,"context_line":"-----------------------"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"We may want to consider implementing a **big red switch** for"},{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_44170154","line":132,"updated":"2016-05-04 19:10:06.000000000","message":"Can\u0027t they do this already via policy?","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b95c94fb591ce31348f660ab750d2dd75ec895b5","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Administrative Control?"},{"line_number":130,"context_line":"-----------------------"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"We may want to consider implementing a **big red switch** for"},{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_a37d0b6f","line":132,"in_reply_to":"1a122d0e_0d5fce41","updated":"2016-05-05 11:57:20.000000000","message":"Right, given the number of URLs, this is going to be weird to get right. Disable for deprecated apis with one big switch makes it easier to have an admin force users off things they shouldn\u0027t be using.\n\nIn some ways it\u0027s kind of the inverse of extensions. And, I do agree that it causes some compat concerns, however it also means that administrators can prevent their users from starting with known deprecated stuff. It\u0027s just a thought.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Administrative Control?"},{"line_number":130,"context_line":"-----------------------"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"We may want to consider implementing a **big red switch** for"},{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_0d5fce41","line":132,"in_reply_to":"1a122d0e_44170154","updated":"2016-05-05 11:29:23.000000000","message":"Its a bit confusing, and error prone via policy.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a484bd075caaecec89888eb6af65cc0a037f4c24","unresolved":false,"context_lines":[{"line_number":129,"context_line":"Administrative Control?"},{"line_number":130,"context_line":"-----------------------"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"We may want to consider implementing a **big red switch** for"},{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_8d097d2f","line":132,"in_reply_to":"1a122d0e_a37d0b6f","updated":"2016-05-06 13:42:21.000000000","message":"OK. I guess I\u0027d just poll the operators channel/list to see if there is any interest in this. But I wouldn\u0027t bend over backward to make it happen just because we can.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"},{"line_number":136,"context_line":"a potential idea."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Alternatives"},{"line_number":139,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_9484b40b","line":136,"updated":"2016-05-05 11:29:23.000000000","message":"So 404 on everything, across all microversions?","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"982a25672d1cbef7c1baee5315215259103e885b","unresolved":false,"context_lines":[{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"},{"line_number":136,"context_line":"a potential idea."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Alternatives"},{"line_number":139,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_4a41a738","line":136,"in_reply_to":"1a122d0e_438d177b","updated":"2016-05-05 12:40:23.000000000","message":"If across all microversions, that break all the old clients. We can use microversions advertise project_id in url become optional across all microversions, and advertise new microversio headers available across all microversions. Those advertisement won\u0027t break the old client, due to we just adverise something which is still back-compatible.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a484bd075caaecec89888eb6af65cc0a037f4c24","unresolved":false,"context_lines":[{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"},{"line_number":136,"context_line":"a potential idea."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Alternatives"},{"line_number":139,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_6d7379b2","line":136,"in_reply_to":"1a122d0e_4a41a738","updated":"2016-05-06 13:42:21.000000000","message":"I agree with Alex, I don\u0027t think we should allow breaking across all microversions. I was thinking the big red switch would just be a way to fast-path the deprecation to removal phase, so if you request the latest microversion to a deprecated API and the admin says those are no longer available in their cloud, then you get the 404. But if you request v2.3, for example, it\u0027s business as usual.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b95c94fb591ce31348f660ab750d2dd75ec895b5","unresolved":false,"context_lines":[{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"},{"line_number":136,"context_line":"a potential idea."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Alternatives"},{"line_number":139,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_438d177b","line":136,"in_reply_to":"1a122d0e_9484b40b","updated":"2016-05-05 11:57:20.000000000","message":"That\u0027s what I was thinking. We literally wouldn\u0027t even register the routes.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"78265305f6871fdd4648a6149070999ebf142340","unresolved":false,"context_lines":[{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"},{"line_number":136,"context_line":"a potential idea."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Alternatives"},{"line_number":139,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_9b643c49","line":136,"in_reply_to":"dab17558_6d7379b2","updated":"2016-05-18 00:19:55.000000000","message":"If we provide a big red button to shut off all deprecated API components, I\u0027m ok leaving the old code around. My real concern is that sites need complicated behaviors to protect their users from using APIs that will go away given that there is client communication for deprecation.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"d24a5fe0124ab8bd2a50b5f900dd79d413e0c1a6","unresolved":false,"context_lines":[{"line_number":133,"context_line":"operators that would let them turn off the deprecated APIs to easily"},{"line_number":134,"context_line":"prevent their users from accessing them, to prevent future migration"},{"line_number":135,"context_line":"work on clean field environments. CONF.disable_deprecated_rest_api as"},{"line_number":136,"context_line":"a potential idea."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"Alternatives"},{"line_number":139,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bab6814e_019d5465","line":136,"in_reply_to":"dab17558_9b643c49","updated":"2016-05-18 14:55:07.000000000","message":"Ok, this will be dropped, and we\u0027ll handle this separately.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Keep these proxies forever. This will increase the cost of the"},{"line_number":142,"context_line":"maintenance of Nova and slow down our ability to adapt to new features"},{"line_number":143,"context_line":"and requirements."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"Data model impact"},{"line_number":146,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_3ffe4c05","line":143,"updated":"2016-05-04 19:10:06.000000000","message":"Just thinking out loud, glance v2 integration is a good example here. We could keep the nova images API proxy but it\u0027s going to be transforming things from glance v2 to our v1 version and we\u0027re going to break some things along the way, so it\u0027s really just best for people to move off of these.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":152,"context_line":"---------------"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"This change will be done in concert with an API microversion, which"},{"line_number":155,"context_line":"will make make the following resources return a 404:"},{"line_number":156,"context_line":""},{"line_number":157,"context_line":"* /images"},{"line_number":158,"context_line":"* /os-volumes"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_5f7ea86a","line":155,"range":{"start_line":155,"start_character":48,"end_line":155,"end_character":51},"updated":"2016-05-04 19:10:06.000000000","message":"https://github.com/openstack/api-wg/blob/master/guidelines/http.rst#failure-code-clarifications makes it sound like we should return a 400, but I could be reading that wrong. I swear to God, understanding that spec requires a legal degree.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":158,"context_line":"* /os-volumes"},{"line_number":159,"context_line":"* /os-snapshots"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"And the following resources return a 404 if use_neutron\u003dTrue:"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"* /os-fixed-ips"},{"line_number":164,"context_line":"* /os-floating-ips"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_11f7165a","line":161,"updated":"2016-05-05 11:29:23.000000000","message":"I don\u0027t like config changing the API.\n\nCould we just remove all of these as well, as in always return 404 for all of these.\n\nFolks using the deprecated nova-network need to request an older microversion to use those particular APIs?","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":158,"context_line":"* /os-volumes"},{"line_number":159,"context_line":"* /os-snapshots"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"And the following resources return a 404 if use_neutron\u003dTrue:"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"* /os-fixed-ips"},{"line_number":164,"context_line":"* /os-floating-ips"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_1fd2705b","line":161,"range":{"start_line":161,"start_character":37,"end_line":161,"end_character":40},"updated":"2016-05-04 19:10:06.000000000","message":"Same question about 400.\n\nWe already have a case of a proxy returning a 400 today if you\u0027re using neutron, the os-virtual-interfaces API.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a484bd075caaecec89888eb6af65cc0a037f4c24","unresolved":false,"context_lines":[{"line_number":158,"context_line":"* /os-volumes"},{"line_number":159,"context_line":"* /os-snapshots"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"And the following resources return a 404 if use_neutron\u003dTrue:"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"* /os-fixed-ips"},{"line_number":164,"context_line":"* /os-floating-ips"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_ad93a1a2","line":161,"in_reply_to":"1a122d0e_11f7165a","updated":"2016-05-06 13:42:21.000000000","message":"As already mentioned, I really dislike the idea of forcing the client to use different microversions just to get networking information before we\u0027ve removed nova-network.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"78265305f6871fdd4648a6149070999ebf142340","unresolved":false,"context_lines":[{"line_number":158,"context_line":"* /os-volumes"},{"line_number":159,"context_line":"* /os-snapshots"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"And the following resources return a 404 if use_neutron\u003dTrue:"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"* /os-fixed-ips"},{"line_number":164,"context_line":"* /os-floating-ips"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_3643a743","line":161,"in_reply_to":"dab17558_ad93a1a2","updated":"2016-05-18 00:19:55.000000000","message":"What we are actually saying is that if you are using nova-network, you\u0027re done getting new features out of Nova API. After 2.28 it\u0027s gone.\n\nThe alternative is that we don\u0027t 404 them now. But then in Peru  we\u0027re actually ready to delete nova-network, which means no matter what we said about microversions, you\u0027re kind of screwed.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":165,"context_line":"* /os-floating-ip-dns"},{"line_number":166,"context_line":"* /os-floating-ip-pools"},{"line_number":167,"context_line":"* /os-floating-ips-bulk"},{"line_number":168,"context_line":"* /os-networks"},{"line_number":169,"context_line":"* /os-security-group-default-rules"},{"line_number":170,"context_line":"* /os-security-group-rules"},{"line_number":171,"context_line":"* /os-security-groups"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_1fbef063","line":168,"updated":"2016-05-04 19:10:06.000000000","message":"Do we list os-networks-associate as deprecated somewhere since it\u0027s purely nova-net, you get a 501 from that if you\u0027re using neutron.\n\nAnd like what about fping?","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"78265305f6871fdd4648a6149070999ebf142340","unresolved":false,"context_lines":[{"line_number":165,"context_line":"* /os-floating-ip-dns"},{"line_number":166,"context_line":"* /os-floating-ip-pools"},{"line_number":167,"context_line":"* /os-floating-ips-bulk"},{"line_number":168,"context_line":"* /os-networks"},{"line_number":169,"context_line":"* /os-security-group-default-rules"},{"line_number":170,"context_line":"* /os-security-group-rules"},{"line_number":171,"context_line":"* /os-security-groups"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dab17558_b6895728","line":168,"in_reply_to":"1a122d0e_1fbef063","updated":"2016-05-18 00:19:55.000000000","message":"Yes, should add those.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7809efe81b782bfa60588e4b0391dc1a4d2daf39","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Other end user impact"},{"line_number":185,"context_line":"---------------------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"None"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"Performance Impact"},{"line_number":190,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_836f4e91","line":187,"updated":"2016-05-04 19:10:06.000000000","message":"Well, obviously end users are impacted since they have to write their client side code to to not use the proxy APIs.\n\nShould we say something about deprecating anything in python-novaclient here too? We\u0027ve already remove the volume proxies in version 4.0 of the client. And the images CLI/API proxies are deprecated in the client, but we haven\u0027t done that yet for the baremetal CLI/APIs in the client.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"428e7f92d0ab18e8977d33840ab830a13b291968","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Other end user impact"},{"line_number":185,"context_line":"---------------------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"None"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"Performance Impact"},{"line_number":190,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_8d18fe85","line":187,"in_reply_to":"1a122d0e_836f4e91","updated":"2016-05-05 11:29:23.000000000","message":"Well this is no impact to all existing users, as they have to opt into the new API version. Assuming the big red switch has not been pressed.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b95c94fb591ce31348f660ab750d2dd75ec895b5","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Other end user impact"},{"line_number":185,"context_line":"---------------------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"None"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"Performance Impact"},{"line_number":190,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_63d5b341","line":187,"in_reply_to":"1a122d0e_8d18fe85","updated":"2016-05-05 11:57:20.000000000","message":"This is \"Other end user impact\" as not explained above.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"1466cf52bad7d53271655efaf6a2bf109a18aef0","unresolved":false,"context_lines":[{"line_number":252,"context_line":".. list-table:: Revisions"},{"line_number":253,"context_line":"   :header-rows: 1"},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"   * - Mitaka"},{"line_number":256,"context_line":"     - Introduced"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_f8bd4003","line":255,"range":{"start_line":255,"start_character":7,"end_line":255,"end_character":13},"updated":"2016-05-03 19:34:34.000000000","message":"Shouldn\u0027t it be Newton?","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"1b5cd26c8a8c66490f928e95ca5c107ab10f2e2c","unresolved":false,"context_lines":[{"line_number":252,"context_line":".. list-table:: Revisions"},{"line_number":253,"context_line":"   :header-rows: 1"},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"   * - Mitaka"},{"line_number":256,"context_line":"     - Introduced"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_d314a7ea","line":255,"range":{"start_line":255,"start_character":7,"end_line":255,"end_character":13},"in_reply_to":"1a122d0e_f8bd4003","updated":"2016-05-03 20:04:00.000000000","message":"Yeh, the template is wrong, and I didn\u0027t fix it. Will in a follow up.","commit_id":"636d3b324bbfaa68c99f8100ddbc2db30cdc9b28"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/deprecate-api-proxies"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Deprecate the API Proxies that exist in Nova for services that are no"},{"line_number":14,"context_line":"longer a part of Nova."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Problem description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_47d00954","line":14,"range":{"start_line":13,"start_character":0,"end_line":14,"end_character":22},"updated":"2016-05-18 15:57:40.000000000","message":"It might be worthwhile to also mention nova-network here. It\u0027s not a proxy API, but it\u0027s deprecated and the mechanics of how it\u0027s going to be handled from the API are the same as the proxy APIs, so that\u0027s why it\u0027s also part of this change.","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":57,"context_line":"* /os-security-group-rules"},{"line_number":58,"context_line":"* /os-security-groups"},{"line_number":59,"context_line":"* /os-tenant-networks"},{"line_number":60,"context_line":"* /servers/{id}/os-baremetal-nodes"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"The documentation for all of these will be moved to the end of the API"},{"line_number":63,"context_line":"Ref site, and it will be visually clear this is part of the deprecated"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_89c7aa44","line":60,"range":{"start_line":60,"start_character":2,"end_line":60,"end_character":15},"updated":"2016-05-18 15:57:40.000000000","message":"I think this is actually wrong here and in the api-ref, this isn\u0027t an extension of the server resource, it\u0027s just a straight up proxy of BM nodes:\n\nhttps://github.com/openstack/nova/blob/master/nova/api/openstack/compute/baremetal_nodes.py#L147\n\nNo server id involved.","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":70,"context_line":"-----------"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"All the servers resources which have an imageRef field that point back"},{"line_number":73,"context_line":"to the /images API will be updated to point to glance. (Note: Nova\u0027s"},{"line_number":74,"context_line":"only understanding of glance today is via glance.api_servers so for"},{"line_number":75,"context_line":"sites that use non accessable api_servers this could cause a problem.)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"The current ``alternate`` links which point to the glance.api_servers"},{"line_number":78,"context_line":"will be removed."}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_8ccb3872","line":75,"range":{"start_line":73,"start_character":55,"end_line":75,"end_character":70},"updated":"2016-05-18 15:57:40.000000000","message":"Does this introduce any kind of security issue by exposing what might be internal or admin URLs to the glance server(s)? I guess since we already expose it via image details here:\n\nhttps://github.com/openstack/nova/blob/master/nova/api/openstack/compute/views/images.py#L125\n\nThen it\u0027s already an issue, if it\u0027s an issue, so not a new issue. Issue, issue, issue.","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":80,"context_line":"Networking API"},{"line_number":81,"context_line":"--------------"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"Nova Network is deprecated, as such the APIs around that networking"},{"line_number":84,"context_line":"will also be marked as deprecated, as is their use in talking to the"},{"line_number":85,"context_line":"proxy. A preamble will be written for this section to clarify the"},{"line_number":86,"context_line":"deprecation of the network API as well as the the proxy to Neutron"},{"line_number":87,"context_line":"functionality."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"Obviously we can\u0027t remove these APIs entirely until nova-network is"},{"line_number":90,"context_line":"removed from the tree. There is no specific timeline for that."}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_ec3484df","line":87,"range":{"start_line":83,"start_character":0,"end_line":87,"end_character":14},"updated":"2016-05-18 15:57:40.000000000","message":"In the previous patch set I asked about os-limits and os-used-limits because those are returning network resource values. It doesn\u0027t work today when using neutron because we don\u0027t get floating IP or security group quotas from Neutron, that was the reason for this spec:\n\nhttps://review.openstack.org/#/c/206735/\n\nShould we handle this as part of this deprecation spec? We talked about this at the summit, line 89 here:\n\nhttps://etherpad.openstack.org/p/newton-nova-api\n\nBut I think that was intending on a separate spec, or reviving that existing one and cleaning it up - essentially in a microversion drop the network keys from the response (we could do that here too if using neutron). I\u0027m not sure what to do about nova-network though, I guess we\u0027d also drop them in the same microversion like we are doing with the other nova-network stuff here and clients will just have to cap.\n\nDo you want to handle those APIs in this spec or separately? They do require a bit more work on the coding side of it because the API itself isn\u0027t deprecated, just parts of the response.","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":144,"context_line":"---------------"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"This change will be done in concert with an API microversion, after"},{"line_number":147,"context_line":"which all the following resources will return 404 (as these resources"},{"line_number":148,"context_line":"will no longer be found, just like doing a GET /fizbang)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"* /images"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_e7481d5e","line":147,"range":{"start_line":147,"start_character":46,"end_line":147,"end_character":49},"updated":"2016-05-18 15:57:40.000000000","message":"I was reading https://github.com/openstack/api-wg/blob/master/guidelines/http.rst#failure-code-clarifications again and it actually sounds like we could go so far as to return a 405 with a response Allow header with a list of accepted request methods, but that doesn\u0027t work here because we won\u0027t allow any methods on the resource in our API.","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":161,"context_line":"* /os-security-group-rules"},{"line_number":162,"context_line":"* /os-security-groups"},{"line_number":163,"context_line":"* /os-tenant-networks"},{"line_number":164,"context_line":"* /servers/{id}/os-baremetal-nodes"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"To users of ``nova-net`` based clouds, we\u0027ll recommend just using a"},{"line_number":167,"context_line":"max microversion of N-1 (where N is the change this lands in). This"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_67738db2","line":164,"range":{"start_line":164,"start_character":2,"end_line":164,"end_character":15},"updated":"2016-05-18 15:57:40.000000000","message":"ditto","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0e66f8a875ac75cfcd1663b992f115564a9e022c","unresolved":false,"context_lines":[{"line_number":213,"context_line":"Work Items"},{"line_number":214,"context_line":"----------"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"* Determine if baremetal sub resource should still exist"},{"line_number":217,"context_line":"* Updated API Ref site with items as deprecated"},{"line_number":218,"context_line":"* Introduce microversion to trigger 404 on these resources"},{"line_number":219,"context_line":"* Fix up imageRef links to go all the way to glance"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bab6814e_075601d2","line":216,"updated":"2016-05-18 15:57:40.000000000","message":"I\u0027m not sure what this one is about? Might not be valid.","commit_id":"3a4fd2f9fb4f9fbc3ceca67a30c98947356bbc6d"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"f04cfaf95cba6c7cc7aff42dedf79194b43fa46d","unresolved":false,"context_lines":[{"line_number":102,"context_line":"glance directly."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"At the same time we should officially tighten up the ``imageRef``"},{"line_number":105,"context_line":"validation to always being a UUID. Today it accepts a URL and does"},{"line_number":106,"context_line":"some really sloppy heuristics to make it into a UUID."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"Networking API"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_ba79e7fe","line":105,"updated":"2016-05-19 09:15:06.000000000","message":"nit s/being/be/","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8f02d64577342f06a798ebd8b2d0abb89a02bdf0","unresolved":false,"context_lines":[{"line_number":101,"context_line":"``imageRef`` field in ``servers`` is a UUID, which is valid against"},{"line_number":102,"context_line":"glance directly."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"At the same time we should officially tighten up the ``imageRef``"},{"line_number":105,"context_line":"validation to always being a UUID. Today it accepts a URL and does"},{"line_number":106,"context_line":"some really sloppy heuristics to make it into a UUID."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"Networking API"},{"line_number":109,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_31a6ca10","line":106,"range":{"start_line":104,"start_character":0,"end_line":106,"end_character":53},"updated":"2016-05-19 01:59:38.000000000","message":"I\u0027m not totally sure if we want to munge this in with this deprecation spec, but won\u0027t hold up against it.","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"f311cf6393b1d017f708c451d7f4e6251bcf9b35","unresolved":false,"context_lines":[{"line_number":101,"context_line":"``imageRef`` field in ``servers`` is a UUID, which is valid against"},{"line_number":102,"context_line":"glance directly."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"At the same time we should officially tighten up the ``imageRef``"},{"line_number":105,"context_line":"validation to always being a UUID. Today it accepts a URL and does"},{"line_number":106,"context_line":"some really sloppy heuristics to make it into a UUID."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"Networking API"},{"line_number":109,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_4f547720","line":106,"range":{"start_line":104,"start_character":0,"end_line":106,"end_character":53},"in_reply_to":"bab6814e_31a6ca10","updated":"2016-05-19 11:00:11.000000000","message":"The reason I think we need to is that we don\u0027t strong validate that field because of some legacy parsing, which can do things like send us to random image servers. Forcing it to be a UUID only will ensure Nova is in charge of which glance it is talking to.","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8f02d64577342f06a798ebd8b2d0abb89a02bdf0","unresolved":false,"context_lines":[{"line_number":114,"context_line":"deprecation of the network API as well as the the proxy to Neutron"},{"line_number":115,"context_line":"functionality."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"Users who which to continue to use the Network API in Nova must just"},{"line_number":118,"context_line":"freeze their code to work at microversions before this change."},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"Limits"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_11a906e0","line":117,"range":{"start_line":117,"start_character":10,"end_line":117,"end_character":15},"updated":"2016-05-19 01:59:38.000000000","message":"wish","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"9d4f9aff4421f40cdd8718ee9b2832aa9a8394b1","unresolved":false,"context_lines":[{"line_number":124,"context_line":"resources. These never worked when using Neutron."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"The keys related to network resources will also be removed from limits"},{"line_number":127,"context_line":"in this microversion."},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"Maintenance Status"},{"line_number":130,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_efbd7ad8","line":127,"updated":"2016-05-19 06:14:46.000000000","message":"We also need remove network stuff from quota-sets","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"f311cf6393b1d017f708c451d7f4e6251bcf9b35","unresolved":false,"context_lines":[{"line_number":124,"context_line":"resources. These never worked when using Neutron."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"The keys related to network resources will also be removed from limits"},{"line_number":127,"context_line":"in this microversion."},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"Maintenance Status"},{"line_number":130,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_0f21cfb4","line":127,"in_reply_to":"bab6814e_efbd7ad8","updated":"2016-05-19 11:00:11.000000000","message":"good catch!","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"9d4f9aff4421f40cdd8718ee9b2832aa9a8394b1","unresolved":false,"context_lines":[{"line_number":204,"context_line":"* /os-security-group-rules"},{"line_number":205,"context_line":"* /os-security-groups"},{"line_number":206,"context_line":"* /os-tenant-networks"},{"line_number":207,"context_line":"* /servers/{id}/os-baremetal-nodes"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"To users of ``nova-net`` based clouds, we\u0027ll recommend just using a"},{"line_number":210,"context_line":"max microversion of N-1 (where N is the change this lands in). This"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_2f5ca2ec","line":207,"updated":"2016-05-19 06:14:46.000000000","message":"Two more actions for server, \u0027addFixedIp\u0027 and \u0027removeFixedIp\u0027. \nDoes \u0027access_ipv4\u0027 and \u0027access_ipv6\u0027 works for neutorn?","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"f311cf6393b1d017f708c451d7f4e6251bcf9b35","unresolved":false,"context_lines":[{"line_number":204,"context_line":"* /os-security-group-rules"},{"line_number":205,"context_line":"* /os-security-groups"},{"line_number":206,"context_line":"* /os-tenant-networks"},{"line_number":207,"context_line":"* /servers/{id}/os-baremetal-nodes"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"To users of ``nova-net`` based clouds, we\u0027ll recommend just using a"},{"line_number":210,"context_line":"max microversion of N-1 (where N is the change this lands in). This"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_6f94dbe1","line":207,"in_reply_to":"bab6814e_2f5ca2ec","updated":"2016-05-19 11:00:11.000000000","message":"addFixedIp and removeFixedIp feel more like attach and detach volume. They are part of our interface that are appropriate to talk to another service to do a thing because they are asking for a network thing to attach it to an instance. The resources we are removing are really the things that top level manage foreign resources without any relationship to servers. Which is why we are removing the security groups resources, but not removing the add/remove actions for them.\n\naccess_ipv4/6 is user settable, and there may still be value in that. I\u0027m hesitant to touch that at this point.","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"365c722d6f1c391af29c650ad1618596b83cf0c4","unresolved":false,"context_lines":[{"line_number":204,"context_line":"* /os-security-group-rules"},{"line_number":205,"context_line":"* /os-security-groups"},{"line_number":206,"context_line":"* /os-tenant-networks"},{"line_number":207,"context_line":"* /servers/{id}/os-baremetal-nodes"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"To users of ``nova-net`` based clouds, we\u0027ll recommend just using a"},{"line_number":210,"context_line":"max microversion of N-1 (where N is the change this lands in). This"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_eafeef36","line":207,"in_reply_to":"bab6814e_6f94dbe1","updated":"2016-05-19 13:45:16.000000000","message":"I found some comments in this bug https://bugs.launchpad.net/nova/+bug/1430512\n\nhttps://bugs.launchpad.net/nova/+bug/1430512/comments/1 and https://bugs.launchpad.net/nova/+bug/1430512/comments/3\n\nIt feels this two interfaces is for nova-net, and we have implementation for neutron without too much consider.\n\nI\u0027m a little not sure abou this. Leave the comments for other people reference.","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"49c4e2aa852e8a5349529a2d5ad107121e25eb06","unresolved":false,"context_lines":[{"line_number":204,"context_line":"* /os-security-group-rules"},{"line_number":205,"context_line":"* /os-security-groups"},{"line_number":206,"context_line":"* /os-tenant-networks"},{"line_number":207,"context_line":"* /servers/{id}/os-baremetal-nodes"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"To users of ``nova-net`` based clouds, we\u0027ll recommend just using a"},{"line_number":210,"context_line":"max microversion of N-1 (where N is the change this lands in). This"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_8dde5d0f","line":207,"in_reply_to":"bab6814e_eafeef36","updated":"2016-05-19 13:55:18.000000000","message":"That\u0027s a good point, the neutron impl of that extension was half baked. Gary Kotton has a patch up for it, but we don\u0027t test it in Tempest yet so I\u0027m not sure how useful it is, and it feels like a feature add to fix it / actually make it work for Neutron.","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8f02d64577342f06a798ebd8b2d0abb89a02bdf0","unresolved":false,"context_lines":[{"line_number":259,"context_line":"* Updated API Ref site with items as deprecated"},{"line_number":260,"context_line":"* Introduce microversion to trigger 404 on these resources"},{"line_number":261,"context_line":"  * Remove limits keys in this microversion"},{"line_number":262,"context_line":"  * Tighten up imageRef validation in this microversion"},{"line_number":263,"context_line":"* Create Tempest tests for items such as setting addresses on ports in"},{"line_number":264,"context_line":"  neutron, then verifying they look correct in the server object via nova"},{"line_number":265,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_7197b290","line":262,"updated":"2016-05-19 01:59:38.000000000","message":"Again, not sure about this being necessary here, but OK.","commit_id":"1cf3145732da36113d0c07f09a83514bbb901e02"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"14f2daa28e4785bce9ed5f06db3171057114322f","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"As the Nova team we\u0027d like to point API consumers to the native API"},{"line_number":33,"context_line":"whenever possible, and get out of the habit of being a pure proxy for"},{"line_number":34,"context_line":"other REST APIs."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Use Cases"},{"line_number":37,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_0da54da1","line":34,"updated":"2016-05-19 13:58:27.000000000","message":"historically speaking, I think its more that we now have a mechanism to warn API users about what to avoid using, but I am happy with this nice summary.","commit_id":"d3b392e679c4bc3d75db39839ff3c7f1d9f691c1"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"14f2daa28e4785bce9ed5f06db3171057114322f","unresolved":false,"context_lines":[{"line_number":261,"context_line":"* Updated API Ref site with items as deprecated"},{"line_number":262,"context_line":"* Introduce microversion to trigger 404 on these resources"},{"line_number":263,"context_line":"  * Remove limits keys in this microversion"},{"line_number":264,"context_line":"  * Tighten up imageRef validation in this microversion"},{"line_number":265,"context_line":"* Create Tempest tests for items such as setting addresses on ports in"},{"line_number":266,"context_line":"  neutron, then verifying they look correct in the server object via nova"},{"line_number":267,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_cdd225d2","line":264,"updated":"2016-05-19 13:58:27.000000000","message":"Nit: I suspect this sub bullet doesn\u0027t render correctly.","commit_id":"d3b392e679c4bc3d75db39839ff3c7f1d9f691c1"}]}
