)]}'
{"neutron/tests/fullstack/resources/machine.py":[{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"fc1c8a42df349440eee0b04661269297ae2c9b5e","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        return self._ip_cidr"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def ip_configured(self):"},{"line_number":174,"context_line":"        for port_ip in self.port.addr.list(ip_version\u003dconstants.IP_VERSION_4):"},{"line_number":175,"context_line":"            if port_ip.get(\u0027cidr\u0027) \u003d\u003d self.ip_cidr:"},{"line_number":176,"context_line":"                return True"},{"line_number":177,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":3,"id":"5faad753_7dd38439","line":174,"range":{"start_line":174,"start_character":43,"end_line":174,"end_character":76},"updated":"2019-09-11 01:23:40.000000000","message":"If external network has IPv6 subnet, the gateway device (qg-device) will have an IPv6 address. And it should be configured. So why only IPv4 of this change here?","commit_id":"3b5c317378bb30a61f50ad7e9477a08c23719f11"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"5bccc27b745060b11c103b602d3742ce1a970bc4","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        return self._ip_cidr"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def ip_configured(self):"},{"line_number":174,"context_line":"        for port_ip in self.port.addr.list(ip_version\u003dconstants.IP_VERSION_4):"},{"line_number":175,"context_line":"            if port_ip.get(\u0027cidr\u0027) \u003d\u003d self.ip_cidr:"},{"line_number":176,"context_line":"                return True"},{"line_number":177,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":3,"id":"5faad753_608e702f","line":174,"range":{"start_line":174,"start_character":43,"end_line":174,"end_character":76},"in_reply_to":"5faad753_57c0e050","updated":"2019-09-11 11:06:08.000000000","message":"yes, in fullstack tests the fake machines are using hardcoded ipv4 addresses (i.e.: https://opendev.org/openstack/neutron/src/branch/master/neutron/tests/fullstack/test_qos.py#L81)","commit_id":"3b5c317378bb30a61f50ad7e9477a08c23719f11"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"89abb6d5079136b24651a1dbd4189eaff0f60443","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        return self._ip_cidr"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def ip_configured(self):"},{"line_number":174,"context_line":"        for port_ip in self.port.addr.list(ip_version\u003dconstants.IP_VERSION_4):"},{"line_number":175,"context_line":"            if port_ip.get(\u0027cidr\u0027) \u003d\u003d self.ip_cidr:"},{"line_number":176,"context_line":"                return True"},{"line_number":177,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":3,"id":"5faad753_57c0e050","line":174,"range":{"start_line":174,"start_character":43,"end_line":174,"end_character":76},"in_reply_to":"5faad753_7dd38439","updated":"2019-09-11 08:56:59.000000000","message":"Because here we are looking only for the IPv4 IPs. \"self.ip_cidr\" is the IPv4 CIDR of the port fixed_ips [1]\n\nThat\u0027s why here we should restrict the list of IPs to only IPv4.\n\n[1] https://github.com/openstack/neutron/blob/f5bcca87d13c0bbf7dfdda1371cd19856dfbcb99/neutron/tests/fullstack/resources/machine.py#L121","commit_id":"3b5c317378bb30a61f50ad7e9477a08c23719f11"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"7da61b78a26a7fa82d8a34d580450de8db0871ed","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        return self._ip_cidr"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def ip_configured(self):"},{"line_number":174,"context_line":"        for port_ip in self.port.addr.list(ip_version\u003dconstants.IP_VERSION_4):"},{"line_number":175,"context_line":"            if port_ip.get(\u0027cidr\u0027) \u003d\u003d self.ip_cidr:"},{"line_number":176,"context_line":"                return True"},{"line_number":177,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_df8a8e19","line":174,"updated":"2019-09-23 14:54:25.000000000","message":"I don\u0027t understand, what this change should solve? And why we can\u0027t have configured IPv6 address on Fake Instance?","commit_id":"a438745fbd327f222abf857d7ca99fd8c6f595ab"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"1d96c54484e3bfb5e236ef3fc214a35441d22589","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        return self._ip_cidr"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def ip_configured(self):"},{"line_number":174,"context_line":"        for port_ip in self.port.addr.list(ip_version\u003dconstants.IP_VERSION_4):"},{"line_number":175,"context_line":"            if port_ip.get(\u0027cidr\u0027) \u003d\u003d self.ip_cidr:"},{"line_number":176,"context_line":"                return True"},{"line_number":177,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_710fff36","line":174,"in_reply_to":"3fa7e38b_6213c15d","updated":"2019-09-24 10:59:06.000000000","message":"Ok. Makes sense now :) Thx","commit_id":"a438745fbd327f222abf857d7ca99fd8c6f595ab"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"9e39cb7010d6ad985e930104854bec1dcdd28382","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        return self._ip_cidr"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def ip_configured(self):"},{"line_number":174,"context_line":"        for port_ip in self.port.addr.list(ip_version\u003dconstants.IP_VERSION_4):"},{"line_number":175,"context_line":"            if port_ip.get(\u0027cidr\u0027) \u003d\u003d self.ip_cidr:"},{"line_number":176,"context_line":"                return True"},{"line_number":177,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_6213c15d","line":174,"in_reply_to":"3fa7e38b_df8a8e19","updated":"2019-09-23 15:18:53.000000000","message":"We can have devices with ipv4, but this function is going to check only ipv4 addresses, because self.ip_cidr is only ipv4: https://review.opendev.org/#/c/680427/5/neutron/tests/fullstack/resources/machine.py@121\n\nWith this change I\u0027m making more evident that we need only ipv4 addresses (and reducing the list retrieved).","commit_id":"a438745fbd327f222abf857d7ca99fd8c6f595ab"}]}
