Пример #1
0
 def list_keypairs(self, req, tenant_id):
     '''
     list key pairs
     support all_tenants=True
     '''
     result, headers = self._nova_request(req)
     auth_token = req.headers.get("x-auth-token")
     try:
         keypairs = result['keypairs']
         keypair_list_ret = []
         for item in keypairs:
             keypair = item['keypair']
             user = ops_api.get_user(keypair['user_id'], auth_token)
             keypair.update(user_name=user['name'])
             if 'tenantName' in user:
                 keypair.update(
                         tenant_name=user['tenantName'],
                         tenant_id=user['tenantId'])
                 fingerprint = keypair.get('fingerprint', '').\
                                         replace('.create', '')
                 keypair.update(fingerprint=fingerprint)
             keypair_list_ret.append(keypair)
         keypair_list_ret = list_filter.filter_keypairs(req,
                                                        keypair_list_ret)
         keypair_list_ret = list_sort.sort_keypairs(req, keypair_list_ret)
     except KeyError:
         LOG.exception(_("repack keypair data error."))
         raise exc.HTTPFailedDependency(_("Nova method deprecated."))
     return dict(keypairs=keypair_list_ret)