originalName fallbacks to customizationId or invariantId
[vid.git] / vid-webpack-master / src / app / drawingBoard / service-planning / objectsToTree / shared.tree.service.spec.ts
1 import {HttpClientTestingModule} from "@angular/common/http/testing";
2 import {getTestBed, TestBed} from "@angular/core/testing";
3 import {NgReduxTestingModule} from "@angular-redux/store/testing";
4 import {SharedTreeService} from "./shared.tree.service";
5 import {ObjectToInstanceTreeService} from "./objectToInstanceTree/objectToInstanceTree.service";
6 import {ObjectToTreeService} from "./objectToTree.service";
7 import {DefaultDataGeneratorService} from "../../../shared/services/defaultDataServiceGenerator/default.data.generator.service";
8 import {DynamicInputsService} from "./dynamicInputs.service";
9 import {DialogService} from "ng2-bootstrap-modal";
10 import {VnfPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vnf/vnf.popup.service";
11 import {ControlGeneratorUtil} from "../../../shared/components/genericForm/formControlsServices/control.generator.util.service";
12 import {AaiService} from "../../../shared/services/aaiService/aai.service";
13 import {NetworkPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/network/network.popup.service";
14 import {NetworkControlGenerator} from "../../../shared/components/genericForm/formControlsServices/networkGenerator/network.control.generator";
15 import {VfModulePopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vfModule/vfModule.popup.service";
16 import {VfModuleControlGenerator} from "../../../shared/components/genericForm/formControlsServices/vfModuleGenerator/vfModule.control.generator";
17 import {VnfGroupControlGenerator} from "../../../shared/components/genericForm/formControlsServices/vnfGroupGenerator/vnfGroup.control.generator";
18 import {FeatureFlagsService} from "../../../shared/services/featureFlag/feature-flags.service";
19 import {VnfControlGenerator} from "../../../shared/components/genericForm/formControlsServices/vnfGenerator/vnf.control.generator";
20 import {NgRedux} from "@angular-redux/store";
21 import {GenericFormService} from "../../../shared/components/genericForm/generic-form.service";
22 import {FormBuilder} from "@angular/forms";
23 import {SdcUiComponentsModule} from "onap-ui-angular";
24 import {LogService} from "../../../shared/utils/log/log.service";
25 import {IframeService} from "../../../shared/utils/iframe.service";
26 import {BasicPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/basic.popup.service";
27 import {VnfGroupPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vnfGroup/vnfGroup.popup.service";
28 import {DuplicateService} from "../duplicate/duplicate.service";
29 import {AppState} from "../../../shared/store/reducers";
30 import {MessageBoxService} from "../../../shared/components/messageBox/messageBox.service";
31 import {ErrorMsgService} from "../../../shared/components/error-msg/error-msg.service";
32 import {AuditInfoModalComponent} from "../../../shared/components/auditInfoModal/auditInfoModal.component";
33 import {ILevelNodeInfo} from "./models/basic.model.info";
34 import {VnfModelInfo} from "./models/vnf/vnf.model.info";
35 import {ServiceInstanceActions} from "../../../shared/models/serviceInstanceActions";
36 import each from "jest-each";
37 import {DrawingBoardModes} from "../drawing-board.modes";
38 import {ComponentInfoService} from "../component-info/component-info.service";
39 import {ComponentInfoModel, ComponentInfoType} from "../component-info/component-info-model";
40 import {ModelInformationItem} from "../../../shared/components/model-information/model-information.component";
41 import {VpnStepService} from "./models/vrf/vrfModal/vpnStep/vpn.step.service";
42 import {NetworkStepService} from "./models/vrf/vrfModal/networkStep/network.step.service";
43 import {VfModuleUpgradePopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popuop.service";
44 import {SharedControllersService} from "../../../shared/components/genericForm/formControlsServices/sharedControlles/shared.controllers.service";
45 import {ModalService} from "../../../shared/components/customModal/services/modal.service";
46 import {CreateDynamicComponentService} from "../../../shared/components/customModal/services/create-dynamic-component.service";
47
48 class MockAppStore<T> {
49   getState() {
50     return getStore()
51   }
52
53   dispatch() {
54   }
55 }
56
57
58
59
60 function getNodeWithData(menuAction:string){
61   const nodeData = {
62     menuActions: {}
63   };
64   nodeData['menuActions'][menuAction] =  {
65     method: (node, serviceModelId) => {}
66   };
67   const node = {
68     parent: {
69       data: nodeData,
70       parent: {
71         data: nodeData
72       }
73     }
74   };
75   return node
76 }
77
78 describe('Shared Tree Service', () => {
79   let injector;
80   let service: SharedTreeService;
81   let _objectToInstanceTreeService: ObjectToInstanceTreeService;
82   let store: NgRedux<AppState>;
83   beforeAll(done => (async () => {
84     TestBed.configureTestingModule({
85       imports: [HttpClientTestingModule, NgReduxTestingModule, SdcUiComponentsModule],
86       providers: [
87         SharedTreeService,
88         SharedControllersService,
89         ObjectToTreeService,
90         DefaultDataGeneratorService,
91         DialogService,
92         VnfPopupService,
93         ControlGeneratorUtil,
94         AaiService,
95         LogService,
96         BasicPopupService,
97         VnfGroupPopupService,
98         DuplicateService,
99         IframeService,
100         DynamicInputsService,
101         NetworkPopupService,
102         NetworkControlGenerator,
103         VfModulePopupService,
104         VfModuleUpgradePopupService,
105         VfModuleControlGenerator,
106         VnfGroupControlGenerator,
107         DialogService,
108         FeatureFlagsService,
109         VnfControlGenerator,
110         AaiService,
111         DialogService,
112         GenericFormService,
113         FormBuilder,
114         ErrorMsgService,
115         ObjectToInstanceTreeService,
116         ComponentInfoService,
117         NetworkStepService,
118         VpnStepService,
119         ModalService,
120         CreateDynamicComponentService,
121         {provide: NgRedux, useClass: MockAppStore}
122       ]
123     });
124     await TestBed.compileComponents();
125     injector = getTestBed();
126     service = injector.get(SharedTreeService);
127     _objectToInstanceTreeService = injector.get(ObjectToInstanceTreeService);
128     store = injector.get(NgRedux);
129   })().then(done).catch(done.fail));
130
131   test('SharedTreeService should be defined', () => {
132     expect(service).toBeDefined();
133   });
134
135   test('SharedTreeService upgradeBottomUp should call redux actions', () => {
136     const serviceModelId = "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd";
137     const node = getNodeWithData("upgrade");
138     spyOn(node.parent.data.menuActions['upgrade'], 'method');
139     service.upgradeBottomUp(node, serviceModelId);
140     expect(node.parent.data.menuActions['upgrade'].method).toBeCalledWith(node.parent, serviceModelId);
141     expect(node.parent.data.menuActions['upgrade'].method).toBeCalledTimes(2);
142
143   });
144
145   test('SharedTreeService undoUpgradeBottomUp should call redux actions', () => {
146     const serviceModelId = "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd";
147     const node = getNodeWithData("undoUpgrade");
148     spyOn(node.parent.data.menuActions['undoUpgrade'], 'method');
149     service.undoUpgradeBottomUp(node, serviceModelId);
150     expect(node.parent.data.menuActions['undoUpgrade'].method).toBeCalledWith(node.parent, serviceModelId);
151     expect(node.parent.data.menuActions['undoUpgrade'].method).toBeCalledTimes(2);
152   });
153
154   test('shouldShowDeleteInstanceWithChildrenModal should open modal if child exist with action create', () => {
155     jest.spyOn(MessageBoxService.openModal, 'next');
156     let foo = () => {
157
158     };
159     let node = <any>{
160       children: [{action: "Create"}, {action: "None"}],
161       data: {
162         typeName: 'VNF'
163       }
164     };
165     service.shouldShowDeleteInstanceWithChildrenModal(node, "serviceModelId", foo);
166     expect(MessageBoxService.openModal.next).toHaveBeenCalled();
167   });
168
169   each([
170     ['volumeGroups by entry name', "volumeGroups",
171       "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1", "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1"],
172     ['vfmodule by customizationUuid', "vfModules",
173       "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401", "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1"],
174     ['vnf by customizationUuid', "vnfs",
175       "1da7b585-5e61-4993-b95e-8e6606c81e45", "2017-488_PASQUALE-vPE 0"],
176     ['vnfGroups by invariantUuid because no customizationUuid', "vnfGroups",
177       "4bb2e27e-ddab-4790-9c6d-1f731bc14a45", "groupingservicefortest..ResourceInstanceGroup..0"],
178   ]).test('modelByIdentifier should success: %s', (description, modelTypeName, modelUniqueIdOrName, expectedModelCustomizationName) => {
179     let serviceModelFromHierarchy =
180       getStore().service.serviceHierarchy["1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd"];
181
182     expect(service.modelByIdentifiers(serviceModelFromHierarchy, modelTypeName, modelUniqueIdOrName))
183       .toHaveProperty("modelCustomizationName", expectedModelCustomizationName);
184   });
185
186   each([
187     ['vfmodule by invariantUuid when there is customizationUuid', "vfModules", "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1"],
188     ['network by non-existing modelUniqueIdOrName', "networks", "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1"],
189     ['collectionResource has no resource', "collectionResources", "whatever"],
190     ['non-existing model-type', "fooBar", "whatever"],
191   ]).test('modelByIdentifier should fail: %s', (description, modelTypeName, modelUniqueIdOrName) => {
192     let serviceModelFromHierarchy =
193       getStore().service.serviceHierarchy["1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd"];
194
195     expect(service.modelByIdentifiers(serviceModelFromHierarchy, modelTypeName, modelUniqueIdOrName))
196       .toBeUndefined();
197   });
198
199   test('openAuditInfoModal should open modal for failed instance', () => {
200     jest.spyOn(AuditInfoModalComponent.openInstanceAuditInfoModal, 'next');
201
202     let modelInfoServiceMock: ILevelNodeInfo = new VnfModelInfo(null, null,
203       null, null, null, null, null,
204       null, null, null, null,null, null);
205     const modelMock = {"a": "a"};
206     const instanceMock = {"instance": "instance", "trackById": "123456789"};
207     const instanceTypeMock = "instanceTypeMock";
208     jest.spyOn(modelInfoServiceMock, 'getModel').mockReturnValue(modelMock);
209     let node = <any>{
210       data: {
211         modelId: '6b528779-44a3-4472-bdff-9cd15ec93450',
212         trackById: '1245df21',
213         isFailed: true
214       }
215     };
216     service.openAuditInfoModal(node, "serviceModelId", instanceMock, instanceTypeMock, <any>modelInfoServiceMock);
217     expect(AuditInfoModalComponent.openInstanceAuditInfoModal.next).toHaveBeenCalledWith(
218       {
219         "instance": instanceMock,
220         "instanceId": "serviceModelId",
221         "model": modelMock,
222         "type": instanceTypeMock
223       });
224   });
225   each([
226     ['undefined', 'Unlimited (default)', {}],
227     ['null', 'Unlimited (default)', {max:null}],
228     ['3', '3', {max:3}],
229     ]).
230   test("when there is %s max instances in model , shell return %s text", (desc, expected, model) =>{
231     expect(service.createMaximumToInstantiateModelInformationItem(model).values[0]).toBe(expected);
232   });
233
234   test('shouldShowDeleteInstanceWithChildrfenModal should not open modal if all childs with action None', () => {
235     let foo = () => {
236     };
237     spyOn(MessageBoxService.openModal, 'next');
238
239     let node = <any>{
240       children: [{action: "None"}, {action: "None"}],
241       data: {
242         typeName: 'VNF'
243       }
244     };
245     service.shouldShowDeleteInstanceWithChildrenModal(node, "serviceModelId", foo);
246     expect(MessageBoxService.openModal.next).not.toHaveBeenCalled();
247   });
248
249   test ('addGeneralInfoItems should return correct info - ordered',()=>{
250     let specificNetworkInfo = [
251       ModelInformationItem.createInstance('Network role', "network role 1, network role 2")
252     ];
253     const actualInfoModel: ComponentInfoModel = service.addGeneralInfoItems(specificNetworkInfo,ComponentInfoType.NETWORK, getNetworkModel(),getNetworkInstance());
254
255     let expectedGeneralInfo = [
256       ModelInformationItem.createInstance('Model version', '37.0'),
257       ModelInformationItem.createInstance('Model customization ID', '94fdd893-4a36-4d70-b16a-ec29c54c184f'),
258       ModelInformationItem.createInstance('Instance ID', 'NETWORK4_INSTANCE_ID'),
259       ModelInformationItem.createInstance('Instance type', 'CONTRAIL30_HIMELGUARD'),
260       ModelInformationItem.createInstance('In maintenance', false),
261       ModelInformationItem.createInstance('Network role', 'network role 1, network role 2')
262     ];
263     expect(actualInfoModel.modelInfoItems).toEqual(expectedGeneralInfo);
264   });
265
266
267   test('statusProperties should be prop on node according to node properties', () => {
268     let node = service.addingStatusProperty({orchStatus: 'completed', provStatus: 'inProgress', inMaint: false});
269     expect(node.statusProperties).toBeDefined();
270     expect(node.statusProperties).toEqual([Object({
271       key: 'Prov Status:',
272       value: 'inProgress',
273       testId: 'provStatus'
274     }), Object({key: 'Orch Status:', value: 'completed', testId: 'orchStatus'})]);
275     node = service.addingStatusProperty({orchStatus: 'completed', provStatus: 'inProgress', inMaint: true});
276     expect(node.statusProperties).toEqual([Object({
277       key: 'Prov Status:',
278       value: 'inProgress',
279       testId: 'provStatus'
280     }), Object({key: 'Orch Status:', value: 'completed', testId: 'orchStatus'}), Object({
281       key: 'In-maintenance',
282       value: '',
283       testId: 'inMaint'
284     })]);
285   });
286
287   each([
288     [false, 'method is not in menu actions', ServiceInstanceActions.None, DrawingBoardModes.EDIT, {}, true],
289     [false, 'there is no action in node', null, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true],
290     [true, 'edit mode, action is none, method in menu action', ServiceInstanceActions.None, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true],
291     [false, 'edit mode, action is none, method in menu action, macro service', ServiceInstanceActions.None, DrawingBoardModes.EDIT, {someMethod: "someValue"}, false],
292     [false, 'edit mode, action is not none, method in menu action', ServiceInstanceActions.Resume, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true],
293     [false, 'edit mode, action is CREATE, method in menu action', ServiceInstanceActions.Resume, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true]
294   ]).test('shouldShowButtonGeneric return %s if %s ', (expected, description, action, mode, menuActions, isALaCarte) => {
295     jest.spyOn(store, 'getState').mockReturnValue(<any>{
296       global: {
297         drawingBoardStatus: mode
298       },
299       service : {
300         serviceInstance: {
301           someModelId : {
302             isALaCarte
303           }
304         }
305
306       }
307     });
308     let node = <any>{
309       data:{
310         action: action,
311         menuActions: menuActions
312       },
313     };
314
315     let res = service.shouldShowButtonGeneric(node, "someMethod", "someModelId");
316     expect(res).toBe(expected);
317   });
318
319   const enableRemoveAndEditItemsDataProvider = [
320     ['Create action CREATE mode', DrawingBoardModes.CREATE ,ServiceInstanceActions.Create, true],
321     ['Create action VIEW mode',DrawingBoardModes.VIEW , ServiceInstanceActions.Create,false],
322     ['Create action RETRY_EDIT mode',DrawingBoardModes.RETRY_EDIT,  ServiceInstanceActions.Create,  true],
323     ['Create action EDIT mode',DrawingBoardModes.EDIT, ServiceInstanceActions.Create,  true],
324     ['Create action RETRY mode',DrawingBoardModes.RETRY, ServiceInstanceActions.Create,  false],
325     ['None action EDIT mode',DrawingBoardModes.EDIT,  ServiceInstanceActions.None, false],
326     ['None action RETRY_EDIT mode', DrawingBoardModes.RETRY_EDIT, ServiceInstanceActions.None, false]];
327   each(enableRemoveAndEditItemsDataProvider).test('shouldShowEditAndDelete if child exist with %s', (description, mode, action, enabled) => {
328     jest.spyOn(store, 'getState').mockReturnValue(<any>{
329         global: {
330           drawingBoardStatus: mode
331         }
332       });
333       let node = <any>{
334         data:{
335           action: action
336         },
337       };
338       let res = service.shouldShowRemoveAndEdit(node);
339       expect(res).toBe(enabled);
340     });
341
342 });
343
344 function getStore() {
345   return {
346     "global": {
347       "name": null,
348       "flags": {
349         "EMPTY_DRAWING_BOARD_TEST": false,
350         "FLAG_NETWORK_TO_ASYNC_INSTANTIATION": false,
351         "FLAG_ADD_MSO_TESTAPI_FIELD": true,
352         "FLAG_SERVICE_MODEL_CACHE": true,
353         "FLAG_SHOW_ASSIGNMENTS": true,
354         "FLAG_FABRIC_CONFIGURATION_ASSIGNMENTS": true,
355         "FLAG_A_LA_CARTE_AUDIT_INFO": true,
356         "FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST": true,
357         "FLAG_PRESENT_PROVIDER_NETWORKS_ASSOCIATIONS": true,
358         "FLAG_1902_NEW_VIEW_EDIT": true,
359         "FLAG_1810_IDENTIFY_SERVICE_FOR_NEW_UI": false,
360         "FLAG_1902_VNF_GROUPING": true,
361         "FLAG_SHOW_VERIFY_SERVICE": true,
362         "FLAG_ASYNC_ALACARTE_VFMODULE": true,
363         "FLAG_ASYNC_ALACARTE_VNF": true,
364         "FLAG_1810_AAI_LOCAL_CACHE": true,
365         "FLAG_EXP_USE_DEFAULT_HOST_NAME_VERIFIER": false,
366         "FLAG_EXP_ANY_ALACARTE_NEW_INSTANTIATION_UI": false,
367         "FLAG_SUPPLEMENTARY_FILE": true,
368         "FLAG_5G_IN_NEW_INSTANTIATION_UI": true,
369         "FLAG_RESTRICTED_SELECT": false,
370         "FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY": true
371       },
372       "drawingBoardStatus": "VIEW",
373       "type": "UPDATE_DRAWING_BOARD_STATUS"
374     },
375     "service": {
376       "serviceHierarchy": {
377         "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd": {
378           "service": {
379             "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
380             "invariantUuid": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
381             "name": "action-data",
382             "version": "1.0",
383             "toscaModelURL": null,
384             "category": "Network L1-3",
385             "serviceType": "pnf",
386             "serviceRole": "Testing",
387             "description": "PASQUALE vMX vPE based on Juniper 17.2 release. Updated with updated VF for v8.0 of VLM",
388             "serviceEcompNaming": "false",
389             "instantiationType": "Macro",
390             "inputs": {},
391             "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other", "viewEditUI": "legacy"}
392           },
393           "vnfs": {
394             "2017-388_PASQUALE-vPE 1": {
395               "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413",
396               "invariantUuid": "00beb8f9-6d39-452f-816d-c709b9cbb87d",
397               "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",
398               "name": "2017-388_PASQUALE-vPE",
399               "version": "1.0",
400               "customizationUuid": "280dec31-f16d-488b-9668-4aae55d6648a",
401               "inputs": {},
402               "commands": {},
403               "properties": {
404                 "vmxvre_retype": "RE-VMX",
405                 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
406                 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
407                 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
408                 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
409                 "int_ctl_net_name": "VMX-INTXI",
410                 "vmx_int_ctl_prefix": "10.0.0.10",
411                 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
412                 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
413                 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
414                 "nf_type": "vPE",
415                 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
416                 "is_AVPN_service": "false",
417                 "vmx_RSG_name": "vREXI-affinity",
418                 "vmx_int_ctl_forwarding": "l2",
419                 "vmxvre_oam_ip_0": "10.0.0.10",
420                 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
421                 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
422                 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
423                 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
424                 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
425                 "vmxvre_instance": "0",
426                 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
427                 "vmxvre_flavor_name": "ns.c1r16d32.v5",
428                 "vmxvpfe_volume_size_0": "40.0",
429                 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
430                 "nf_naming": "{ecomp_generated_naming=true}",
431                 "multi_stage_design": "true",
432                 "nf_naming_code": "Navneet",
433                 "vmxvre_name_0": "vREXI",
434                 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
435                 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
436                 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
437                 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
438                 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
439                 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
440                 "vmxvre_console": "vidconsole",
441                 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
442                 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
443                 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
444                 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
445                 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
446                 "vf_module_id": "123",
447                 "nf_function": "JAI",
448                 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
449                 "vmxvre_int_ctl_ip_0": "10.0.0.10",
450                 "ecomp_generated_naming": "true",
451                 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
452                 "vnf_name": "mtnj309me6vre",
453                 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
454                 "vmxvre_volume_type_1": "HITACHI",
455                 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
456                 "vmxvre_volume_type_0": "HITACHI",
457                 "vmxvpfe_volume_type_0": "HITACHI",
458                 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
459                 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
460                 "vnf_id": "123",
461                 "vmxvre_oam_prefix": "24",
462                 "availability_zone_0": "mtpocfo-kvm-az01",
463                 "ASN": "get_input:2017488_pasqualevpe0_ASN",
464                 "vmxvre_chassis_i2cid": "161",
465                 "vmxvpfe_name_0": "vPFEXI",
466                 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
467                 "availability_zone_max_count": "1",
468                 "vmxvre_volume_size_0": "45.0",
469                 "vmxvre_volume_size_1": "50.0",
470                 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
471                 "vmxvre_oam_gateway": "10.0.0.10",
472                 "vmxvre_volume_name_1": "vREXI_FAVolume",
473                 "vmxvre_ore_present": "0",
474                 "vmxvre_volume_name_0": "vREXI_FBVolume",
475                 "vmxvre_type": "0",
476                 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
477                 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
478                 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
479                 "vmx_int_ctl_len": "24",
480                 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
481                 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
482                 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
483                 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
484                 "nf_role": "Testing",
485                 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
486                 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
487                 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
488               },
489               "type": "VF",
490               "modelCustomizationName": "2017-388_PASQUALE-vPE 1",
491               "vfModules": {},
492               "volumeGroups": {},
493               "vfcInstanceGroups": {}
494             },
495             "2017-388_PASQUALE-vPE 0": {
496               "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168",
497               "invariantUuid": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
498               "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",
499               "name": "2017-388_PASQUALE-vPE",
500               "version": "4.0",
501               "customizationUuid": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
502               "inputs": {},
503               "commands": {},
504               "properties": {
505                 "vmxvre_retype": "RE-VMX",
506                 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
507                 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
508                 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
509                 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
510                 "int_ctl_net_name": "VMX-INTXI",
511                 "vmx_int_ctl_prefix": "10.0.0.10",
512                 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
513                 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
514                 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
515                 "nf_type": "vPE",
516                 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
517                 "is_AVPN_service": "false",
518                 "vmx_RSG_name": "vREXI-affinity",
519                 "vmx_int_ctl_forwarding": "l2",
520                 "vmxvre_oam_ip_0": "10.0.0.10",
521                 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
522                 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
523                 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
524                 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
525                 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
526                 "vmxvre_instance": "0",
527                 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
528                 "vmxvre_flavor_name": "ns.c1r16d32.v5",
529                 "vmxvpfe_volume_size_0": "40.0",
530                 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
531                 "nf_naming": "{ecomp_generated_naming=true}",
532                 "multi_stage_design": "true",
533                 "nf_naming_code": "Navneet",
534                 "vmxvre_name_0": "vREXI",
535                 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
536                 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
537                 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
538                 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
539                 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
540                 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
541                 "vmxvre_console": "vidconsole",
542                 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
543                 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
544                 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
545                 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
546                 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
547                 "vf_module_id": "123",
548                 "nf_function": "JAI",
549                 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
550                 "vmxvre_int_ctl_ip_0": "10.0.0.10",
551                 "ecomp_generated_naming": "true",
552                 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
553                 "vnf_name": "mtnj309me6vre",
554                 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
555                 "vmxvre_volume_type_1": "HITACHI",
556                 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
557                 "vmxvre_volume_type_0": "HITACHI",
558                 "vmxvpfe_volume_type_0": "HITACHI",
559                 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
560                 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
561                 "vnf_id": "123",
562                 "vmxvre_oam_prefix": "24",
563                 "availability_zone_0": "mtpocfo-kvm-az01",
564                 "ASN": "get_input:2017488_pasqualevpe0_ASN",
565                 "vmxvre_chassis_i2cid": "161",
566                 "vmxvpfe_name_0": "vPFEXI",
567                 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
568                 "availability_zone_max_count": "1",
569                 "vmxvre_volume_size_0": "45.0",
570                 "vmxvre_volume_size_1": "50.0",
571                 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
572                 "vmxvre_oam_gateway": "10.0.0.10",
573                 "vmxvre_volume_name_1": "vREXI_FAVolume",
574                 "vmxvre_ore_present": "0",
575                 "vmxvre_volume_name_0": "vREXI_FBVolume",
576                 "vmxvre_type": "0",
577                 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
578                 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
579                 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
580                 "vmx_int_ctl_len": "24",
581                 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
582                 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
583                 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
584                 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
585                 "nf_role": "Testing",
586                 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
587                 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
588                 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
589               },
590               "type": "VF",
591               "modelCustomizationName": "2017-388_PASQUALE-vPE 0",
592               "vfModules": {},
593               "volumeGroups": {},
594               "vfcInstanceGroups": {}
595             },
596             "2017-488_PASQUALE-vPE 0": {
597               "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
598               "invariantUuid": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
599               "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",
600               "name": "2017-488_PASQUALE-vPE",
601               "version": "5.0",
602               "customizationUuid": "1da7b585-5e61-4993-b95e-8e6606c81e45",
603               "inputs": {},
604               "commands": {},
605               "properties": {
606                 "max_instances": 1,
607                 "vmxvre_retype": "RE-VMX",
608                 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
609                 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
610                 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
611                 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
612                 "int_ctl_net_name": "VMX-INTXI",
613                 "vmx_int_ctl_prefix": "10.0.0.10",
614                 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
615                 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
616                 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
617                 "nf_type": "vPE",
618                 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
619                 "is_AVPN_service": "false",
620                 "vmx_RSG_name": "vREXI-affinity",
621                 "vmx_int_ctl_forwarding": "l2",
622                 "vmxvre_oam_ip_0": "10.0.0.10",
623                 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
624                 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
625                 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
626                 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
627                 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
628                 "vmxvre_instance": "0",
629                 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
630                 "vmxvre_flavor_name": "ns.c1r16d32.v5",
631                 "vmxvpfe_volume_size_0": "40.0",
632                 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
633                 "nf_naming": "{ecomp_generated_naming=true}",
634                 "multi_stage_design": "true",
635                 "nf_naming_code": "Navneet",
636                 "vmxvre_name_0": "vREXI",
637                 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
638                 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
639                 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
640                 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
641                 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
642                 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
643                 "vmxvre_console": "vidconsole",
644                 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
645                 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
646                 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
647                 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
648                 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
649                 "vf_module_id": "123",
650                 "nf_function": "JAI",
651                 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
652                 "vmxvre_int_ctl_ip_0": "10.0.0.10",
653                 "ecomp_generated_naming": "true",
654                 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
655                 "vnf_name": "mtnj309me6vre",
656                 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
657                 "vmxvre_volume_type_1": "HITACHI",
658                 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
659                 "vmxvre_volume_type_0": "HITACHI",
660                 "vmxvpfe_volume_type_0": "HITACHI",
661                 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
662                 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
663                 "vnf_id": "123",
664                 "vmxvre_oam_prefix": "24",
665                 "availability_zone_0": "mtpocfo-kvm-az01",
666                 "ASN": "get_input:2017488_pasqualevpe0_ASN",
667                 "vmxvre_chassis_i2cid": "161",
668                 "vmxvpfe_name_0": "vPFEXI",
669                 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
670                 "availability_zone_max_count": "1",
671                 "vmxvre_volume_size_0": "45.0",
672                 "vmxvre_volume_size_1": "50.0",
673                 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
674                 "vmxvre_oam_gateway": "10.0.0.10",
675                 "vmxvre_volume_name_1": "vREXI_FAVolume",
676                 "vmxvre_ore_present": "0",
677                 "vmxvre_volume_name_0": "vREXI_FBVolume",
678                 "vmxvre_type": "0",
679                 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
680                 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
681                 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
682                 "vmx_int_ctl_len": "24",
683                 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
684                 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
685                 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
686                 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
687                 "nf_role": "Testing",
688                 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
689                 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
690                 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
691               },
692               "type": "VF",
693               "modelCustomizationName": "2017-488_PASQUALE-vPE 0",
694               "vfModules": {
695                 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
696                   "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
697                   "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
698                   "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
699                   "description": null,
700                   "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
701                   "version": "6",
702                   "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
703                   "properties": {
704                     "minCountInstances": 0,
705                     "maxCountInstances": null,
706                     "initialCount": 0,
707                     "vfModuleLabel": "PASQUALE_vRE_BV",
708                     "baseModule": false
709                   },
710                   "inputs": {},
711                   "volumeGroupAllowed": true
712                 },
713                 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
714                   "uuid": "f8360508-3f17-4414-a2ed-6bc71161e8db",
715                   "invariantUuid": "b34833bb-6aa9-4ad6-a831-70b06367a091",
716                   "customizationUuid": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
717                   "description": null,
718                   "name": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
719                   "version": "5",
720                   "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
721                   "properties": {
722                     "minCountInstances": 1,
723                     "maxCountInstances": 1,
724                     "initialCount": 1,
725                     "vfModuleLabel": "PASQUALE_base_vPE_BV",
726                     "baseModule": true
727                   },
728                   "inputs": {},
729                   "volumeGroupAllowed": false
730                 },
731                 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
732                   "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
733                   "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
734                   "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
735                   "description": null,
736                   "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
737                   "version": "6",
738                   "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
739                   "properties": {
740                     "minCountInstances": 0,
741                     "maxCountInstances": null,
742                     "initialCount": 0,
743                     "vfModuleLabel": "PASQUALE_vPFE_BV",
744                     "baseModule": false
745                   },
746                   "inputs": {},
747                   "volumeGroupAllowed": true
748                 }
749               },
750               "volumeGroups": {
751                 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
752                   "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
753                   "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
754                   "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
755                   "description": null,
756                   "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
757                   "version": "6",
758                   "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
759                   "properties": {
760                     "minCountInstances": 0,
761                     "maxCountInstances": null,
762                     "initialCount": 0,
763                     "vfModuleLabel": "PASQUALE_vRE_BV",
764                     "baseModule": false
765                   },
766                   "inputs": {}
767                 },
768                 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
769                   "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
770                   "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
771                   "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
772                   "description": null,
773                   "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
774                   "version": "6",
775                   "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
776                   "properties": {
777                     "minCountInstances": 0,
778                     "maxCountInstances": null,
779                     "initialCount": 0,
780                     "vfModuleLabel": "PASQUALE_vPFE_BV",
781                     "baseModule": false
782                   },
783                   "inputs": {}
784                 }
785               },
786               "vfcInstanceGroups": {}
787             }
788           },
789           "networks": {
790             "ExtVL 0": {
791               "uuid": "ddc3f20c-08b5-40fd-af72-c6d14636b986",
792               "invariantUuid": "379f816b-a7aa-422f-be30-17114ff50b7c",
793               "description": "ECOMP generic virtual link (network) base type for all other service-level and global networks",
794               "name": "ExtVL",
795               "version": "37.0",
796               "customizationUuid": "94fdd893-4a36-4d70-b16a-ec29c54c184f",
797               "inputs": {},
798               "commands": {},
799               "properties": {
800                 "network_assignments": "{is_external_network=false, ipv4_subnet_default_assignment={min_subnets_count=1}, ecomp_generated_network_assignment=false, ipv6_subnet_default_assignment={min_subnets_count=1}}",
801                 "exVL_naming": "{ecomp_generated_naming=true}",
802                 "network_flows": "{is_network_policy=false, is_bound_to_vpn=false}",
803                 "network_homing": "{ecomp_selected_instance_node_target=false}"
804               },
805               "type": "VL",
806               "modelCustomizationName": "ExtVL 0"
807             }
808           },
809           "collectionResources": {},
810           "configurations": {},
811           "fabricConfigurations": {},
812           "serviceProxies": {},
813           "vfModules": {
814             "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
815               "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
816               "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
817               "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
818               "description": null,
819               "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
820               "version": "6",
821               "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
822               "properties": {
823                 "minCountInstances": 0,
824                 "maxCountInstances": null,
825                 "initialCount": 0,
826                 "vfModuleLabel": "PASQUALE_vRE_BV",
827                 "baseModule": false
828               },
829               "inputs": {},
830               "volumeGroupAllowed": true
831             },
832             "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
833               "uuid": "f8360508-3f17-4414-a2ed-6bc71161e8db",
834               "invariantUuid": "b34833bb-6aa9-4ad6-a831-70b06367a091",
835               "customizationUuid": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
836               "description": null,
837               "name": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
838               "version": "5",
839               "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
840               "properties": {
841                 "minCountInstances": 1,
842                 "maxCountInstances": 1,
843                 "initialCount": 1,
844                 "vfModuleLabel": "PASQUALE_base_vPE_BV",
845                 "baseModule": true
846               },
847               "inputs": {},
848               "volumeGroupAllowed": false
849             },
850             "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
851               "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
852               "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
853               "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
854               "description": null,
855               "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
856               "version": "6",
857               "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
858               "properties": {
859                 "minCountInstances": 0,
860                 "maxCountInstances": null,
861                 "initialCount": 0,
862                 "vfModuleLabel": "PASQUALE_vPFE_BV",
863                 "baseModule": false
864               },
865               "inputs": {},
866               "volumeGroupAllowed": true
867             }
868           },
869           "volumeGroups": {
870             "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
871               "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
872               "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
873               "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
874               "description": null,
875               "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
876               "version": "6",
877               "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
878               "properties": {
879                 "minCountInstances": 0,
880                 "maxCountInstances": null,
881                 "initialCount": 0,
882                 "vfModuleLabel": "PASQUALE_vRE_BV",
883                 "baseModule": false
884               },
885               "inputs": {}
886             },
887             "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
888               "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
889               "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
890               "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
891               "description": null,
892               "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
893               "version": "6",
894               "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
895               "properties": {
896                 "minCountInstances": 0,
897                 "maxCountInstances": null,
898                 "initialCount": 0,
899                 "vfModuleLabel": "PASQUALE_vPFE_BV",
900                 "baseModule": false
901               },
902               "inputs": {}
903             }
904           },
905           "pnfs": {},
906           "vnfGroups": {
907             "groupingservicefortest..ResourceInstanceGroup..0": {
908               "type": "VnfGroup",
909               "invariantUuid": "4bb2e27e-ddab-4790-9c6d-1f731bc14a45",
910               "uuid": "daeb6568-cef8-417f-9075-ed259ce59f48",
911               "version": "1",
912               "name": "groupingservicefortest..ResourceInstanceGroup..0",
913               "modelCustomizationName": "groupingservicefortest..ResourceInstanceGroup..0",
914               "properties": {
915                 "contained_resource_type": "VF",
916                 "role": "SERVICE-ACCESS",
917                 "function": "DATA",
918                 "description": "DDD0",
919                 "type": "LOAD-GROUP",
920                 "ecomp_generated_naming": "true"
921               },
922               "members": {
923                 "vdorothea_svc_vprs_proxy 0": {
924                   "uuid": "65fadfa8-a0d9-443f-95ad-836cd044e26c",
925                   "invariantUuid": "f4baae0c-b3a5-4ca1-a777-afbffe7010bc",
926                   "description": "A Proxy for Service vDOROTHEA_Svc_vPRS",
927                   "name": "vDOROTHEA_Svc_vPRS Service Proxy",
928                   "version": "1.0",
929                   "customizationUuid": "bdb63d23-e132-4ce7-af2c-a493b4cafac9",
930                   "inputs": {},
931                   "commands": {},
932                   "properties": {},
933                   "type": "Service Proxy",
934                   "sourceModelUuid": "da7827a2-366d-4be6-8c68-a69153c61274",
935                   "sourceModelInvariant": "24632e6b-584b-4f45-80d4-fefd75fd9f14",
936                   "sourceModelName": "vDOROTHEA_Svc_vPRS"
937                 }
938               }
939             },
940             "groupingservicefortest..ResourceInstanceGroup..1": {
941               "type": "VnfGroup",
942               "invariantUuid": "a704112d-dbc6-4e56-8d4e-aec57e95ef9a",
943               "uuid": "c2b300e6-45de-4e5e-abda-3032bee2de56",
944               "version": "1",
945               "name": "groupingservicefortest..ResourceInstanceGroup..1",
946               "modelCustomizationName": "groupingservicefortest..ResourceInstanceGroup..1",
947               "properties": {
948                 "contained_resource_type": "VF",
949                 "role": "SERVICE-ACCESS",
950                 "function": "SIGNALING",
951                 "description": "DDD1",
952                 "type": "LOAD-GROUP",
953                 "ecomp_generated_naming": "true"
954               },
955               "members": {
956                 "tsbc0001vm001_svc_proxy 0": {
957                   "uuid": "65fadfa8-a0d9-443f-95ad-836cd044e26c",
958                   "invariantUuid": "f4baae0c-b3a5-4ca1-a777-afbffe7010bc",
959                   "description": "A Proxy for Service tsbc0001vm001_Svc",
960                   "name": "tsbc0001vm001_Svc Service Proxy",
961                   "version": "1.0",
962                   "customizationUuid": "3d814462-30fb-4c62-b997-9aa360d27ead",
963                   "inputs": {},
964                   "commands": {},
965                   "properties": {},
966                   "type": "Service Proxy",
967                   "sourceModelUuid": "28aeb8f6-5620-4148-8bfb-a5fb406f0309",
968                   "sourceModelInvariant": "c989ab9a-33c7-46ec-b521-1b2daef5f047",
969                   "sourceModelName": "tsbc0001vm001_Svc"
970                 }
971               }
972             }
973           }
974         },
975         "b75e0d22-05ff-4448-9266-5f0d4e1dbbd6": {
976           "service": {
977             "uuid": "b75e0d22-05ff-4448-9266-5f0d4e1dbbd6",
978             "invariantUuid": "5b9c0f33-eec1-484a-bf77-736a6644d7a8",
979             "name": "Using VID for VoIP Network Instantiations Shani",
980             "version": "1.0",
981             "toscaModelURL": null,
982             "category": "VoIP Call Control",
983             "serviceType": "",
984             "serviceRole": "",
985             "description": "Using VID for VoIP Network Instantiations Shani",
986             "serviceEcompNaming": "true",
987             "instantiationType": "ClientConfig",
988             "inputs": {},
989             "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other", "viewEditUI": "legacy"}
990           },
991           "vnfs": {},
992           "networks": {
993             "AIC30_CONTRAIL_BASIC 0": {
994               "uuid": "ac815c68-35b7-4ea4-9d04-92d2f844b27c",
995               "invariantUuid": "de01afb5-532b-451d-aac4-ff9ff0644060",
996               "description": "Basic contrail 3.0.x L3 network for AIC 3.x sites. ",
997               "name": "AIC30_CONTRAIL_BASIC",
998               "version": "3.0",
999               "customizationUuid": "e94d61f7-b4b2-489a-a4a7-30b1a1a80daf",
1000               "inputs": {},
1001               "commands": {},
1002               "properties": {
1003                 "network_assignments": "{is_external_network=false, ipv4_subnet_default_assignment={min_subnets_count=1}, ecomp_generated_network_assignment=false, ipv6_subnet_default_assignment={min_subnets_count=1}}",
1004                 "exVL_naming": "{ecomp_generated_naming=true}",
1005                 "network_flows": "{is_network_policy=false, is_bound_to_vpn=false}",
1006                 "network_scope": "Service",
1007                 "network_type": "AIC30_CONTRAIL_BASIC",
1008                 "network_technology": "Contrail",
1009                 "network_homing": "{ecomp_selected_instance_node_target=false}"
1010               },
1011               "type": "VL",
1012               "modelCustomizationName": "AIC30_CONTRAIL_BASIC 0"
1013             }
1014           },
1015           "collectionResources": {},
1016           "configurations": {},
1017           "fabricConfigurations": {},
1018           "serviceProxies": {},
1019           "vfModules": {},
1020           "volumeGroups": {},
1021           "pnfs": {},
1022           "vnfGroups": {}
1023         }
1024       },
1025       "serviceInstance": {
1026         "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd": {
1027           "vnfs": {
1028             "2017-488_PASQUALE-vPE 0": {
1029               "action": "None",
1030               "inMaint": false,
1031               "rollbackOnFailure": "true",
1032               "originalName": "2017-488_PASQUALE-vPE 0",
1033               "isMissingData": false,
1034               "trackById": "stigekyxrqi",
1035               "vfModules": {
1036                 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
1037                   "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0gytfi": {
1038                     "isMissingData": false,
1039                     "sdncPreReload": null,
1040                     "modelInfo": {
1041                       "modelType": "VFmodule",
1042                       "modelInvariantId": "b34833bb-6aa9-4ad6-a831-70b06367a091",
1043                       "modelVersionId": "f8360508-3f17-4414-a2ed-6bc71161e8db",
1044                       "modelName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
1045                       "modelVersion": "5",
1046                       "modelCustomizationId": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
1047                       "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0"
1048                     },
1049                     "instanceParams": [{}],
1050                     "trackById": "3oj23o7nupo"
1051                   }
1052                 }
1053               },
1054               "vnfStoreKey": "2017-488_PASQUALE-vPE 0",
1055               "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
1056               "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
1057               "lcpCloudRegionId": "AAIAIC25",
1058               "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1059               "lineOfBusiness": "ONAP",
1060               "platformName": "xxx1",
1061               "modelInfo": {
1062                 "modelInvariantId": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
1063                 "modelVersionId": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
1064                 "modelName": "2017-488_PASQUALE-vPE",
1065                 "modelVersion": "5.0",
1066                 "modelCustomizationName": "2017-488_PASQUALE-vPE 0",
1067                 "modelCustomizationId": "1da7b585-5e61-4993-b95e-8e6606c81e45",
1068                 "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09"
1069               },
1070               "legacyRegion": "11111111",
1071               "instanceParams": [{}]
1072             },
1073             "2017-388_PASQUALE-vPE 0": {
1074               "action": "Create",
1075               "inMaint": false,
1076               "rollbackOnFailure": "true",
1077               "originalName": "2017-388_PASQUALE-vPE 0",
1078               "isMissingData": false,
1079               "trackById": "nib719t5vca",
1080               "vfModules": {},
1081               "vnfStoreKey": "2017-388_PASQUALE-vPE 0",
1082               "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
1083               "lcpCloudRegionId": "AAIAIC25",
1084               "legacyRegion": "11111",
1085               "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1086               "platformName": "platform",
1087               "lineOfBusiness": "zzz1",
1088               "instanceParams": [{}],
1089               "modelInfo": {
1090                 "modelInvariantId": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
1091                 "modelVersionId": "afacccf6-397d-45d6-b5ae-94c39734b168",
1092                 "modelName": "2017-388_PASQUALE-vPE",
1093                 "modelVersion": "4.0",
1094                 "modelCustomizationId": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
1095                 "modelCustomizationName": "2017-388_PASQUALE-vPE 0",
1096                 "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168"
1097               },
1098               "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168"
1099             },
1100             "2017-388_PASQUALE-vPE 1": {
1101               "action": "None",
1102               "inMaint": false,
1103               "rollbackOnFailure": "true",
1104               "originalName": "2017-388_PASQUALE-vPE 1",
1105               "isMissingData": false,
1106               "trackById": "cv7l1ak8vpe",
1107               "vfModules": {},
1108               "vnfStoreKey": "2017-388_PASQUALE-vPE 1",
1109               "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
1110               "lcpCloudRegionId": "AAIAIC25",
1111               "legacyRegion": "123",
1112               "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1113               "platformName": "platform",
1114               "lineOfBusiness": "ONAP",
1115               "instanceParams": [{}],
1116               "modelInfo": {
1117                 "modelInvariantId": "00beb8f9-6d39-452f-816d-c709b9cbb87d",
1118                 "modelVersionId": "0903e1c0-8e03-4936-b5c2-260653b96413",
1119                 "modelName": "2017-388_PASQUALE-vPE",
1120                 "modelVersion": "1.0",
1121                 "modelCustomizationId": "280dec31-f16d-488b-9668-4aae55d6648a",
1122                 "modelCustomizationName": "2017-388_PASQUALE-vPE 1",
1123                 "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413"
1124               },
1125               "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413"
1126             }
1127           },
1128           "instanceParams": [{}],
1129           "validationCounter": 0,
1130           "existingNames": {"yoav": ""},
1131           "existingVNFCounterMap": {
1132             "69e09f68-8b63-4cc9-b9ff-860960b5db09": 1,
1133             "afacccf6-397d-45d6-b5ae-94c39734b168": 1,
1134             "0903e1c0-8e03-4936-b5c2-260653b96413": 1
1135           },
1136           "existingVnfGroupCounterMap": {
1137             "daeb6568-cef8-417f-9075-ed259ce59f48": 0,
1138             "c2b300e6-45de-4e5e-abda-3032bee2de56": -1
1139           },
1140           "existingNetworksCounterMap": {"ddc3f20c-08b5-40fd-af72-c6d14636b986": 1},
1141           "networks": {
1142             "ExtVL 0": {
1143               "inMaint": false,
1144               "rollbackOnFailure": "true",
1145               "originalName": "ExtVL 0",
1146               "isMissingData": false,
1147               "trackById": "s6okajvv2n8",
1148               "networkStoreKey": "ExtVL 0",
1149               "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
1150               "lcpCloudRegionId": "AAIAIC25",
1151               "legacyRegion": "12355555",
1152               "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1153               "platformName": "platform",
1154               "lineOfBusiness": null,
1155               "instanceParams": [{}],
1156               "modelInfo": {
1157                 "modelInvariantId": "379f816b-a7aa-422f-be30-17114ff50b7c",
1158                 "modelVersionId": "ddc3f20c-08b5-40fd-af72-c6d14636b986",
1159                 "modelName": "ExtVL",
1160                 "modelVersion": "37.0",
1161                 "modelCustomizationId": "94fdd893-4a36-4d70-b16a-ec29c54c184f",
1162                 "modelCustomizationName": "ExtVL 0",
1163                 "uuid": "ddc3f20c-08b5-40fd-af72-c6d14636b986"
1164               },
1165               "uuid": "ddc3f20c-08b5-40fd-af72-c6d14636b986"
1166             }
1167           },
1168           "vnfGroups": {
1169             "groupingservicefortest..ResourceInstanceGroup..0": {
1170               "inMaint": false,
1171               "rollbackOnFailure": "true",
1172               "originalName": "groupingservicefortest..ResourceInstanceGroup..0",
1173               "isMissingData": false,
1174               "trackById": "se0obn93qq",
1175               "vnfGroupStoreKey": "groupingservicefortest..ResourceInstanceGroup..0",
1176               "instanceName": "groupingservicefortestResourceInstanceGroup0",
1177               "instanceParams": [{}],
1178               "modelInfo": {
1179                 "modelInvariantId": "4bb2e27e-ddab-4790-9c6d-1f731bc14a45",
1180                 "modelVersionId": "daeb6568-cef8-417f-9075-ed259ce59f48",
1181                 "modelName": "groupingservicefortest..ResourceInstanceGroup..0",
1182                 "modelVersion": "1",
1183                 "modelCustomizationName": "groupingservicefortest..ResourceInstanceGroup..0",
1184                 "uuid": "daeb6568-cef8-417f-9075-ed259ce59f48"
1185               },
1186               "uuid": "daeb6568-cef8-417f-9075-ed259ce59f48"
1187             }
1188           },
1189           "instanceName": "yoav",
1190           "globalSubscriberId": "e433710f-9217-458d-a79d-1c7aff376d89",
1191           "subscriptionServiceType": "TYLER SILVIA",
1192           "owningEntityId": "d61e6f2d-12fa-4cc2-91df-7c244011d6fc",
1193           "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
1194           "lcpCloudRegionId": "AAIAIC25",
1195           "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1196           "aicZoneId": "ATL53",
1197           "pause": null,
1198           "projectName": "WATKINS",
1199           "rollbackOnFailure": "true",
1200           "bulkSize": 1,
1201           "aicZoneName": "AAIATLTE-ATL53",
1202           "owningEntityName": "WayneHolland",
1203           "testApi": "VNF_API",
1204           "isEcompGeneratedNaming": false,
1205           "tenantName": "USP-SIP-IC-24335-T-01",
1206           "modelInfo": {
1207             "modelInvariantId": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
1208             "modelVersionId": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
1209             "modelName": "action-data",
1210             "modelVersion": "1.0",
1211             "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd"
1212           },
1213           "isALaCarte": false,
1214           "name": "action-data",
1215           "version": "1.0",
1216           "description": "PASQUALE vMX vPE based on Juniper 17.2 release. Updated with updated VF for v8.0 of VLM",
1217           "category": "Network L1-3",
1218           "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
1219           "invariantUuid": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
1220           "serviceType": "pnf",
1221           "serviceRole": "Testing",
1222           "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other", "viewEditUI": "legacy"},
1223           "isMultiStepDesign": true
1224         }
1225       },
1226       "lcpRegionsAndTenants": {
1227         "lcpRegionList": [{
1228           "id": "AAIAIC25",
1229           "name": "AAIAIC25 (AIC)",
1230           "isPermitted": true,
1231           "cloudOwner": "irma-aic"
1232         }, {"id": "hvf6", "name": "hvf6 (AIC)", "isPermitted": true, "cloudOwner": "irma-aic"}],
1233         "lcpRegionsTenantsMap": {
1234           "AAIAIC25": [{
1235             "id": "092eb9e8e4b7412e8787dd091bc58e86",
1236             "name": "USP-SIP-IC-24335-T-01",
1237             "isPermitted": true,
1238             "cloudOwner": "irma-aic"
1239           }],
1240           "hvf6": [{
1241             "id": "bae71557c5bb4d5aac6743a4e5f1d054",
1242             "name": "AIN Web Tool-15-D-testalexandria",
1243             "isPermitted": true,
1244             "cloudOwner": "irma-aic"
1245           }, {
1246             "id": "d0a3e3f2964542259d155a81c41aadc3",
1247             "name": "test-hvf6-09",
1248             "isPermitted": true,
1249             "cloudOwner": "irma-aic"
1250           }, {
1251             "id": "fa45ca53c80b492fa8be5477cd84fc2b",
1252             "name": "ro-T112",
1253             "isPermitted": true,
1254             "cloudOwner": "irma-aic"
1255           }, {
1256             "id": "cbb99fe4ada84631b7baf046b6fd2044",
1257             "name": "DN5242-Nov16-T3",
1258             "isPermitted": true,
1259             "cloudOwner": "irma-aic"
1260           }]
1261         }
1262       },
1263       "subscribers": [{
1264         "id": "ERICA5779-Subscriber-2",
1265         "name": "ERICA5779-Subscriber-2",
1266         "isPermitted": false
1267       }, {
1268         "id": "ERICA5779-Subscriber-3",
1269         "name": "ERICA5779-Subscriber-3",
1270         "isPermitted": false
1271       }, {
1272         "id": "ERICA5779-Subscriber-4",
1273         "name": "ERICA5779-Subscriber-5",
1274         "isPermitted": false
1275       }, {
1276         "id": "ERICA5779-TestSub-PWT-101",
1277         "name": "ERICA5779-TestSub-PWT-101",
1278         "isPermitted": false
1279       }, {
1280         "id": "ERICA5779-TestSub-PWT-102",
1281         "name": "ERICA5779-TestSub-PWT-102",
1282         "isPermitted": false
1283       }, {
1284         "id": "ERICA5779-TestSub-PWT-103",
1285         "name": "ERICA5779-TestSub-PWT-103",
1286         "isPermitted": false
1287       }, {
1288         "id": "31739f3e-526b-11e6-beb8-9e71128cae77",
1289         "name": "CRAIG/ROBERTS",
1290         "isPermitted": false
1291       }, {"id": "DHV1707-TestSubscriber-2", "name": "DALE BRIDGES", "isPermitted": false}, {
1292         "id": "jimmy-example",
1293         "name": "JimmyExampleCust-20161102",
1294         "isPermitted": false
1295       }, {"id": "jimmy-example2", "name": "JimmyExampleCust-20161103", "isPermitted": false}, {
1296         "id": "CAR_2020_ER",
1297         "name": "CAR_2020_ER",
1298         "isPermitted": true
1299       }, {
1300         "id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
1301         "name": "Emanuel",
1302         "isPermitted": false
1303       }, {
1304         "id": "21014aa2-526b-11e6-beb8-9e71128cae77",
1305         "name": "JULIO ERICKSON",
1306         "isPermitted": false
1307       }, {
1308         "id": "DHV1707-TestSubscriber-1",
1309         "name": "LLOYD BRIDGES",
1310         "isPermitted": false
1311       }, {"id": "e433710f-9217-458d-a79d-1c7aff376d89", "name": "SILVIA ROBBINS", "isPermitted": true}],
1312       "productFamilies": null,
1313       "serviceTypes": {
1314         "e433710f-9217-458d-a79d-1c7aff376d89": [{
1315           "id": "17",
1316           "name": "JOHANNA_SANTOS",
1317           "isPermitted": false
1318         }, {"id": "16", "name": "LINDSEY", "isPermitted": false}, {
1319           "id": "2",
1320           "name": "Emanuel",
1321           "isPermitted": false
1322         }, {"id": "5", "name": "Kennedy", "isPermitted": false}, {
1323           "id": "14",
1324           "name": "SSD",
1325           "isPermitted": false
1326         }, {"id": "1", "name": "TYLER SILVIA", "isPermitted": true}, {
1327           "id": "12",
1328           "name": "VPMS",
1329           "isPermitted": false
1330         }, {"id": "3", "name": "vJamie", "isPermitted": false}, {
1331           "id": "0",
1332           "name": "vRichardson",
1333           "isPermitted": false
1334         }, {"id": "18", "name": "vCarroll", "isPermitted": false}, {
1335           "id": "9",
1336           "name": "vFLORENCE",
1337           "isPermitted": false
1338         }, {"id": "13", "name": "vWINIFRED", "isPermitted": false}, {
1339           "id": "10",
1340           "name": "vMNS",
1341           "isPermitted": false
1342         }, {"id": "15", "name": "vMOG", "isPermitted": false}, {
1343           "id": "8",
1344           "name": "vOTA",
1345           "isPermitted": false
1346         }, {"id": "11", "name": "vEsmeralda", "isPermitted": false}, {
1347           "id": "6",
1348           "name": "vPorfirio",
1349           "isPermitted": false
1350         }, {"id": "7", "name": "vVM", "isPermitted": false}, {"id": "4", "name": "vVoiceMail", "isPermitted": false}]
1351       },
1352       "aicZones": [
1353         {
1354           "id": "NFT1",
1355           "name": "NFTJSSSS-NFT1"
1356         },
1357         {
1358           "id": "JAG1",
1359           "name": "YUDFJULP-JAG1"
1360         },
1361         {
1362           "id": "YYY1",
1363           "name": "UUUAIAAI-YYY1"
1364         },
1365         {
1366           "id": "AVT1",
1367           "name": "AVTRFLHD-AVT1"
1368         },
1369         {
1370           "id": "ATL34",
1371           "name": "ATLSANAI-ATL34"
1372         }
1373       ],
1374       "categoryParameters": {
1375         "owningEntityList": [{
1376           "id": "aaa1",
1377           "name": "aaa1"
1378         }, {"id": "d61e6f2d-12fa-4cc2-91df-7c244011d6fc", "name": "WayneHolland"}, {
1379           "id": "Melissa",
1380           "name": "Melissa"
1381         }],
1382         "projectList": [{"id": "WATKINS", "name": "WATKINS"}, {"id": "x1", "name": "x1"}, {"id": "yyy1", "name": "yyy1"}],
1383         "lineOfBusinessList": [{"id": "ONAP", "name": "ONAP"}, {"id": "zzz1", "name": "zzz1"}],
1384         "platformList": [{"id": "platform", "name": "platform"}, {"id": "xxx1", "name": "xxx1"}]
1385       },
1386       "type": "UPDATE_LCP_REGIONS_AND_TENANTS"
1387     }
1388   }
1389 }
1390
1391 function getNetworkModel(){
1392   return {
1393     "customizationUuid":"94fdd893-4a36-4d70-b16a-ec29c54c184f",
1394     "name":"ExtVL",
1395     "version":"37.0",
1396     "description":"ECOMP generic virtual link (network) base type for all other service-level and global networks",
1397     "uuid":"ddc3f20c-08b5-40fd-af72-c6d14636b986",
1398     "invariantUuid":"379f816b-a7aa-422f-be30-17114ff50b7c",
1399     "max":1,
1400     "min":0,
1401     "isEcompGeneratedNaming":false,
1402     "type":"VL",
1403     "modelCustomizationName":"ExtVL 0",
1404     "roles":["network role 1"," network role 2"],
1405     "properties":{
1406       "network_role":"network role 1, network role 2",
1407       "network_assignments":
1408         "{is_external_network=false, ipv4_subnet_default_assignment={min_subnets_count=1}, ecomp_generated_network_assignment=false, ipv6_subnet_default_assignment={min_subnets_count=1}}",
1409       "exVL_naming":"{ecomp_generated_naming=true}","network_flows":"{is_network_policy=false, is_bound_to_vpn=false}",
1410       "network_homing":"{ecomp_selected_instance_node_target=false}"
1411     }
1412   };
1413
1414 }
1415
1416 function getNetworkInstance() {
1417   return {
1418     "modelCustomizationId": "94fdd893-4a36-4d70-b16a-ec29c54c184f",
1419     "modelId": "ddc3f20c-08b5-40fd-af72-c6d14636b986",
1420     "modelUniqueId": "94fdd893-4a36-4d70-b16a-ec29c54c184f",
1421     "missingData": true,
1422     "id": "NETWORK4_INSTANCE_ID",
1423     "action": "None",
1424     "orchStatus": "Created",
1425     "provStatus": "preprov",
1426     "inMaint": false,
1427     "instanceId": "NETWORK4_INSTANCE_ID",
1428     "instanceType": "CONTRAIL30_HIMELGUARD",
1429     "instanceName": "NETWORK4_INSTANCE_NAME",
1430     "name": "NETWORK4_INSTANCE_NAME",
1431     "modelName": "ExtVL 0",
1432     "type": "VL",
1433     "isEcompGeneratedNaming": false,
1434     "networkStoreKey": "NETWORK4_INSTANCE_ID",
1435     "typeName": "N",
1436     "menuActions": {"edit": {}, "showAuditInfo": {}, "duplicate": {}, "remove": {}, "delete": {}, "undoDelete": {}},
1437     "isFailed": false,
1438     "statusMessage": "",
1439     "statusProperties": [{"key": "Prov Status:", "value": "preprov", "testId": "provStatus"}, {
1440       "key": "Orch Status:",
1441       "value": "Created",
1442       "testId": "orchStatus"
1443     }],
1444     "trackById": "1wvr73xl999",
1445     "parentType": "",
1446     "componentInfoType": "Network",
1447     "errors": {}
1448   };
1449 }