)]}'
{"tempest/api/network/admin/test_floating_ips_admin_actions.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"42bcaafb886dfe439a015c13e451b9000ecae999","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        self.assertNotIn(floating_ip_alt[\u0027id\u0027], floating_ip_ids)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    @decorators.idempotent_id(\u002732727cc3-abe2-4485-a16e-48f2d54c14f2\u0027)"},{"line_number":92,"context_line":"    def test_create_list_show_floating_ip_with_project_id_by_admin(self):"},{"line_number":93,"context_line":"        # Creates a floating IP"},{"line_number":94,"context_line":"        body \u003d self.admin_floating_ips_client.create_floatingip("},{"line_number":95,"context_line":"            floating_network_id\u003dself.ext_net_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_c2b33ae8","line":92,"range":{"start_line":92,"start_character":71,"end_line":92,"end_character":73},"updated":"2020-03-08 03:15:31.000000000","message":"let\u0027s avoid the test name change as that might be used by users.","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"f5f412c72b1b733609a242eecd91de8461814fdf","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        self.assertNotIn(floating_ip_alt[\u0027id\u0027], floating_ip_ids)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    @decorators.idempotent_id(\u002732727cc3-abe2-4485-a16e-48f2d54c14f2\u0027)"},{"line_number":92,"context_line":"    def test_create_list_show_floating_ip_with_project_id_by_admin(self):"},{"line_number":93,"context_line":"        # Creates a floating IP"},{"line_number":94,"context_line":"        body \u003d self.admin_floating_ips_client.create_floatingip("},{"line_number":95,"context_line":"            floating_network_id\u003dself.ext_net_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_4a767c40","line":92,"range":{"start_line":92,"start_character":71,"end_line":92,"end_character":73},"in_reply_to":"1fa4df85_c2b33ae8","updated":"2020-03-09 10:35:56.000000000","message":"Done","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"}],"tempest/api/network/admin/test_routers_dvr.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":106,"context_line":"        attribute will be set to True"},{"line_number":107,"context_line":"        \"\"\""},{"line_number":108,"context_line":"        name \u003d data_utils.rand_name(\u0027router\u0027)"},{"line_number":109,"context_line":"        project_id \u003d self.routers_client.tenant_id"},{"line_number":110,"context_line":"        # router needs to be in admin state down in order to be upgraded to DVR"},{"line_number":111,"context_line":"        # l3ha routers are not upgradable to dvr, make it explicitly non ha"},{"line_number":112,"context_line":"        router \u003d self.admin_routers_client.create_router(name\u003dname,"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_7fe1639b","line":109,"range":{"start_line":109,"start_character":41,"end_line":109,"end_character":50},"updated":"2020-05-30 14:06:01.000000000","message":"project_id?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":106,"context_line":"        attribute will be set to True"},{"line_number":107,"context_line":"        \"\"\""},{"line_number":108,"context_line":"        name \u003d data_utils.rand_name(\u0027router\u0027)"},{"line_number":109,"context_line":"        project_id \u003d self.routers_client.tenant_id"},{"line_number":110,"context_line":"        # router needs to be in admin state down in order to be upgraded to DVR"},{"line_number":111,"context_line":"        # l3ha routers are not upgradable to dvr, make it explicitly non ha"},{"line_number":112,"context_line":"        router \u003d self.admin_routers_client.create_router(name\u003dname,"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_da73417f","line":109,"range":{"start_line":109,"start_character":41,"end_line":109,"end_character":50},"in_reply_to":"ff570b3c_7fe1639b","updated":"2020-06-02 08:28:35.000000000","message":"You are right, I added the project_id property in the RestClient base class.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"}],"tempest/api/network/test_networks.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"42bcaafb886dfe439a015c13e451b9000ecae999","unresolved":false,"context_lines":[{"line_number":201,"context_line":"        self.assertEqual(sorted(network.keys()), sorted(fields))"},{"line_number":202,"context_line":"        for field_name in fields:"},{"line_number":203,"context_line":"            self.assertEqual(network[field_name], self.network[field_name])"},{"line_number":204,"context_line":"        self.assertNotIn(\u0027project_id\u0027, network)"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    @decorators.attr(type\u003d\u0027smoke\u0027)"},{"line_number":207,"context_line":"    @decorators.idempotent_id(\u0027f7ffdeda-e200-4a7a-bcbe-05716e86bf43\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_62ce0664","line":204,"range":{"start_line":204,"start_character":46,"end_line":204,"end_character":47},"updated":"2020-03-08 03:15:31.000000000","message":"is tenant_id is not going to return in network ? if so how we are going to notify the users so that we do not break them. Tempest as one of API users and testing stable branch also with master code we should keep testing tenant_id to make sure backward compatibility. \n\nIf it was deprecated and going to be removed in neutron API then, we can test it via feature flag where we test tenant_id for \u003c ussuri testing","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"f5f412c72b1b733609a242eecd91de8461814fdf","unresolved":false,"context_lines":[{"line_number":201,"context_line":"        self.assertEqual(sorted(network.keys()), sorted(fields))"},{"line_number":202,"context_line":"        for field_name in fields:"},{"line_number":203,"context_line":"            self.assertEqual(network[field_name], self.network[field_name])"},{"line_number":204,"context_line":"        self.assertNotIn(\u0027project_id\u0027, network)"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    @decorators.attr(type\u003d\u0027smoke\u0027)"},{"line_number":207,"context_line":"    @decorators.idempotent_id(\u0027f7ffdeda-e200-4a7a-bcbe-05716e86bf43\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_2ae300db","line":204,"range":{"start_line":204,"start_character":46,"end_line":204,"end_character":47},"in_reply_to":"1fa4df85_62ce0664","updated":"2020-03-09 10:35:56.000000000","message":"This parameter was deprecated several releases ago but the RFE was never finished. That\u0027s why we have this duplicated tenant/project parameter that, in some cases, is creating some conflicts.\n\nAnyway, I\u0027ll keep the check here.","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"}],"tempest/api/network/test_ports.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":192,"context_line":"        port_list \u003d self.ports_client.list_ports(fixed_ips\u003dfixed_ips)"},{"line_number":193,"context_line":"        # Check that we got the desired port"},{"line_number":194,"context_line":"        ports \u003d port_list[\u0027ports\u0027]"},{"line_number":195,"context_line":"        project_ids \u003d set([port[\u0027project_id\u0027] for port in ports])"},{"line_number":196,"context_line":"        self.assertEqual(len(project_ids), 1,"},{"line_number":197,"context_line":"                         \u0027Ports from multiple projects are in the list resp\u0027)"},{"line_number":198,"context_line":"        port_ids \u003d [port[\u0027id\u0027] for port in ports]"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_bff01b69","line":195,"updated":"2020-05-30 14:06:01.000000000","message":"++","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"}],"tempest/lib/common/rest_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":193,"context_line":"        :return: The tenant/project id being used for requests"},{"line_number":194,"context_line":"        \"\"\""},{"line_number":195,"context_line":"        # NOTE(ralonsoh): this property should be deprecated, reference"},{"line_number":196,"context_line":"        # blueprint adopt-oslo-versioned-objects-for-db."},{"line_number":197,"context_line":"        return self.project_id"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_171dddbc","line":196,"range":{"start_line":196,"start_character":55,"end_line":196,"end_character":56},"updated":"2020-05-13 22:22:13.000000000","message":"also let\u0027s log warning if anyone using it\n\nLOG.warning(\"tenant_id property is deprecated for removal, use project_id instead\")","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7250c542e7f4846ef7659776dd2e25bf0f21060d","unresolved":false,"context_lines":[{"line_number":193,"context_line":"        :return: The tenant/project id being used for requests"},{"line_number":194,"context_line":"        \"\"\""},{"line_number":195,"context_line":"        # NOTE(ralonsoh): this property should be deprecated, reference"},{"line_number":196,"context_line":"        # blueprint adopt-oslo-versioned-objects-for-db."},{"line_number":197,"context_line":"        return self.project_id"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_cf6e1694","line":196,"range":{"start_line":196,"start_character":55,"end_line":196,"end_character":56},"in_reply_to":"ff570b3c_171dddbc","updated":"2020-05-14 15:50:54.000000000","message":"Done","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":168,"context_line":"        return self.auth_provider.credentials.user_id"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"    @property"},{"line_number":171,"context_line":"    def tenant_name(self):"},{"line_number":172,"context_line":"        \"\"\"The tenant/project being used for requests"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        :rtype: string"},{"line_number":175,"context_line":"        :return: The tenant/project name being used for requests"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        return self.auth_provider.credentials.tenant_name"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"    @property"},{"line_number":180,"context_line":"    def project_id(self):"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_3f89abc9","line":177,"range":{"start_line":171,"start_character":3,"end_line":177,"end_character":57},"updated":"2020-05-30 14:06:01.000000000","message":"Should we also deprecate this one and add `project_name` property?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":168,"context_line":"        return self.auth_provider.credentials.user_id"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"    @property"},{"line_number":171,"context_line":"    def tenant_name(self):"},{"line_number":172,"context_line":"        \"\"\"The tenant/project being used for requests"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        :rtype: string"},{"line_number":175,"context_line":"        :return: The tenant/project name being used for requests"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        return self.auth_provider.credentials.tenant_name"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"    @property"},{"line_number":180,"context_line":"    def project_id(self):"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_da7d011d","line":177,"range":{"start_line":171,"start_character":3,"end_line":177,"end_character":57},"in_reply_to":"ff570b3c_3f89abc9","updated":"2020-06-02 08:28:35.000000000","message":"I know we can undertake a bigger refactor but I would prefer to limit the scope of this patch to \"tenant_id\" only.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":183,"context_line":"        :rtype: string"},{"line_number":184,"context_line":"        :return: The project id being used for requests"},{"line_number":185,"context_line":"        \"\"\""},{"line_number":186,"context_line":"        return self.auth_provider.credentials.tenant_id"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    @property"},{"line_number":189,"context_line":"    def tenant_id(self):"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_3f040b4a","line":186,"range":{"start_line":186,"start_character":46,"end_line":186,"end_character":55},"updated":"2020-05-30 14:06:01.000000000","message":"Why not project_id?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":183,"context_line":"        :rtype: string"},{"line_number":184,"context_line":"        :return: The project id being used for requests"},{"line_number":185,"context_line":"        \"\"\""},{"line_number":186,"context_line":"        return self.auth_provider.credentials.tenant_id"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    @property"},{"line_number":189,"context_line":"    def tenant_id(self):"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_ba912d55","line":186,"range":{"start_line":186,"start_character":46,"end_line":186,"end_character":55},"in_reply_to":"ff570b3c_3f040b4a","updated":"2020-06-02 08:28:35.000000000","message":"KeystoneV3AuthProvider implements tenant_id/project_id conversion but not KeystoneV2AuthProvider.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":192,"context_line":"        :rtype: string"},{"line_number":193,"context_line":"        :return: The tenant/project id being used for requests"},{"line_number":194,"context_line":"        \"\"\""},{"line_number":195,"context_line":"        # NOTE(ralonsoh): this property should be deprecated, reference"},{"line_number":196,"context_line":"        # blueprint adopt-oslo-versioned-objects-for-db."},{"line_number":197,"context_line":"        self.LOG.warning(\u0027\"tenant_id\" property is deprecated for removal, \u0027"},{"line_number":198,"context_line":"                         \u0027use \"project_id\" instead\u0027)"},{"line_number":199,"context_line":"        return self.project_id"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_dfa06f45","line":198,"range":{"start_line":195,"start_character":7,"end_line":198,"end_character":52},"updated":"2020-05-30 14:06:01.000000000","message":"I believe we can use: `versionutils.report_deprecated_feature(LOG, \u0027\"tenant_id\" property is deprecated for removal, use \"project_id\" instead)` where versionutils can be imported from oslo_utils.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":192,"context_line":"        :rtype: string"},{"line_number":193,"context_line":"        :return: The tenant/project id being used for requests"},{"line_number":194,"context_line":"        \"\"\""},{"line_number":195,"context_line":"        # NOTE(ralonsoh): this property should be deprecated, reference"},{"line_number":196,"context_line":"        # blueprint adopt-oslo-versioned-objects-for-db."},{"line_number":197,"context_line":"        self.LOG.warning(\u0027\"tenant_id\" property is deprecated for removal, \u0027"},{"line_number":198,"context_line":"                         \u0027use \"project_id\" instead\u0027)"},{"line_number":199,"context_line":"        return self.project_id"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_1a9bf972","line":198,"range":{"start_line":195,"start_character":7,"end_line":198,"end_character":52},"in_reply_to":"ff570b3c_dfa06f45","updated":"2020-06-02 08:28:35.000000000","message":"Done","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"}],"tempest/lib/services/network/quotas_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"42bcaafb886dfe439a015c13e451b9000ecae999","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class QuotasClient(base.BaseNetworkClient):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def update_quotas(self, project_id, **kwargs):"},{"line_number":21,"context_line":"        \"\"\"Update quota for a project."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"        For a full list of available parameters, please refer to the official"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_22c48e3f","line":20,"range":{"start_line":20,"start_character":28,"end_line":20,"end_character":38},"updated":"2020-03-08 03:15:31.000000000","message":"all these are stable API from Tempest and we cannot change them directly. We need to deprecate all these interfaces first and then switch to new one. \n\nAlso we have to check if that is worth doing that for tenant_id -\u003e project_id change.","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"f5f412c72b1b733609a242eecd91de8461814fdf","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class QuotasClient(base.BaseNetworkClient):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def update_quotas(self, project_id, **kwargs):"},{"line_number":21,"context_line":"        \"\"\"Update quota for a project."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"        For a full list of available parameters, please refer to the official"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_ca0cac95","line":20,"range":{"start_line":20,"start_character":28,"end_line":20,"end_character":38},"in_reply_to":"1fa4df85_22c48e3f","updated":"2020-03-09 10:35:56.000000000","message":"This is just a naming change to reflect the current API. Network quotas use project_id since Pike [1]. The parameter passed here is used to filter the parameter \"project_id\" in the DB.\n\nBecause this is a positional argument, I\u0027m in favor of changing it. But this is just my opinion.\n\n[1] https://review.opendev.org/#/c/338625/","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"2773e5551dbdbb91d1fcd81ec501c3d5dcef356b","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class QuotasClient(base.BaseNetworkClient):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def update_quotas(self, project_id, **kwargs):"},{"line_number":21,"context_line":"        \"\"\"Update quota for a project."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"        For a full list of available parameters, please refer to the official"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_e2f50c58","line":20,"range":{"start_line":20,"start_character":28,"end_line":20,"end_character":38},"in_reply_to":"1fa4df85_ca0cac95","updated":"2020-03-09 15:39:20.000000000","message":"from neutron point of view, I agree. \n\nBut this is a stable interface from Tempest and might be used by many tests beyond tempest tests. By renaming we are changing the interface signature which means breaking the users using this like below:\n\nself.update_quotas(tenant_id\u003d\u003cid\u003e, **kwargs).\n\nWe can switch to new things but for that, we need to deprecate these interfaces first and keep supporting them till the deprecation phase. Also add a new interface with project_id as param or I will say take this as kwargs. After the deprecation phase which can be 1 cycle, we can remove the old interface with tenant_id name.","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"4ee9fa2838d629900a7eb90255e654c1c0b180dd","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class QuotasClient(base.BaseNetworkClient):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def update_quotas(self, project_id, **kwargs):"},{"line_number":21,"context_line":"        \"\"\"Update quota for a project."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"        For a full list of available parameters, please refer to the official"}],"source_content_type":"text/x-python","patch_set":7,"id":"1fa4df85_258b2e68","line":20,"range":{"start_line":20,"start_character":28,"end_line":20,"end_character":38},"in_reply_to":"1fa4df85_e2f50c58","updated":"2020-03-09 16:59:17.000000000","message":"Done","commit_id":"f12fc49520454ac0852cf83ccc9ec4d0fcc6fdc0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    @functools.wraps(func)"},{"line_number":23,"context_line":"    def inner(*args, **kwargs):"},{"line_number":24,"context_line":"        _self \u003d args[0]"},{"line_number":25,"context_line":"        args_def \u003d inspect.getargspec(func).args"},{"line_number":26,"context_line":"        for idx, arg_name in enumerate(args_def):"},{"line_number":27,"context_line":"            # \"tenant_id\" is passed as argument and has a value"},{"line_number":28,"context_line":"            if (arg_name \u003d\u003d \u0027tenant_id\u0027 and len(args) \u003e\u003d idx + 1 and"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_d7ac0537","line":25,"range":{"start_line":25,"start_character":27,"end_line":25,"end_character":37},"updated":"2020-05-13 22:22:13.000000000","message":"this is deprecated API, please use getfullargspec\n\nhttps://docs.python.org/3/library/inspect.html#inspect.getfullargspec","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":27,"context_line":"            # \"tenant_id\" is passed as argument and has a value"},{"line_number":28,"context_line":"            if (arg_name \u003d\u003d \u0027tenant_id\u0027 and len(args) \u003e\u003d idx + 1 and"},{"line_number":29,"context_line":"                    args[idx]):"},{"line_number":30,"context_line":"                _self.LOG.warning(\u0027tenant_id is deprecated, project_id \u0027"},{"line_number":31,"context_line":"                                  \u0027should be used instead\u0027)"},{"line_number":32,"context_line":"                _args \u003d list(args)"},{"line_number":33,"context_line":"                _args[idx] \u003d kwargs.get(\u0027project_id\u0027) or args[idx]"},{"line_number":34,"context_line":"                args \u003d tuple(_args)"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_6bc71014","line":31,"range":{"start_line":30,"start_character":0,"end_line":31,"end_character":59},"updated":"2020-05-13 22:22:13.000000000","message":"this will end up logging warning for all cases of passing tenant id as positional arg. \n\nself.update_quotas(\u0027uuid\u0027, **kwargs)","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7250c542e7f4846ef7659776dd2e25bf0f21060d","unresolved":false,"context_lines":[{"line_number":27,"context_line":"            # \"tenant_id\" is passed as argument and has a value"},{"line_number":28,"context_line":"            if (arg_name \u003d\u003d \u0027tenant_id\u0027 and len(args) \u003e\u003d idx + 1 and"},{"line_number":29,"context_line":"                    args[idx]):"},{"line_number":30,"context_line":"                _self.LOG.warning(\u0027tenant_id is deprecated, project_id \u0027"},{"line_number":31,"context_line":"                                  \u0027should be used instead\u0027)"},{"line_number":32,"context_line":"                _args \u003d list(args)"},{"line_number":33,"context_line":"                _args[idx] \u003d kwargs.get(\u0027project_id\u0027) or args[idx]"},{"line_number":34,"context_line":"                args \u003d tuple(_args)"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_4ff4c6f2","line":31,"range":{"start_line":30,"start_character":0,"end_line":31,"end_character":59},"in_reply_to":"ff570b3c_6bc71014","updated":"2020-05-14 15:50:54.000000000","message":"Done","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":36,"context_line":"            # the \"project_id\" parameter is passed as a kwarg."},{"line_number":37,"context_line":"            elif arg_name \u003d\u003d \u0027tenant_id\u0027 and len(args) \u003c idx + 1:"},{"line_number":38,"context_line":"                _args \u003d list(args)"},{"line_number":39,"context_line":"                _args.append(kwargs.get(\u0027project_id\u0027))"},{"line_number":40,"context_line":"                args \u003d tuple(_args)"},{"line_number":41,"context_line":"        return func(*args, **kwargs)"},{"line_number":42,"context_line":"    return inner"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_eba2009a","line":39,"range":{"start_line":39,"start_character":17,"end_line":39,"end_character":54},"updated":"2020-05-13 22:22:13.000000000","message":"if arg is passed as tenant_id\u003d\u003cany value\u003e it end up with error \"got multiple values for argument \u0027tenant_id\u0027\".\n\nthat is because of L39. this will append None if no project_id in kwargs otherwise project_id.","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7250c542e7f4846ef7659776dd2e25bf0f21060d","unresolved":false,"context_lines":[{"line_number":36,"context_line":"            # the \"project_id\" parameter is passed as a kwarg."},{"line_number":37,"context_line":"            elif arg_name \u003d\u003d \u0027tenant_id\u0027 and len(args) \u003c idx + 1:"},{"line_number":38,"context_line":"                _args \u003d list(args)"},{"line_number":39,"context_line":"                _args.append(kwargs.get(\u0027project_id\u0027))"},{"line_number":40,"context_line":"                args \u003d tuple(_args)"},{"line_number":41,"context_line":"        return func(*args, **kwargs)"},{"line_number":42,"context_line":"    return inner"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_8fdd3e72","line":39,"range":{"start_line":39,"start_character":17,"end_line":39,"end_character":54},"in_reply_to":"ff570b3c_eba2009a","updated":"2020-05-14 15:50:54.000000000","message":"Done","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                _args \u003d list(args)"},{"line_number":39,"context_line":"                _args.append(kwargs.get(\u0027project_id\u0027))"},{"line_number":40,"context_line":"                args \u003d tuple(_args)"},{"line_number":41,"context_line":"        return func(*args, **kwargs)"},{"line_number":42,"context_line":"    return inner"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"class QuotasClient(base.BaseNetworkClient):"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_abb80876","line":42,"range":{"start_line":41,"start_character":0,"end_line":42,"end_character":16},"updated":"2020-05-13 22:22:13.000000000","message":"what we can do in above decorator is\n\nif tenant id is passed as kwargs tenant_id\u003d\u0027uuid\u0027 then log warning with msg to use project_id\u003d\u0027uuid\u0027.\n\nand after deprecation phase we change tenant_id positional arg name to project_id.\n\nsomething like this:\n\ndef _warning_deprecate_tenant_id(func):\n    @functools.wraps(func)\n    def inner(*args, **kwargs):\n        _self \u003d args[0]\n        # check length of arg to know whether tenant_id is passed\n        # as positional arg or kwargs.\n        if len(args) \u003c 2:\n            if (\u0027tenant_id\u0027 in kwargs):\n                _self.LOG.warning(\u0027positional arg name \"tenant_id\" is deprecated,\u0027\n                                  \u0027 for removal. please start using project_id instead\u0027)\n            elif (\u0027project_id\u0027 in kwargs):\n                # fallback to deprecated name till deprecation phase.\n                kwargs[\u0027tenant_id\u0027] \u003d kwargs.pop(\u0027project_id\u0027)\n\n        return func(*args, **kwargs)\n    return inner","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                _args \u003d list(args)"},{"line_number":39,"context_line":"                _args.append(kwargs.get(\u0027project_id\u0027))"},{"line_number":40,"context_line":"                args \u003d tuple(_args)"},{"line_number":41,"context_line":"        return func(*args, **kwargs)"},{"line_number":42,"context_line":"    return inner"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"class QuotasClient(base.BaseNetworkClient):"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_7fa8431f","line":42,"range":{"start_line":41,"start_character":0,"end_line":42,"end_character":16},"in_reply_to":"ff570b3c_6f938aa4","updated":"2020-05-30 14:06:01.000000000","message":"If we have tenant_id usage like this in other clients we can add this to base client and also use it in those other places.","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7250c542e7f4846ef7659776dd2e25bf0f21060d","unresolved":false,"context_lines":[{"line_number":38,"context_line":"                _args \u003d list(args)"},{"line_number":39,"context_line":"                _args.append(kwargs.get(\u0027project_id\u0027))"},{"line_number":40,"context_line":"                args \u003d tuple(_args)"},{"line_number":41,"context_line":"        return func(*args, **kwargs)"},{"line_number":42,"context_line":"    return inner"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"class QuotasClient(base.BaseNetworkClient):"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_6f938aa4","line":42,"range":{"start_line":41,"start_character":0,"end_line":42,"end_character":16},"in_reply_to":"ff570b3c_abb80876","updated":"2020-05-14 15:50:54.000000000","message":"Done","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        return self.update_resource(uri, put_body)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @_warning_deprecate_tenant_id"},{"line_number":60,"context_line":"    def reset_quotas(self, tenant_id, **kwargs):  # noqa"},{"line_number":61,"context_line":"        # NOTE: This noqa is for passing T111 check and we cannot rename"},{"line_number":62,"context_line":"        #       to keep backwards compatibility."},{"line_number":63,"context_line":"        uri \u003d \u0027/quotas/%s\u0027 % tenant_id"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_a6f31d0a","line":60,"range":{"start_line":60,"start_character":36,"end_line":60,"end_character":46},"updated":"2020-05-13 22:22:13.000000000","message":"this can be kept as it is and later we will change tenant_id positional arg name to project_id","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7250c542e7f4846ef7659776dd2e25bf0f21060d","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        return self.update_resource(uri, put_body)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @_warning_deprecate_tenant_id"},{"line_number":60,"context_line":"    def reset_quotas(self, tenant_id, **kwargs):  # noqa"},{"line_number":61,"context_line":"        # NOTE: This noqa is for passing T111 check and we cannot rename"},{"line_number":62,"context_line":"        #       to keep backwards compatibility."},{"line_number":63,"context_line":"        uri \u003d \u0027/quotas/%s\u0027 % tenant_id"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_ef795a93","line":60,"range":{"start_line":60,"start_character":36,"end_line":60,"end_character":46},"in_reply_to":"ff570b3c_a6f31d0a","updated":"2020-05-14 15:50:54.000000000","message":"Done","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6800662e485dabca0a192946f459713192bbaa4a","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        uri \u003d \u0027/quotas\u0027"},{"line_number":85,"context_line":"        return self.list_resources(uri, **filters)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    @_warning_deprecate_tenant_id"},{"line_number":88,"context_line":"    def show_default_quotas(self, tenant_id, **kwargs):"},{"line_number":89,"context_line":"        \"\"\"List default quotas for a project.\"\"\""},{"line_number":90,"context_line":"        uri \u003d \u0027/quotas/%s/default\u0027 % tenant_id"},{"line_number":91,"context_line":"        return self.show_resource(uri)"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    @_warning_deprecate_tenant_id"},{"line_number":94,"context_line":"    def show_quota_details(self, tenant_id, **kwargs):"},{"line_number":95,"context_line":"        \"\"\"Show quota details for a project.\"\"\""},{"line_number":96,"context_line":"        uri \u003d \u0027/quotas/%s/details.json\u0027 % tenant_id"},{"line_number":97,"context_line":"        return self.show_resource(uri)"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_86f6d9f8","line":94,"range":{"start_line":87,"start_character":0,"end_line":94,"end_character":54},"updated":"2020-05-13 22:22:13.000000000","message":"ditto","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7250c542e7f4846ef7659776dd2e25bf0f21060d","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        uri \u003d \u0027/quotas\u0027"},{"line_number":85,"context_line":"        return self.list_resources(uri, **filters)"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    @_warning_deprecate_tenant_id"},{"line_number":88,"context_line":"    def show_default_quotas(self, tenant_id, **kwargs):"},{"line_number":89,"context_line":"        \"\"\"List default quotas for a project.\"\"\""},{"line_number":90,"context_line":"        uri \u003d \u0027/quotas/%s/default\u0027 % tenant_id"},{"line_number":91,"context_line":"        return self.show_resource(uri)"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    @_warning_deprecate_tenant_id"},{"line_number":94,"context_line":"    def show_quota_details(self, tenant_id, **kwargs):"},{"line_number":95,"context_line":"        \"\"\"Show quota details for a project.\"\"\""},{"line_number":96,"context_line":"        uri \u003d \u0027/quotas/%s/details.json\u0027 % tenant_id"},{"line_number":97,"context_line":"        return self.show_resource(uri)"}],"source_content_type":"text/x-python","patch_set":18,"id":"ff570b3c_4f7166a9","line":94,"range":{"start_line":87,"start_character":0,"end_line":94,"end_character":54},"in_reply_to":"ff570b3c_86f6d9f8","updated":"2020-05-14 15:50:54.000000000","message":"Done","commit_id":"07a9ca1e878fab01fe696fa719347f36a528e7a8"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":25,"context_line":"        # positional arg or kwargs."},{"line_number":26,"context_line":"        if len(args) \u003c 2:"},{"line_number":27,"context_line":"            if \u0027tenant_id\u0027 in kwargs:"},{"line_number":28,"context_line":"                _self.LOG.warning("},{"line_number":29,"context_line":"                    \u0027positional arg name \"tenant_id\" is deprecated, for \u0027"},{"line_number":30,"context_line":"                    \u0027removal, please start using \"project_id\" instead\u0027)"},{"line_number":31,"context_line":"            elif \u0027project_id\u0027 in kwargs:"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_1f8667ba","line":28,"range":{"start_line":28,"start_character":16,"end_line":28,"end_character":34},"updated":"2020-05-30 14:06:01.000000000","message":"Here is also a good place to use `versionutils.report_deprecated_feature` library function.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"}],"tempest/scenario/manager.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":874,"context_line":"        if not networks_client:"},{"line_number":875,"context_line":"            networks_client \u003d self.networks_client"},{"line_number":876,"context_line":"        if not project_id:"},{"line_number":877,"context_line":"            project_id \u003d networks_client.tenant_id"},{"line_number":878,"context_line":"        name \u003d data_utils.rand_name(namestart)"},{"line_number":879,"context_line":"        network_kwargs \u003d dict(name\u003dname, project_id\u003dproject_id)"},{"line_number":880,"context_line":"        if net_dict:"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_7f8fa3cc","line":877,"range":{"start_line":877,"start_character":41,"end_line":877,"end_character":50},"updated":"2020-05-30 14:06:01.000000000","message":"project_id?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":874,"context_line":"        if not networks_client:"},{"line_number":875,"context_line":"            networks_client \u003d self.networks_client"},{"line_number":876,"context_line":"        if not project_id:"},{"line_number":877,"context_line":"            project_id \u003d networks_client.tenant_id"},{"line_number":878,"context_line":"        name \u003d data_utils.rand_name(namestart)"},{"line_number":879,"context_line":"        network_kwargs \u003d dict(name\u003dname, project_id\u003dproject_id)"},{"line_number":880,"context_line":"        if net_dict:"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_1afad941","line":877,"range":{"start_line":877,"start_character":41,"end_line":877,"end_character":50},"in_reply_to":"ff570b3c_7f8fa3cc","updated":"2020-06-02 08:28:35.000000000","message":"Done","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":1126,"context_line":"        if security_groups_client is None:"},{"line_number":1127,"context_line":"            security_groups_client \u003d self.security_groups_client"},{"line_number":1128,"context_line":"        if project_id is None:"},{"line_number":1129,"context_line":"            project_id \u003d security_groups_client.tenant_id"},{"line_number":1130,"context_line":"        secgroup \u003d self._create_empty_security_group("},{"line_number":1131,"context_line":"            namestart\u003dnamestart, client\u003dsecurity_groups_client,"},{"line_number":1132,"context_line":"            project_id\u003dproject_id)"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_5f8c5fd6","line":1129,"range":{"start_line":1129,"start_character":48,"end_line":1129,"end_character":57},"updated":"2020-05-30 14:06:01.000000000","message":"project_id?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":1126,"context_line":"        if security_groups_client is None:"},{"line_number":1127,"context_line":"            security_groups_client \u003d self.security_groups_client"},{"line_number":1128,"context_line":"        if project_id is None:"},{"line_number":1129,"context_line":"            project_id \u003d security_groups_client.tenant_id"},{"line_number":1130,"context_line":"        secgroup \u003d self._create_empty_security_group("},{"line_number":1131,"context_line":"            namestart\u003dnamestart, client\u003dsecurity_groups_client,"},{"line_number":1132,"context_line":"            project_id\u003dproject_id)"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_9a9b8915","line":1129,"range":{"start_line":1129,"start_character":48,"end_line":1129,"end_character":57},"in_reply_to":"ff570b3c_5f8c5fd6","updated":"2020-06-02 08:28:35.000000000","message":"Done","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":1149,"context_line":"         - IPv4 egress to any"},{"line_number":1150,"context_line":"         - IPv6 egress to any"},{"line_number":1151,"context_line":""},{"line_number":1152,"context_line":"        :param project_id: secgroup will be created in this tenant"},{"line_number":1153,"context_line":"        :returns: the created security group"},{"line_number":1154,"context_line":"        \"\"\""},{"line_number":1155,"context_line":"        if client is None:"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_bfbe5b62","line":1152,"range":{"start_line":1152,"start_character":27,"end_line":1152,"end_character":65},"updated":"2020-05-30 14:06:01.000000000","message":"nit: This description doesn\u0027t make sense for project_id but this is existing issue.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":1149,"context_line":"         - IPv4 egress to any"},{"line_number":1150,"context_line":"         - IPv6 egress to any"},{"line_number":1151,"context_line":""},{"line_number":1152,"context_line":"        :param project_id: secgroup will be created in this tenant"},{"line_number":1153,"context_line":"        :returns: the created security group"},{"line_number":1154,"context_line":"        \"\"\""},{"line_number":1155,"context_line":"        if client is None:"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_baae4d2b","line":1152,"range":{"start_line":1152,"start_character":27,"end_line":1152,"end_character":65},"in_reply_to":"ff570b3c_bfbe5b62","updated":"2020-06-02 08:28:35.000000000","message":"Done","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":1155,"context_line":"        if client is None:"},{"line_number":1156,"context_line":"            client \u003d self.security_groups_client"},{"line_number":1157,"context_line":"        if not project_id:"},{"line_number":1158,"context_line":"            project_id \u003d client.project_id"},{"line_number":1159,"context_line":"        sg_name \u003d data_utils.rand_name(namestart)"},{"line_number":1160,"context_line":"        sg_desc \u003d sg_name + \" description\""},{"line_number":1161,"context_line":"        sg_dict \u003d dict(name\u003dsg_name,"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_9fc397ed","line":1158,"updated":"2020-05-30 14:06:01.000000000","message":"++","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":1198,"context_line":"        if security_groups_client is None:"},{"line_number":1199,"context_line":"            security_groups_client \u003d self.security_groups_client"},{"line_number":1200,"context_line":"        if not project_id:"},{"line_number":1201,"context_line":"            project_id \u003d security_groups_client.tenant_id"},{"line_number":1202,"context_line":"        if secgroup is None:"},{"line_number":1203,"context_line":"            # Get default secgroup for project_id"},{"line_number":1204,"context_line":"            default_secgroups \u003d security_groups_client.list_security_groups("}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_ffb45384","line":1201,"range":{"start_line":1201,"start_character":48,"end_line":1201,"end_character":57},"updated":"2020-05-30 14:06:01.000000000","message":"project_id?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":1198,"context_line":"        if security_groups_client is None:"},{"line_number":1199,"context_line":"            security_groups_client \u003d self.security_groups_client"},{"line_number":1200,"context_line":"        if not project_id:"},{"line_number":1201,"context_line":"            project_id \u003d security_groups_client.tenant_id"},{"line_number":1202,"context_line":"        if secgroup is None:"},{"line_number":1203,"context_line":"            # Get default secgroup for project_id"},{"line_number":1204,"context_line":"            default_secgroups \u003d security_groups_client.list_security_groups("}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_1aa8191e","line":1201,"range":{"start_line":1201,"start_character":48,"end_line":1201,"end_character":57},"in_reply_to":"ff570b3c_ffb45384","updated":"2020-06-02 08:28:35.000000000","message":"Done","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"}],"tempest/scenario/test_network_basic_ops.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1fb7cfec340f65906b45068a40124c887d5fdc6","unresolved":false,"context_lines":[{"line_number":321,"context_line":"        internal_ips \u003d ("},{"line_number":322,"context_line":"            p[\u0027fixed_ips\u0027][0][\u0027ip_address\u0027] for p in"},{"line_number":323,"context_line":"            self.os_admin.ports_client.list_ports("},{"line_number":324,"context_line":"                project_id\u003dserver[\u0027tenant_id\u0027],"},{"line_number":325,"context_line":"                network_id\u003dnetwork[\u0027id\u0027])[\u0027ports\u0027]"},{"line_number":326,"context_line":"            if p[\u0027device_owner\u0027].startswith(\u0027network\u0027) or"},{"line_number":327,"context_line":"            p[\u0027device_owner\u0027].startswith(\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_3fb24b95","line":324,"range":{"start_line":324,"start_character":35,"end_line":324,"end_character":44},"updated":"2020-05-30 14:06:01.000000000","message":"project_id?","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"5e3bb4843b7eedf793d383d62b6a138d99768939","unresolved":false,"context_lines":[{"line_number":321,"context_line":"        internal_ips \u003d ("},{"line_number":322,"context_line":"            p[\u0027fixed_ips\u0027][0][\u0027ip_address\u0027] for p in"},{"line_number":323,"context_line":"            self.os_admin.ports_client.list_ports("},{"line_number":324,"context_line":"                project_id\u003dserver[\u0027tenant_id\u0027],"},{"line_number":325,"context_line":"                network_id\u003dnetwork[\u0027id\u0027])[\u0027ports\u0027]"},{"line_number":326,"context_line":"            if p[\u0027device_owner\u0027].startswith(\u0027network\u0027) or"},{"line_number":327,"context_line":"            p[\u0027device_owner\u0027].startswith(\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":19,"id":"ff570b3c_7ad2f5d2","line":324,"range":{"start_line":324,"start_character":35,"end_line":324,"end_character":44},"in_reply_to":"ff570b3c_3fb24b95","updated":"2020-06-02 08:28:35.000000000","message":"Not yet... server dictionary is still being populated with tenant_id instead of project_id (or both). I \"detected\" (by mistake) this in previous PS.","commit_id":"7b0a5f2b8b544e96df47bb540ccc75aa277e4acf"},{"author":{"_account_id":8367,"name":"Arx Cruz","email":"arxcruz@redhat.com","username":"arxcruz"},"change_message_id":"44688c76337630f06aaf7b199c18e63ab086cb0e","unresolved":false,"context_lines":[{"line_number":321,"context_line":"        internal_ips \u003d ("},{"line_number":322,"context_line":"            p[\u0027fixed_ips\u0027][0][\u0027ip_address\u0027] for p in"},{"line_number":323,"context_line":"            self.os_admin.ports_client.list_ports("},{"line_number":324,"context_line":"                project_id\u003dserver[\u0027tenant_id\u0027],"},{"line_number":325,"context_line":"                network_id\u003dnetwork[\u0027id\u0027])[\u0027ports\u0027]"},{"line_number":326,"context_line":"            if p[\u0027device_owner\u0027].startswith(\u0027network\u0027) or"},{"line_number":327,"context_line":"            p[\u0027device_owner\u0027].startswith(\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":20,"id":"bf51134e_94bc75bc","line":324,"range":{"start_line":324,"start_character":35,"end_line":324,"end_character":44},"updated":"2020-06-16 19:30:36.000000000","message":"What about this one?","commit_id":"c1449d4ff234e96cb4948ce1ee6b8e93aa3d6164"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"54d9311b745c6abf06663b816972e01f4fba2640","unresolved":false,"context_lines":[{"line_number":321,"context_line":"        internal_ips \u003d ("},{"line_number":322,"context_line":"            p[\u0027fixed_ips\u0027][0][\u0027ip_address\u0027] for p in"},{"line_number":323,"context_line":"            self.os_admin.ports_client.list_ports("},{"line_number":324,"context_line":"                project_id\u003dserver[\u0027tenant_id\u0027],"},{"line_number":325,"context_line":"                network_id\u003dnetwork[\u0027id\u0027])[\u0027ports\u0027]"},{"line_number":326,"context_line":"            if p[\u0027device_owner\u0027].startswith(\u0027network\u0027) or"},{"line_number":327,"context_line":"            p[\u0027device_owner\u0027].startswith(\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":20,"id":"bf51134e_b74fe9bb","line":324,"range":{"start_line":324,"start_character":35,"end_line":324,"end_character":44},"in_reply_to":"bf51134e_94bc75bc","updated":"2020-06-17 15:05:42.000000000","message":"I changed it and reverted again [1]. The server dictionary comes from [2]. This is a \"compute\" client method (still using tenant_id) and I should not change it in this patch.\n\n[1]https://review.opendev.org/#/c/707938/4..20/tempest/scenario/test_network_basic_ops.py\n[2]https://github.com/openstack/tempest/blob/master/tempest/lib/services/compute/servers_client.py#L138-L149","commit_id":"c1449d4ff234e96cb4948ce1ee6b8e93aa3d6164"},{"author":{"_account_id":8367,"name":"Arx Cruz","email":"arxcruz@redhat.com","username":"arxcruz"},"change_message_id":"8057bdd431e2cf77b3c6e47f8b87fb14e6ed4ea7","unresolved":false,"context_lines":[{"line_number":321,"context_line":"        internal_ips \u003d ("},{"line_number":322,"context_line":"            p[\u0027fixed_ips\u0027][0][\u0027ip_address\u0027] for p in"},{"line_number":323,"context_line":"            self.os_admin.ports_client.list_ports("},{"line_number":324,"context_line":"                project_id\u003dserver[\u0027tenant_id\u0027],"},{"line_number":325,"context_line":"                network_id\u003dnetwork[\u0027id\u0027])[\u0027ports\u0027]"},{"line_number":326,"context_line":"            if p[\u0027device_owner\u0027].startswith(\u0027network\u0027) or"},{"line_number":327,"context_line":"            p[\u0027device_owner\u0027].startswith(\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":20,"id":"bf51134e_f794c1ea","line":324,"range":{"start_line":324,"start_character":35,"end_line":324,"end_character":44},"in_reply_to":"bf51134e_b74fe9bb","updated":"2020-06-17 15:07:11.000000000","message":"Thanks for the clarification","commit_id":"c1449d4ff234e96cb4948ce1ee6b8e93aa3d6164"}]}
