from openmano_schemas import id_schema, name_schema, nameshort_schema, description_schema, \
vlan1000_schema, integer0_schema
from jsonschema import validate as js_v, exceptions as js_e
+from urllib import quote
'''contain the openvim virtual machine status to openmano status'''
vmStatus2manoFormat={'ACTIVE':'ACTIVE',
vimconn.vimconnector.__init__(self, uuid, name, tenant_id, tenant_name, url, url_admin, user, passwd, log_level, config)
self.tenant = None
self.headers_req = {'content-type': 'application/json'}
- self.logger = logging.getLogger('mano.vim.openvim')
+ self.logger = logging.getLogger('openmano.vim.openvim')
if tenant_id:
self.tenant = tenant_id
if self.tenant:
return self.tenant
- url = self.url+'/tenants?name='+ self.tenant_name
+ url = self.url+'/tenants?name='+ quote(self.tenant_name)
self.logger.info("Getting VIM tenant_id GET %s", url)
vim_response = requests.get(url, headers = self.headers_req)
self._check_http_request_response(vim_response)
except requests.exceptions.RequestException as e:
self._format_request_exception(e)
- def new_network(self,net_name,net_type, shared=False, **vim_specific):
+ def new_network(self,net_name, net_type, ip_profile=None, shared=False, **vim_specific):
'''Adds a tenant network to VIM'''
'''Returns the network identifier'''
try:
'''Get the image id from image path in the VIM database'''
try:
self._get_my_tenant()
- url=self.url + '/' + self.tenant + '/images?path='+path
+ url=self.url + '/' + self.tenant + '/images?path='+quote(path)
self.logger.info("Getting images GET %s", url)
vim_response = requests.get(url)
self._check_http_request_response(vim_response)
#print text
return -vim_response.status_code,text
- def new_vminstance(self,name,description,start,image_id,flavor_id,net_list):
+ def new_vminstance(self,name,description,start,image_id,flavor_id,net_list, cloud_config=None):
'''Adds a VM instance to VIM
Params:
start: indicates if VM must start or boot in pause mode. Ignored
#get interfaces info
try:
management_ip = False
- url2 = self.url+'/ports?device_id='+ vm_id
+ url2 = self.url+'/ports?device_id='+ quote(vm_id)
self.logger.info("Getting PORTS GET %s", url2)
vim_response2 = requests.get(url2, headers = self.headers_req)
self._check_http_request_response(vim_response2)
interface={}
interface['vim_info'] = yaml.safe_dump(port)
interface["mac_address"] = port.get("mac_address")
- interface["vim_net_id"] = port["network_id"]
+ interface["vim_net_id"] = port.get("network_id")
interface["vim_interface_id"] = port["id"]
interface["ip_address"] = port.get("ip_address")
if interface["ip_address"]: