diff options
author | 2018-04-04 03:19:52 +0000 | |
---|---|---|
committer | 2018-05-02 09:15:05 +0000 | |
commit | 1fc5ef2345f9eab0236a251025aab8708b465b33 (patch) | |
tree | eea198ade4c8bf22ad15e0c46c0412db397894e7 | |
parent | a5880f7bf9d177510c5781b5ce600ea8c565ad43 (diff) |
Enable get_project_by_id when only tenant_id is provided
This is to improve:
https://gerrit.opnfv.org/gerrit/#/c/52675/
Change-Id: I7228e5eadcc121fe94a869c6cbbeac412d972868
Signed-off-by: Linda Wang <wangwulin@huawei.com>
(cherry picked from commit 390d31e3a6eaa0968474d19d71ec804d0c6c071a)
-rw-r--r-- | snaps/openstack/utils/neutron_utils.py | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/snaps/openstack/utils/neutron_utils.py b/snaps/openstack/utils/neutron_utils.py index 3fb8b9a..2bde999 100644 --- a/snaps/openstack/utils/neutron_utils.py +++ b/snaps/openstack/utils/neutron_utils.py @@ -128,8 +128,12 @@ def get_network(neutron, keystone, network_settings=None, network_name=None, for network, netInsts in networks.items(): for inst in netInsts: if project_name: - project = keystone_utils.get_project_by_id( - keystone, inst['project_id']) + if 'project_id' in inst.keys(): + project = keystone_utils.get_project_by_id( + keystone, inst['project_id']) + else: + project = keystone_utils.get_project_by_id( + keystone, inst['tenant_id']) if project and project.name == project_name: return __map_network(neutron, inst) else: @@ -382,8 +386,12 @@ def get_router(neutron, keystone, router_settings=None, router_name=None, os_routers = neutron.list_routers(**router_filter) for os_router in os_routers['routers']: if project_name: - project = keystone_utils.get_project_by_id( - keystone, os_router['project_id']) + if 'project_id' in os_router.keys(): + project = keystone_utils.get_project_by_id( + keystone, os_router['project_id']) + else: + project = keystone_utils.get_project_by_id( + keystone, os_router['tenant_id']) if project and project.name == project_name: return __map_router(neutron, os_router) @@ -549,8 +557,12 @@ def get_port(neutron, keystone, port_settings=None, port_name=None, ports = neutron.list_ports(**port_filter) for port in ports['ports']: if project_name: - project = keystone_utils.get_project_by_id( - keystone, port['project_id']) + if 'project_id' in port.keys(): + project = keystone_utils.get_project_by_id( + keystone, port['project_id']) + else: + project = keystone_utils.get_project_by_id( + keystone, port['tenant_id']) if project and project.name == project_name: return Port(**port) else: @@ -653,8 +665,12 @@ def get_security_group(neutron, keystone, sec_grp_settings=None, groups = neutron.list_security_groups(**sec_grp_filter) for group in groups['security_groups']: if project_name: - project = keystone_utils.get_project_by_id( - keystone, group['tenant_id']) + if 'project_id' in group.keys(): + project = keystone_utils.get_project_by_id( + keystone, group['project_id']) + else: + project = keystone_utils.get_project_by_id( + keystone, group['tenant_id']) if project and project_name == project.name: return __map_os_security_group(neutron, group) else: |