summaryrefslogtreecommitdiffstats
path: root/osdf
diff options
context:
space:
mode:
Diffstat (limited to 'osdf')
-rw-r--r--osdf/adapters/local_data/local_policies.py13
-rw-r--r--osdf/optimizers/placementopt/conductor/translation.py21
2 files changed, 23 insertions, 11 deletions
diff --git a/osdf/adapters/local_data/local_policies.py b/osdf/adapters/local_data/local_policies.py
index e722fe2..6e49388 100644
--- a/osdf/adapters/local_data/local_policies.py
+++ b/osdf/adapters/local_data/local_policies.py
@@ -33,11 +33,14 @@ def get_local_policies(local_policy_folder, local_policy_list, policy_id_list=No
:return: get policies
"""
policies = []
- for fname in local_policy_list: # ugly removal of .json from file name
- if policy_id_list and fname[:-5] not in policy_id_list:
- continue
- with open(os.path.join(local_policy_folder, fname)) as fid:
- policies.append(json.load(fid))
+ if policy_id_list:
+ for policy_id in policy_id_list:
+ with open(os.path.join(local_policy_folder, policy_id + ".json")) as fid:
+ policies.append(json.load(fid))
+ else:
+ for fname in local_policy_list:
+ with open(os.path.join(local_policy_folder, fname)) as fid:
+ policies.append(json.load(fid))
return policies
diff --git a/osdf/optimizers/placementopt/conductor/translation.py b/osdf/optimizers/placementopt/conductor/translation.py
index 5f44c83..e703c36 100644
--- a/osdf/optimizers/placementopt/conductor/translation.py
+++ b/osdf/optimizers/placementopt/conductor/translation.py
@@ -221,12 +221,21 @@ def get_demand_properties(demand, policies):
for policy_property in get_policy_properties(demand, policies):
prop = dict(inventory_provider=policy_property['inventoryProvider'],
inventory_type=policy_property['inventoryType'],
- service_resource_id=demand['serviceResourceId'])
- if 'attributes' in policy_property:
- prop['attributes'] = get_augmented_policy_attributes(policy_property, demand)
- for k1, v1, k2, v2 in policy_config_mapping['extra_fields']:
- if k1 == v1:
- prop[k2] = v2
+ service_type=demand['serviceResourceId'])
+ attributes = policy_config_mapping['attributes']
+ prop['attributes'] = {
+ 'customer-id': policy_property['customerId'],
+ 'orchestration-status': "",
+ 'model-invariant-id': demand['resourceModelInfo']['modelInvariantId'],
+ 'model-version-id': demand['resourceModelInfo']['modelVersionId'],
+ 'service-type': demand['serviceResourceId'],
+ 'equipment-role': policy_property['equipmentRole']
+ }
+ # if 'attributes' in policy_property:
+ # prop['attributes'] = get_augmented_policy_attributes(policy_property, demand)
+ # for k1, v1, k2, v2 in policy_config_mapping['extra_fields']:
+ # if k1 == v1:
+ # prop[k2] = v2
prop.update(get_candidates_demands(demand)) # for excluded and partial-rehoming cases
demand_properties.append(prop)
return demand_properties