logger = ft_logger.Logger("tacker_utils").getLogger()
-def get_tacker_client():
- creds_tacker = os_utils.get_credentials('tacker')
- return tackerclient.Client(**creds_tacker)
+def get_tacker_client(other_creds={}):
+ sess = os_utils.get_session(other_creds)
+ return tackerclient.Client(session=sess)
# *********************************************
if tosca_file is not None:
with open(tosca_file) as tosca_fd:
vnfd_body = tosca_fd.read()
- logger.error(vnfd_body)
+ logger.info('VNFD template:\n{0}'.format(vnfd_body))
return tacker_client.create_vnfd(
body={"vnfd": {"attributes": {"vnfd": vnfd_body}}})
except Exception, e:
- logger.exception("Error [create_vnfd(tacker_client, '%s')]: %s"
- % (tosca_file, e))
+ logger.error("Error [create_vnfd(tacker_client, '%s')]: %s"
+ % (tosca_file, e))
return None
return None
-def create_vnf(tacker_client, vnf_name, vnfd_id=None, vnfd_name=None):
+def create_vnf(tacker_client, vnf_name, vnfd_id=None,
+ vnfd_name=None, param_file=None):
try:
vnf_body = {
'vnf': {
'name': vnf_name
}
}
+ if param_file is not None:
+ with open(param_file) as f:
+ params = f.read()
+ vnf_body['vnf']['attributes']['param_values'] = params
if vnfd_id is not None:
vnf_body['vnf']['vnfd_id'] = vnfd_id
else:
vnf_body['vnf']['vnfd_id'] = get_vnfd_id(tacker_client, vnfd_name)
return tacker_client.create_vnf(body=vnf_body)
except Exception, e:
- logger.error("error [create_vnf(tacker_client, '%s', '%s', '%s')]: %s"
+ logger.error("error [create_vnf(tacker_client,"
+ " '%s', '%s', '%s')]: %s"
% (vnf_name, vnfd_id, vnfd_name, e))
return None
def create_sfc(tacker_client, sfc_name,
chain_vnf_ids=None,
- chain_vnf_names=None):
+ chain_vnf_names=None,
+ symmetrical=False):
try:
sfc_body = {
'sfc': {
'chain': []
}
}
+ if symmetrical:
+ sfc_body['sfc']['symmetrical'] = True
if chain_vnf_ids is not None:
sfc_body['sfc']['chain'] = chain_vnf_ids
else:
for name in chain_vnf_names]
return tacker_client.create_sfc(body=sfc_body)
except Exception, e:
- logger.error("error [create_sfc(tacker_client, '%s', '%s', '%s')]: %s"
+ logger.error("error [create_sfc(tacker_client,"
+ " '%s', '%s', '%s')]: %s"
% (sfc_name, chain_vnf_ids, chain_vnf_names, e))
return None
tacker_client, sfc_name)
return tacker_client.create_sfc_classifier(body=sfc_clf_body)
except Exception, e:
- logger.error("error [create_sfc_classifier(tacker_client, '%s', '%s',"
- " '%s', '%s')]: '%s'"
+ logger.error("error [create_sfc_classifier(tacker_client,"
+ " '%s', '%s','%s', '%s')]: '%s'"
% (sfc_clf_name, sfc_id, sfc_name, str(match), e))
return None