error = False
candidate_list = arg["candidate_list"]
label_name = arg["label_name"]
- features = arg["features"]
+ flavorProperties = arg["flavorProperties"]
discard_set = set()
for candidate in candidate_list:
# perform this check only for cloud candidates
results = self.ip_ext_manager.map_method(
'match_hpa',
candidate=candidate,
- features=features
+ features=flavorProperties
)
if results and len(results) > 0:
self.constraint_type, demand_name))
vm_label_list = self.properties.get('evaluate')
for vm_demand in vm_label_list:
- label_name = vm_demand['label']
- features = vm_demand['features']
+ label_name = vm_demand['flavorLabel']
+ flavorProperties = vm_demand['flavorProperties']
response = (cei.get_candidates_with_hpa(label_name,
_candidate_list,
- features))
+ flavorProperties))
if response:
_candidate_list = response
else:
# response is a list of (candidate, cost) tuples
return response
- def get_candidates_with_hpa(self, label_name, candidate_list, features):
+ def get_candidates_with_hpa(self, label_name, candidate_list,
+ flavorProperties):
'''
Returns the candidate_list with an addition of flavor_mapping for
matching cloud candidates with hpa constraints.
:param label_name: vm_label_name passed from the SO/Policy
:param candidate_list: list of candidates to process
- :param features: hpa features for this vm_label_name
+ :param flavorProperties: hpa features for this vm_label_name
:return: candidate_list with hpa features and flavor mapping
'''
ctxt = {}
args = {"candidate_list": candidate_list,
- "features": features,
+ "flavorProperties": flavorProperties,
"label_name": label_name}
response = self.client.call(ctxt=ctxt,
method="get_candidates_with_hpa",
"properties": {
"evaluate": [
{
- "features": [
+ "flavorProperties": [
{
"architecture": "generic",
"hpa-feature": "basicCapabilities",
"hpa-version": "v1"
}
],
- "label": "flavor_label_1"
+ "flavorLabel": "flavor_label_1"
},
{
- "features": [
+ "flavorProperties": [
{
"architecture": "generic",
"hpa-feature": "basicCapabilities",
"hpa-version": "v1"
}
],
- "label": "flavor_label_2"
+ "flavorLabel": "flavor_label_2"
}
]
}
(constraint_id, constraint_info) = \
hpa_json["conductor_solver"]["constraints"][0].items()[0]
hpa_constraint = constraint_info['properties']
- features = hpa_constraint['evaluate'][0]['features']
- label_name = hpa_constraint['evaluate'][0]['label']
+ flavorProperties = hpa_constraint['evaluate'][0]['flavorProperties']
+ label_name = hpa_constraint['evaluate'][0]['flavorLabel']
ext_mock1.return_value = ['aai']
flavor_info = {"flavor-id": "vim-flavor-id1",
"flavor-name": "vim-flavor-name1"}
hpa_mock.return_value = [flavor_info]
self.maxDiff = None
- args = generate_args(candidate_list, features, label_name)
+ args = generate_args(candidate_list, flavorProperties, label_name)
hpa_candidate_list = copy.deepcopy(candidate_list)
hpa_candidate_list[1]['flavor_map'] = {}
hpa_candidate_list[1]['flavor_map'][label_name] = "vim-flavor-name1"
hpa_candidate_list2 = list()
hpa_candidate_list2.append(copy.deepcopy(candidate_list[0]))
- args = generate_args(candidate_list, features, label_name)
+ args = generate_args(candidate_list, flavorProperties, label_name)
hpa_mock.return_value = []
expected_response = {'response': hpa_candidate_list2, 'error': False}
self.assertEqual(expected_response,
args))
-def generate_args(candidate_list, features, label_name):
+def generate_args(candidate_list, flavorProperties, label_name):
arg_candidate_list = copy.deepcopy(candidate_list)
args = {"candidate_list": arg_candidate_list,
- "features": features,
+ "flavorProperties": flavorProperties,
"label_name": label_name}
return args
"properties": {
"evaluate": [
{
- "features": [
+ "flavorProperties": [
{
"architecture": "generic",
"hpa-feature": "basicCapabilities",
"hpa-version": "v1"
}
],
- "label": "flavor_label_1"
+ "flavorLabel": "flavor_label_1"
},
{
- "features": [
+ "flavorProperties": [
{
"architecture": "generic",
"hpa-feature": "basicCapabilities",
"hpa-version": "v1"
}
],
- "label": "flavor_label_2"
+ "flavorLabel": "flavor_label_2"
}
]
}