)]}'
{"tempest/api/network/admin/test_external_network_extension.py":[{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"d2ead24e8678c7dd33aaa00a8c86597396fe5535","unresolved":false,"context_lines":[{"line_number":119,"context_line":"                         (s[\u0027id\u0027] for s in subnet_list))"},{"line_number":120,"context_line":"        # Removes subnet from the cleanup list"},{"line_number":121,"context_line":"        self.subnets.remove(subnet)"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def test_create_port_with_precreated_floatingip_as_fixed_ip(self):"},{"line_number":124,"context_line":"        # create a floating ip"},{"line_number":125,"context_line":"        client \u003d self.admin_client"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a890539_b86c22d2","line":122,"updated":"2014-11-27 11:29:36.000000000","message":"@test.attr(type\u003d[\u0027negative\u0027])","commit_id":"6e28faeba35e65dbace8dbbc31561a131227b0ef"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"21592f24114c590023cd077338b9e108f9472e79","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        external_network \u003d body[\u0027network\u0027]"},{"line_number":128,"context_line":"        self.addCleanup(self._try_delete_resource,"},{"line_number":129,"context_line":"                        client.delete_network,"},{"line_number":130,"context_line":"                        external_network[\u0027id\u0027])"},{"line_number":131,"context_line":"        self.create_subnet(external_network, client\u003dclient)"},{"line_number":132,"context_line":"        _, body \u003d client.create_floatingip("},{"line_number":133,"context_line":"            floating_network_id\u003dexternal_network[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a890539_746002d0","line":130,"updated":"2014-11-27 13:58:28.000000000","message":"There is a _create_network, why isn\u0027t it used there?","commit_id":"6e28faeba35e65dbace8dbbc31561a131227b0ef"}],"tempest/api/network/admin/test_external_networks_negative.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"33cf890b1fab5ecbc0cb9b392cc1f84b8b0df046","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027])"},{"line_number":25,"context_line":"    def test_create_port_with_precreated_floatingip_as_fixed_ip(self):"},{"line_number":26,"context_line":"        # create a floating ip"},{"line_number":27,"context_line":"        client \u003d self.admin_client"},{"line_number":28,"context_line":"        _, body \u003d client.create_network(**{\u0027router:external\u0027: True})"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_f4f873c6","line":25,"updated":"2014-12-08 14:25:32.000000000","message":"You should add a docstring here. I am not familiar with Neutron so I don\"t really understand this test. It would be great if you could add code comment to explain the 2/3 steps of this test and also why it should raise a Conflict exception.\n\nAt least it would help the review process.","commit_id":"1411c56ced65c52d283438778152ebc32394ac51"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"cf3c0cf16f2debe08384b20eefa479866defc8de","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027])"},{"line_number":25,"context_line":"    def test_create_port_with_precreated_floatingip_as_fixed_ip(self):"},{"line_number":26,"context_line":"        # create a floating ip"},{"line_number":27,"context_line":"        client \u003d self.admin_client"},{"line_number":28,"context_line":"        _, body \u003d client.create_network(**{\u0027router:external\u0027: True})"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_e80ca8ef","line":25,"in_reply_to":"3a961159_29cb6ca6","updated":"2014-12-11 07:59:46.000000000","message":"Done? Really?","commit_id":"1411c56ced65c52d283438778152ebc32394ac51"},{"author":{"_account_id":8298,"name":"Babu Shanmugam","email":"bschanmu@redhat.com","username":"anbu"},"change_message_id":"df1180553ac37daf8825f746d7f0e657de9b7f19","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    _interface \u003d \u0027json\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027])"},{"line_number":25,"context_line":"    def test_create_port_with_precreated_floatingip_as_fixed_ip(self):"},{"line_number":26,"context_line":"        # create a floating ip"},{"line_number":27,"context_line":"        client \u003d self.admin_client"},{"line_number":28,"context_line":"        _, body \u003d client.create_network(**{\u0027router:external\u0027: True})"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_29cb6ca6","line":25,"in_reply_to":"3a961159_f4f873c6","updated":"2014-12-09 05:35:30.000000000","message":"Done","commit_id":"1411c56ced65c52d283438778152ebc32394ac51"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"4e075f060ca834648b9d0a9abbafb3cb3da7fc77","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027])"},{"line_number":25,"context_line":"    def test_create_port_with_precreated_floatingip_as_fixed_ip(self):"},{"line_number":26,"context_line":"        \"\"\""},{"line_number":27,"context_line":"        External networks can be used to create both floating-ip as well"},{"line_number":28,"context_line":"        as instance-ip. So, creating an instance-ip with a value of a"},{"line_number":29,"context_line":"        pre-created floating-ip should be denied."}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_df15d2e5","line":26,"updated":"2014-12-11 15:26:52.000000000","message":"Thanks a lot for the docstring. Now I understand :)","commit_id":"ec87265b749f0f4b91dca3fc31ecbb140b630736"},{"author":{"_account_id":8298,"name":"Babu Shanmugam","email":"bschanmu@redhat.com","username":"anbu"},"change_message_id":"0ae1701598e0dc98f435d3904b59135a8995c496","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027])"},{"line_number":25,"context_line":"    def test_create_port_with_precreated_floatingip_as_fixed_ip(self):"},{"line_number":26,"context_line":"        \"\"\""},{"line_number":27,"context_line":"        External networks can be used to create both floating-ip as well"},{"line_number":28,"context_line":"        as instance-ip. So, creating an instance-ip with a value of a"},{"line_number":29,"context_line":"        pre-created floating-ip should be denied."}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_46e3c8a3","line":26,"in_reply_to":"3a961159_df15d2e5","updated":"2014-12-12 04:46:34.000000000","message":"You are welcome Jordan","commit_id":"ec87265b749f0f4b91dca3fc31ecbb140b630736"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"4e075f060ca834648b9d0a9abbafb3cb3da7fc77","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        # create a floating ip"},{"line_number":33,"context_line":"        client \u003d self.admin_client"},{"line_number":34,"context_line":"        _, body \u003d client.create_network(**{\u0027router:external\u0027: True})"},{"line_number":35,"context_line":"        external_network \u003d body[\u0027network\u0027]"},{"line_number":36,"context_line":"        self.addCleanup(self._try_delete_resource,"},{"line_number":37,"context_line":"                        client.delete_network,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_7fa5bea0","line":34,"updated":"2014-12-11 15:26:52.000000000","message":"Why are you creating a new external network instead of using the one at CONF.network.public_network_id ?","commit_id":"ec87265b749f0f4b91dca3fc31ecbb140b630736"},{"author":{"_account_id":8298,"name":"Babu Shanmugam","email":"bschanmu@redhat.com","username":"anbu"},"change_message_id":"0ae1701598e0dc98f435d3904b59135a8995c496","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        # create a floating ip"},{"line_number":33,"context_line":"        client \u003d self.admin_client"},{"line_number":34,"context_line":"        _, body \u003d client.create_network(**{\u0027router:external\u0027: True})"},{"line_number":35,"context_line":"        external_network \u003d body[\u0027network\u0027]"},{"line_number":36,"context_line":"        self.addCleanup(self._try_delete_resource,"},{"line_number":37,"context_line":"                        client.delete_network,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_c6b41884","line":34,"in_reply_to":"3a961159_7fa5bea0","updated":"2014-12-12 04:46:34.000000000","message":"This test cases does not really need a public ip. It just needs a network with router:external attribute set to True. So, I thought, this test can better run without even needing a configuration setting for public_network_id.","commit_id":"ec87265b749f0f4b91dca3fc31ecbb140b630736"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"cee32ca3598a3f4238b7cb88696a7313021296d5","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        # create a floating ip"},{"line_number":33,"context_line":"        client \u003d self.admin_client"},{"line_number":34,"context_line":"        _, body \u003d client.create_network(**{\u0027router:external\u0027: True})"},{"line_number":35,"context_line":"        external_network \u003d body[\u0027network\u0027]"},{"line_number":36,"context_line":"        self.addCleanup(self._try_delete_resource,"},{"line_number":37,"context_line":"                        client.delete_network,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_4fb4b834","line":34,"in_reply_to":"3a961159_c6b41884","updated":"2014-12-12 09:22:20.000000000","message":"Well, in the Gate \"CONF.network.public_network_id\" does not really point to a network with public IPs. In fact, you must know better than me, there\u0027s just external network vs \"non external network\", regardless of the IP address (private vs \"routable\"). \n\nI think your test will run faster and be clearer to read and maintain if you reuse network already provisioned (CONF.network.public_network_id)","commit_id":"ec87265b749f0f4b91dca3fc31ecbb140b630736"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"4e075f060ca834648b9d0a9abbafb3cb3da7fc77","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                        external_network[\u0027id\u0027])"},{"line_number":39,"context_line":"        self.create_subnet(external_network, client\u003dclient)"},{"line_number":40,"context_line":"        _, body \u003d client.create_floatingip("},{"line_number":41,"context_line":"            floating_network_id\u003dexternal_network[\u0027id\u0027])"},{"line_number":42,"context_line":"        created_floating_ip \u003d body[\u0027floatingip\u0027]"},{"line_number":43,"context_line":"        self.addCleanup(self._try_delete_resource,"},{"line_number":44,"context_line":"                        client.delete_floatingip,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_df44f2b8","line":41,"updated":"2014-12-11 15:26:52.000000000","message":"You could use CONF.network.public_network_id","commit_id":"ec87265b749f0f4b91dca3fc31ecbb140b630736"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"40d07530fef9aa593486eb998eea7e1d2619a6b7","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"        # create a floating ip"},{"line_number":36,"context_line":"        client \u003d self.admin_client"},{"line_number":37,"context_line":"        _, body \u003d client.create_floatingip("},{"line_number":38,"context_line":"            floating_network_id\u003dCONF.network.public_network_id)"},{"line_number":39,"context_line":"        created_floating_ip \u003d body[\u0027floatingip\u0027]"},{"line_number":40,"context_line":"        self.addCleanup(self._try_delete_resource,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a961159_528174c2","line":37,"updated":"2014-12-25 02:23:20.000000000","message":"Here should be\n\n body \u003d client.create_floatingip(\n\nbecause I76de07e984f13e3eec4977a4d823d1ef367e8f46 has been merged.","commit_id":"20ca4a611b69c0c08d8adfcec5828afc5b3920cb"}]}
