blob: 02296f7286a41b0e8ba20fbf0e42601780de5ab5 [file] [log] [blame]
Sonsino, Ofir (os0695)ff76b5e2018-07-10 15:57:37 +03001import {VnfPopupService} from './vnf-popup-service';
2import {ServicePlanningService} from '../../services/service-planning.service';
3import {ServiceNodeTypes} from '../../shared/models/ServiceNodeTypes';
4import {NgRedux} from '@angular-redux/store';
5import {VNFModel} from '../../shared/models/vnfModel';
6import {VfModule} from '../../shared/models/vfModule';
7import {FormControl, FormGroup, Validators} from '@angular/forms';
8import {NumbersLettersUnderscoreValidator} from '../../shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator';
9import {VnfInstanceDetailsService} from './vnf-instance-details/vnf-instance-details.service';
10import {ReflectiveInjector} from '@angular/core';
11
12export class MockAppStore<T> {
13}
14
15describe('Vnf popup service', () => {
16 let injector;
17 let service: VnfPopupService;
18 let fg: FormGroup;
19 let data = generateModelData();
20 let servicePopupDataModel = generateServicePopupDataModel();
21 let form: FormGroup = generateFormGroup();
22 beforeEach(() => {
23
24 let injector = ReflectiveInjector.resolveAndCreate([
25 VnfPopupService,
26 ServicePlanningService,
27 VnfInstanceDetailsService,
28 {provide: FormGroup, useClass: MockAppStore},
29 {provide: NgRedux, useClass: MockAppStore}
30 ]);
31
32 service = injector.get(VnfPopupService);
33 fg = injector.get(FormGroup);
34 });
35
36 describe('#updateVnfDataFromModel', () => {
37 it('update vnf data from model should return new vnf', (done: DoneFn) => {
38 let vnf: VNFModel = service.getModelFromResponse(data, ServiceNodeTypes.VF, '2017-388_ADIOD-vPE 1');
39
40 expect(vnf).toEqual(jasmine.any(VNFModel));
41 done();
42 });
43
44 it('update wrong vnf data from model should be undefined', (done: DoneFn) => {
45 let vnf: VNFModel = service.getModelFromResponse(data, ServiceNodeTypes.VF, '2017-388_ADIOD-vPE 3');
46
47 expect(vnf).toBeUndefined();
48 done();
49 });
50
51 it('update vfModule data from model should return new vfModule', (done: DoneFn) => {
52 let vfModule: VfModule = service.getModelFromResponse(data, ServiceNodeTypes.VFmodule, '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vRE_BV..module-1');
53
54 expect(vfModule).toEqual(jasmine.any(VfModule));
55 done();
56 });
57
58 });
59
60
61 describe('#onControlError', () => {
62 it('onControlError should return true if instanceName is not legal', (done: DoneFn) => {
63 form.controls['instanceName'].setValue('aaaa - aaa');
64
65 let result: boolean = service.onControlError(<any>servicePopupDataModel, form, false, false);
66 expect(result).toBeTruthy();
67 done();
68 });
69
70 it('onControlError should return false if instanceName is legal', (done: DoneFn) => {
71
72 form.controls['instanceName'].setValue('aaaa');
73 let result = service.onControlError(<any>servicePopupDataModel, form, false, false);
74 expect(result).toBeFalsy();
75 done();
76 });
77
78 it('onControlError should return true if instanceName is not unique', (done: DoneFn) => {
79
80 form.controls['instanceName'].setValue('aaaa');
81 let result = service.onControlError(<any>servicePopupDataModel, form, true, false);
82 expect(result).toBeTruthy();
83 done();
84 });
85
86 it('onControlError should return true if lcpRegions is empty', (done: DoneFn) => {
87 servicePopupDataModel.vnfPopupDataModel['lcpRegions'] = [];
88 let result = service.onControlError(<any>servicePopupDataModel, form, true, false);
89 expect(result).toBeTruthy();
90 done();
91 });
92
93 it('onControlError should return true if isNotUniqueVolumeGroupName is true', (done: DoneFn) => {
94 let result = service.onControlError(<any>servicePopupDataModel, form, true, true);
95 expect(result).toBeTruthy();
96 done();
97 })
98 });
99
100
101 function generateServicePopupDataModel() {
102 return {
103 'vnfPopupDataModel': JSON.parse('{"tenants" : [1,2,3],"lcpRegions":[1,2,3],"lcpRegionsTenantsMap":{},"productFamilies":[1,2,3],"lineOfBusinesses":[{"id":"ECOMP","name":"ECOMP"},{"id":"zzz1","name":"zzz1"}],"platforms":[{"id":"platform","name":"platform"},{"id":"xxx1","name":"xxx1"}],"rollbackOnFailure":[{"id":"true","name":"Rollback"}]}')
104 }
105 }
106
107 function generateFormGroup() {
108 return new FormGroup({
109 productFamilyId: new FormControl(),
110 lcpCloudRegionId: new FormControl(Validators.required),
111 tenantId: new FormControl({value: null, disabled: false}, Validators.required),
112 legacyRegion: new FormControl(),
113 lineOfBusiness: new FormControl(),
114 platformName: new FormControl(Validators.required),
115 instanceName: new FormControl({value: null}, Validators.compose([Validators.required, NumbersLettersUnderscoreValidator.valid]))
116 });
117 }
118
119 function generateModelData() {
120 return JSON.parse(JSON.stringify(
121 {
122 'service': {
123 'uuid': '2f80c596-27e5-4ca9-b5bb-e03a7fd4c0fd',
124 'invariantUuid': 'e49fbd11-e60c-4a8e-b4bf-30fbe8f4fcc0',
125 'name': 'action-data',
126 'version': '1.0',
127 'toscaModelURL': null,
128 'category': '',
129 'serviceType': '',
130 'serviceRole': '',
131 'description': '',
132 'serviceEcompNaming': 'true',
133 'instantiationType': 'ClientConfig',
134 'inputs': {
135 '2017488_adiodvpe0_ASN': {
136 'type': 'string',
137 'description': 'AV/PE',
138 'entry_schema': null,
139 'constraints': [],
140 'required': true,
141 'default': 'AV_vPE'
142 },
143 'adiodvpe0_bandwidth': {
144 'type': 'string',
145 'description': 'Requested VPE bandwidth',
146 'entry_schema': null,
147 'constraints': [],
148 'required': true,
149 'default': '10'
150 },
151 '2017488_adiodvpe0_vnf_instance_name': {
152 'type': 'string',
153 'description': 'The hostname assigned to the vpe.',
154 'entry_schema': null,
155 'constraints': [],
156 'required': true,
157 'default': 'mtnj309me6'
158 },
159 '2017488_adiodvpe0_vnf_config_template_version': {
160 'type': 'string',
161 'description': 'VPE Software Version',
162 'entry_schema': null,
163 'constraints': [],
164 'required': true,
165 'default': '17.2'
166 },
167 '2017488_adiodvpe0_AIC_CLLI': {
168 'type': 'string',
169 'description': 'AIC Site CLLI',
170 'entry_schema': null,
171 'constraints': [],
172 'required': true,
173 'default': 'ATLMY8GA'
174 },
175 'adiodvpe0_bandwidth_units': {
176 'type': 'string',
177 'description': 'Units of bandwidth',
178 'entry_schema': null,
179 'constraints': [],
180 'required': true,
181 'default': 'Gbps'
182 }
183 }
184 },
185 'vnfs': {
186 '2017-388_ADIOD-vPE 1': {
187 'uuid': '0903e1c0-8e03-4936-b5c2-260653b96413',
188 'invariantUuid': '00beb8f9-6d39-452f-816d-c709b9cbb87d',
189 'description': 'Name ADIOD vPE Description The provider edge function for the ADIOD 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',
190 'name': '2017-388_ADIOD-vPE',
191 'version': '1.0',
192 'customizationUuid': '280dec31-f16d-488b-9668-4aae55d6648a',
193 'inputs': {
194 'vnf_config_template_version': {
195 'type': 'string',
196 'description': 'VPE Software Version',
197 'entry_schema': null,
198 'constraints': [],
199 'required': true,
200 'default': '17.2'
201 },
202 'bandwidth_units': {
203 'type': 'string',
204 'description': 'Units of bandwidth',
205 'entry_schema': null,
206 'constraints': [],
207 'required': true,
208 'default': 'Gbps'
209 },
210 'bandwidth': {
211 'type': 'string',
212 'description': 'Requested VPE bandwidth',
213 'entry_schema': null,
214 'constraints': [],
215 'required': true,
216 'default': '10'
217 },
218 'AIC_CLLI': {
219 'type': 'string',
220 'description': 'AIC Site CLLI',
221 'entry_schema': null,
222 'constraints': [],
223 'required': true,
224 'default': 'ATLMY8GA'
225 },
226 'ASN': {
227 'type': 'string',
228 'description': 'AV/PE',
229 'entry_schema': null,
230 'constraints': [],
231 'required': true,
232 'default': 'AV_vPE'
233 },
234 'vnf_instance_name': {
235 'type': 'string',
236 'description': 'The hostname assigned to the vpe.',
237 'entry_schema': null,
238 'constraints': [],
239 'required': true,
240 'default': 'mtnj309me6'
241 }
242 },
243 'commands': {
244 'vnf_config_template_version': {
245 'displayName': 'vnf_config_template_version',
246 'command': 'get_input',
247 'inputName': '2017488_adiodvpe0_vnf_config_template_version'
248 },
249 'bandwidth_units': {
250 'displayName': 'bandwidth_units',
251 'command': 'get_input',
252 'inputName': 'adiodvpe0_bandwidth_units'
253 },
254 'bandwidth': {'displayName': 'bandwidth', 'command': 'get_input', 'inputName': 'adiodvpe0_bandwidth'},
255 'AIC_CLLI': {'displayName': 'AIC_CLLI', 'command': 'get_input', 'inputName': '2017488_adiodvpe0_AIC_CLLI'},
256 'ASN': {'displayName': 'ASN', 'command': 'get_input', 'inputName': '2017488_adiodvpe0_ASN'},
257 'vnf_instance_name': {
258 'displayName': 'vnf_instance_name',
259 'command': 'get_input',
260 'inputName': '2017488_adiodvpe0_vnf_instance_name'
261 }
262 },
263 'properties': {
264 'vmxvre_retype': 'RE-VMX',
265 'vnf_config_template_version': 'get_input:2017488_adiodvpe0_vnf_config_template_version',
266 'sriov44_net_id': '48d399b3-11ee-48a8-94d2-f0ea94d6be8d',
267 'int_ctl_net_id': '2f323477-6936-4d01-ac53-d849430281d9',
268 'vmxvpfe_sriov41_0_port_mac': '00:11:22:EF:AC:DF',
269 'int_ctl_net_name': 'VMX-INTXI',
270 'vmx_int_ctl_prefix': '128.0.0.0',
271 'sriov43_net_id': 'da349ca1-6de9-4548-be88-2d88e99bfef5',
272 'sriov42_net_id': '760669ba-013d-4d9b-b0e7-4151fe2e6279',
273 'sriov41_net_id': '25ad52d5-c165-40f8-b3b0-ddfc2373280a',
274 'nf_type': 'vPE',
275 'vmxvpfe_int_ctl_ip_1': '128.0.0.16',
276 'is_AVPN_service': 'false',
277 'vmx_RSG_name': 'vREXI-affinity',
278 'vmx_int_ctl_forwarding': 'l2',
279 'vmxvre_oam_ip_0': '10.40.123.5',
280 'vmxvpfe_sriov44_0_port_mac': '00:11:22:EF:AC:DF',
281 'vmxvpfe_sriov41_0_port_vlanstrip': 'false',
282 'vmxvpfe_sriov42_0_port_vlanfilter': '4001',
283 'vmxvpfe_sriov44_0_port_unknownunicastallow': 'true',
284 'vmxvre_image_name_0': 'VRE-ENGINE_17.2-S2.1.qcow2',
285 'vmxvre_instance': '0',
286 'vmxvpfe_sriov43_0_port_mac': '00:11:22:EF:AC:DF',
287 'vmxvre_flavor_name': 'ns.c1r16d32.v5',
288 'vmxvpfe_volume_size_0': '40.0',
289 'vmxvpfe_sriov43_0_port_vlanfilter': '4001',
290 'nf_naming': '{ecomp_generated_naming=true}',
291 'nf_naming_code': 'Navneet',
292 'vmxvre_name_0': 'vREXI',
293 'vmxvpfe_sriov42_0_port_vlanstrip': 'false',
294 'vmxvpfe_volume_name_0': 'vPFEXI_FBVolume',
295 'vmx_RSG_id': 'bd89a33c-13c3-4a04-8fde-1a57eb123141',
296 'vmxvpfe_image_name_0': 'VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2',
297 'vmxvpfe_sriov43_0_port_unknownunicastallow': 'true',
298 'vmxvpfe_sriov44_0_port_unknownmulticastallow': 'true',
299 'vmxvre_console': 'vidconsole',
300 'vmxvpfe_sriov44_0_port_vlanfilter': '4001',
301 'vmxvpfe_sriov42_0_port_mac': '00:11:22:EF:AC:DF',
302 'vmxvpfe_volume_id_0': '47cede15-da2f-4397-a101-aa683220aff3',
303 'vmxvpfe_sriov42_0_port_unknownmulticastallow': 'true',
304 'vmxvpfe_sriov44_0_port_vlanstrip': 'false',
305 'vf_module_id': '123',
306 'nf_function': 'JAI',
307 'vmxvpfe_sriov43_0_port_unknownmulticastallow': 'true',
308 'vmxvre_int_ctl_ip_0': '128.0.0.1',
309 'AIC_CLLI': 'get_input:2017488_adiodvpe0_AIC_CLLI',
310 'vnf_name': 'mtnj309me6vre',
311 'vmxvpfe_sriov41_0_port_unknownunicastallow': 'true',
312 'vmxvre_volume_type_1': 'HITACHI',
313 'vmxvpfe_sriov44_0_port_broadcastallow': 'true',
314 'vmxvre_volume_type_0': 'HITACHI',
315 'vmxvpfe_volume_type_0': 'HITACHI',
316 'vmxvpfe_sriov43_0_port_broadcastallow': 'true',
317 'bandwidth_units': 'get_input:adiodvpe0_bandwidth_units',
318 'vnf_id': '123',
319 'vmxvre_oam_prefix': '24',
320 'availability_zone_0': 'mtpocfo-kvm-az01',
321 'ASN': 'get_input:2017488_adiodvpe0_ASN',
322 'vmxvre_chassis_i2cid': '161',
323 'vmxvpfe_name_0': 'vPFEXI',
324 'bandwidth': 'get_input:adiodvpe0_bandwidth',
325 'availability_zone_max_count': '1',
326 'vmxvre_volume_size_0': '45.0',
327 'vmxvre_volume_size_1': '50.0',
328 'vmxvpfe_sriov42_0_port_broadcastallow': 'true',
329 'vmxvre_oam_gateway': '10.40.123.1',
330 'vmxvre_volume_name_1': 'vREXI_FAVolume',
331 'vmxvre_ore_present': '0',
332 'vmxvre_volume_name_0': 'vREXI_FBVolume',
333 'vmxvre_type': '0',
334 'vnf_instance_name': 'get_input:2017488_adiodvpe0_vnf_instance_name',
335 'vmxvpfe_sriov41_0_port_unknownmulticastallow': 'true',
336 'oam_net_id': 'b95eeb1d-d55d-4827-abb4-8ebb94941429',
337 'vmx_int_ctl_len': '24',
338 'vmxvpfe_sriov43_0_port_vlanstrip': 'false',
339 'vmxvpfe_sriov41_0_port_broadcastallow': 'true',
340 'vmxvre_volume_id_1': '6e86797e-03cd-4fdc-ba72-2957119c746d',
341 'vmxvpfe_sriov41_0_port_vlanfilter': '4001',
342 'nf_role': 'Testing',
343 'vmxvre_volume_id_0': 'f4eacb79-f687-4e9d-b760-21847c8bb15a',
344 'vmxvpfe_sriov42_0_port_unknownunicastallow': 'true',
345 'vmxvpfe_flavor_name': 'ns.c20r16d25.v5'
346 },
347 'type': 'VF',
348 'modelCustomizationName': '2017-388_ADIOD-vPE 1',
349 'vfModules': {},
350 'volumeGroups': {}
351 },
352 '2017-388_ADIOD-vPE 0': {
353 'uuid': 'afacccf6-397d-45d6-b5ae-94c39734b168',
354 'invariantUuid': '72e465fe-71b1-4e7b-b5ed-9496118ff7a8',
355 'description': 'Name ADIOD vPE Description The provider edge function for the ADIOD 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',
356 'name': '2017-388_ADIOD-vPE',
357 'version': '4.0',
358 'customizationUuid': 'b3c76f73-eeb5-4fb6-9d31-72a889f1811c',
359 'inputs': {
360 'vnf_config_template_version': {
361 'type': 'string',
362 'description': 'VPE Software Version',
363 'entry_schema': null,
364 'constraints': [],
365 'required': true,
366 'default': '17.2'
367 },
368 'bandwidth_units': {
369 'type': 'string',
370 'description': 'Units of bandwidth',
371 'entry_schema': null,
372 'constraints': [],
373 'required': true,
374 'default': 'Gbps'
375 },
376 'bandwidth': {
377 'type': 'string',
378 'description': 'Requested VPE bandwidth',
379 'entry_schema': null,
380 'constraints': [],
381 'required': true,
382 'default': '10'
383 },
384 'AIC_CLLI': {
385 'type': 'string',
386 'description': 'AIC Site CLLI',
387 'entry_schema': null,
388 'constraints': [],
389 'required': true,
390 'default': 'ATLMY8GA'
391 },
392 'ASN': {
393 'type': 'string',
394 'description': 'AV/PE',
395 'entry_schema': null,
396 'constraints': [],
397 'required': true,
398 'default': 'AV_vPE'
399 },
400 'vnf_instance_name': {
401 'type': 'string',
402 'description': 'The hostname assigned to the vpe.',
403 'entry_schema': null,
404 'constraints': [],
405 'required': true,
406 'default': 'mtnj309me6'
407 }
408 },
409 'commands': {
410 'vnf_config_template_version': {
411 'displayName': 'vnf_config_template_version',
412 'command': 'get_input',
413 'inputName': '2017488_adiodvpe0_vnf_config_template_version'
414 },
415 'bandwidth_units': {
416 'displayName': 'bandwidth_units',
417 'command': 'get_input',
418 'inputName': 'adiodvpe0_bandwidth_units'
419 },
420 'bandwidth': {'displayName': 'bandwidth', 'command': 'get_input', 'inputName': 'adiodvpe0_bandwidth'},
421 'AIC_CLLI': {'displayName': 'AIC_CLLI', 'command': 'get_input', 'inputName': '2017488_adiodvpe0_AIC_CLLI'},
422 'ASN': {'displayName': 'ASN', 'command': 'get_input', 'inputName': '2017488_adiodvpe0_ASN'},
423 'vnf_instance_name': {
424 'displayName': 'vnf_instance_name',
425 'command': 'get_input',
426 'inputName': '2017488_adiodvpe0_vnf_instance_name'
427 }
428 },
429 'properties': {
430 'vmxvre_retype': 'RE-VMX',
431 'vnf_config_template_version': 'get_input:2017488_adiodvpe0_vnf_config_template_version',
432 'sriov44_net_id': '48d399b3-11ee-48a8-94d2-f0ea94d6be8d',
433 'int_ctl_net_id': '2f323477-6936-4d01-ac53-d849430281d9',
434 'vmxvpfe_sriov41_0_port_mac': '00:11:22:EF:AC:DF',
435 'int_ctl_net_name': 'VMX-INTXI',
436 'vmx_int_ctl_prefix': '128.0.0.0',
437 'sriov43_net_id': 'da349ca1-6de9-4548-be88-2d88e99bfef5',
438 'sriov42_net_id': '760669ba-013d-4d9b-b0e7-4151fe2e6279',
439 'sriov41_net_id': '25ad52d5-c165-40f8-b3b0-ddfc2373280a',
440 'nf_type': 'vPE',
441 'vmxvpfe_int_ctl_ip_1': '128.0.0.16',
442 'is_AVPN_service': 'false',
443 'vmx_RSG_name': 'vREXI-affinity',
444 'vmx_int_ctl_forwarding': 'l2',
445 'vmxvre_oam_ip_0': '10.40.123.5',
446 'vmxvpfe_sriov44_0_port_mac': '00:11:22:EF:AC:DF',
447 'vmxvpfe_sriov41_0_port_vlanstrip': 'false',
448 'vmxvpfe_sriov42_0_port_vlanfilter': '4001',
449 'vmxvpfe_sriov44_0_port_unknownunicastallow': 'true',
450 'vmxvre_image_name_0': 'VRE-ENGINE_17.2-S2.1.qcow2',
451 'vmxvre_instance': '0',
452 'vmxvpfe_sriov43_0_port_mac': '00:11:22:EF:AC:DF',
453 'vmxvre_flavor_name': 'ns.c1r16d32.v5',
454 'vmxvpfe_volume_size_0': '40.0',
455 'vmxvpfe_sriov43_0_port_vlanfilter': '4001',
456 'nf_naming': '{ecomp_generated_naming=true}',
457 'nf_naming_code': 'Navneet',
458 'vmxvre_name_0': 'vREXI',
459 'vmxvpfe_sriov42_0_port_vlanstrip': 'false',
460 'vmxvpfe_volume_name_0': 'vPFEXI_FBVolume',
461 'vmx_RSG_id': 'bd89a33c-13c3-4a04-8fde-1a57eb123141',
462 'vmxvpfe_image_name_0': 'VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2',
463 'vmxvpfe_sriov43_0_port_unknownunicastallow': 'true',
464 'vmxvpfe_sriov44_0_port_unknownmulticastallow': 'true',
465 'vmxvre_console': 'vidconsole',
466 'vmxvpfe_sriov44_0_port_vlanfilter': '4001',
467 'vmxvpfe_sriov42_0_port_mac': '00:11:22:EF:AC:DF',
468 'vmxvpfe_volume_id_0': '47cede15-da2f-4397-a101-aa683220aff3',
469 'vmxvpfe_sriov42_0_port_unknownmulticastallow': 'true',
470 'vmxvpfe_sriov44_0_port_vlanstrip': 'false',
471 'vf_module_id': '123',
472 'nf_function': 'JAI',
473 'vmxvpfe_sriov43_0_port_unknownmulticastallow': 'true',
474 'vmxvre_int_ctl_ip_0': '128.0.0.1',
475 'AIC_CLLI': 'get_input:2017488_adiodvpe0_AIC_CLLI',
476 'vnf_name': 'mtnj309me6vre',
477 'vmxvpfe_sriov41_0_port_unknownunicastallow': 'true',
478 'vmxvre_volume_type_1': 'HITACHI',
479 'vmxvpfe_sriov44_0_port_broadcastallow': 'true',
480 'vmxvre_volume_type_0': 'HITACHI',
481 'vmxvpfe_volume_type_0': 'HITACHI',
482 'vmxvpfe_sriov43_0_port_broadcastallow': 'true',
483 'bandwidth_units': 'get_input:adiodvpe0_bandwidth_units',
484 'vnf_id': '123',
485 'vmxvre_oam_prefix': '24',
486 'availability_zone_0': 'mtpocfo-kvm-az01',
487 'ASN': 'get_input:2017488_adiodvpe0_ASN',
488 'vmxvre_chassis_i2cid': '161',
489 'vmxvpfe_name_0': 'vPFEXI',
490 'bandwidth': 'get_input:adiodvpe0_bandwidth',
491 'availability_zone_max_count': '1',
492 'vmxvre_volume_size_0': '45.0',
493 'vmxvre_volume_size_1': '50.0',
494 'vmxvpfe_sriov42_0_port_broadcastallow': 'true',
495 'vmxvre_oam_gateway': '10.40.123.1',
496 'vmxvre_volume_name_1': 'vREXI_FAVolume',
497 'vmxvre_ore_present': '0',
498 'vmxvre_volume_name_0': 'vREXI_FBVolume',
499 'vmxvre_type': '0',
500 'vnf_instance_name': 'get_input:2017488_adiodvpe0_vnf_instance_name',
501 'vmxvpfe_sriov41_0_port_unknownmulticastallow': 'true',
502 'oam_net_id': 'b95eeb1d-d55d-4827-abb4-8ebb94941429',
503 'vmx_int_ctl_len': '24',
504 'vmxvpfe_sriov43_0_port_vlanstrip': 'false',
505 'vmxvpfe_sriov41_0_port_broadcastallow': 'true',
506 'vmxvre_volume_id_1': '6e86797e-03cd-4fdc-ba72-2957119c746d',
507 'vmxvpfe_sriov41_0_port_vlanfilter': '4001',
508 'nf_role': 'Testing',
509 'vmxvre_volume_id_0': 'f4eacb79-f687-4e9d-b760-21847c8bb15a',
510 'vmxvpfe_sriov42_0_port_unknownunicastallow': 'true',
511 'vmxvpfe_flavor_name': 'ns.c20r16d25.v5'
512 },
513 'type': 'VF',
514 'modelCustomizationName': '2017-388_ADIOD-vPE 0',
515 'vfModules': {},
516 'volumeGroups': {}
517 },
518 '2017488_ADIODvPE 0': {
519 'uuid': '69e09f68-8b63-4cc9-b9ff-860960b5db09',
520 'invariantUuid': '72e465fe-71b1-4e7b-b5ed-9496118ff7a8',
521 'description': 'Name ADIOD vPE Description The provider edge function for the ADIOD 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',
522 'name': '2017488_ADIODvPE',
523 'version': '5.0',
524 'customizationUuid': '1da7b585-5e61-4993-b95e-8e6606c81e45',
525 'inputs': {
526 'vnf_config_template_version': {
527 'type': 'string',
528 'description': 'VPE Software Version',
529 'entry_schema': null,
530 'constraints': [],
531 'required': true,
532 'default': '17.2'
533 },
534 'bandwidth_units': {
535 'type': 'string',
536 'description': 'Units of bandwidth',
537 'entry_schema': null,
538 'constraints': [],
539 'required': true,
540 'default': 'Gbps'
541 },
542 'bandwidth': {
543 'type': 'string',
544 'description': 'Requested VPE bandwidth',
545 'entry_schema': null,
546 'constraints': [],
547 'required': true,
548 'default': '10'
549 },
550 'AIC_CLLI': {
551 'type': 'string',
552 'description': 'AIC Site CLLI',
553 'entry_schema': null,
554 'constraints': [],
555 'required': true,
556 'default': 'ATLMY8GA'
557 },
558 'ASN': {
559 'type': 'string',
560 'description': 'AV/PE',
561 'entry_schema': null,
562 'constraints': [],
563 'required': true,
564 'default': 'AV_vPE'
565 },
566 'vnf_instance_name': {
567 'type': 'string',
568 'description': 'The hostname assigned to the vpe.',
569 'entry_schema': null,
570 'constraints': [],
571 'required': true,
572 'default': 'mtnj309me6'
573 }
574 },
575 'commands': {
576 'vnf_config_template_version': {
577 'displayName': 'vnf_config_template_version',
578 'command': 'get_input',
579 'inputName': '2017488_adiodvpe0_vnf_config_template_version'
580 },
581 'bandwidth_units': {
582 'displayName': 'bandwidth_units',
583 'command': 'get_input',
584 'inputName': 'adiodvpe0_bandwidth_units'
585 },
586 'bandwidth': {'displayName': 'bandwidth', 'command': 'get_input', 'inputName': 'adiodvpe0_bandwidth'},
587 'AIC_CLLI': {'displayName': 'AIC_CLLI', 'command': 'get_input', 'inputName': '2017488_adiodvpe0_AIC_CLLI'},
588 'ASN': {'displayName': 'ASN', 'command': 'get_input', 'inputName': '2017488_adiodvpe0_ASN'},
589 'vnf_instance_name': {
590 'displayName': 'vnf_instance_name',
591 'command': 'get_input',
592 'inputName': '2017488_adiodvpe0_vnf_instance_name'
593 }
594 },
595 'properties': {
596 'vmxvre_retype': 'RE-VMX',
597 'vnf_config_template_version': 'get_input:2017488_adiodvpe0_vnf_config_template_version',
598 'sriov44_net_id': '48d399b3-11ee-48a8-94d2-f0ea94d6be8d',
599 'int_ctl_net_id': '2f323477-6936-4d01-ac53-d849430281d9',
600 'vmxvpfe_sriov41_0_port_mac': '00:11:22:EF:AC:DF',
601 'int_ctl_net_name': 'VMX-INTXI',
602 'vmx_int_ctl_prefix': '128.0.0.0',
603 'sriov43_net_id': 'da349ca1-6de9-4548-be88-2d88e99bfef5',
604 'sriov42_net_id': '760669ba-013d-4d9b-b0e7-4151fe2e6279',
605 'sriov41_net_id': '25ad52d5-c165-40f8-b3b0-ddfc2373280a',
606 'nf_type': 'vPE',
607 'vmxvpfe_int_ctl_ip_1': '128.0.0.16',
608 'is_AVPN_service': 'false',
609 'vmx_RSG_name': 'vREXI-affinity',
610 'vmx_int_ctl_forwarding': 'l2',
611 'vmxvre_oam_ip_0': '10.40.123.5',
612 'vmxvpfe_sriov44_0_port_mac': '00:11:22:EF:AC:DF',
613 'vmxvpfe_sriov41_0_port_vlanstrip': 'false',
614 'vmxvpfe_sriov42_0_port_vlanfilter': '4001',
615 'vmxvpfe_sriov44_0_port_unknownunicastallow': 'true',
616 'vmxvre_image_name_0': 'VRE-ENGINE_17.2-S2.1.qcow2',
617 'vmxvre_instance': '0',
618 'vmxvpfe_sriov43_0_port_mac': '00:11:22:EF:AC:DF',
619 'vmxvre_flavor_name': 'ns.c1r16d32.v5',
620 'vmxvpfe_volume_size_0': '40.0',
621 'vmxvpfe_sriov43_0_port_vlanfilter': '4001',
622 'nf_naming': '{ecomp_generated_naming=true}',
623 'nf_naming_code': 'Navneet',
624 'vmxvre_name_0': 'vREXI',
625 'vmxvpfe_sriov42_0_port_vlanstrip': 'false',
626 'vmxvpfe_volume_name_0': 'vPFEXI_FBVolume',
627 'vmx_RSG_id': 'bd89a33c-13c3-4a04-8fde-1a57eb123141',
628 'vmxvpfe_image_name_0': 'VPE_ROUTING-ENGINE_17.2R1-S2.1.qcow2',
629 'vmxvpfe_sriov43_0_port_unknownunicastallow': 'true',
630 'vmxvpfe_sriov44_0_port_unknownmulticastallow': 'true',
631 'vmxvre_console': 'vidconsole',
632 'vmxvpfe_sriov44_0_port_vlanfilter': '4001',
633 'vmxvpfe_sriov42_0_port_mac': '00:11:22:EF:AC:DF',
634 'vmxvpfe_volume_id_0': '47cede15-da2f-4397-a101-aa683220aff3',
635 'vmxvpfe_sriov42_0_port_unknownmulticastallow': 'true',
636 'vmxvpfe_sriov44_0_port_vlanstrip': 'false',
637 'vf_module_id': '123',
638 'nf_function': 'JAI',
639 'vmxvpfe_sriov43_0_port_unknownmulticastallow': 'true',
640 'vmxvre_int_ctl_ip_0': '128.0.0.1',
641 'AIC_CLLI': 'get_input:2017488_adiodvpe0_AIC_CLLI',
642 'vnf_name': 'mtnj309me6vre',
643 'vmxvpfe_sriov41_0_port_unknownunicastallow': 'true',
644 'vmxvre_volume_type_1': 'HITACHI',
645 'vmxvpfe_sriov44_0_port_broadcastallow': 'true',
646 'vmxvre_volume_type_0': 'HITACHI',
647 'vmxvpfe_volume_type_0': 'HITACHI',
648 'vmxvpfe_sriov43_0_port_broadcastallow': 'true',
649 'bandwidth_units': 'get_input:adiodvpe0_bandwidth_units',
650 'vnf_id': '123',
651 'vmxvre_oam_prefix': '24',
652 'availability_zone_0': 'mtpocfo-kvm-az01',
653 'ASN': 'get_input:2017488_adiodvpe0_ASN',
654 'vmxvre_chassis_i2cid': '161',
655 'vmxvpfe_name_0': 'vPFEXI',
656 'bandwidth': 'get_input:adiodvpe0_bandwidth',
657 'availability_zone_max_count': '1',
658 'vmxvre_volume_size_0': '45.0',
659 'vmxvre_volume_size_1': '50.0',
660 'vmxvpfe_sriov42_0_port_broadcastallow': 'true',
661 'vmxvre_oam_gateway': '10.40.123.1',
662 'vmxvre_volume_name_1': 'vREXI_FAVolume',
663 'vmxvre_ore_present': '0',
664 'vmxvre_volume_name_0': 'vREXI_FBVolume',
665 'vmxvre_type': '0',
666 'vnf_instance_name': 'get_input:2017488_adiodvpe0_vnf_instance_name',
667 'vmxvpfe_sriov41_0_port_unknownmulticastallow': 'true',
668 'oam_net_id': 'b95eeb1d-d55d-4827-abb4-8ebb94941429',
669 'vmx_int_ctl_len': '24',
670 'vmxvpfe_sriov43_0_port_vlanstrip': 'false',
671 'vmxvpfe_sriov41_0_port_broadcastallow': 'true',
672 'vmxvre_volume_id_1': '6e86797e-03cd-4fdc-ba72-2957119c746d',
673 'vmxvpfe_sriov41_0_port_vlanfilter': '4001',
674 'nf_role': 'Testing',
675 'vmxvre_volume_id_0': 'f4eacb79-f687-4e9d-b760-21847c8bb15a',
676 'vmxvpfe_sriov42_0_port_unknownunicastallow': 'true',
677 'vmxvpfe_flavor_name': 'ns.c20r16d25.v5'
678 },
679 'type': 'VF',
680 'modelCustomizationName': '2017488_ADIODvPE 0',
681 'vfModules': {
682 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vRE_BV..module-1': {
683 'uuid': '25284168-24bb-4698-8cb4-3f509146eca5',
684 'invariantUuid': '7253ff5c-97f0-4b8b-937c-77aeb4d79aa1',
685 'customizationUuid': 'f7e7c365-60cf-49a9-9ebf-a1aa11b9d401',
686 'description': null,
687 'name': '2017488AdiodVpe..ADIOD_vRE_BV..module-1',
688 'version': '6',
689 'modelCustomizationName': '2017488AdiodVpe..ADIOD_vRE_BV..module-1',
690 'properties': {'minCountInstances': 0, 'maxCountInstances': null, 'initialCount': 0},
691 'commands': {},
692 'volumeGroupAllowed': true,
693 'inputs': {
694 '2017488_adiodvpe0_vnf_config_template_version': {
695 'type': 'string',
696 'description': 'VPE Software Version',
697 'entry_schema': null,
698 'constraints': [],
699 'required': true,
700 'default': '17.2'
701 },
702 '2017488_adiodvpe0_AIC_CLLI': {
703 'type': 'string',
704 'description': 'AIC Site CLLI',
705 'entry_schema': null,
706 'constraints': [],
707 'required': true,
708 'default': 'ATLMY8GA'
709 }
710 }
711 },
712 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_base_vPE_BV..module-0': {
713 'uuid': 'f8360508-3f17-4414-a2ed-6bc71161e8db',
714 'invariantUuid': 'b34833bb-6aa9-4ad6-a831-70b06367a091',
715 'customizationUuid': 'a55961b2-2065-4ab0-a5b7-2fcee1c227e3',
716 'description': null,
717 'name': '2017488AdiodVpe..ADIOD_base_vPE_BV..module-0',
718 'version': '5',
719 'modelCustomizationName': '2017488AdiodVpe..ADIOD_base_vPE_BV..module-0',
720 'properties': {'minCountInstances': 1, 'maxCountInstances': 1, 'initialCount': 1},
721 'commands': {},
722 'volumeGroupAllowed': false,
723 'inputs': {
724 '2017488_adiodvpe0_ASN': {
725 'type': 'string',
726 'description': 'AV/PE',
727 'entry_schema': null,
728 'constraints': [],
729 'required': true,
730 'default': 'AV_vPE'
731 },
732 'adiodvpe0_bandwidth': {
733 'type': 'string',
734 'description': 'Requested VPE bandwidth',
735 'entry_schema': null,
736 'constraints': [],
737 'required': true,
738 'default': '10'
739 }
740 }
741 },
742 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vPFE_BV..module-2': {
743 'uuid': '0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a',
744 'invariantUuid': 'eff8cc59-53a1-4101-aed7-8cf24ecf8339',
745 'customizationUuid': '3cd946bb-50e0-40d8-96d3-c9023520b557',
746 'description': null,
747 'name': '2017488AdiodVpe..ADIOD_vPFE_BV..module-2',
748 'version': '6',
749 'modelCustomizationName': '2017488AdiodVpe..ADIOD_vPFE_BV..module-2',
750 'properties': {'minCountInstances': 0, 'maxCountInstances': null, 'initialCount': 0},
751 'commands': {},
752 'volumeGroupAllowed': true,
753 'inputs': {}
754 }
755 },
756 'volumeGroups': {
757 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vRE_BV..module-1': {
758 'uuid': '25284168-24bb-4698-8cb4-3f509146eca5',
759 'invariantUuid': '7253ff5c-97f0-4b8b-937c-77aeb4d79aa1',
760 'customizationUuid': 'f7e7c365-60cf-49a9-9ebf-a1aa11b9d401',
761 'description': null,
762 'name': '2017488AdiodVpe..ADIOD_vRE_BV..module-1',
763 'version': '6',
764 'modelCustomizationName': '2017488AdiodVpe..ADIOD_vRE_BV..module-1',
765 'properties': {'minCountInstances': 0, 'maxCountInstances': null, 'initialCount': 0}
766 },
767 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vPFE_BV..module-2': {
768 'uuid': '0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a',
769 'invariantUuid': 'eff8cc59-53a1-4101-aed7-8cf24ecf8339',
770 'customizationUuid': '3cd946bb-50e0-40d8-96d3-c9023520b557',
771 'description': null,
772 'name': '2017488AdiodVpe..ADIOD_vPFE_BV..module-2',
773 'version': '6',
774 'modelCustomizationName': '2017488AdiodVpe..ADIOD_vPFE_BV..module-2',
775 'properties': {'minCountInstances': 0, 'maxCountInstances': null, 'initialCount': 0}
776 }
777 }
778 }
779 },
780 'vfModules': {
781 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vRE_BV..module-1': {
782 'uuid': '25284168-24bb-4698-8cb4-3f509146eca5',
783 'invariantUuid': '7253ff5c-97f0-4b8b-937c-77aeb4d79aa1',
784 'customizationUuid': 'f7e7c365-60cf-49a9-9ebf-a1aa11b9d401',
785 'description': null,
786 'name': '2017488AdiodVpe..ADIOD_vRE_BV..module-1',
787 'version': '6',
788 'modelCustomizationName': '2017488AdiodVpe..ADIOD_vRE_BV..module-1',
789 'properties': {'minCountInstances': 0, 'maxCountInstances': null, 'initialCount': 0},
790 'commands': {},
791 'volumeGroupAllowed': true
792 },
793 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_base_vPE_BV..module-0': {
794 'uuid': 'f8360508-3f17-4414-a2ed-6bc71161e8db',
795 'invariantUuid': 'b34833bb-6aa9-4ad6-a831-70b06367a091',
796 'customizationUuid': 'a55961b2-2065-4ab0-a5b7-2fcee1c227e3',
797 'description': null,
798 'name': '2017488AdiodVpe..ADIOD_base_vPE_BV..module-0',
799 'version': '5',
800 'modelCustomizationName': '2017488AdiodVpe..ADIOD_base_vPE_BV..module-0',
801 'properties': {'minCountInstances': 1, 'maxCountInstances': 1, 'initialCount': 1},
802 'commands': {},
803 'volumeGroupAllowed': false
804 },
805 '2017488_adiodvpe0..2017488AdiodVpe..ADIOD_vPFE_BV..module-2': {
806 'uuid': '0a0dd9d4-31d3-4c3a-ae89-a02f383e6a9a',
807 'invariantUuid': 'eff8cc59-53a1-4101-aed7-8cf24ecf8339',
808 'customizationUuid': '3cd946bb-50e0-40d8-96d3-c9023520b557',
809 'description': null,
810 'name': '2017488AdiodVpe..ADIOD_vPFE_BV..module-2',
811 'version': '6',
812 'modelCustomizationName': '2017488AdiodVpe..ADIOD_vPFE_BV..module-2',
813 'properties': {'minCountInstances': 0, 'maxCountInstances': null, 'initialCount': 0},
814 'commands': {},
815 'volumeGroupAllowed': true
816 }
817 },
818 'networks': {},
819 'collectionResource': {},
820 'configurations': {},
821 'serviceProxies': {},
822 'pnfs': {}
823 }
824 ))
825 }
826
827});