blob: c0a159142b062783e04b82661b643cffb2b995cf [file] [log] [blame]
Ittay Stern6f900cc2018-08-29 17:01:32 +03001import {HttpClientTestingModule} from "@angular/common/http/testing";
2import {getTestBed, TestBed} from "@angular/core/testing";
Ittay Stern77d00162019-02-27 19:23:10 +02003import {NgReduxTestingModule} from "@angular-redux/store/testing";
Ittay Stern6f900cc2018-08-29 17:01:32 +03004import {SharedTreeService} from "./shared.tree.service";
5import {ObjectToInstanceTreeService} from "./objectToInstanceTree/objectToInstanceTree.service";
6import {ObjectToTreeService} from "./objectToTree.service";
7import {DefaultDataGeneratorService} from "../../../shared/services/defaultDataServiceGenerator/default.data.generator.service";
8import {DynamicInputsService} from "./dynamicInputs.service";
9import {DialogService} from "ng2-bootstrap-modal";
10import {VnfPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vnf/vnf.popup.service";
Yoav Schneiderman4c87eca2019-12-18 21:04:38 +020011import {ControlGeneratorUtil} from "../../../shared/components/genericForm/formControlsServices/control.generator.util.service";
Ittay Stern6f900cc2018-08-29 17:01:32 +030012import {AaiService} from "../../../shared/services/aaiService/aai.service";
13import {NetworkPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/network/network.popup.service";
14import {NetworkControlGenerator} from "../../../shared/components/genericForm/formControlsServices/networkGenerator/network.control.generator";
Amir Skalka8d17bc32019-12-10 16:47:11 +020015import {VfModulePopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vfModule/vfModule.popup.service";
Ittay Stern6f900cc2018-08-29 17:01:32 +030016import {VfModuleControlGenerator} from "../../../shared/components/genericForm/formControlsServices/vfModuleGenerator/vfModule.control.generator";
17import {VnfGroupControlGenerator} from "../../../shared/components/genericForm/formControlsServices/vnfGroupGenerator/vnfGroup.control.generator";
18import {FeatureFlagsService} from "../../../shared/services/featureFlag/feature-flags.service";
19import {VnfControlGenerator} from "../../../shared/components/genericForm/formControlsServices/vnfGenerator/vnf.control.generator";
20import {NgRedux} from "@angular-redux/store";
21import {GenericFormService} from "../../../shared/components/genericForm/generic-form.service";
22import {FormBuilder} from "@angular/forms";
23import {SdcUiComponentsModule} from "onap-ui-angular";
24import {LogService} from "../../../shared/utils/log/log.service";
25import {IframeService} from "../../../shared/utils/iframe.service";
26import {BasicPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/basic.popup.service";
27import {VnfGroupPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vnfGroup/vnfGroup.popup.service";
28import {DuplicateService} from "../duplicate/duplicate.service";
29import {AppState} from "../../../shared/store/reducers";
30import {MessageBoxService} from "../../../shared/components/messageBox/messageBox.service";
31import {ErrorMsgService} from "../../../shared/components/error-msg/error-msg.service";
32import {AuditInfoModalComponent} from "../../../shared/components/auditInfoModal/auditInfoModal.component";
33import {ILevelNodeInfo} from "./models/basic.model.info";
34import {VnfModelInfo} from "./models/vnf/vnf.model.info";
35import {ServiceInstanceActions} from "../../../shared/models/serviceInstanceActions";
36import each from "jest-each";
37import {DrawingBoardModes} from "../drawing-board.modes";
38import {ComponentInfoService} from "../component-info/component-info.service";
Ittay Sternf7926712019-07-07 19:23:03 +030039import {ComponentInfoModel, ComponentInfoType} from "../component-info/component-info-model";
40import {ModelInformationItem} from "../../../shared/components/model-information/model-information.component";
41import {VpnStepService} from "./models/vrf/vrfModal/vpnStep/vpn.step.service";
42import {NetworkStepService} from "./models/vrf/vrfModal/networkStep/network.step.service";
Sara Weisseed69432019-11-20 14:50:33 +020043import {VfModuleUpgradePopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popuop.service";
Yoav Schneiderman4c87eca2019-12-18 21:04:38 +020044import {SharedControllersService} from "../../../shared/components/genericForm/formControlsServices/sharedControlles/shared.controllers.service";
Yoav Schneiderman4ef3ee72020-01-08 14:46:14 +020045import {ModalService} from "../../../shared/components/customModal/services/modal.service";
46import {CreateDynamicComponentService} from "../../../shared/components/customModal/services/create-dynamic-component.service";
Alexey Sandler4e324152020-02-29 22:11:26 +020047import {instance} from "ts-mockito";
Ittay Stern6f900cc2018-08-29 17:01:32 +030048
49class MockAppStore<T> {
50 getState() {
51 return getStore()
52 }
53
54 dispatch() {
55 }
56}
57
Ittay Stern6f900cc2018-08-29 17:01:32 +030058
59
Einat Vinouzee1f79742019-08-27 16:01:01 +030060
61function getNodeWithData(menuAction:string){
62 const nodeData = {
63 menuActions: {}
64 };
65 nodeData['menuActions'][menuAction] = {
66 method: (node, serviceModelId) => {}
Eylon Malinaefc6a02020-01-29 15:11:47 +020067 };
Einat Vinouzee1f79742019-08-27 16:01:01 +030068 const node = {
69 parent: {
70 data: nodeData,
71 parent: {
72 data: nodeData
73 }
74 }
75 };
76 return node
77}
78
Ittay Stern6f900cc2018-08-29 17:01:32 +030079describe('Shared Tree Service', () => {
80 let injector;
81 let service: SharedTreeService;
82 let _objectToInstanceTreeService: ObjectToInstanceTreeService;
83 let store: NgRedux<AppState>;
Alexey Sandler56093382020-02-13 09:53:14 +020084
Ittay Stern6f900cc2018-08-29 17:01:32 +030085 beforeAll(done => (async () => {
86 TestBed.configureTestingModule({
87 imports: [HttpClientTestingModule, NgReduxTestingModule, SdcUiComponentsModule],
88 providers: [
89 SharedTreeService,
Yoav Schneiderman4c87eca2019-12-18 21:04:38 +020090 SharedControllersService,
Ittay Stern6f900cc2018-08-29 17:01:32 +030091 ObjectToTreeService,
92 DefaultDataGeneratorService,
93 DialogService,
94 VnfPopupService,
Yoav Schneiderman4c87eca2019-12-18 21:04:38 +020095 ControlGeneratorUtil,
Ittay Stern6f900cc2018-08-29 17:01:32 +030096 AaiService,
97 LogService,
98 BasicPopupService,
99 VnfGroupPopupService,
100 DuplicateService,
101 IframeService,
102 DynamicInputsService,
103 NetworkPopupService,
104 NetworkControlGenerator,
Amir Skalka8d17bc32019-12-10 16:47:11 +0200105 VfModulePopupService,
Sara Weisseed69432019-11-20 14:50:33 +0200106 VfModuleUpgradePopupService,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300107 VfModuleControlGenerator,
108 VnfGroupControlGenerator,
109 DialogService,
110 FeatureFlagsService,
111 VnfControlGenerator,
112 AaiService,
113 DialogService,
114 GenericFormService,
115 FormBuilder,
116 ErrorMsgService,
117 ObjectToInstanceTreeService,
118 ComponentInfoService,
Ittay Sternf7926712019-07-07 19:23:03 +0300119 NetworkStepService,
120 VpnStepService,
Yoav Schneiderman4ef3ee72020-01-08 14:46:14 +0200121 ModalService,
122 CreateDynamicComponentService,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300123 {provide: NgRedux, useClass: MockAppStore}
124 ]
125 });
126 await TestBed.compileComponents();
127 injector = getTestBed();
128 service = injector.get(SharedTreeService);
129 _objectToInstanceTreeService = injector.get(ObjectToInstanceTreeService);
130 store = injector.get(NgRedux);
131 })().then(done).catch(done.fail));
132
133 test('SharedTreeService should be defined', () => {
134 expect(service).toBeDefined();
135 });
136
Einat Vinouzee1f79742019-08-27 16:01:01 +0300137 test('SharedTreeService upgradeBottomUp should call redux actions', () => {
138 const serviceModelId = "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd";
Eylon Malinaefc6a02020-01-29 15:11:47 +0200139 const node = getNodeWithData("upgrade");
Einat Vinouzee1f79742019-08-27 16:01:01 +0300140 spyOn(node.parent.data.menuActions['upgrade'], 'method');
141 service.upgradeBottomUp(node, serviceModelId);
142 expect(node.parent.data.menuActions['upgrade'].method).toBeCalledWith(node.parent, serviceModelId);
143 expect(node.parent.data.menuActions['upgrade'].method).toBeCalledTimes(2);
144
145 });
146
147 test('SharedTreeService undoUpgradeBottomUp should call redux actions', () => {
148 const serviceModelId = "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd";
Eylon Malinaefc6a02020-01-29 15:11:47 +0200149 const node = getNodeWithData("undoUpgrade");
Einat Vinouzee1f79742019-08-27 16:01:01 +0300150 spyOn(node.parent.data.menuActions['undoUpgrade'], 'method');
151 service.undoUpgradeBottomUp(node, serviceModelId);
152 expect(node.parent.data.menuActions['undoUpgrade'].method).toBeCalledWith(node.parent, serviceModelId);
153 expect(node.parent.data.menuActions['undoUpgrade'].method).toBeCalledTimes(2);
154 });
155
Ittay Stern6f900cc2018-08-29 17:01:32 +0300156 test('shouldShowDeleteInstanceWithChildrenModal should open modal if child exist with action create', () => {
157 jest.spyOn(MessageBoxService.openModal, 'next');
158 let foo = () => {
159
160 };
161 let node = <any>{
162 children: [{action: "Create"}, {action: "None"}],
163 data: {
164 typeName: 'VNF'
165 }
166 };
167 service.shouldShowDeleteInstanceWithChildrenModal(node, "serviceModelId", foo);
168 expect(MessageBoxService.openModal.next).toHaveBeenCalled();
169 });
170
Ittay Stern6b1e53d2020-01-21 12:20:37 +0200171 each([
172 ['volumeGroups by entry name', "volumeGroups",
173 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1", "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1"],
174 ['vfmodule by customizationUuid', "vfModules",
175 "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401", "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1"],
176 ['vnf by customizationUuid', "vnfs",
177 "1da7b585-5e61-4993-b95e-8e6606c81e45", "2017-488_PASQUALE-vPE 0"],
178 ['vnfGroups by invariantUuid because no customizationUuid', "vnfGroups",
179 "4bb2e27e-ddab-4790-9c6d-1f731bc14a45", "groupingservicefortest..ResourceInstanceGroup..0"],
180 ]).test('modelByIdentifier should success: %s', (description, modelTypeName, modelUniqueIdOrName, expectedModelCustomizationName) => {
181 let serviceModelFromHierarchy =
182 getStore().service.serviceHierarchy["1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd"];
183
Ittay Stern74e62712020-01-29 18:20:23 +0200184 expect(service.modelByIdentifiers(serviceModelFromHierarchy, modelTypeName, modelUniqueIdOrName))
Ittay Stern6b1e53d2020-01-21 12:20:37 +0200185 .toHaveProperty("modelCustomizationName", expectedModelCustomizationName);
186 });
187
188 each([
189 ['vfmodule by invariantUuid when there is customizationUuid', "vfModules", "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1"],
190 ['network by non-existing modelUniqueIdOrName', "networks", "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1"],
191 ['collectionResource has no resource', "collectionResources", "whatever"],
192 ['non-existing model-type', "fooBar", "whatever"],
193 ]).test('modelByIdentifier should fail: %s', (description, modelTypeName, modelUniqueIdOrName) => {
194 let serviceModelFromHierarchy =
195 getStore().service.serviceHierarchy["1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd"];
196
Ittay Stern74e62712020-01-29 18:20:23 +0200197 expect(service.modelByIdentifiers(serviceModelFromHierarchy, modelTypeName, modelUniqueIdOrName))
Ittay Stern6b1e53d2020-01-21 12:20:37 +0200198 .toBeUndefined();
199 });
200
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200201 test('openAuditInfoModalInsideIframe should open modal for failed instance', () => {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300202 jest.spyOn(AuditInfoModalComponent.openInstanceAuditInfoModal, 'next');
203
Einat Vinouzee1f79742019-08-27 16:01:01 +0300204 let modelInfoServiceMock: ILevelNodeInfo = new VnfModelInfo(null, null,
Sara Weisseed69432019-11-20 14:50:33 +0200205 null, null, null, null, null,
Yoav Schneiderman4c87eca2019-12-18 21:04:38 +0200206 null, null, null, null,null, null);
Ittay Stern6f900cc2018-08-29 17:01:32 +0300207 const modelMock = {"a": "a"};
208 const instanceMock = {"instance": "instance", "trackById": "123456789"};
209 const instanceTypeMock = "instanceTypeMock";
210 jest.spyOn(modelInfoServiceMock, 'getModel').mockReturnValue(modelMock);
211 let node = <any>{
212 data: {
213 modelId: '6b528779-44a3-4472-bdff-9cd15ec93450',
214 trackById: '1245df21',
215 isFailed: true
216 }
217 };
218 service.openAuditInfoModal(node, "serviceModelId", instanceMock, instanceTypeMock, <any>modelInfoServiceMock);
219 expect(AuditInfoModalComponent.openInstanceAuditInfoModal.next).toHaveBeenCalledWith(
220 {
221 "instance": instanceMock,
222 "instanceId": "serviceModelId",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300223 "model": modelMock,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300224 "type": instanceTypeMock
225 });
226 });
Eylon Malin0a268262019-12-15 10:03:03 +0200227 each([
228 ['undefined', 'Unlimited (default)', {}],
229 ['null', 'Unlimited (default)', {max:null}],
230 ['3', '3', {max:3}],
231 ]).
232 test("when there is %s max instances in model , shell return %s text", (desc, expected, model) =>{
233 expect(service.createMaximumToInstantiateModelInformationItem(model).values[0]).toBe(expected);
234 });
Ittay Stern6f900cc2018-08-29 17:01:32 +0300235
236 test('shouldShowDeleteInstanceWithChildrfenModal should not open modal if all childs with action None', () => {
237 let foo = () => {
238 };
239 spyOn(MessageBoxService.openModal, 'next');
240
241 let node = <any>{
242 children: [{action: "None"}, {action: "None"}],
243 data: {
244 typeName: 'VNF'
245 }
246 };
247 service.shouldShowDeleteInstanceWithChildrenModal(node, "serviceModelId", foo);
248 expect(MessageBoxService.openModal.next).not.toHaveBeenCalled();
249 });
250
Ittay Sternf7926712019-07-07 19:23:03 +0300251 test ('addGeneralInfoItems should return correct info - ordered',()=>{
252 let specificNetworkInfo = [
253 ModelInformationItem.createInstance('Network role', "network role 1, network role 2")
254 ];
Alexey Sandler4e324152020-02-29 22:11:26 +0200255 const actualInfoModel: ComponentInfoModel = service.addGeneralInfoItems(specificNetworkInfo,ComponentInfoType.NETWORK, getNetworkModelInfoFromHierarchy(),getNetworkInstance());
Ittay Sternf7926712019-07-07 19:23:03 +0300256
257 let expectedGeneralInfo = [
Alexey Sandler4e324152020-02-29 22:11:26 +0200258 ModelInformationItem.createInstance('Model version', '2.0'),
259 ModelInformationItem.createInstance('Model customization ID', 'customization-id-from-hierarchy'),
Ittay Sternf7926712019-07-07 19:23:03 +0300260 ModelInformationItem.createInstance('Instance ID', 'NETWORK4_INSTANCE_ID'),
261 ModelInformationItem.createInstance('Instance type', 'CONTRAIL30_HIMELGUARD'),
262 ModelInformationItem.createInstance('In maintenance', false),
263 ModelInformationItem.createInstance('Network role', 'network role 1, network role 2')
264 ];
265 expect(actualInfoModel.modelInfoItems).toEqual(expectedGeneralInfo);
266 });
267
Alexey Sandler4e324152020-02-29 22:11:26 +0200268 each([
269 ['model version from hierarchy', null, getNetworkModelInfoFromHierarchy(), '2.0'],
270 ['undefined model', null, null, undefined],
271 ['model version from instance', getSelectedModelInfo(), null, '5.0'],
272 ['model version from instance', getSelectedModelInfo(), getNetworkModelInfoFromHierarchy(), '5.0'],
273 ]).
274 test ('getModelVersionEitherFromInstanceOrFromHierarchy should return %s ' ,
275 (description, instance, model, expectedResult) =>{
276 let actualResult = service.getModelVersionEitherFromInstanceOrFromHierarchy(instance, model);
277 expect(actualResult).toEqual(expectedResult);
278 });
279
280 each([
281 ['model CustomizationId from hierarchy', null, getNetworkModelInfoFromHierarchy(), 'customization-id-from-hierarchy'],
282 ['undefined model', null, null, undefined],
283 ['model CustomizationId from instance', getSelectedModelInfo(), null, 'model-customization-id-from-instance'],
284 ['model CustomizationId from instance', getSelectedModelInfo(), getNetworkModelInfoFromHierarchy(), 'model-customization-id-from-instance'],
285 ]).
286 test ('getCustomizationIdEitherFromInstanceOrFromHierarchy should return %s ' ,
287 (description, instance, model, expectedResult) =>{
288 let actualResult = service.getModelCustomizationIdEitherFromInstanceOrFromHierarchy(instance, model);
289 expect(actualResult).toEqual(expectedResult);
290 });
Ittay Sternf7926712019-07-07 19:23:03 +0300291
Ittay Stern6f900cc2018-08-29 17:01:32 +0300292 test('statusProperties should be prop on node according to node properties', () => {
293 let node = service.addingStatusProperty({orchStatus: 'completed', provStatus: 'inProgress', inMaint: false});
294 expect(node.statusProperties).toBeDefined();
295 expect(node.statusProperties).toEqual([Object({
296 key: 'Prov Status:',
297 value: 'inProgress',
298 testId: 'provStatus'
299 }), Object({key: 'Orch Status:', value: 'completed', testId: 'orchStatus'})]);
300 node = service.addingStatusProperty({orchStatus: 'completed', provStatus: 'inProgress', inMaint: true});
301 expect(node.statusProperties).toEqual([Object({
302 key: 'Prov Status:',
303 value: 'inProgress',
304 testId: 'provStatus'
305 }), Object({key: 'Orch Status:', value: 'completed', testId: 'orchStatus'}), Object({
306 key: 'In-maintenance',
307 value: '',
308 testId: 'inMaint'
309 })]);
310 });
Eylon Malinaefc6a02020-01-29 15:11:47 +0200311
312 each([
313 [false, 'method is not in menu actions', ServiceInstanceActions.None, DrawingBoardModes.EDIT, {}, true],
314 [false, 'there is no action in node', null, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true],
315 [true, 'edit mode, action is none, method in menu action', ServiceInstanceActions.None, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true],
316 [false, 'edit mode, action is none, method in menu action, macro service', ServiceInstanceActions.None, DrawingBoardModes.EDIT, {someMethod: "someValue"}, false],
317 [false, 'edit mode, action is not none, method in menu action', ServiceInstanceActions.Resume, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true],
318 [false, 'edit mode, action is CREATE, method in menu action', ServiceInstanceActions.Resume, DrawingBoardModes.EDIT, {someMethod: "someValue"}, true]
319 ]).test('shouldShowButtonGeneric return %s if %s ', (expected, description, action, mode, menuActions, isALaCarte) => {
320 jest.spyOn(store, 'getState').mockReturnValue(<any>{
321 global: {
322 drawingBoardStatus: mode
323 },
324 service : {
325 serviceInstance: {
326 someModelId : {
327 isALaCarte
328 }
329 }
330
331 }
332 });
333 let node = <any>{
334 data:{
335 action: action,
336 menuActions: menuActions
337 },
338 };
339
340 let res = service.shouldShowButtonGeneric(node, "someMethod", "someModelId");
341 expect(res).toBe(expected);
342 });
343
Ittay Stern6f900cc2018-08-29 17:01:32 +0300344 const enableRemoveAndEditItemsDataProvider = [
345 ['Create action CREATE mode', DrawingBoardModes.CREATE ,ServiceInstanceActions.Create, true],
346 ['Create action VIEW mode',DrawingBoardModes.VIEW , ServiceInstanceActions.Create,false],
347 ['Create action RETRY_EDIT mode',DrawingBoardModes.RETRY_EDIT, ServiceInstanceActions.Create, true],
348 ['Create action EDIT mode',DrawingBoardModes.EDIT, ServiceInstanceActions.Create, true],
349 ['Create action RETRY mode',DrawingBoardModes.RETRY, ServiceInstanceActions.Create, false],
350 ['None action EDIT mode',DrawingBoardModes.EDIT, ServiceInstanceActions.None, false],
351 ['None action RETRY_EDIT mode', DrawingBoardModes.RETRY_EDIT, ServiceInstanceActions.None, false]];
352 each(enableRemoveAndEditItemsDataProvider).test('shouldShowEditAndDelete if child exist with %s', (description, mode, action, enabled) => {
Ittay Sternf7926712019-07-07 19:23:03 +0300353 jest.spyOn(store, 'getState').mockReturnValue(<any>{
Ittay Stern6f900cc2018-08-29 17:01:32 +0300354 global: {
355 drawingBoardStatus: mode
356 }
357 });
358 let node = <any>{
359 data:{
360 action: action
361 },
362 };
363 let res = service.shouldShowRemoveAndEdit(node);
364 expect(res).toBe(enabled);
365 });
Eylon Malinaefc6a02020-01-29 15:11:47 +0200366
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200367
Ittay Sternf84164f2020-02-04 14:13:24 +0200368 const isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDifferProvider = [
369 ['node is part of model, but vfmodule diff by customization',
370 true, 'mDNS 01222020 0', '9fdc68e9-9f53-431c-b8a2-7e337b9a0d0a', '82160e6e-d9c4-45ef-bd19-01573ab11b61'],
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200371
Ittay Sternf84164f2020-02-04 14:13:24 +0200372 ['vnf model-name not found',
373 false, 'mDNS 01222020 1', '9fdc68e9-9f53-431c-b8a2-7e337b9a0d0a', '82160e6e-d9c4-45ef-bd19-01573ab11b61'],
374
375 ['vfmodule invariant-id not found',
376 false, 'mDNS 01222020 0', 'wrong invariant-id', '82160e6e-d9c4-45ef-bd19-01573ab11b61'],
377
378 ['vfmodule customization-id match',
379 false, 'mDNS 01222020 0', '9fdc68e9-9f53-431c-b8a2-7e337b9a0d0a', 'c9b32003-febc-44e0-a97f-7630fa7fa4a0'],
380 ];
381
382 each(isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDifferProvider).test('isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer: when %s should return %s', (description, expected, vnfModelName, invariantUuid, customizationUuid) => {
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200383 const serviceModelId : string = 'a243da28-c11e-45a8-9f26-0284a9a789bc';
384 spyOn(store, 'getState').and.returnValue({
385 service : {
386 serviceHierarchy : {
387 [serviceModelId] : {
388 vnfs : {
389 [vnfModelName] : {
390 vfModules : {
Ittay Sternf84164f2020-02-04 14:13:24 +0200391 vfModuleModelName : {
392 invariantUuid : invariantUuid,
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200393 customizationUuid : customizationUuid
394 }
395 }
396 }
397 }
398 }
399 }
400 }
401 });
402
403 const node = <any>{
404 data:{
Ittay Sternf84164f2020-02-04 14:13:24 +0200405 modelInvariantId : '9fdc68e9-9f53-431c-b8a2-7e337b9a0d0a',
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200406 modelCustomizationId : 'c9b32003-febc-44e0-a97f-7630fa7fa4a0',
Ittay Sternf84164f2020-02-04 14:13:24 +0200407 modelName : 'vfModuleModelName'
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200408 },
409 parent : {
410 data : {
411 modelName : "mDNS 01222020 0"
412 }
413 }
414 };
415
Ittay Sternf84164f2020-02-04 14:13:24 +0200416 const isDiffCustomizationUuidResponse : boolean = service.isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer(node, serviceModelId);
Yoav Schneidermana3e54c32020-02-02 20:00:00 +0200417 expect(isDiffCustomizationUuidResponse).toEqual(expected);
418 });
419
Alexey Sandler56093382020-02-13 09:53:14 +0200420 each([
421 [false, true, true, false],
422 [true, true, true, true],
423 [true, true, false, true],
424 [true, false, true, true],
425 [true, false, false, false],
426 ]).
Alexey Sandler32d65b82020-02-13 17:31:00 +0200427 test('when flag is %s the UpdatedLatestVersion is %s and Vfmodule not exists on hierarchy is %s isShouldShowButtonGenericMustToBeCalled should return %s', (
Alexey Sandler56093382020-02-13 09:53:14 +0200428 flag: boolean,
429 isThereAnUpdatedLatestVersion: boolean,
Alexey Sandler32d65b82020-02-13 17:31:00 +0200430 isVfModuleCustomizationIdNotExistsOnModel: boolean,
Alexey Sandler56093382020-02-13 09:53:14 +0200431 isShouldShowButtonGenericMustToBeCalled: boolean
432 ) => {
433 let node = <any> {};
434 let serviceModelId : string = '08c5fa17-769a-4231-bd92-aed4b0ed086d';
435 jest.spyOn(store, 'getState').mockReturnValue(<any>{
436 global: {
437 "flags": {
438 "FLAG_FLASH_REPLACE_VF_MODULE": flag,
439 },
440 }
441 });
442 spyOn(service, 'isThereAnUpdatedLatestVersion').and.returnValue(isThereAnUpdatedLatestVersion);
Alexey Sandler32d65b82020-02-13 17:31:00 +0200443 spyOn(service, 'isVfModuleCustomizationIdNotExistsOnModel').and.returnValue(isVfModuleCustomizationIdNotExistsOnModel);
Alexey Sandler56093382020-02-13 09:53:14 +0200444
445 expect(service.isVfMoudleCouldBeUpgraded(node, serviceModelId)).toEqual(isShouldShowButtonGenericMustToBeCalled);
446 });
447
Alexey Sandler32d65b82020-02-13 17:31:00 +0200448 each([
449 ['Vfm customization uuid not exists in model', 'not-existing-customization-uuid', 'service-model-id', true],
450 ['Vfm customization uuid exists in model', 'existing-customization-uuid', 'service-model-id', false]
451 ]).
452 test('%s when vfModuleNode is %s and serviceModelId is %s ', (
453 description,
454 modelCustomizationId,
455 serviceModelId: string,
456 isExistsOnHierarchy: boolean,
457 ) => {
458
459 const vfModuleNode = { data: {
460 modelCustomizationId : modelCustomizationId
461 }};
462
463 jest.spyOn(store, 'getState').mockReturnValue(<any>{
464 service : {
465 "serviceHierarchy": {
466 [serviceModelId]: {
467 "vfModules": {
468 "module-1": {
469 "customizationUuid": "3d7f41c8-333b-4fee-b50d-5687e9c2170f",
470 },
471 "module-2": {
472 "customizationUuid": "existing-customization-uuid",
473 }
474 }
475 }
476 }
477 }
478 });
479 expect(service.isVfModuleCustomizationIdNotExistsOnModel(vfModuleNode, serviceModelId)).toEqual(isExistsOnHierarchy);
480
481
482 });
483
Ittay Stern6f900cc2018-08-29 17:01:32 +0300484});
Ittay Stern6f900cc2018-08-29 17:01:32 +0300485
486function getStore() {
487 return {
488 "global": {
489 "name": null,
490 "flags": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300491 "EMPTY_DRAWING_BOARD_TEST": false,
492 "FLAG_NETWORK_TO_ASYNC_INSTANTIATION": false,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300493 "FLAG_ADD_MSO_TESTAPI_FIELD": true,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300494 "FLAG_SERVICE_MODEL_CACHE": true,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300495 "FLAG_SHOW_ASSIGNMENTS": true,
496 "FLAG_FABRIC_CONFIGURATION_ASSIGNMENTS": true,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300497 "FLAG_A_LA_CARTE_AUDIT_INFO": true,
498 "FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST": true,
499 "FLAG_PRESENT_PROVIDER_NETWORKS_ASSOCIATIONS": true,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300500 "FLAG_1902_NEW_VIEW_EDIT": true,
501 "FLAG_1810_IDENTIFY_SERVICE_FOR_NEW_UI": false,
502 "FLAG_1902_VNF_GROUPING": true,
503 "FLAG_SHOW_VERIFY_SERVICE": true,
504 "FLAG_ASYNC_ALACARTE_VFMODULE": true,
505 "FLAG_ASYNC_ALACARTE_VNF": true,
Ittay Stern6f900cc2018-08-29 17:01:32 +0300506 "FLAG_1810_AAI_LOCAL_CACHE": true,
507 "FLAG_EXP_USE_DEFAULT_HOST_NAME_VERIFIER": false,
508 "FLAG_EXP_ANY_ALACARTE_NEW_INSTANTIATION_UI": false,
509 "FLAG_SUPPLEMENTARY_FILE": true,
510 "FLAG_5G_IN_NEW_INSTANTIATION_UI": true,
511 "FLAG_RESTRICTED_SELECT": false,
512 "FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY": true
513 },
514 "drawingBoardStatus": "VIEW",
515 "type": "UPDATE_DRAWING_BOARD_STATUS"
516 },
517 "service": {
518 "serviceHierarchy": {
519 "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd": {
520 "service": {
521 "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
522 "invariantUuid": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
523 "name": "action-data",
524 "version": "1.0",
525 "toscaModelURL": null,
526 "category": "Network L1-3",
527 "serviceType": "pnf",
528 "serviceRole": "Testing",
Ittay Sternf7926712019-07-07 19:23:03 +0300529 "description": "PASQUALE vMX vPE based on Juniper 17.2 release. Updated with updated VF for v8.0 of VLM",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300530 "serviceEcompNaming": "false",
531 "instantiationType": "Macro",
532 "inputs": {},
533 "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other", "viewEditUI": "legacy"}
534 },
535 "vnfs": {
Ittay Sternf7926712019-07-07 19:23:03 +0300536 "2017-388_PASQUALE-vPE 1": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300537 "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413",
538 "invariantUuid": "00beb8f9-6d39-452f-816d-c709b9cbb87d",
Ittay Sternf7926712019-07-07 19:23:03 +0300539 "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",
540 "name": "2017-388_PASQUALE-vPE",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300541 "version": "1.0",
542 "customizationUuid": "280dec31-f16d-488b-9668-4aae55d6648a",
543 "inputs": {},
544 "commands": {},
545 "properties": {
546 "vmxvre_retype": "RE-VMX",
Ittay Sternf7926712019-07-07 19:23:03 +0300547 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300548 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
549 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
550 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
551 "int_ctl_net_name": "VMX-INTXI",
552 "vmx_int_ctl_prefix": "10.0.0.10",
553 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
554 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
555 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
556 "nf_type": "vPE",
557 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
558 "is_AVPN_service": "false",
559 "vmx_RSG_name": "vREXI-affinity",
560 "vmx_int_ctl_forwarding": "l2",
561 "vmxvre_oam_ip_0": "10.0.0.10",
562 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
563 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
564 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
565 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
566 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
567 "vmxvre_instance": "0",
568 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
569 "vmxvre_flavor_name": "ns.c1r16d32.v5",
570 "vmxvpfe_volume_size_0": "40.0",
571 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
572 "nf_naming": "{ecomp_generated_naming=true}",
573 "multi_stage_design": "true",
574 "nf_naming_code": "Navneet",
575 "vmxvre_name_0": "vREXI",
576 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
577 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
578 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
579 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
580 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
581 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
582 "vmxvre_console": "vidconsole",
583 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
584 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
585 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
586 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
587 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
588 "vf_module_id": "123",
589 "nf_function": "JAI",
590 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
591 "vmxvre_int_ctl_ip_0": "10.0.0.10",
592 "ecomp_generated_naming": "true",
Ittay Sternf7926712019-07-07 19:23:03 +0300593 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300594 "vnf_name": "mtnj309me6vre",
595 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
596 "vmxvre_volume_type_1": "HITACHI",
597 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
598 "vmxvre_volume_type_0": "HITACHI",
599 "vmxvpfe_volume_type_0": "HITACHI",
600 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
Ittay Sternf7926712019-07-07 19:23:03 +0300601 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300602 "vnf_id": "123",
603 "vmxvre_oam_prefix": "24",
604 "availability_zone_0": "mtpocfo-kvm-az01",
Ittay Sternf7926712019-07-07 19:23:03 +0300605 "ASN": "get_input:2017488_pasqualevpe0_ASN",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300606 "vmxvre_chassis_i2cid": "161",
607 "vmxvpfe_name_0": "vPFEXI",
Ittay Sternf7926712019-07-07 19:23:03 +0300608 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300609 "availability_zone_max_count": "1",
610 "vmxvre_volume_size_0": "45.0",
611 "vmxvre_volume_size_1": "50.0",
612 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
613 "vmxvre_oam_gateway": "10.0.0.10",
614 "vmxvre_volume_name_1": "vREXI_FAVolume",
615 "vmxvre_ore_present": "0",
616 "vmxvre_volume_name_0": "vREXI_FBVolume",
617 "vmxvre_type": "0",
Ittay Sternf7926712019-07-07 19:23:03 +0300618 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300619 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
620 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
621 "vmx_int_ctl_len": "24",
622 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
623 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
624 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
625 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
626 "nf_role": "Testing",
627 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
628 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
629 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
630 },
631 "type": "VF",
Ittay Sternf7926712019-07-07 19:23:03 +0300632 "modelCustomizationName": "2017-388_PASQUALE-vPE 1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300633 "vfModules": {},
634 "volumeGroups": {},
635 "vfcInstanceGroups": {}
636 },
Ittay Sternf7926712019-07-07 19:23:03 +0300637 "2017-388_PASQUALE-vPE 0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300638 "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168",
639 "invariantUuid": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
Ittay Sternf7926712019-07-07 19:23:03 +0300640 "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",
641 "name": "2017-388_PASQUALE-vPE",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300642 "version": "4.0",
643 "customizationUuid": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
644 "inputs": {},
645 "commands": {},
646 "properties": {
647 "vmxvre_retype": "RE-VMX",
Ittay Sternf7926712019-07-07 19:23:03 +0300648 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300649 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
650 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
651 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
652 "int_ctl_net_name": "VMX-INTXI",
653 "vmx_int_ctl_prefix": "10.0.0.10",
654 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
655 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
656 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
657 "nf_type": "vPE",
658 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
659 "is_AVPN_service": "false",
660 "vmx_RSG_name": "vREXI-affinity",
661 "vmx_int_ctl_forwarding": "l2",
662 "vmxvre_oam_ip_0": "10.0.0.10",
663 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
664 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
665 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
666 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
667 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
668 "vmxvre_instance": "0",
669 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
670 "vmxvre_flavor_name": "ns.c1r16d32.v5",
671 "vmxvpfe_volume_size_0": "40.0",
672 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
673 "nf_naming": "{ecomp_generated_naming=true}",
674 "multi_stage_design": "true",
675 "nf_naming_code": "Navneet",
676 "vmxvre_name_0": "vREXI",
677 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
678 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
679 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
680 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
681 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
682 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
683 "vmxvre_console": "vidconsole",
684 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
685 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
686 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
687 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
688 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
689 "vf_module_id": "123",
690 "nf_function": "JAI",
691 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
692 "vmxvre_int_ctl_ip_0": "10.0.0.10",
693 "ecomp_generated_naming": "true",
Ittay Sternf7926712019-07-07 19:23:03 +0300694 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300695 "vnf_name": "mtnj309me6vre",
696 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
697 "vmxvre_volume_type_1": "HITACHI",
698 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
699 "vmxvre_volume_type_0": "HITACHI",
700 "vmxvpfe_volume_type_0": "HITACHI",
701 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
Ittay Sternf7926712019-07-07 19:23:03 +0300702 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300703 "vnf_id": "123",
704 "vmxvre_oam_prefix": "24",
705 "availability_zone_0": "mtpocfo-kvm-az01",
Ittay Sternf7926712019-07-07 19:23:03 +0300706 "ASN": "get_input:2017488_pasqualevpe0_ASN",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300707 "vmxvre_chassis_i2cid": "161",
708 "vmxvpfe_name_0": "vPFEXI",
Ittay Sternf7926712019-07-07 19:23:03 +0300709 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300710 "availability_zone_max_count": "1",
711 "vmxvre_volume_size_0": "45.0",
712 "vmxvre_volume_size_1": "50.0",
713 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
714 "vmxvre_oam_gateway": "10.0.0.10",
715 "vmxvre_volume_name_1": "vREXI_FAVolume",
716 "vmxvre_ore_present": "0",
717 "vmxvre_volume_name_0": "vREXI_FBVolume",
718 "vmxvre_type": "0",
Ittay Sternf7926712019-07-07 19:23:03 +0300719 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300720 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
721 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
722 "vmx_int_ctl_len": "24",
723 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
724 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
725 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
726 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
727 "nf_role": "Testing",
728 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
729 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
730 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
731 },
732 "type": "VF",
Ittay Sternf7926712019-07-07 19:23:03 +0300733 "modelCustomizationName": "2017-388_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300734 "vfModules": {},
735 "volumeGroups": {},
736 "vfcInstanceGroups": {}
737 },
Ittay Sternf7926712019-07-07 19:23:03 +0300738 "2017-488_PASQUALE-vPE 0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300739 "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
740 "invariantUuid": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
Ittay Sternf7926712019-07-07 19:23:03 +0300741 "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",
742 "name": "2017-488_PASQUALE-vPE",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300743 "version": "5.0",
744 "customizationUuid": "1da7b585-5e61-4993-b95e-8e6606c81e45",
745 "inputs": {},
746 "commands": {},
747 "properties": {
748 "max_instances": 1,
749 "vmxvre_retype": "RE-VMX",
Ittay Sternf7926712019-07-07 19:23:03 +0300750 "vnf_config_template_version": "get_input:2017488_pasqualevpe0_vnf_config_template_version",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300751 "sriov44_net_id": "48d399b3-11ee-48a8-94d2-f0ea94d6be8d",
752 "int_ctl_net_id": "2f323477-6936-4d01-ac53-d849430281d9",
753 "vmxvpfe_sriov41_0_port_mac": "00:11:22:EF:AC:DF",
754 "int_ctl_net_name": "VMX-INTXI",
755 "vmx_int_ctl_prefix": "10.0.0.10",
756 "sriov43_net_id": "da349ca1-6de9-4548-be88-2d88e99bfef5",
757 "sriov42_net_id": "760669ba-013d-4d9b-b0e7-4151fe2e6279",
758 "sriov41_net_id": "25ad52d5-c165-40f8-b3b0-ddfc2373280a",
759 "nf_type": "vPE",
760 "vmxvpfe_int_ctl_ip_1": "10.0.0.10",
761 "is_AVPN_service": "false",
762 "vmx_RSG_name": "vREXI-affinity",
763 "vmx_int_ctl_forwarding": "l2",
764 "vmxvre_oam_ip_0": "10.0.0.10",
765 "vmxvpfe_sriov44_0_port_mac": "00:11:22:EF:AC:DF",
766 "vmxvpfe_sriov41_0_port_vlanstrip": "false",
767 "vmxvpfe_sriov42_0_port_vlanfilter": "4001",
768 "vmxvpfe_sriov44_0_port_unknownunicastallow": "true",
769 "vmxvre_image_name_0": "VRE-ENGINE_17.2-S2.1.qcow2",
770 "vmxvre_instance": "0",
771 "vmxvpfe_sriov43_0_port_mac": "00:11:22:EF:AC:DF",
772 "vmxvre_flavor_name": "ns.c1r16d32.v5",
773 "vmxvpfe_volume_size_0": "40.0",
774 "vmxvpfe_sriov43_0_port_vlanfilter": "4001",
775 "nf_naming": "{ecomp_generated_naming=true}",
776 "multi_stage_design": "true",
777 "nf_naming_code": "Navneet",
778 "vmxvre_name_0": "vREXI",
779 "vmxvpfe_sriov42_0_port_vlanstrip": "false",
780 "vmxvpfe_volume_name_0": "vPFEXI_FBVolume",
781 "vmx_RSG_id": "bd89a33c-13c3-4a04-8fde-1a57eb123141",
782 "vmxvpfe_image_name_0": "VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2",
783 "vmxvpfe_sriov43_0_port_unknownunicastallow": "true",
784 "vmxvpfe_sriov44_0_port_unknownmulticastallow": "true",
785 "vmxvre_console": "vidconsole",
786 "vmxvpfe_sriov44_0_port_vlanfilter": "4001",
787 "vmxvpfe_sriov42_0_port_mac": "00:11:22:EF:AC:DF",
788 "vmxvpfe_volume_id_0": "47cede15-da2f-4397-a101-aa683220aff3",
789 "vmxvpfe_sriov42_0_port_unknownmulticastallow": "true",
790 "vmxvpfe_sriov44_0_port_vlanstrip": "false",
791 "vf_module_id": "123",
792 "nf_function": "JAI",
793 "vmxvpfe_sriov43_0_port_unknownmulticastallow": "true",
794 "vmxvre_int_ctl_ip_0": "10.0.0.10",
795 "ecomp_generated_naming": "true",
Ittay Sternf7926712019-07-07 19:23:03 +0300796 "AIC_CLLI": "get_input:2017488_pasqualevpe0_AIC_CLLI",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300797 "vnf_name": "mtnj309me6vre",
798 "vmxvpfe_sriov41_0_port_unknownunicastallow": "true",
799 "vmxvre_volume_type_1": "HITACHI",
800 "vmxvpfe_sriov44_0_port_broadcastallow": "true",
801 "vmxvre_volume_type_0": "HITACHI",
802 "vmxvpfe_volume_type_0": "HITACHI",
803 "vmxvpfe_sriov43_0_port_broadcastallow": "true",
Ittay Sternf7926712019-07-07 19:23:03 +0300804 "bandwidth_units": "get_input:2017488_pasqualevpe0_bandwidth_units",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300805 "vnf_id": "123",
806 "vmxvre_oam_prefix": "24",
807 "availability_zone_0": "mtpocfo-kvm-az01",
Ittay Sternf7926712019-07-07 19:23:03 +0300808 "ASN": "get_input:2017488_pasqualevpe0_ASN",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300809 "vmxvre_chassis_i2cid": "161",
810 "vmxvpfe_name_0": "vPFEXI",
Ittay Sternf7926712019-07-07 19:23:03 +0300811 "bandwidth": "get_input:2017488_pasqualevpe0_bandwidth",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300812 "availability_zone_max_count": "1",
813 "vmxvre_volume_size_0": "45.0",
814 "vmxvre_volume_size_1": "50.0",
815 "vmxvpfe_sriov42_0_port_broadcastallow": "true",
816 "vmxvre_oam_gateway": "10.0.0.10",
817 "vmxvre_volume_name_1": "vREXI_FAVolume",
818 "vmxvre_ore_present": "0",
819 "vmxvre_volume_name_0": "vREXI_FBVolume",
820 "vmxvre_type": "0",
Ittay Sternf7926712019-07-07 19:23:03 +0300821 "vnf_instance_name": "get_input:2017488_pasqualevpe0_vnf_instance_name",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300822 "vmxvpfe_sriov41_0_port_unknownmulticastallow": "true",
823 "oam_net_id": "b95eeb1d-d55d-4827-abb4-8ebb94941429",
824 "vmx_int_ctl_len": "24",
825 "vmxvpfe_sriov43_0_port_vlanstrip": "false",
826 "vmxvpfe_sriov41_0_port_broadcastallow": "true",
827 "vmxvre_volume_id_1": "6e86797e-03cd-4fdc-ba72-2957119c746d",
828 "vmxvpfe_sriov41_0_port_vlanfilter": "4001",
829 "nf_role": "Testing",
830 "vmxvre_volume_id_0": "f4eacb79-f687-4e9d-b760-21847c8bb15a",
831 "vmxvpfe_sriov42_0_port_unknownunicastallow": "true",
832 "vmxvpfe_flavor_name": "ns.c20r16d25.v5"
833 },
834 "type": "VF",
Ittay Sternf7926712019-07-07 19:23:03 +0300835 "modelCustomizationName": "2017-488_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300836 "vfModules": {
Ittay Sternf7926712019-07-07 19:23:03 +0300837 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300838 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
839 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
840 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
841 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300842 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300843 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +0300844 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300845 "properties": {
846 "minCountInstances": 0,
847 "maxCountInstances": null,
848 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +0300849 "vfModuleLabel": "PASQUALE_vRE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300850 "baseModule": false
851 },
852 "inputs": {},
853 "volumeGroupAllowed": true
854 },
Ittay Sternf7926712019-07-07 19:23:03 +0300855 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300856 "uuid": "f8360508-3f17-4414-a2ed-6bc71161e8db",
857 "invariantUuid": "b34833bb-6aa9-4ad6-a831-70b06367a091",
858 "customizationUuid": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
859 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300860 "name": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300861 "version": "5",
Ittay Sternf7926712019-07-07 19:23:03 +0300862 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300863 "properties": {
864 "minCountInstances": 1,
865 "maxCountInstances": 1,
866 "initialCount": 1,
Ittay Sternf7926712019-07-07 19:23:03 +0300867 "vfModuleLabel": "PASQUALE_base_vPE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300868 "baseModule": true
869 },
870 "inputs": {},
871 "volumeGroupAllowed": false
872 },
Ittay Sternf7926712019-07-07 19:23:03 +0300873 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300874 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
875 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
876 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
877 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300878 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300879 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +0300880 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300881 "properties": {
882 "minCountInstances": 0,
883 "maxCountInstances": null,
884 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +0300885 "vfModuleLabel": "PASQUALE_vPFE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300886 "baseModule": false
887 },
888 "inputs": {},
889 "volumeGroupAllowed": true
890 }
891 },
892 "volumeGroups": {
Ittay Sternf7926712019-07-07 19:23:03 +0300893 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300894 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
895 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
896 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
897 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300898 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300899 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +0300900 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300901 "properties": {
902 "minCountInstances": 0,
903 "maxCountInstances": null,
904 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +0300905 "vfModuleLabel": "PASQUALE_vRE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300906 "baseModule": false
907 },
908 "inputs": {}
909 },
Ittay Sternf7926712019-07-07 19:23:03 +0300910 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300911 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
912 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
913 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
914 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300915 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300916 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +0300917 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300918 "properties": {
919 "minCountInstances": 0,
920 "maxCountInstances": null,
921 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +0300922 "vfModuleLabel": "PASQUALE_vPFE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300923 "baseModule": false
924 },
925 "inputs": {}
926 }
927 },
928 "vfcInstanceGroups": {}
929 }
930 },
931 "networks": {
932 "ExtVL 0": {
933 "uuid": "ddc3f20c-08b5-40fd-af72-c6d14636b986",
934 "invariantUuid": "379f816b-a7aa-422f-be30-17114ff50b7c",
935 "description": "ECOMP generic virtual link (network) base type for all other service-level and global networks",
936 "name": "ExtVL",
937 "version": "37.0",
938 "customizationUuid": "94fdd893-4a36-4d70-b16a-ec29c54c184f",
939 "inputs": {},
940 "commands": {},
941 "properties": {
942 "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}}",
943 "exVL_naming": "{ecomp_generated_naming=true}",
944 "network_flows": "{is_network_policy=false, is_bound_to_vpn=false}",
945 "network_homing": "{ecomp_selected_instance_node_target=false}"
946 },
947 "type": "VL",
948 "modelCustomizationName": "ExtVL 0"
949 }
950 },
Ittay Sternf7926712019-07-07 19:23:03 +0300951 "collectionResources": {},
Ittay Stern6f900cc2018-08-29 17:01:32 +0300952 "configurations": {},
953 "fabricConfigurations": {},
954 "serviceProxies": {},
955 "vfModules": {
Ittay Sternf7926712019-07-07 19:23:03 +0300956 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300957 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
958 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
959 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
960 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300961 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300962 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +0300963 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300964 "properties": {
965 "minCountInstances": 0,
966 "maxCountInstances": null,
967 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +0300968 "vfModuleLabel": "PASQUALE_vRE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300969 "baseModule": false
970 },
971 "inputs": {},
972 "volumeGroupAllowed": true
973 },
Ittay Sternf7926712019-07-07 19:23:03 +0300974 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300975 "uuid": "f8360508-3f17-4414-a2ed-6bc71161e8db",
976 "invariantUuid": "b34833bb-6aa9-4ad6-a831-70b06367a091",
977 "customizationUuid": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
978 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300979 "name": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300980 "version": "5",
Ittay Sternf7926712019-07-07 19:23:03 +0300981 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300982 "properties": {
983 "minCountInstances": 1,
984 "maxCountInstances": 1,
985 "initialCount": 1,
Ittay Sternf7926712019-07-07 19:23:03 +0300986 "vfModuleLabel": "PASQUALE_base_vPE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300987 "baseModule": true
988 },
989 "inputs": {},
990 "volumeGroupAllowed": false
991 },
Ittay Sternf7926712019-07-07 19:23:03 +0300992 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
Ittay Stern6f900cc2018-08-29 17:01:32 +0300993 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
994 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
995 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
996 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +0300997 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +0300998 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +0300999 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001000 "properties": {
1001 "minCountInstances": 0,
1002 "maxCountInstances": null,
1003 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +03001004 "vfModuleLabel": "PASQUALE_vPFE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001005 "baseModule": false
1006 },
1007 "inputs": {},
1008 "volumeGroupAllowed": true
1009 }
1010 },
1011 "volumeGroups": {
Ittay Sternf7926712019-07-07 19:23:03 +03001012 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001013 "uuid": "25284168-24bb-4698-8cb4-3f509146eca5",
1014 "invariantUuid": "7253ff5c-97f0-4b8b-937c-77aeb4d79aa1",
1015 "customizationUuid": "f7e7c365-60cf-49a9-9ebf-a1aa11b9d401",
1016 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +03001017 "name": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001018 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +03001019 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001020 "properties": {
1021 "minCountInstances": 0,
1022 "maxCountInstances": null,
1023 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +03001024 "vfModuleLabel": "PASQUALE_vRE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001025 "baseModule": false
1026 },
1027 "inputs": {}
1028 },
Ittay Sternf7926712019-07-07 19:23:03 +03001029 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001030 "uuid": "0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a",
1031 "invariantUuid": "eff8cc59-53a1-4101-aed7-8cf24ecf8339",
1032 "customizationUuid": "3cd946bb-50e0-40d8-96d3-c9023520b557",
1033 "description": null,
Ittay Sternf7926712019-07-07 19:23:03 +03001034 "name": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001035 "version": "6",
Ittay Sternf7926712019-07-07 19:23:03 +03001036 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_vPFE_BV..module-2",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001037 "properties": {
1038 "minCountInstances": 0,
1039 "maxCountInstances": null,
1040 "initialCount": 0,
Ittay Sternf7926712019-07-07 19:23:03 +03001041 "vfModuleLabel": "PASQUALE_vPFE_BV",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001042 "baseModule": false
1043 },
1044 "inputs": {}
1045 }
1046 },
1047 "pnfs": {},
1048 "vnfGroups": {
1049 "groupingservicefortest..ResourceInstanceGroup..0": {
1050 "type": "VnfGroup",
1051 "invariantUuid": "4bb2e27e-ddab-4790-9c6d-1f731bc14a45",
1052 "uuid": "daeb6568-cef8-417f-9075-ed259ce59f48",
1053 "version": "1",
1054 "name": "groupingservicefortest..ResourceInstanceGroup..0",
1055 "modelCustomizationName": "groupingservicefortest..ResourceInstanceGroup..0",
1056 "properties": {
1057 "contained_resource_type": "VF",
1058 "role": "SERVICE-ACCESS",
1059 "function": "DATA",
1060 "description": "DDD0",
1061 "type": "LOAD-GROUP",
1062 "ecomp_generated_naming": "true"
1063 },
1064 "members": {
Ittay Sternf7926712019-07-07 19:23:03 +03001065 "vdorothea_svc_vprs_proxy 0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001066 "uuid": "65fadfa8-a0d9-443f-95ad-836cd044e26c",
1067 "invariantUuid": "f4baae0c-b3a5-4ca1-a777-afbffe7010bc",
Ittay Sternf7926712019-07-07 19:23:03 +03001068 "description": "A Proxy for Service vDOROTHEA_Svc_vPRS",
1069 "name": "vDOROTHEA_Svc_vPRS Service Proxy",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001070 "version": "1.0",
1071 "customizationUuid": "bdb63d23-e132-4ce7-af2c-a493b4cafac9",
1072 "inputs": {},
1073 "commands": {},
1074 "properties": {},
1075 "type": "Service Proxy",
1076 "sourceModelUuid": "da7827a2-366d-4be6-8c68-a69153c61274",
1077 "sourceModelInvariant": "24632e6b-584b-4f45-80d4-fefd75fd9f14",
Ittay Sternf7926712019-07-07 19:23:03 +03001078 "sourceModelName": "vDOROTHEA_Svc_vPRS"
Ittay Stern6f900cc2018-08-29 17:01:32 +03001079 }
1080 }
1081 },
1082 "groupingservicefortest..ResourceInstanceGroup..1": {
1083 "type": "VnfGroup",
1084 "invariantUuid": "a704112d-dbc6-4e56-8d4e-aec57e95ef9a",
1085 "uuid": "c2b300e6-45de-4e5e-abda-3032bee2de56",
1086 "version": "1",
1087 "name": "groupingservicefortest..ResourceInstanceGroup..1",
1088 "modelCustomizationName": "groupingservicefortest..ResourceInstanceGroup..1",
1089 "properties": {
1090 "contained_resource_type": "VF",
1091 "role": "SERVICE-ACCESS",
1092 "function": "SIGNALING",
1093 "description": "DDD1",
1094 "type": "LOAD-GROUP",
1095 "ecomp_generated_naming": "true"
1096 },
1097 "members": {
1098 "tsbc0001vm001_svc_proxy 0": {
1099 "uuid": "65fadfa8-a0d9-443f-95ad-836cd044e26c",
1100 "invariantUuid": "f4baae0c-b3a5-4ca1-a777-afbffe7010bc",
1101 "description": "A Proxy for Service tsbc0001vm001_Svc",
1102 "name": "tsbc0001vm001_Svc Service Proxy",
1103 "version": "1.0",
1104 "customizationUuid": "3d814462-30fb-4c62-b997-9aa360d27ead",
1105 "inputs": {},
1106 "commands": {},
1107 "properties": {},
1108 "type": "Service Proxy",
1109 "sourceModelUuid": "28aeb8f6-5620-4148-8bfb-a5fb406f0309",
1110 "sourceModelInvariant": "c989ab9a-33c7-46ec-b521-1b2daef5f047",
1111 "sourceModelName": "tsbc0001vm001_Svc"
1112 }
1113 }
1114 }
1115 }
1116 },
1117 "b75e0d22-05ff-4448-9266-5f0d4e1dbbd6": {
1118 "service": {
1119 "uuid": "b75e0d22-05ff-4448-9266-5f0d4e1dbbd6",
1120 "invariantUuid": "5b9c0f33-eec1-484a-bf77-736a6644d7a8",
1121 "name": "Using VID for VoIP Network Instantiations Shani",
1122 "version": "1.0",
1123 "toscaModelURL": null,
1124 "category": "VoIP Call Control",
1125 "serviceType": "",
1126 "serviceRole": "",
1127 "description": "Using VID for VoIP Network Instantiations Shani",
1128 "serviceEcompNaming": "true",
1129 "instantiationType": "ClientConfig",
1130 "inputs": {},
1131 "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other", "viewEditUI": "legacy"}
1132 },
1133 "vnfs": {},
1134 "networks": {
1135 "AIC30_CONTRAIL_BASIC 0": {
1136 "uuid": "ac815c68-35b7-4ea4-9d04-92d2f844b27c",
1137 "invariantUuid": "de01afb5-532b-451d-aac4-ff9ff0644060",
1138 "description": "Basic contrail 3.0.x L3 network for AIC 3.x sites. ",
1139 "name": "AIC30_CONTRAIL_BASIC",
1140 "version": "3.0",
1141 "customizationUuid": "e94d61f7-b4b2-489a-a4a7-30b1a1a80daf",
1142 "inputs": {},
1143 "commands": {},
1144 "properties": {
1145 "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}}",
1146 "exVL_naming": "{ecomp_generated_naming=true}",
1147 "network_flows": "{is_network_policy=false, is_bound_to_vpn=false}",
1148 "network_scope": "Service",
1149 "network_type": "AIC30_CONTRAIL_BASIC",
1150 "network_technology": "Contrail",
1151 "network_homing": "{ecomp_selected_instance_node_target=false}"
1152 },
1153 "type": "VL",
1154 "modelCustomizationName": "AIC30_CONTRAIL_BASIC 0"
1155 }
1156 },
Ittay Sternf7926712019-07-07 19:23:03 +03001157 "collectionResources": {},
Ittay Stern6f900cc2018-08-29 17:01:32 +03001158 "configurations": {},
1159 "fabricConfigurations": {},
1160 "serviceProxies": {},
1161 "vfModules": {},
1162 "volumeGroups": {},
1163 "pnfs": {},
1164 "vnfGroups": {}
1165 }
1166 },
1167 "serviceInstance": {
1168 "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd": {
1169 "vnfs": {
Ittay Sternf7926712019-07-07 19:23:03 +03001170 "2017-488_PASQUALE-vPE 0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001171 "action": "None",
1172 "inMaint": false,
1173 "rollbackOnFailure": "true",
Ittay Sternf7926712019-07-07 19:23:03 +03001174 "originalName": "2017-488_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001175 "isMissingData": false,
1176 "trackById": "stigekyxrqi",
1177 "vfModules": {
Ittay Sternf7926712019-07-07 19:23:03 +03001178 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0": {
1179 "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0gytfi": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001180 "isMissingData": false,
1181 "sdncPreReload": null,
1182 "modelInfo": {
1183 "modelType": "VFmodule",
1184 "modelInvariantId": "b34833bb-6aa9-4ad6-a831-70b06367a091",
1185 "modelVersionId": "f8360508-3f17-4414-a2ed-6bc71161e8db",
Ittay Sternf7926712019-07-07 19:23:03 +03001186 "modelName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001187 "modelVersion": "5",
1188 "modelCustomizationId": "a55961b2-2065-4ab0-a5b7-2fcee1c227e3",
Ittay Sternf7926712019-07-07 19:23:03 +03001189 "modelCustomizationName": "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0"
Ittay Stern6f900cc2018-08-29 17:01:32 +03001190 },
1191 "instanceParams": [{}],
1192 "trackById": "3oj23o7nupo"
1193 }
1194 }
1195 },
Ittay Sternf7926712019-07-07 19:23:03 +03001196 "vnfStoreKey": "2017-488_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001197 "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
1198 "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
Ittay Sternf7926712019-07-07 19:23:03 +03001199 "lcpCloudRegionId": "AAIAIC25",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001200 "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1201 "lineOfBusiness": "ONAP",
1202 "platformName": "xxx1",
1203 "modelInfo": {
1204 "modelInvariantId": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
1205 "modelVersionId": "69e09f68-8b63-4cc9-b9ff-860960b5db09",
Ittay Sternf7926712019-07-07 19:23:03 +03001206 "modelName": "2017-488_PASQUALE-vPE",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001207 "modelVersion": "5.0",
Ittay Sternf7926712019-07-07 19:23:03 +03001208 "modelCustomizationName": "2017-488_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001209 "modelCustomizationId": "1da7b585-5e61-4993-b95e-8e6606c81e45",
1210 "uuid": "69e09f68-8b63-4cc9-b9ff-860960b5db09"
1211 },
1212 "legacyRegion": "11111111",
1213 "instanceParams": [{}]
1214 },
Ittay Sternf7926712019-07-07 19:23:03 +03001215 "2017-388_PASQUALE-vPE 0": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001216 "action": "Create",
1217 "inMaint": false,
1218 "rollbackOnFailure": "true",
Ittay Sternf7926712019-07-07 19:23:03 +03001219 "originalName": "2017-388_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001220 "isMissingData": false,
1221 "trackById": "nib719t5vca",
1222 "vfModules": {},
Ittay Sternf7926712019-07-07 19:23:03 +03001223 "vnfStoreKey": "2017-388_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001224 "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
Ittay Sternf7926712019-07-07 19:23:03 +03001225 "lcpCloudRegionId": "AAIAIC25",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001226 "legacyRegion": "11111",
1227 "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1228 "platformName": "platform",
1229 "lineOfBusiness": "zzz1",
1230 "instanceParams": [{}],
1231 "modelInfo": {
1232 "modelInvariantId": "72e465fe-71b1-4e7b-b5ed-9496118ff7a8",
1233 "modelVersionId": "afacccf6-397d-45d6-b5ae-94c39734b168",
Ittay Sternf7926712019-07-07 19:23:03 +03001234 "modelName": "2017-388_PASQUALE-vPE",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001235 "modelVersion": "4.0",
1236 "modelCustomizationId": "b3c76f73-eeb5-4fb6-9d31-72a889f1811c",
Ittay Sternf7926712019-07-07 19:23:03 +03001237 "modelCustomizationName": "2017-388_PASQUALE-vPE 0",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001238 "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168"
1239 },
1240 "uuid": "afacccf6-397d-45d6-b5ae-94c39734b168"
1241 },
Ittay Sternf7926712019-07-07 19:23:03 +03001242 "2017-388_PASQUALE-vPE 1": {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001243 "action": "None",
1244 "inMaint": false,
1245 "rollbackOnFailure": "true",
Ittay Sternf7926712019-07-07 19:23:03 +03001246 "originalName": "2017-388_PASQUALE-vPE 1",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001247 "isMissingData": false,
1248 "trackById": "cv7l1ak8vpe",
1249 "vfModules": {},
Ittay Sternf7926712019-07-07 19:23:03 +03001250 "vnfStoreKey": "2017-388_PASQUALE-vPE 1",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001251 "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
Ittay Sternf7926712019-07-07 19:23:03 +03001252 "lcpCloudRegionId": "AAIAIC25",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001253 "legacyRegion": "123",
1254 "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1255 "platformName": "platform",
1256 "lineOfBusiness": "ONAP",
1257 "instanceParams": [{}],
1258 "modelInfo": {
1259 "modelInvariantId": "00beb8f9-6d39-452f-816d-c709b9cbb87d",
1260 "modelVersionId": "0903e1c0-8e03-4936-b5c2-260653b96413",
Ittay Sternf7926712019-07-07 19:23:03 +03001261 "modelName": "2017-388_PASQUALE-vPE",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001262 "modelVersion": "1.0",
1263 "modelCustomizationId": "280dec31-f16d-488b-9668-4aae55d6648a",
Ittay Sternf7926712019-07-07 19:23:03 +03001264 "modelCustomizationName": "2017-388_PASQUALE-vPE 1",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001265 "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413"
1266 },
1267 "uuid": "0903e1c0-8e03-4936-b5c2-260653b96413"
1268 }
1269 },
1270 "instanceParams": [{}],
1271 "validationCounter": 0,
1272 "existingNames": {"yoav": ""},
1273 "existingVNFCounterMap": {
1274 "69e09f68-8b63-4cc9-b9ff-860960b5db09": 1,
1275 "afacccf6-397d-45d6-b5ae-94c39734b168": 1,
1276 "0903e1c0-8e03-4936-b5c2-260653b96413": 1
1277 },
1278 "existingVnfGroupCounterMap": {
1279 "daeb6568-cef8-417f-9075-ed259ce59f48": 0,
1280 "c2b300e6-45de-4e5e-abda-3032bee2de56": -1
1281 },
1282 "existingNetworksCounterMap": {"ddc3f20c-08b5-40fd-af72-c6d14636b986": 1},
1283 "networks": {
1284 "ExtVL 0": {
1285 "inMaint": false,
1286 "rollbackOnFailure": "true",
1287 "originalName": "ExtVL 0",
1288 "isMissingData": false,
1289 "trackById": "s6okajvv2n8",
1290 "networkStoreKey": "ExtVL 0",
1291 "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
Ittay Sternf7926712019-07-07 19:23:03 +03001292 "lcpCloudRegionId": "AAIAIC25",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001293 "legacyRegion": "12355555",
1294 "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1295 "platformName": "platform",
1296 "lineOfBusiness": null,
1297 "instanceParams": [{}],
1298 "modelInfo": {
1299 "modelInvariantId": "379f816b-a7aa-422f-be30-17114ff50b7c",
1300 "modelVersionId": "ddc3f20c-08b5-40fd-af72-c6d14636b986",
1301 "modelName": "ExtVL",
1302 "modelVersion": "37.0",
1303 "modelCustomizationId": "94fdd893-4a36-4d70-b16a-ec29c54c184f",
1304 "modelCustomizationName": "ExtVL 0",
1305 "uuid": "ddc3f20c-08b5-40fd-af72-c6d14636b986"
1306 },
1307 "uuid": "ddc3f20c-08b5-40fd-af72-c6d14636b986"
1308 }
1309 },
1310 "vnfGroups": {
1311 "groupingservicefortest..ResourceInstanceGroup..0": {
1312 "inMaint": false,
1313 "rollbackOnFailure": "true",
1314 "originalName": "groupingservicefortest..ResourceInstanceGroup..0",
1315 "isMissingData": false,
1316 "trackById": "se0obn93qq",
1317 "vnfGroupStoreKey": "groupingservicefortest..ResourceInstanceGroup..0",
1318 "instanceName": "groupingservicefortestResourceInstanceGroup0",
1319 "instanceParams": [{}],
1320 "modelInfo": {
1321 "modelInvariantId": "4bb2e27e-ddab-4790-9c6d-1f731bc14a45",
1322 "modelVersionId": "daeb6568-cef8-417f-9075-ed259ce59f48",
1323 "modelName": "groupingservicefortest..ResourceInstanceGroup..0",
1324 "modelVersion": "1",
1325 "modelCustomizationName": "groupingservicefortest..ResourceInstanceGroup..0",
1326 "uuid": "daeb6568-cef8-417f-9075-ed259ce59f48"
1327 },
1328 "uuid": "daeb6568-cef8-417f-9075-ed259ce59f48"
1329 }
1330 },
1331 "instanceName": "yoav",
1332 "globalSubscriberId": "e433710f-9217-458d-a79d-1c7aff376d89",
1333 "subscriptionServiceType": "TYLER SILVIA",
1334 "owningEntityId": "d61e6f2d-12fa-4cc2-91df-7c244011d6fc",
1335 "productFamilyId": "d8a6ed93-251c-47ca-adc9-86671fd19f4c",
Ittay Sternf7926712019-07-07 19:23:03 +03001336 "lcpCloudRegionId": "AAIAIC25",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001337 "tenantId": "092eb9e8e4b7412e8787dd091bc58e86",
1338 "aicZoneId": "ATL53",
1339 "pause": null,
1340 "projectName": "WATKINS",
1341 "rollbackOnFailure": "true",
1342 "bulkSize": 1,
1343 "aicZoneName": "AAIATLTE-ATL53",
1344 "owningEntityName": "WayneHolland",
1345 "testApi": "VNF_API",
1346 "isEcompGeneratedNaming": false,
1347 "tenantName": "USP-SIP-IC-24335-T-01",
1348 "modelInfo": {
1349 "modelInvariantId": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
1350 "modelVersionId": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
1351 "modelName": "action-data",
1352 "modelVersion": "1.0",
1353 "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd"
1354 },
1355 "isALaCarte": false,
1356 "name": "action-data",
1357 "version": "1.0",
Ittay Sternf7926712019-07-07 19:23:03 +03001358 "description": "PASQUALE vMX vPE based on Juniper 17.2 release. Updated with updated VF for v8.0 of VLM",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001359 "category": "Network L1-3",
1360 "uuid": "1a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd",
1361 "invariantUuid": "cdb90b57-ed78-4d44-a5b4-7f43a02ec632",
1362 "serviceType": "pnf",
1363 "serviceRole": "Testing",
1364 "vidNotions": {"instantiationUI": "legacy", "modelCategory": "other", "viewEditUI": "legacy"},
1365 "isMultiStepDesign": true
1366 }
1367 },
1368 "lcpRegionsAndTenants": {
1369 "lcpRegionList": [{
Ittay Sternf7926712019-07-07 19:23:03 +03001370 "id": "AAIAIC25",
1371 "name": "AAIAIC25 (AIC)",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001372 "isPermitted": true,
1373 "cloudOwner": "irma-aic"
1374 }, {"id": "hvf6", "name": "hvf6 (AIC)", "isPermitted": true, "cloudOwner": "irma-aic"}],
1375 "lcpRegionsTenantsMap": {
Ittay Sternf7926712019-07-07 19:23:03 +03001376 "AAIAIC25": [{
Ittay Stern6f900cc2018-08-29 17:01:32 +03001377 "id": "092eb9e8e4b7412e8787dd091bc58e86",
1378 "name": "USP-SIP-IC-24335-T-01",
1379 "isPermitted": true,
1380 "cloudOwner": "irma-aic"
1381 }],
1382 "hvf6": [{
1383 "id": "bae71557c5bb4d5aac6743a4e5f1d054",
1384 "name": "AIN Web Tool-15-D-testalexandria",
1385 "isPermitted": true,
1386 "cloudOwner": "irma-aic"
1387 }, {
Einat Vinouzee1f79742019-08-27 16:01:01 +03001388 "id": "d0a3e3f2964542259d155a81c41aadc3",
1389 "name": "test-hvf6-09",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001390 "isPermitted": true,
1391 "cloudOwner": "irma-aic"
1392 }, {
1393 "id": "fa45ca53c80b492fa8be5477cd84fc2b",
1394 "name": "ro-T112",
1395 "isPermitted": true,
1396 "cloudOwner": "irma-aic"
1397 }, {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001398 "id": "cbb99fe4ada84631b7baf046b6fd2044",
1399 "name": "DN5242-Nov16-T3",
1400 "isPermitted": true,
1401 "cloudOwner": "irma-aic"
1402 }]
1403 }
1404 },
1405 "subscribers": [{
1406 "id": "ERICA5779-Subscriber-2",
1407 "name": "ERICA5779-Subscriber-2",
1408 "isPermitted": false
1409 }, {
1410 "id": "ERICA5779-Subscriber-3",
1411 "name": "ERICA5779-Subscriber-3",
1412 "isPermitted": false
1413 }, {
1414 "id": "ERICA5779-Subscriber-4",
1415 "name": "ERICA5779-Subscriber-5",
1416 "isPermitted": false
1417 }, {
1418 "id": "ERICA5779-TestSub-PWT-101",
1419 "name": "ERICA5779-TestSub-PWT-101",
1420 "isPermitted": false
1421 }, {
1422 "id": "ERICA5779-TestSub-PWT-102",
1423 "name": "ERICA5779-TestSub-PWT-102",
1424 "isPermitted": false
1425 }, {
1426 "id": "ERICA5779-TestSub-PWT-103",
1427 "name": "ERICA5779-TestSub-PWT-103",
1428 "isPermitted": false
1429 }, {
1430 "id": "31739f3e-526b-11e6-beb8-9e71128cae77",
1431 "name": "CRAIG/ROBERTS",
1432 "isPermitted": false
1433 }, {"id": "DHV1707-TestSubscriber-2", "name": "DALE BRIDGES", "isPermitted": false}, {
1434 "id": "jimmy-example",
1435 "name": "JimmyExampleCust-20161102",
1436 "isPermitted": false
1437 }, {"id": "jimmy-example2", "name": "JimmyExampleCust-20161103", "isPermitted": false}, {
1438 "id": "CAR_2020_ER",
1439 "name": "CAR_2020_ER",
1440 "isPermitted": true
1441 }, {
1442 "id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
1443 "name": "Emanuel",
1444 "isPermitted": false
1445 }, {
1446 "id": "21014aa2-526b-11e6-beb8-9e71128cae77",
1447 "name": "JULIO ERICKSON",
1448 "isPermitted": false
1449 }, {
1450 "id": "DHV1707-TestSubscriber-1",
1451 "name": "LLOYD BRIDGES",
1452 "isPermitted": false
1453 }, {"id": "e433710f-9217-458d-a79d-1c7aff376d89", "name": "SILVIA ROBBINS", "isPermitted": true}],
1454 "productFamilies": null,
1455 "serviceTypes": {
1456 "e433710f-9217-458d-a79d-1c7aff376d89": [{
1457 "id": "17",
1458 "name": "JOHANNA_SANTOS",
1459 "isPermitted": false
1460 }, {"id": "16", "name": "LINDSEY", "isPermitted": false}, {
1461 "id": "2",
1462 "name": "Emanuel",
1463 "isPermitted": false
1464 }, {"id": "5", "name": "Kennedy", "isPermitted": false}, {
1465 "id": "14",
1466 "name": "SSD",
1467 "isPermitted": false
1468 }, {"id": "1", "name": "TYLER SILVIA", "isPermitted": true}, {
1469 "id": "12",
1470 "name": "VPMS",
1471 "isPermitted": false
1472 }, {"id": "3", "name": "vJamie", "isPermitted": false}, {
1473 "id": "0",
1474 "name": "vRichardson",
1475 "isPermitted": false
1476 }, {"id": "18", "name": "vCarroll", "isPermitted": false}, {
1477 "id": "9",
Ittay Sternf7926712019-07-07 19:23:03 +03001478 "name": "vFLORENCE",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001479 "isPermitted": false
Ittay Sternf7926712019-07-07 19:23:03 +03001480 }, {"id": "13", "name": "vWINIFRED", "isPermitted": false}, {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001481 "id": "10",
1482 "name": "vMNS",
1483 "isPermitted": false
1484 }, {"id": "15", "name": "vMOG", "isPermitted": false}, {
1485 "id": "8",
1486 "name": "vOTA",
1487 "isPermitted": false
Ittay Sternf7926712019-07-07 19:23:03 +03001488 }, {"id": "11", "name": "vEsmeralda", "isPermitted": false}, {
Ittay Stern6f900cc2018-08-29 17:01:32 +03001489 "id": "6",
Ittay Sternf7926712019-07-07 19:23:03 +03001490 "name": "vPorfirio",
Ittay Stern6f900cc2018-08-29 17:01:32 +03001491 "isPermitted": false
1492 }, {"id": "7", "name": "vVM", "isPermitted": false}, {"id": "4", "name": "vVoiceMail", "isPermitted": false}]
1493 },
Einat Vinouzee1f79742019-08-27 16:01:01 +03001494 "aicZones": [
1495 {
1496 "id": "NFT1",
1497 "name": "NFTJSSSS-NFT1"
1498 },
1499 {
1500 "id": "JAG1",
1501 "name": "YUDFJULP-JAG1"
1502 },
1503 {
1504 "id": "YYY1",
1505 "name": "UUUAIAAI-YYY1"
1506 },
1507 {
1508 "id": "AVT1",
1509 "name": "AVTRFLHD-AVT1"
1510 },
1511 {
1512 "id": "ATL34",
1513 "name": "ATLSANAI-ATL34"
1514 }
1515 ],
Ittay Stern6f900cc2018-08-29 17:01:32 +03001516 "categoryParameters": {
1517 "owningEntityList": [{
1518 "id": "aaa1",
1519 "name": "aaa1"
1520 }, {"id": "d61e6f2d-12fa-4cc2-91df-7c244011d6fc", "name": "WayneHolland"}, {
1521 "id": "Melissa",
1522 "name": "Melissa"
1523 }],
1524 "projectList": [{"id": "WATKINS", "name": "WATKINS"}, {"id": "x1", "name": "x1"}, {"id": "yyy1", "name": "yyy1"}],
1525 "lineOfBusinessList": [{"id": "ONAP", "name": "ONAP"}, {"id": "zzz1", "name": "zzz1"}],
1526 "platformList": [{"id": "platform", "name": "platform"}, {"id": "xxx1", "name": "xxx1"}]
1527 },
1528 "type": "UPDATE_LCP_REGIONS_AND_TENANTS"
1529 }
1530 }
1531}
Ittay Sternf7926712019-07-07 19:23:03 +03001532
Ittay Sternf7926712019-07-07 19:23:03 +03001533
Alexey Sandler4e324152020-02-29 22:11:26 +02001534function getNetworkModelInfoFromHierarchy(){
1535 return {
1536 "version": "2.0",
1537 "customizationUuid":"customization-id-from-hierarchy"
1538 }
Ittay Sternf7926712019-07-07 19:23:03 +03001539}
1540
Alexey Sandler4e324152020-02-29 22:11:26 +02001541function getSelectedModelInfo() {
1542 return {
1543 "instanceModelInfo": {
1544 "modelVersion": "5.0",
1545 "modelCustomizationId": "model-customization-id-from-instance"
1546 }
1547 }
1548}
Ittay Sternf7926712019-07-07 19:23:03 +03001549function getNetworkInstance() {
1550 return {
Ittay Sternf7926712019-07-07 19:23:03 +03001551 "inMaint": false,
1552 "instanceId": "NETWORK4_INSTANCE_ID",
1553 "instanceType": "CONTRAIL30_HIMELGUARD",
Ittay Sternf7926712019-07-07 19:23:03 +03001554 };
1555}