)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"7576c1a75c44cc3923b73cfd8d8d7a1f19a180c8","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     zhufl \u003czhu.fanglei@zte.com.cn\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-01-10 11:24:49 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Do not test create_interface_by_fixed_ips if no isolated network."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"By default only project that is admin or network owner or project"},{"line_number":10,"context_line":"with role advsvc is authorised to create interfaces with fixed-ip,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"5f93b717_b35cb0ed","line":7,"updated":"2018-01-30 02:53:32.000000000","message":"nit: we don\u0027t need a trailing period :)","commit_id":"127cae208ced0adedf46c99fd2c67be67bd2622d"}],"tempest/api/compute/servers/test_attach_interfaces.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a6bb3170a34b79e39eb36d9fd6b9bf0b7dac02d7","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        # or project with role advsvc is authorised to create interfaces with"},{"line_number":211,"context_line":"        # fixed-ip, so if we don\u0027t create network for each project, do not"},{"line_number":212,"context_line":"        # test _test_create_interface_by_fixed_ips."},{"line_number":213,"context_line":"        if (CONF.auth.use_dynamic_credentials and"},{"line_number":214,"context_line":"            CONF.auth.create_isolated_networks and"},{"line_number":215,"context_line":"            not CONF.network.shared_physical_network):"},{"line_number":216,"context_line":"            iface \u003d self._test_create_interface_by_fixed_ips(server, ifs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_2179ea92","line":213,"range":{"start_line":213,"start_character":12,"end_line":213,"end_character":45},"updated":"2018-01-10 00:30:20.000000000","message":"is this to assume it is admin cred ?","commit_id":"adb088b25c8dbcc3d2f380a0ddbe41852546a8c4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a6bb3170a34b79e39eb36d9fd6b9bf0b7dac02d7","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        # or project with role advsvc is authorised to create interfaces with"},{"line_number":211,"context_line":"        # fixed-ip, so if we don\u0027t create network for each project, do not"},{"line_number":212,"context_line":"        # test _test_create_interface_by_fixed_ips."},{"line_number":213,"context_line":"        if (CONF.auth.use_dynamic_credentials and"},{"line_number":214,"context_line":"            CONF.auth.create_isolated_networks and"},{"line_number":215,"context_line":"            not CONF.network.shared_physical_network):"},{"line_number":216,"context_line":"            iface \u003d self._test_create_interface_by_fixed_ips(server, ifs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_417c2e82","line":213,"range":{"start_line":213,"start_character":46,"end_line":213,"end_character":49},"updated":"2018-01-10 00:30:20.000000000","message":"this should be OR condition ?","commit_id":"adb088b25c8dbcc3d2f380a0ddbe41852546a8c4"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"aae2090eb5ade5e273327d83fb21ae1077a72061","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        # or project with role advsvc is authorised to create interfaces with"},{"line_number":211,"context_line":"        # fixed-ip, so if we don\u0027t create network for each project, do not"},{"line_number":212,"context_line":"        # test _test_create_interface_by_fixed_ips."},{"line_number":213,"context_line":"        if (CONF.auth.use_dynamic_credentials and"},{"line_number":214,"context_line":"            CONF.auth.create_isolated_networks and"},{"line_number":215,"context_line":"            not CONF.network.shared_physical_network):"},{"line_number":216,"context_line":"            iface \u003d self._test_create_interface_by_fixed_ips(server, ifs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_70901996","line":213,"range":{"start_line":213,"start_character":12,"end_line":213,"end_character":45},"in_reply_to":"9f91af0f_2179ea92","updated":"2018-01-10 03:25:08.000000000","message":"yes, but admin cred is not used directly in this test file.","commit_id":"adb088b25c8dbcc3d2f380a0ddbe41852546a8c4"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"aae2090eb5ade5e273327d83fb21ae1077a72061","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        # or project with role advsvc is authorised to create interfaces with"},{"line_number":211,"context_line":"        # fixed-ip, so if we don\u0027t create network for each project, do not"},{"line_number":212,"context_line":"        # test _test_create_interface_by_fixed_ips."},{"line_number":213,"context_line":"        if (CONF.auth.use_dynamic_credentials and"},{"line_number":214,"context_line":"            CONF.auth.create_isolated_networks and"},{"line_number":215,"context_line":"            not CONF.network.shared_physical_network):"},{"line_number":216,"context_line":"            iface \u003d self._test_create_interface_by_fixed_ips(server, ifs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_f0f18902","line":213,"range":{"start_line":213,"start_character":46,"end_line":213,"end_character":49},"in_reply_to":"9f91af0f_417c2e82","updated":"2018-01-10 03:25:08.000000000","message":"CONF.auth.create_isolated_networks only takes effect when CONF.auth.use_dynamic_credentials is True:)","commit_id":"adb088b25c8dbcc3d2f380a0ddbe41852546a8c4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a6bb3170a34b79e39eb36d9fd6b9bf0b7dac02d7","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        # or project with role advsvc is authorised to create interfaces with"},{"line_number":211,"context_line":"        # fixed-ip, so if we don\u0027t create network for each project, do not"},{"line_number":212,"context_line":"        # test _test_create_interface_by_fixed_ips."},{"line_number":213,"context_line":"        if (CONF.auth.use_dynamic_credentials and"},{"line_number":214,"context_line":"            CONF.auth.create_isolated_networks and"},{"line_number":215,"context_line":"            not CONF.network.shared_physical_network):"},{"line_number":216,"context_line":"            iface \u003d self._test_create_interface_by_fixed_ips(server, ifs)"},{"line_number":217,"context_line":"            ifs.append(iface)"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        _ifs \u003d (self.interfaces_client.list_interfaces(server[\u0027id\u0027])"},{"line_number":220,"context_line":"                [\u0027interfaceAttachments\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_0172a6ad","line":217,"range":{"start_line":213,"start_character":0,"end_line":217,"end_character":29},"updated":"2018-01-10 00:30:20.000000000","message":"instead of ignoring, i would like to move this as separate tests and skip the test as per above conditions. So that we can get to know that whether we tested interface by fixed_ips or not.","commit_id":"adb088b25c8dbcc3d2f380a0ddbe41852546a8c4"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"aae2090eb5ade5e273327d83fb21ae1077a72061","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        # or project with role advsvc is authorised to create interfaces with"},{"line_number":211,"context_line":"        # fixed-ip, so if we don\u0027t create network for each project, do not"},{"line_number":212,"context_line":"        # test _test_create_interface_by_fixed_ips."},{"line_number":213,"context_line":"        if (CONF.auth.use_dynamic_credentials and"},{"line_number":214,"context_line":"            CONF.auth.create_isolated_networks and"},{"line_number":215,"context_line":"            not CONF.network.shared_physical_network):"},{"line_number":216,"context_line":"            iface \u003d self._test_create_interface_by_fixed_ips(server, ifs)"},{"line_number":217,"context_line":"            ifs.append(iface)"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        _ifs \u003d (self.interfaces_client.list_interfaces(server[\u0027id\u0027])"},{"line_number":220,"context_line":"                [\u0027interfaceAttachments\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_b0df8167","line":217,"range":{"start_line":213,"start_character":0,"end_line":217,"end_character":29},"in_reply_to":"9f91af0f_0172a6ad","updated":"2018-01-10 03:25:08.000000000","message":"Yean make sense, done","commit_id":"adb088b25c8dbcc3d2f380a0ddbe41852546a8c4"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"99bae0d60a86367061079c76c2613b0e1f7ede55","unresolved":false,"context_lines":[{"line_number":226,"context_line":"                CONF.auth.create_isolated_networks and"},{"line_number":227,"context_line":"                not CONF.network.shared_physical_network):"},{"line_number":228,"context_line":"                raise self.skipException(\"Only owner network supports \""},{"line_number":229,"context_line":"                                         \"creating interface by fixed ip.\")"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"        server, ifs \u003d self._create_server_get_interfaces()"},{"line_number":232,"context_line":"        interface_count \u003d len(ifs)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_4130f2e8","line":229,"updated":"2018-01-30 05:04:46.000000000","message":"OK, I got it. I was just curious because I was thinking you don\u0027t like redundancy :) I think we can fix/imporove this later if it\u0027s necessary.","commit_id":"127cae208ced0adedf46c99fd2c67be67bd2622d"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"7576c1a75c44cc3923b73cfd8d8d7a1f19a180c8","unresolved":false,"context_lines":[{"line_number":226,"context_line":"                CONF.auth.create_isolated_networks and"},{"line_number":227,"context_line":"                not CONF.network.shared_physical_network):"},{"line_number":228,"context_line":"                raise self.skipException(\"Only owner network supports \""},{"line_number":229,"context_line":"                                         \"creating interface by fixed ip.\")"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"        server, ifs \u003d self._create_server_get_interfaces()"},{"line_number":232,"context_line":"        interface_count \u003d len(ifs)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_53752c63","line":229,"updated":"2018-01-30 02:53:32.000000000","message":"Why not use testtools.skipIf or skipUnless for this? I think it\u0027s straightforward.\nOr can we merge these tests? I think the only difference is just calling _test_create_interface_by_fixed_ips()? This seems redundant code to me.","commit_id":"127cae208ced0adedf46c99fd2c67be67bd2622d"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"2fe896a1aaff4887fe8892e6e866eb487c616765","unresolved":false,"context_lines":[{"line_number":226,"context_line":"                CONF.auth.create_isolated_networks and"},{"line_number":227,"context_line":"                not CONF.network.shared_physical_network):"},{"line_number":228,"context_line":"                raise self.skipException(\"Only owner network supports \""},{"line_number":229,"context_line":"                                         \"creating interface by fixed ip.\")"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"        server, ifs \u003d self._create_server_get_interfaces()"},{"line_number":232,"context_line":"        interface_count \u003d len(ifs)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_930bb47b","line":229,"in_reply_to":"5f93b717_53752c63","updated":"2018-01-30 03:24:27.000000000","message":"Thanks Masayuki,\n1. Because the code block has about 8 lines(including comments) and seems a bit heavy for a testcase\u0027s head decorator:)\n2. Yeah it really looks a bit redundant. In my first patch, I didn\u0027t split it into two testcases (https://review.openstack.org/#/c/530309/1/tempest/api/compute/servers/test_attach_interfaces.py)\n   but gmann mentioned that we shouldn\u0027t skip the test step silently(this I think is a reasonable opinion), and when no isolated network we should only skip _by_fixed_ip and\n   [_by_network_id, _by_port_id] should always be tested, so, I don\u0027t know how to implement this except spliting it into 2 testcases.\n   Can you give some advice?","commit_id":"127cae208ced0adedf46c99fd2c67be67bd2622d"}]}
