)]}'
{"api-ref/source/os-tenant-network.inc":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fd057f3cb6b13f225e64b07346fa9ed50a8e98ad","unresolved":false,"context_lines":[{"line_number":1,"context_line":".. -*- rst -*-"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-c++src","patch_set":7,"id":"3fa7e38b_ff61263a","line":2,"updated":"2019-11-22 15:36:54.000000000","message":"This needs to be moved within the api-ref index to the \"obsolete\" group:\n\nhttps://github.com/openstack/nova/blob/master/api-ref/source/index.rst#obsolete-apis","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a9eb7bbca0d93be3302107c948db076f759430f9","unresolved":false,"context_lines":[{"line_number":1,"context_line":".. -*- rst -*-"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-c++src","patch_set":7,"id":"3fa7e38b_da58f8f9","line":2,"in_reply_to":"3fa7e38b_3fa7be52","updated":"2019-11-22 16:01:40.000000000","message":"yup","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0f72fc3150101cc04d7c1f8603ea9e7f80624d59","unresolved":false,"context_lines":[{"line_number":1,"context_line":".. -*- rst -*-"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-c++src","patch_set":7,"id":"3fa7e38b_3fa7be52","line":2,"in_reply_to":"3fa7e38b_ff61263a","updated":"2019-11-22 15:42:52.000000000","message":"Actually I guess that\u0027s wrong since there are still GET routes that will work, so we can\u0027t move it to obsolete, just mark the POST and DELETE within as 410 since 21.0.0 Ussuri right?","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7959beda5537dfe9f1eb676c254bee11a22118dc","unresolved":false,"context_lines":[{"line_number":1,"context_line":".. -*- rst -*-"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":".. warning::"}],"source_content_type":"text/x-c++src","patch_set":7,"id":"3fa7e38b_3ff9fe4c","line":4,"range":{"start_line":4,"start_character":39,"end_line":4,"end_character":51},"updated":"2019-11-22 15:41:34.000000000","message":"You can remove this when the api-ref is moved to the obsolete section:\n\nhttps://docs.openstack.org/api-ref/compute/?expanded\u003dupdate-quotas-detail#obsolete-apis","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0f72fc3150101cc04d7c1f8603ea9e7f80624d59","unresolved":false,"context_lines":[{"line_number":1,"context_line":".. -*- rst -*-"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":".. warning::"}],"source_content_type":"text/x-c++src","patch_set":7,"id":"3fa7e38b_ff628615","line":4,"range":{"start_line":4,"start_character":39,"end_line":4,"end_character":51},"in_reply_to":"3fa7e38b_3ff9fe4c","updated":"2019-11-22 15:42:52.000000000","message":"Ignore this.","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0f72fc3150101cc04d7c1f8603ea9e7f80624d59","unresolved":false,"context_lines":[{"line_number":85,"context_line":"Normal response codes: 200"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"Error response codes: unauthorized(401), forbidden(403), itemNotFound(404),"},{"line_number":88,"context_line":"gone(410)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"Request"},{"line_number":91,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":7,"id":"3fa7e38b_5f895ac4","line":88,"updated":"2019-11-22 15:42:52.000000000","message":"This is incorrect.","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8bece792d61f6971d78a9c64e49f970fe6c99025","unresolved":false,"context_lines":[{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":".. warning::"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"   These APIs are proxy calls to the Network service. Nova has"},{"line_number":10,"context_line":"   deprecated all the proxy APIs and users should use the native APIs"}],"source_content_type":"text/x-c++src","patch_set":9,"id":"3fa7e38b_da5a3880","line":7,"updated":"2019-11-22 16:25:22.000000000","message":"Should this warning be updated to warn that the GET routes will fail if using nova-network starting in the 21.0.0 (Ussuri) release? Or add a per-route warning for that below?","commit_id":"e5e477c42adb7468ec2dcdd03cceaa80d27716ee"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e19e99f868e653cbf8330f17ee7729af814ea130","unresolved":false,"context_lines":[{"line_number":4,"context_line":" Project networks (os-tenant-networks) (DEPRECATED)"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":".. warning::"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"   These APIs are proxy calls to the Network service. Nova has"},{"line_number":10,"context_line":"   deprecated all the proxy APIs and users should use the native APIs"}],"source_content_type":"text/x-c++src","patch_set":9,"id":"3fa7e38b_20131e5b","line":7,"in_reply_to":"3fa7e38b_da5a3880","updated":"2019-11-22 16:39:13.000000000","message":"If we want to update these docs we can do it in a follow up.","commit_id":"e5e477c42adb7468ec2dcdd03cceaa80d27716ee"}],"doc/api_samples/os-tenant-networks/networks-list-res.json":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a5a4a038489cfb5d969108f45f946abf90ed6579","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        {"},{"line_number":4,"context_line":"            \"cidr\": \"None\","},{"line_number":5,"context_line":"            \"id\": \"3cb9bc59-5699-4588-a4b1-b87f96708bc6\","},{"line_number":6,"context_line":"            \"label\": \"private\""},{"line_number":7,"context_line":"        }"},{"line_number":8,"context_line":"    ]"},{"line_number":9,"context_line":"}"}],"source_content_type":"application/json","patch_set":7,"id":"3fa7e38b_f85864f9","line":6,"updated":"2019-11-22 09:33:48.000000000","message":"heh","commit_id":"f992f2feca46bcb8589c2b7b3f175c297387d832"}],"nova/api/openstack/compute/rest_api_version_history.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e7246ac7a0acbe1660b8d383582cc62fa81d49ff","unresolved":false,"context_lines":[{"line_number":445,"context_line":""},{"line_number":446,"context_line":"    The ``os-tenant-networks`` API was partially removed in the 21.0.0 (Ussuri)"},{"line_number":447,"context_line":"    release. On deployments newer than this, some endpoints of the API will"},{"line_number":448,"context_line":"    return HTTP 410 (Gone) regadless of the requested microversion."},{"line_number":449,"context_line":""},{"line_number":450,"context_line":"2.37"},{"line_number":451,"context_line":"----"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa7e38b_57543e54","line":448,"range":{"start_line":448,"start_character":27,"end_line":448,"end_character":36},"updated":"2019-11-15 15:39:50.000000000","message":"regardless","commit_id":"677049a012168e3e32bdddcfc3cd7293d8c76466"}],"nova/api/openstack/compute/tenant_networks.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"077f59f9ae501b08f7b287c07f2adaa76dfab2ee","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    def index(self, req):"},{"line_number":73,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":74,"context_line":"        context.can(tn_policies.BASE_POLICY_NAME)"},{"line_number":75,"context_line":"        networks \u003d list(self.network_api.get_all(context))"},{"line_number":76,"context_line":"        if not self._default_networks:"},{"line_number":77,"context_line":"            self._refresh_default_networks()"},{"line_number":78,"context_line":"        networks.extend(self._default_networks)"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa7e38b_9a67e051","line":75,"updated":"2019-11-22 16:23:02.000000000","message":"Once nova-network is actually gone, this is going to be a 500 (same below for show network). We fixed the 500 for POST and DELETE by just returning a 410 outright but I\u0027m wondering if we should be checking for neutron here and returning 410 if not? Or just it be a 500 NotImplemented error? It\u0027s probably something that could be sorted out later, I just don\u0027t know if we\u0027d handled one of these APIs where we 410 some routes but not others.","commit_id":"e5e477c42adb7468ec2dcdd03cceaa80d27716ee"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e19e99f868e653cbf8330f17ee7729af814ea130","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    def index(self, req):"},{"line_number":73,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":74,"context_line":"        context.can(tn_policies.BASE_POLICY_NAME)"},{"line_number":75,"context_line":"        networks \u003d list(self.network_api.get_all(context))"},{"line_number":76,"context_line":"        if not self._default_networks:"},{"line_number":77,"context_line":"            self._refresh_default_networks()"},{"line_number":78,"context_line":"        networks.extend(self._default_networks)"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa7e38b_e0018605","line":75,"in_reply_to":"3fa7e38b_9a67e051","updated":"2019-11-22 16:39:13.000000000","message":"Nevermind, you can\u0027t upgrade to Ussuri with nova-network once we delete the binary (I mean, I guess you *could* run the API with an old nova-network binary but you\u0027d also have to hack in the use_neutron config and stuff) so we can\u0027t really get a 500 from this (as Stephen pointed out in IRC) so this is fine.","commit_id":"e5e477c42adb7468ec2dcdd03cceaa80d27716ee"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"009225d38ae121d7db8c309444ee86af9660190f","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    def index(self, req):"},{"line_number":73,"context_line":"        context \u003d req.environ[\u0027nova.context\u0027]"},{"line_number":74,"context_line":"        context.can(tn_policies.BASE_POLICY_NAME)"},{"line_number":75,"context_line":"        networks \u003d list(self.network_api.get_all(context))"},{"line_number":76,"context_line":"        if not self._default_networks:"},{"line_number":77,"context_line":"            self._refresh_default_networks()"},{"line_number":78,"context_line":"        networks.extend(self._default_networks)"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa7e38b_80ee921e","line":75,"in_reply_to":"3fa7e38b_9a67e051","updated":"2019-11-22 16:43:37.000000000","message":"realistically, the only thing network_api could be now is an instance of \u0027nova.network.neutronv2.api.API\u0027 which does implement this function (\u0027get_all\u0027) so I think the only 500 being raised here would be genuine issues","commit_id":"e5e477c42adb7468ec2dcdd03cceaa80d27716ee"}],"nova/policies/tenant_networks.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e380289d07dbd57d365d9f00af2cfa077e9bc21a","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"            {"},{"line_number":44,"context_line":"                \u0027method\u0027: \u0027GET\u0027,"},{"line_number":45,"context_line":"                \u0027path\u0027: \u0027/os-tenant-networks/{network_id}\u0027"},{"line_number":46,"context_line":"            },"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_5f463aa9","side":"PARENT","line":45,"updated":"2019-11-22 15:40:02.000000000","message":"This route still exists yeah?\n\nhttps://review.opendev.org/#/c/686810/7/nova/api/openstack/compute/tenant_networks.py","commit_id":"1b71252a5fca825ef8d6889b431a3cf7932d6e03"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a9eb7bbca0d93be3302107c948db076f759430f9","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"            {"},{"line_number":44,"context_line":"                \u0027method\u0027: \u0027GET\u0027,"},{"line_number":45,"context_line":"                \u0027path\u0027: \u0027/os-tenant-networks/{network_id}\u0027"},{"line_number":46,"context_line":"            },"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_1a3a1097","side":"PARENT","line":45,"in_reply_to":"3fa7e38b_5f463aa9","updated":"2019-11-22 16:01:40.000000000","message":"Yup. Re-added","commit_id":"1b71252a5fca825ef8d6889b431a3cf7932d6e03"}],"nova/tests/unit/api/openstack/compute/test_tenant_networks.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e380289d07dbd57d365d9f00af2cfa077e9bc21a","unresolved":false,"context_lines":[{"line_number":140,"context_line":"        disassociate_mock.assert_called_once_with(ctxt, 1)"},{"line_number":141,"context_line":"        delete_mock.assert_called_once_with(ctxt, 1)"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"    def test_network_show(self):"},{"line_number":144,"context_line":"        with mock.patch.object(self.controller.network_api, \u0027get\u0027,"},{"line_number":145,"context_line":"                               return_value\u003dNETWORKS[0]):"},{"line_number":146,"context_line":"            res \u003d self.controller.show(self.req, 1)"},{"line_number":147,"context_line":"        self.assertEqual(NETWORKS[0], res[\u0027network\u0027])"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"    def test_network_show_not_found(self):"},{"line_number":150,"context_line":"        ctxt \u003d self.req.environ[\u0027nova.context\u0027]"},{"line_number":151,"context_line":"        with mock.patch.object(self.controller.network_api, \u0027get\u0027,"},{"line_number":152,"context_line":"                               side_effect\u003dexception.NetworkNotFound("},{"line_number":153,"context_line":"                                   network_id\u003d1)) as get_mock:"},{"line_number":154,"context_line":"            self.assertRaises(webob.exc.HTTPNotFound,"},{"line_number":155,"context_line":"                              self.controller.show, self.req, 1)"},{"line_number":156,"context_line":"        get_mock.assert_called_once_with(ctxt, 1)"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"    def _test_network_index(self, default_net\u003dTrue):"},{"line_number":159,"context_line":"        CONF.set_override(\"use_neutron_default_nets\", default_net, group\u003d\u0027api\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_dfcf8a25","side":"PARENT","line":156,"range":{"start_line":143,"start_character":4,"end_line":156,"end_character":49},"updated":"2019-11-22 15:40:02.000000000","message":"As far as I can tell these shouldn\u0027t have been removed. Only POST and DELETE.","commit_id":"1b71252a5fca825ef8d6889b431a3cf7932d6e03"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a9eb7bbca0d93be3302107c948db076f759430f9","unresolved":false,"context_lines":[{"line_number":140,"context_line":"        disassociate_mock.assert_called_once_with(ctxt, 1)"},{"line_number":141,"context_line":"        delete_mock.assert_called_once_with(ctxt, 1)"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"    def test_network_show(self):"},{"line_number":144,"context_line":"        with mock.patch.object(self.controller.network_api, \u0027get\u0027,"},{"line_number":145,"context_line":"                               return_value\u003dNETWORKS[0]):"},{"line_number":146,"context_line":"            res \u003d self.controller.show(self.req, 1)"},{"line_number":147,"context_line":"        self.assertEqual(NETWORKS[0], res[\u0027network\u0027])"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"    def test_network_show_not_found(self):"},{"line_number":150,"context_line":"        ctxt \u003d self.req.environ[\u0027nova.context\u0027]"},{"line_number":151,"context_line":"        with mock.patch.object(self.controller.network_api, \u0027get\u0027,"},{"line_number":152,"context_line":"                               side_effect\u003dexception.NetworkNotFound("},{"line_number":153,"context_line":"                                   network_id\u003d1)) as get_mock:"},{"line_number":154,"context_line":"            self.assertRaises(webob.exc.HTTPNotFound,"},{"line_number":155,"context_line":"                              self.controller.show, self.req, 1)"},{"line_number":156,"context_line":"        get_mock.assert_called_once_with(ctxt, 1)"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"    def _test_network_index(self, default_net\u003dTrue):"},{"line_number":159,"context_line":"        CONF.set_override(\"use_neutron_default_nets\", default_net, group\u003d\u0027api\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_ba3c1c92","side":"PARENT","line":156,"range":{"start_line":143,"start_character":4,"end_line":156,"end_character":49},"in_reply_to":"3fa7e38b_dfcf8a25","updated":"2019-11-22 16:01:40.000000000","message":"Yup. Should have been kept. Re-added","commit_id":"1b71252a5fca825ef8d6889b431a3cf7932d6e03"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a9eb7bbca0d93be3302107c948db076f759430f9","unresolved":false,"context_lines":[{"line_number":364,"context_line":"            \"Policy doesn\u0027t allow %s to be performed.\" % rule_name,"},{"line_number":365,"context_line":"            exc.format_message())"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    def test_show_policy_failed(self):"},{"line_number":368,"context_line":"        rule_name \u003d \u0027os_compute_api:os-tenant-networks\u0027"},{"line_number":369,"context_line":"        self.policy.set_rules({rule_name: \"project:non_fake\"})"},{"line_number":370,"context_line":"        exc \u003d self.assertRaises("},{"line_number":371,"context_line":"            exception.PolicyNotAuthorized,"},{"line_number":372,"context_line":"            self.controller.show,"},{"line_number":373,"context_line":"            self.req, fakes.FAKE_UUID)"},{"line_number":374,"context_line":"        self.assertEqual("},{"line_number":375,"context_line":"            \"Policy doesn\u0027t allow %s to be performed.\" % rule_name,"},{"line_number":376,"context_line":"            exc.format_message())"},{"line_number":377,"context_line":""},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"class TenantNetworksDeprecationTest(test.NoDBTestCase):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_9a45a017","side":"PARENT","line":376,"range":{"start_line":367,"start_character":0,"end_line":376,"end_character":33},"updated":"2019-11-22 16:01:40.000000000","message":"re-added this too","commit_id":"1b71252a5fca825ef8d6889b431a3cf7932d6e03"}]}
