1 import {HttpClientTestingModule, HttpTestingController} from "@angular/common/http/testing";
2 import {getTestBed, TestBed} from "@angular/core/testing";
3 import {MockNgRedux, NgReduxTestingModule} from "@angular-redux/store/testing";
4 import {NgRedux} from "@angular-redux/store";
5 import {ObjectToTreeService} from "../objectToTree.service";
6 import {ObjectToModelTreeService} from "./objectToModelTree.service";
7 import {DefaultDataGeneratorService} from "../../../../shared/services/defaultDataServiceGenerator/default.data.generator.service";
8 import {DynamicInputsService} from "../dynamicInputs.service";
9 import {SharedTreeService} from "../shared.tree.service";
10 import {DrawingBoardModes} from "../../drawing-board.modes";
12 AvailableModelsTreeService,
14 } from "../../available-models-tree/available-models-tree.service";
15 import {DialogService} from "ng2-bootstrap-modal";
16 import {VnfPopupService} from "../../../../shared/components/genericFormPopup/genericFormServices/vnf/vnf.popup.service";
17 import {ControlGeneratorUtil} from "../../../../shared/components/genericForm/formControlsServices/control.generator.util.service";
18 import {GenericFormService} from "../../../../shared/components/genericForm/generic-form.service";
19 import {FormBuilder} from "@angular/forms";
20 import {LogService} from "../../../../shared/utils/log/log.service";
21 import {IframeService} from "../../../../shared/utils/iframe.service";
22 import {BasicPopupService} from "../../../../shared/components/genericFormPopup/genericFormServices/basic.popup.service";
23 import {NetworkPopupService} from "../../../../shared/components/genericFormPopup/genericFormServices/network/network.popup.service";
24 import {NetworkControlGenerator} from "../../../../shared/components/genericForm/formControlsServices/networkGenerator/network.control.generator";
25 import {VfModulePopupService} from "../../../../shared/components/genericFormPopup/genericFormServices/vfModule/vfModule.popup.service";
26 import {VfModuleControlGenerator} from "../../../../shared/components/genericForm/formControlsServices/vfModuleGenerator/vfModule.control.generator";
27 import {FeatureFlagsService} from "../../../../shared/services/featureFlag/feature-flags.service";
28 import {VnfControlGenerator} from "../../../../shared/components/genericForm/formControlsServices/vnfGenerator/vnf.control.generator";
29 import {AaiService} from "../../../../shared/services/aaiService/aai.service";
30 import {VnfGroupPopupService} from "../../../../shared/components/genericFormPopup/genericFormServices/vnfGroup/vnfGroup.popup.service";
31 import {VnfGroupControlGenerator} from "../../../../shared/components/genericForm/formControlsServices/vnfGroupGenerator/vnfGroup.control.generator";
32 import {DuplicateService} from "../../duplicate/duplicate.service";
33 import {SdcUiComponentsModule} from "onap-ui-angular";
34 import {ComponentInfoService} from "../../component-info/component-info.service";
35 import {IModelTreeNodeModel} from "../../../objectsToTree/objectToModelTree/modelTreeNode.model";
36 import {VpnStepService} from "../models/vrf/vrfModal/vpnStep/vpn.step.service";
37 import {NetworkStepService} from "../models/vrf/vrfModal/networkStep/network.step.service";
38 import {VfModuleUpgradePopupService} from "../../../../shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popuop.service";
39 import {SharedControllersService} from "../../../../shared/components/genericForm/formControlsServices/sharedControlles/shared.controllers.service";
40 import {ModalService} from "../../../../shared/components/customModal/services/modal.service";
41 import {CreateDynamicComponentService} from "../../../../shared/components/customModal/services/create-dynamic-component.service";
43 class MockAppStore<T> {
47 'drawingBoardStatus': DrawingBoardModes.CREATE
51 "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd": {
52 "existingVNFCounterMap": {
53 "280dec31-f16d-488b-9668-4aae55d6648a": 1
58 "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd": {
60 "2017-388_PASQUALE-vPE 1": {
63 "2017-388_PASQUALE-vPE 0": {
66 "2017-488_PASQUALE-vPE 0": {
77 describe('Model Tree Generator service', () => {
79 let service: ObjectToModelTreeService;
80 let httpMock: HttpTestingController;
84 TestBed.configureTestingModule({
85 imports: [HttpClientTestingModule, NgReduxTestingModule, SdcUiComponentsModule],
87 AvailableModelsTreeService,
89 ObjectToModelTreeService,
90 DefaultDataGeneratorService,
103 NetworkControlGenerator,
104 VfModulePopupService,
105 VfModuleUpgradePopupService,
106 VfModuleControlGenerator,
107 VnfGroupControlGenerator,
114 ComponentInfoService,
118 CreateDynamicComponentService,
119 SharedControllersService,
120 {provide: NgRedux, useClass: MockAppStore},
122 }).compileComponents();
124 injector = getTestBed();
125 service = injector.get(ObjectToModelTreeService);
126 httpMock = injector.get(HttpTestingController);
129 test('ObjectToModelTreeService should be defined', () => {
130 expect(service).toBeDefined();
134 test('calculateNumberOfNodesWithPlusIcon : should return 0 when there are no nodes', () => {
135 service.calculateNumberOfNodesWithPlusIcon("someServiceModelId", []);
136 expect(service.numberOfPlusButton).toEqual(0);
139 test('calculateNumberOfNodesWithPlusIcon : should return 1 there is one node with plus icon', () => {
140 const serviceModel = {
145 service.calculateNumberOfNodesWithPlusIcon(serviceModel, [{
146 showNodeIcons: () => {
147 return new AvailableNodeIcons(true, false)
150 expect(service.numberOfPlusButton).toEqual(1);
153 test('calculateNumberOfNodesWithPlusIcon : should return 1 there is one node with plus icon and one without', () => {
154 const serviceModel = {
159 service.calculateNumberOfNodesWithPlusIcon(serviceModel, [
161 showNodeIcons: () => {
162 return new AvailableNodeIcons(true, false)
166 showNodeIcons: () => {
167 return new AvailableNodeIcons(false, true)
171 expect(service.numberOfPlusButton).toEqual(1);
174 test('should return nodes correctly: VNF', () => {
175 let convertToNodes = service.convertServiceHierarchyModelToTreeNodes(getServiceHeirarchyVNF());
176 convertToNodes.map((item: IModelTreeNodeModel) => {
177 delete item.onAddClick;
178 delete item.getNodeCount;
179 delete item.showNodeIcons;
180 delete item.getModel;
181 delete item.componentInfoType;
182 delete item.getMenuAction;
183 delete item['menuActions'];
184 delete item['trackById'];
189 item.children.map((child) => {
190 delete child.onAddClick;
191 delete child.getNodeCount;
192 delete child.showNodeIcons;
193 delete child.getModel;
194 delete child.componentInfoType;
195 delete child.getMenuAction;
196 delete child['menuActions'];
197 delete child['trackById'];
198 delete child.getInfo;
203 expect(Object.assign({}, convertToNodes)).toEqual(Object.assign({}, expectNodesResultVNF()));
207 function expectNodesResultVNF() {
209 "id": "280dec31-f16d-488b-9668-4aae55d6648a",
210 "modelVersionId": "0903e1c0-8e03-4936-b5c2-260653b96413",
211 "name": "2017-388_PASQUALE-vPE 1",
214 "modelTypeName": "vnfs",
219 "modelCustomizationId": "280dec31-f16d-488b-9668-4aae55d6648a",
220 "modelUniqueId": "280dec31-f16d-488b-9668-4aae55d6648a",
222 "isEcompGeneratedNaming": true,
225 "id": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
226 "modelVersionId": "afacccf6-397d-45d6-b5ae-94c39734b168",
227 "modelCustomizationId": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
228 "modelUniqueId": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
229 "name": "2017-388_PASQUALE-vPE 0",
232 "modelTypeName": "vnfs",
238 "isEcompGeneratedNaming": true,
241 "id": "1da7b585-5e61-4993-b95e-8e6606c81e45",
242 "modelVersionId": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
243 "modelCustomizationId": "1da7b585-5e61-4993-b95e-8e6606c81e45",
244 "modelUniqueId": "1da7b585-5e61-4993-b95e-8e6606c81e45",
245 "name": "2017-488_PASQUALE-vPE 0",
248 "modelTypeName": "vnfs",
252 "id": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
253 "modelVersionId": "25284168-24bb-4698-8cb4-3f509146eca5",
254 "modelCustomizationId": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
255 "modelUniqueId": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
256 "name": "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
257 "tooltip": "VFmodule",
259 "modelTypeName": "vfModules",
265 "isEcompGeneratedNaming": true,
268 "id": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
269 "modelVersionId": "f8360508-3f17-4414-a2ed-6bc71161e8db",
270 "modelCustomizationId": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
271 "modelUniqueId": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
272 "name": "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
273 "tooltip": "VFmodule",
275 "modelTypeName": "vfModules",
281 "isEcompGeneratedNaming": true,
284 "id": "3cd946bb-50e0-40d8-96d3-c9023520b557",
285 "modelVersionId": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
286 "modelCustomizationId": "3cd946bb-50e0-40d8-96d3-c9023520b557",
287 "modelUniqueId": "3cd946bb-50e0-40d8-96d3-c9023520b557",
288 "name": "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
289 "tooltip": "VFmodule",
291 "modelTypeName": "vfModules",
297 "isEcompGeneratedNaming": true,
302 "isEcompGeneratedNaming": true,
308 function getServiceHeirarchyVNF() {
311 "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
312 "invariantUuid": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
313 "name": "action-data",
315 "toscaModelURL": null,
316 "category": "Network L1-3",
317 "serviceType": "pnf",
318 "serviceRole": "Testing",
319 "description": "PASQUALE vMX vPE based on Juniper 17.2 release. Updated with updated VF for v8.0 of VLM",
320 "serviceEcompNaming": "false",
321 "instantiationType": "Macro",
323 "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other"}
326 "2017-388_PASQUALE-vPE 1": {
327 "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413",
328 "invariantUuid": "00beb8f9-6d39-452f-816d-c709b9cbb87d",
329 "description": "Name PASQUALE vPE Description The provider edge function for the PASQUALE service supported by the Junipers VMX product Category Router Vendor Juniper Vendor Release Code 17.2 Owners Mary Fragale. Updated 9-25 to use v8.0 of the Juniper Valid 2 VLM",
330 "name": "2017-388_PASQUALE-vPE",
332 "customizationUuid": "280dec31-f16d-488b-9668-4aae55d6648a",
336 "vmxvre_retype": "RE-VMX",
337 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
338 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
339 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
340 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
341 "int_ctl_net_name": "VMX-INTXI",
342 "vmx_int_ctl_prefix": "10.0.0.10",
343 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
344 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
345 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
347 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
348 "is_AVPN_service": "false",
349 "vmx_RSG_name": "vREXI-affinity",
350 "vmx_int_ctl_forwarding": "l2",
351 "vmxvre_oam_ip_0": "10.0.0.10",
352 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
353 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
354 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
355 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
356 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
357 "vmxvre_instance": "0",
358 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
359 "vmxvre_flavor_name": "ns.c1r16d32.v5",
360 "vmxvpfe_volume_size_0": "40.0",
361 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
362 "nf_naming": "{ecomp_generated_naming=true}",
363 "multi_stage_design": "true",
364 "nf_naming_code": "Navneet",
365 "vmxvre_name_0": "vREXI",
366 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
367 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
368 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
369 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
370 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
371 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
372 "vmxvre_console": "vidconsole",
373 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
374 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
375 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
376 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
377 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
378 "vf_module_id": "123",
379 "nf_function": "JAI",
380 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
381 "vmxvre_int_ctl_ip_0": "10.0.0.10",
382 "ecomp_generated_naming": "true",
383 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
384 "vnf_name": "mtnj309me6vre",
385 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
386 "vmxvre_volume_type_1": "HITACHI",
387 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
388 "vmxvre_volume_type_0": "HITACHI",
389 "vmxvpfe_volume_type_0": "HITACHI",
390 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
391 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
393 "vmxvre_oam_prefix": "24",
394 "availability_zone_0": "mtpocfo-kvm-az01",
395 "ASN": "get_input:2017488_pasqualevpe0_ASN",
396 "vmxvre_chassis_i2cid": "161",
397 "vmxvpfe_name_0": "vPFEXI",
398 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
399 "availability_zone_max_count": "1",
400 "vmxvre_volume_size_0": "45.0",
401 "vmxvre_volume_size_1": "50.0",
402 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
403 "vmxvre_oam_gateway": "10.0.0.10",
404 "vmxvre_volume_name_1": "vREXI_FAVolume",
405 "vmxvre_ore_present": "0",
406 "vmxvre_volume_name_0": "vREXI_FBVolume",
408 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
409 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
410 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
411 "vmx_int_ctl_len": "24",
412 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
413 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
414 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
415 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
416 "nf_role": "Testing",
417 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
418 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
419 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
422 "modelCustomizationName": "2017-388_PASQUALE-vPE 1",
425 "vfcInstanceGroups": {}
427 "2017-388_PASQUALE-vPE 0": {
428 "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168",
429 "invariantUuid": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
430 "description": "Name PASQUALE vPE Description The provider edge function for the PASQUALE service supported by the Junipers VMX product Category Router Vendor Juniper Vendor Release Code 17.2 Owners Mary Fragale. Updated 9-25 to use v8.0 of the Juniper Valid 2 VLM",
431 "name": "2017-388_PASQUALE-vPE",
433 "customizationUuid": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
437 "vmxvre_retype": "RE-VMX",
438 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
439 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
440 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
441 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
442 "int_ctl_net_name": "VMX-INTXI",
443 "vmx_int_ctl_prefix": "10.0.0.10",
444 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
445 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
446 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
448 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
449 "is_AVPN_service": "false",
450 "vmx_RSG_name": "vREXI-affinity",
451 "vmx_int_ctl_forwarding": "l2",
452 "vmxvre_oam_ip_0": "10.0.0.10",
453 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
454 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
455 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
456 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
457 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
458 "vmxvre_instance": "0",
459 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
460 "vmxvre_flavor_name": "ns.c1r16d32.v5",
461 "vmxvpfe_volume_size_0": "40.0",
462 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
463 "nf_naming": "{ecomp_generated_naming=true}",
464 "multi_stage_design": "true",
465 "nf_naming_code": "Navneet",
466 "vmxvre_name_0": "vREXI",
467 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
468 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
469 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
470 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
471 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
472 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
473 "vmxvre_console": "vidconsole",
474 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
475 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
476 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
477 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
478 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
479 "vf_module_id": "123",
480 "nf_function": "JAI",
481 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
482 "vmxvre_int_ctl_ip_0": "10.0.0.10",
483 "ecomp_generated_naming": "true",
484 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
485 "vnf_name": "mtnj309me6vre",
486 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
487 "vmxvre_volume_type_1": "HITACHI",
488 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
489 "vmxvre_volume_type_0": "HITACHI",
490 "vmxvpfe_volume_type_0": "HITACHI",
491 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
492 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
494 "vmxvre_oam_prefix": "24",
495 "availability_zone_0": "mtpocfo-kvm-az01",
496 "ASN": "get_input:2017488_pasqualevpe0_ASN",
497 "vmxvre_chassis_i2cid": "161",
498 "vmxvpfe_name_0": "vPFEXI",
499 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
500 "availability_zone_max_count": "1",
501 "vmxvre_volume_size_0": "45.0",
502 "vmxvre_volume_size_1": "50.0",
503 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
504 "vmxvre_oam_gateway": "10.0.0.10",
505 "vmxvre_volume_name_1": "vREXI_FAVolume",
506 "vmxvre_ore_present": "0",
507 "vmxvre_volume_name_0": "vREXI_FBVolume",
509 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
510 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
511 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
512 "vmx_int_ctl_len": "24",
513 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
514 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
515 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
516 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
517 "nf_role": "Testing",
518 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
519 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
520 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
523 "modelCustomizationName": "2017-388_PASQUALE-vPE 0",
526 "vfcInstanceGroups": {}
528 "2017-488_PASQUALE-vPE 0": {
529 "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
530 "invariantUuid": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
531 "description": "Name PASQUALE vPE Description The provider edge function for the PASQUALE service supported by the Junipers VMX product Category Router Vendor Juniper Vendor Release Code 17.2 Owners Mary Fragale. Updated 9-25 to use v8.0 of the Juniper Valid 2 VLM",
532 "name": "2017-488_PASQUALE-vPE",
534 "customizationUuid": "1da7b585-5e61-4993-b95e-8e6606c81e45",
538 "vmxvre_retype": "RE-VMX",
539 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
540 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
541 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
542 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
543 "int_ctl_net_name": "VMX-INTXI",
544 "vmx_int_ctl_prefix": "10.0.0.10",
545 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
546 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
547 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
549 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
550 "is_AVPN_service": "false",
551 "vmx_RSG_name": "vREXI-affinity",
552 "vmx_int_ctl_forwarding": "l2",
553 "vmxvre_oam_ip_0": "10.0.0.10",
554 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
555 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
556 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
557 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
558 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
559 "vmxvre_instance": "0",
560 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
561 "vmxvre_flavor_name": "ns.c1r16d32.v5",
562 "vmxvpfe_volume_size_0": "40.0",
563 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
564 "nf_naming": "{ecomp_generated_naming=true}",
565 "multi_stage_design": "true",
566 "nf_naming_code": "Navneet",
567 "vmxvre_name_0": "vREXI",
568 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
569 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
570 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
571 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
572 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
573 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
574 "vmxvre_console": "vidconsole",
575 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
576 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
577 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
578 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
579 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
580 "vf_module_id": "123",
581 "nf_function": "JAI",
582 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
583 "vmxvre_int_ctl_ip_0": "10.0.0.10",
584 "ecomp_generated_naming": "true",
585 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
586 "vnf_name": "mtnj309me6vre",
587 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
588 "vmxvre_volume_type_1": "HITACHI",
589 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
590 "vmxvre_volume_type_0": "HITACHI",
591 "vmxvpfe_volume_type_0": "HITACHI",
592 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
593 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
595 "vmxvre_oam_prefix": "24",
596 "availability_zone_0": "mtpocfo-kvm-az01",
597 "ASN": "get_input:2017488_pasqualevpe0_ASN",
598 "vmxvre_chassis_i2cid": "161",
599 "vmxvpfe_name_0": "vPFEXI",
600 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
601 "availability_zone_max_count": "1",
602 "vmxvre_volume_size_0": "45.0",
603 "vmxvre_volume_size_1": "50.0",
604 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
605 "vmxvre_oam_gateway": "10.0.0.10",
606 "vmxvre_volume_name_1": "vREXI_FAVolume",
607 "vmxvre_ore_present": "0",
608 "vmxvre_volume_name_0": "vREXI_FBVolume",
610 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
611 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
612 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
613 "vmx_int_ctl_len": "24",
614 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
615 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
616 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
617 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
618 "nf_role": "Testing",
619 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
620 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
621 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
624 "modelCustomizationName": "2017-488_PASQUALE-vPE 0",
626 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
627 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
628 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
629 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
631 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
633 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
635 "minCountInstances": 0,
636 "maxCountInstances": null,
638 "vfModuleLabel": "PASQUALE_vRE_BV",
642 "volumeGroupAllowed": true
644 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
645 "uuid": "f8360508-3f17-4414-a2ed-6bc71161e8db",
646 "invariantUuid": "b34833bb-6aa9-4ad6-a831-70b06367a091",
647 "customizationUuid": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
649 "name": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
651 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
653 "minCountInstances": 1,
654 "maxCountInstances": 1,
656 "vfModuleLabel": "PASQUALE_base_vPE_BV",
660 "volumeGroupAllowed": false
662 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
663 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
664 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
665 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
667 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
669 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
671 "minCountInstances": 0,
672 "maxCountInstances": null,
674 "vfModuleLabel": "PASQUALE_vPFE_BV",
678 "volumeGroupAllowed": true
682 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
683 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
684 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
685 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
687 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
689 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
691 "minCountInstances": 0,
692 "maxCountInstances": null,
694 "vfModuleLabel": "PASQUALE_vRE_BV",
699 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
700 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
701 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
702 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
704 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
706 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
708 "minCountInstances": 0,
709 "maxCountInstances": null,
711 "vfModuleLabel": "PASQUALE_vPFE_BV",
717 "vfcInstanceGroups": {}
721 "collectionResources": {},
722 "configurations": {},
723 "fabricConfigurations": {},
724 "serviceProxies": {},
726 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
727 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
728 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
729 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
731 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
733 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
735 "minCountInstances": 0,
736 "maxCountInstances": null,
738 "vfModuleLabel": "PASQUALE_vRE_BV",
742 "volumeGroupAllowed": true
744 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
745 "uuid": "f8360508-3f17-4414-a2ed-6bc71161e8db",
746 "invariantUuid": "b34833bb-6aa9-4ad6-a831-70b06367a091",
747 "customizationUuid": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
749 "name": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
751 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
753 "minCountInstances": 1,
754 "maxCountInstances": 1,
756 "vfModuleLabel": "PASQUALE_base_vPE_BV",
760 "volumeGroupAllowed": false
762 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
763 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
764 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
765 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
767 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
769 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
771 "minCountInstances": 0,
772 "maxCountInstances": null,
774 "vfModuleLabel": "PASQUALE_vPFE_BV",
778 "volumeGroupAllowed": true
782 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
783 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
784 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
785 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
787 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
789 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
791 "minCountInstances": 0,
792 "maxCountInstances": null,
794 "vfModuleLabel": "PASQUALE_vRE_BV",
799 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
800 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
801 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
802 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
804 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
806 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
808 "minCountInstances": 0,
809 "maxCountInstances": null,
811 "vfModuleLabel": "PASQUALE_vPFE_BV",