According to SOL001(*1) "A.6.1 ScalingAspect and InstantiationLevels policies with uniform delta",
number_of_instance of deltas in `VduScalingAspectDeltas` is able to have different value even if aspect_id and delta_id are the same as follows:
```
policies
...
- vdu_1_scaling_aspect_deltas:
type: tosca.policies.nfv.VduScalingAspectDeltas
properties:
aspect: database // aspect_id
deltas: delta_1: // delta_id number_of_instances: 2
targets: [ vdu_1 ]
...
- vdu_2_scaling_aspect_deltas:
type: tosca.policies.nfv.VduScalingAspectDeltas
properties:
aspect: database // same aspect_id as vdu1
deltas: delta_1: // same delta_id as vdu1 number_of_instances: 3 // !! another number !!
targets: [ vdu_2 ]
...
```
But in current implementation of tacker, extract policies information using tosca_utils._extract_policy_info(*2) method as follows (Excerpt from VduScalingAspectDeltas):
```
if tosca_policies is not []:
for p in tosca_policies:
if p.type == ETSI_SCALING_ASPECT_DELTA: vdu_list = p.targets aspect_id = p.properties['aspect'] deltas = p.properties['deltas'] delta_id_dict = {}
for delta_id, delta_val in deltas.items(): delta_num = delta_val['number_of_instances'] delta_id_dict[delta_id] = delta_num aspect_delta_dict[aspect_id] = delta_id_dict // !! Overwrite if the same aspect_id !! aspect_vdu_dict[aspect_id] = vdu_list
```
If it is the same aspect_id and delta_id, it will be overwritten by the value of the later one (overwrite by number_of_instance: 3 of vdu_2_scaling_aspect_deltas in case of the SOL001 definition example).
According to SOL001(*1) "A.6.1 ScalingAspect and InstantiationLevels policies with uniform delta", ctDeltas` is able to have different value even if aspect_id and delta_id are the same as follows: aspect_ deltas: nfv.VduScalingA spectDeltas
delta_ 1: // delta_id
number_ of_instances: 2 aspect_ deltas: nfv.VduScalingA spectDeltas
delta_ 1: // same delta_id as vdu1
number_ of_instances: 3 // !! another number !!
number_of_instance of deltas in `VduScalingAspe
```
policies
...
- vdu_1_scaling_
type: tosca.policies.
properties:
aspect: database // aspect_id
deltas:
targets: [ vdu_1 ]
...
- vdu_2_scaling_
type: tosca.policies.
properties:
aspect: database // same aspect_id as vdu1
deltas:
targets: [ vdu_2 ]
...
```
But in current implementation of tacker, extract policies information using tosca_utils. _extract_ policy_ info(*2) method as follows (Excerpt from VduScalingAspec tDeltas) :
``` ASPECT_ DELTA:
vdu_list = p.targets
aspect_ id = p.properties[ 'aspect' ]
deltas = p.properties[ 'deltas' ]
delta_ id_dict = {}
delta_ num = delta_val[ 'number_ of_instances' ]
delta_ id_dict[ delta_id] = delta_num
aspect_ delta_dict[ aspect_ id] = delta_id_dict // !! Overwrite if the same aspect_id !!
aspect_ vdu_dict[ aspect_ id] = vdu_list aspect_ deltas in case of the SOL001 definition example).
if tosca_policies is not []:
for p in tosca_policies:
if p.type == ETSI_SCALING_
for delta_id, delta_val in deltas.items():
```
If it is the same aspect_id and delta_id, it will be overwritten by the value of the later one (overwrite by number_of_instance: 3 of vdu_2_scaling_
refs: /www.etsi. org/deliver/ etsi_gs/ NFV-SOL/ 001_099/ 001/02. 06.01_60/ gs_nfv- sol001v020601p. pdf policy_ info(): https:/ /opendev. org/openstack/ tacker/ src/branch/ master/ tacker/ tosca/utils. py#L839- L885
*1) SOL001: https:/
*2) _extract_