def api_call_deploy_vnf(**vnf_spec_dict): ni_nfvo_vnf_api = get_nfvo_vnf_api() vnf_spec = ni_nfvo_client.VnfSpec(flavor_id=vnf_spec_dict["flavor_id"], image_id=vnf_spec_dict["image_id"], node_name=vnf_spec_dict["node_name"], user_data=vnf_spec_dict["user_data"], vnf_name=vnf_spec_dict["vnf_name"]) api_response = ni_nfvo_vnf_api.deploy_vnf(vnf_spec) print("### deploy_vnf_api_response", api_response)
def get_nfvo_vnf_spec(): nfvo_client_cfg = ni_nfvo_client.Configuration() nfvo_client_cfg.host = cfg["ni_nfvo"]["host"] ni_nfvo_vnf_spec = ni_nfvo_client.VnfSpec( ni_nfvo_client.ApiClient(nfvo_client_cfg)) ni_nfvo_vnf_spec.user_data = sample_user_data % cfg["instance"]["password"] return ni_nfvo_vnf_spec
def handle(self, request, data): try: # if node_name is None, ni_nfvo client will not enforce deployment # on any particular node. node_name = None if data['node_name'] == '__All__' else data[ 'node_name'] vnf_spec = ni_nfvo_client.VnfSpec(flavor_id=data['vnfflavor_id'], vnf_name=data['vnf_name'], node_name=node_name, user_data=data['user_data'], image_id=data['image_id']) vnf_id = ni_nfvo_vnf_api.deploy_vnf(vnf_spec) return _get_vnf_w_timeout(vnf_id, 10) except Exception as e: exceptions.handle(request, str(e))
def deploy_vnf_from_flavor(flavor_name, vnf_name): # get flavor id vnf_flavors = ni_mon_api.get_vnf_flavors() flavor_id = None for vnf_flavor in vnf_flavors: if vnf_flavor.name == flavor_name: flavor_id = vnf_flavor.id break assert flavor_id != None # deploy vnf vnf_fw_spec = ni_nfvo_client.VnfSpec(flavor_id=flavor_id, vnf_name=vnf_name) vnf_id = ni_nfvo_vnf_api.deploy_vnf(vnf_fw_spec) assert check_vnf_running_w_timeout(vnf_id, timeout=60) == True return vnf_id