Esempio n. 1
0
    def create_vim(self, context, vim):
        LOG.debug('Create vim called with parameters %s',
                  strutils.mask_password(vim))
        vim_obj = vim['vim']
        vim_type = vim_obj['type']
        if vim_type != 'kubernetes':
            vim_obj['auth_url'] = utils.get_auth_url_v3(vim_obj['auth_url'])
        vim_obj['id'] = uuidutils.generate_uuid()
        vim_obj['status'] = 'PENDING'
        try:
            self._vim_drivers.invoke(vim_type,
                                     'register_vim',
                                     vim_obj=vim_obj)
            res = super(NfvoPlugin, self).create_vim(context, vim_obj)
        except Exception:
            with excutils.save_and_reraise_exception():
                self._vim_drivers.invoke(vim_type,
                                         'delete_vim_auth',
                                         vim_id=vim_obj['id'],
                                         auth=vim_obj['auth_cred'])

        try:
            self.monitor_vim(context, vim_obj)
        except Exception:
            LOG.warning("Failed to set up vim monitoring")
        return res
Esempio n. 2
0
    def create_vim(self, context, vim):
        LOG.debug('Create vim called with parameters %s',
                  strutils.mask_password(vim))
        vim_obj = vim['vim']
        vim_type = vim_obj['type']
        if vim_type == 'openstack':
            vim_obj['auth_url'] = utils.get_auth_url_v3(vim_obj['auth_url'])
        vim_obj['id'] = uuidutils.generate_uuid()
        vim_obj['status'] = 'PENDING'
        try:
            self._vim_drivers.invoke(vim_type,
                                     'register_vim',
                                     vim_obj=vim_obj)
            res = super(NfvoPlugin, self).create_vim(context, vim_obj)
        except Exception:
            with excutils.save_and_reraise_exception():
                self._vim_drivers.invoke(vim_type,
                                         'delete_vim_auth',
                                         vim_id=vim_obj['id'],
                                         auth=vim_obj['auth_cred'])

        try:
            self.monitor_vim(context, vim_obj)
        except Exception:
            LOG.warning("Failed to set up vim monitoring")
        return res
Esempio n. 3
0
 def validate_keystone_auth_url(auth_url, verify):
     keystone_obj = keystone.Keystone()
     auth_url = utils.get_auth_url_v3(auth_url)
     try:
         return keystone_obj.get_version(auth_url, verify)
     except Exception as e:
         LOG.error('Keystone Auth URL invalid')
         raise nfvo.VimConnectionException(message=str(e))
Esempio n. 4
0
 def validate_keystone_auth_url(auth_url, verify):
     keystone_obj = keystone.Keystone()
     auth_url = utils.get_auth_url_v3(auth_url)
     try:
         return keystone_obj.get_version(auth_url, verify)
     except Exception as e:
         LOG.error('Keystone Auth URL invalid')
         raise nfvo.VimConnectionException(message=str(e))
Esempio n. 5
0
 def get_auth_dict(self, context):
     auth = CONF.keystone_authtoken
     auth_url = utils.get_auth_url_v3(auth.auth_url)
     self.validate_keystone_auth_url(auth_url, 'True')
     return {
         'auth_url': auth_url,
         'token': context.auth_token,
         'project_domain_name': auth.project_domain_name or context.domain,
         'project_name': context.tenant_name
     }
Esempio n. 6
0
 def get_auth_dict(self, context):
     auth = CONF.keystone_authtoken
     auth_url = utils.get_auth_url_v3(auth.auth_url)
     self.validate_keystone_auth_url(auth_url, 'True')
     return {
         'auth_url': auth_url,
         'token': context.auth_token,
         'project_domain_name': auth.project_domain_name or context.domain,
         'project_name': context.tenant_name
     }