use of org.onap.sdc.toscaparser.api.elements.Metadata in project so by onap.
the class ToscaResourceInputTest method resouceInputTest.
@Test
public void resouceInputTest() throws ArtifactInstallerException {
ToscaResourceInstaller toscaResourceInstaller = new ToscaResourceInstaller();
ToscaResourceStructure toscaResourceStructure = new ToscaResourceStructure();
toscaResourceStructure.setSdcCsarHelper(sdcCsarHelper);
Map hashMap = new HashMap();
hashMap.put("customizationUUID", "id1");
Metadata metadata = new Metadata(hashMap);
Map<String, Property> propertyMap = new HashMap<String, Property>();
propertyMap.put("prop1", property);
when(toscaResourceInstaller.getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder(EntityTemplateType.NODE_TEMPLATE), TopologyTemplateQuery.newBuilder(SdcTypes.SERVICE), false)).thenReturn(Arrays.asList(entityDetails));
when(entityDetails.getMetadata()).thenReturn(metadata);
when(entityDetails.getProperties()).thenReturn(propertyMap);
when(property.getValue()).thenReturn("value1");
String resourceInput = toscaResourceInstaller.getResourceInput(toscaResourceStructure, "id1");
assertEquals("{}", resourceInput);
}
use of org.onap.sdc.toscaparser.api.elements.Metadata in project so by onap.
the class ToscaResourceInstaller method getConfigurationResourceCustomization.
protected ConfigurationResourceCustomization getConfigurationResourceCustomization(IEntityDetails configEntity, ToscaResourceStructure toscaResourceStructure, ServiceProxyResourceCustomization spResourceCustomization, Service service) {
Metadata metadata = configEntity.getMetadata();
ConfigurationResource configResource = getConfigurationResource(configEntity);
ConfigurationResourceCustomization configCustomizationResource = new ConfigurationResourceCustomization();
Set<ConfigurationResourceCustomization> configResourceCustomizationSet = new HashSet<>();
configCustomizationResource.setModelCustomizationUUID(metadata.getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID));
configCustomizationResource.setModelInstanceName(configEntity.getName());
configCustomizationResource.setFunction(getLeafPropertyValue(configEntity, "function"));
configCustomizationResource.setRole(getLeafPropertyValue(configEntity, "role"));
configCustomizationResource.setType(getLeafPropertyValue(configEntity, "type"));
configCustomizationResource.setServiceProxyResourceCustomization(spResourceCustomization);
configCustomizationResource.setConfigurationResource(configResource);
configCustomizationResource.setService(service);
configResourceCustomizationSet.add(configCustomizationResource);
configResource.setConfigurationResourceCustomization(configResourceCustomizationSet);
return configCustomizationResource;
}
use of org.onap.sdc.toscaparser.api.elements.Metadata in project so by onap.
the class ToscaResourceInstallerTest method prepareToscaResourceStructure.
private ToscaResourceStructure prepareToscaResourceStructure(boolean prepareVFModuleStructures, ToscaResourceInstaller toscaInstaller) throws ArtifactInstallerException {
Metadata metadata = mock(Metadata.class);
IResourceInstance resourceInstance = mock(ResourceInstance.class);
NodeTemplate nodeTemplate = mock(NodeTemplate.class);
ISdcCsarHelper csarHelper = mock(SdcCsarHelperImpl.class);
IArtifactInfo inputCsar = mock(IArtifactInfo.class);
String artifactUuid = "0122c05e-e13a-4c63-b5d2-475ccf23aa74";
String checkSum = "MGUzNjJjMzk3OTBkYzExYzQ0MDg2ZDc2M2E3ZjZiZmY=";
doReturn(checkSum).when(inputCsar).getArtifactChecksum();
doReturn(artifactUuid).when(inputCsar).getArtifactUUID();
doReturn("1.0").when(inputCsar).getArtifactVersion();
doReturn("TestCsarWithGroupAndVFModule").when(inputCsar).getArtifactName();
doReturn("Test Csar data with Group and VF module inputs").when(inputCsar).getArtifactDescription();
doReturn("http://localhost/dummy/url/test.csar").when(inputCsar).getArtifactURL();
ToscaResourceStructure toscaResourceStructObj = new ToscaResourceStructure();
toscaResourceStructObj.setToscaArtifact(inputCsar);
ToscaCsarRepository toscaCsarRepo = spy(ToscaCsarRepository.class);
ToscaCsar toscaCsar = mock(ToscaCsar.class);
Optional<ToscaCsar> returnValue = Optional.of(toscaCsar);
doReturn(artifactUuid).when(toscaCsar).getArtifactUUID();
doReturn(checkSum).when(toscaCsar).getArtifactChecksum();
doReturn(returnValue).when(toscaCsarRepo).findById(artifactUuid);
ReflectionTestUtils.setField(toscaInstaller, "toscaCsarRepo", toscaCsarRepo);
NotificationDataImpl notificationData = new NotificationDataImpl();
notificationData.setDistributionID("testStatusSuccessfulTosca");
notificationData.setServiceVersion("1234567");
notificationData.setServiceUUID("serviceUUID1");
notificationData.setWorkloadContext("workloadContext1");
String serviceType = "test-type1";
String serviceRole = "test-role1";
String category = "Network L3+";
String description = "Customer Orderable service description";
String name = "Customer_Orderable_Service";
String uuid = "72db5868-4575-4804-b546-0b0d3c3b5ac6";
String invariantUUID = "6f30bbe3-4590-4185-a7e0-4f9610926c6f";
String namingPolicy = "naming Policy1";
String ecompGeneratedNaming = "true";
String environmentContext = "General_Revenue-Bearing1";
String resourceCustomizationUUID = "0177ba22-5547-4e4e-bcf8-178f7f71de3a";
doReturn(serviceType).when(metadata).getValue("serviceType");
doReturn(serviceRole).when(metadata).getValue("serviceRole");
doReturn(category).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_CATEGORY);
doReturn(description).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_DESCRIPTION);
doReturn("1.0").when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_VERSION);
doReturn(name).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_NAME);
doReturn(uuid).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_UUID);
doReturn(environmentContext).when(metadata).getValue(metadata.getValue("environmentContext"));
doReturn(invariantUUID).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID);
doReturn(namingPolicy).when(metadata).getValue("namingPolicy");
doReturn(ecompGeneratedNaming).when(metadata).getValue("ecompGeneratedNaming");
doReturn(resourceCustomizationUUID).when(metadata).getValue("vfModuleModelCustomizationUUID");
ServiceRepository serviceRepo = spy(ServiceRepository.class);
VnfResourceRepository vnfRepo = spy(VnfResourceRepository.class);
doReturn(null).when(vnfRepo).findResourceByModelUUID(uuid);
VFModuleRepository vfModuleRepo = spy(VFModuleRepository.class);
InstanceGroupRepository instanceGroupRepo = spy(InstanceGroupRepository.class);
WorkflowResource workflowResource = spy(WorkflowResource.class);
ReflectionTestUtils.setField(toscaInstaller, "serviceRepo", serviceRepo);
ReflectionTestUtils.setField(toscaInstaller, "vnfRepo", vnfRepo);
ReflectionTestUtils.setField(toscaInstaller, "vfModuleRepo", vfModuleRepo);
ReflectionTestUtils.setField(toscaInstaller, "instanceGroupRepo", instanceGroupRepo);
ReflectionTestUtils.setField(toscaInstaller, "workflowResource", workflowResource);
// doReturn(csarHelper).when(toscaResourceStructure).getSdcCsarHelper();
toscaResourceStructObj.setSdcCsarHelper(csarHelper);
doReturn(resourceCustomizationUUID).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID);
doReturn(uuid).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_VFMODULEMODELUUID);
// vnfc instance group list
List<Group> vnfcInstanceGroupList = new ArrayList<>();
Group vnfcG1 = mock(Group.class);
Map<String, Object> metaProperties = new HashMap<>();
metaProperties.put(SdcPropertyNames.PROPERTY_NAME_UUID, "vnfc_group1_uuid");
metaProperties.put(SdcPropertyNames.PROPERTY_NAME_NAME, "vnfc_group1_uuid");
metaProperties.put(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID, "vnfc_group1_invariantid");
metaProperties.put(SdcPropertyNames.PROPERTY_NAME_VERSION, "1.0");
Metadata vnfcmetadata = new Metadata(metaProperties);
doReturn(vnfcmetadata).when(vnfcG1).getMetadata();
ArrayList<NodeTemplate> memberList = new ArrayList();
doReturn(memberList).when(vnfcG1).getMemberNodes();
vnfcInstanceGroupList.add(vnfcG1);
SubstitutionMappings submappings = mock(SubstitutionMappings.class);
doReturn(new ArrayList<Input>()).when(submappings).getInputs();
doReturn(submappings).when(nodeTemplate).getSubMappingToscaTemplate();
doReturn(notificationData).when(vfResourceStruct).getNotification();
doReturn(resourceInstance).when(vfResourceStruct).getResourceInstance();
if (prepareVFModuleStructures) {
// VfModule list
List<Group> vfModuleGroups = new ArrayList<>();
Group g1 = mock(Group.class);
doReturn(metadata).when(g1).getMetadata();
vfModuleGroups.add(g1);
doReturn(metadata).when(nodeTemplate).getMetaData();
List<NodeTemplate> nodeList = new ArrayList<>();
nodeList.add(nodeTemplate);
IVfModuleData moduleMetadata = mock(IVfModuleData.class);
doReturn(name).when(moduleMetadata).getVfModuleModelName();
doReturn(invariantUUID).when(moduleMetadata).getVfModuleModelInvariantUUID();
doReturn(Collections.<String>emptyList()).when(moduleMetadata).getArtifacts();
doReturn(resourceCustomizationUUID).when(moduleMetadata).getVfModuleModelCustomizationUUID();
doReturn(uuid).when(moduleMetadata).getVfModuleModelUUID();
doReturn("1.0").when(moduleMetadata).getVfModuleModelVersion();
VfModuleStructure moduleStructure = new VfModuleStructure(vfResourceStruct, moduleMetadata);
List<VfModuleStructure> moduleStructures = new ArrayList<>();
moduleStructures.add(moduleStructure);
doReturn(moduleStructures).when(vfResourceStruct).getVfModuleStructure();
}
toscaResourceStructObj.setServiceMetadata(metadata);
doReturn("resourceInstanceName1").when(resourceInstance).getResourceInstanceName();
doReturn(resourceCustomizationUUID).when(resourceInstance).getResourceCustomizationUUID();
doReturn("resourceName1").when(resourceInstance).getResourceName();
Service service = toscaInstaller.createService(toscaResourceStructObj, vfResourceStruct);
assertNotNull(service);
service.setModelVersion("1.0");
doReturn(service).when(serviceRepo).save(service);
WatchdogComponentDistributionStatusRepository watchdogCDStatusRepository = spy(WatchdogComponentDistributionStatusRepository.class);
ReflectionTestUtils.setField(toscaInstaller, "watchdogCDStatusRepository", watchdogCDStatusRepository);
doReturn(null).when(watchdogCDStatusRepository).save(any(WatchdogComponentDistributionStatus.class));
VnfcInstanceGroupCustomizationRepository vnfcInstanceGroupCustomizationRepo = spy(VnfcInstanceGroupCustomizationRepository.class);
ReflectionTestUtils.setField(toscaInstaller, "vnfcInstanceGroupCustomizationRepo", vnfcInstanceGroupCustomizationRepo);
doReturn(null).when(vnfcInstanceGroupCustomizationRepo).save(any(VnfcInstanceGroupCustomization.class));
return toscaResourceStructObj;
}
use of org.onap.sdc.toscaparser.api.elements.Metadata in project so by onap.
the class ToscaResourceInstallerTest method createServiceTest.
@Test
public void createServiceTest() {
ToscaResourceStructure toscaResourceStructure = mock(ToscaResourceStructure.class);
ResourceStructure resourceStructure = mock(ResourceStructure.class);
Metadata metadata = mock(Metadata.class);
INotificationData notification = mock(INotificationData.class);
doReturn("e2899e5c-ae35-434c-bada-0fabb7c1b44d").when(toscaResourceStructure).getServiceVersion();
doReturn(metadata).when(toscaResourceStructure).getServiceMetadata();
doReturn("production").when(notification).getWorkloadContext();
doReturn(notification).when(resourceStructure).getNotification();
String serviceType = "test-type";
String serviceRole = "test-role";
String category = "Network L4+";
String description = "Customer Orderable service description";
String name = "Customer Orderable Service";
String uuid = "72db5868-4575-4804-b546-0b0d3c3b5ac6";
String invariantUUID = "6f30bbe3-4590-4185-a7e0-4f9610926c6f";
String namingPolicy = "naming Policy";
String ecompGeneratedNaming = "true";
String environmentContext = "General_Revenue-Bearing";
doReturn(serviceType).when(metadata).getValue("serviceType");
doReturn(serviceRole).when(metadata).getValue("serviceRole");
doReturn(category).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_CATEGORY);
doReturn(description).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_DESCRIPTION);
doReturn(name).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_NAME);
doReturn(uuid).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_UUID);
doReturn(environmentContext).when(metadata).getValue(metadata.getValue("environmentContext"));
doReturn(invariantUUID).when(metadata).getValue(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID);
doReturn(namingPolicy).when(metadata).getValue("namingPolicy");
doReturn(ecompGeneratedNaming).when(metadata).getValue("ecompGeneratedNaming");
ISdcCsarHelper iSdcCsarHelper = mock(ISdcCsarHelper.class);
List<Input> serviceInputs = new ArrayList<Input>();
LinkedHashMap<String, Object> value = new LinkedHashMap<String, Object>();
value.put("controller_actor", "SO-REF-DATA");
value.put("type", "string");
Input input = new Input("controller_actor", value, null);
serviceInputs.add(0, input);
value = new LinkedHashMap<String, Object>();
value.put("cds_model_version", "v1.4.0");
value.put("type", "string");
input = new Input("cds_model_version", value, null);
serviceInputs.add(1, input);
value = new LinkedHashMap<String, Object>();
value.put("cds_model_name", "Blueprint140");
value.put("type", "string");
input = new Input("cds_model_name", value, null);
serviceInputs.add(2, input);
value = new LinkedHashMap<String, Object>();
value.put("skip_post_instantiation_configuration", "false");
value.put("type", "boolean");
input = new Input("skip_post_instantiation_configuration", value, null);
serviceInputs.add(3, input);
doReturn(iSdcCsarHelper).when(toscaResourceStructure).getSdcCsarHelper();
doReturn(serviceInputs).when(iSdcCsarHelper).getServiceInputs();
Service service = toscaInstaller.createService(toscaResourceStructure, resourceStructure);
assertNotNull(service);
verify(toscaResourceStructure, times(2)).getServiceVersion();
assertNotNull(service.getNamingPolicy());
assertEquals(serviceType, service.getServiceType());
assertEquals(serviceRole, service.getServiceRole());
assertEquals(category, service.getCategory());
assertEquals(description, service.getDescription());
assertEquals(uuid, service.getModelUUID());
assertEquals(invariantUUID, service.getModelInvariantUUID());
assertEquals(namingPolicy, service.getNamingPolicy());
assertTrue(service.getOnapGeneratedNaming());
}
use of org.onap.sdc.toscaparser.api.elements.Metadata in project so by onap.
the class ASDCController method processNsstNotification.
private void processNsstNotification(INotificationData iNotif, ToscaResourceStructure toscaResourceStructure) {
Metadata serviceMetadata = toscaResourceStructure.getServiceMetadata();
try {
String category = serviceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_CATEGORY);
boolean isNeedInital = (category.contains("NSST") || category.equalsIgnoreCase("TN Network Requirement")) && iNotif.getResources().isEmpty();
if (isNeedInital) {
String artifactContent = null;
List<IArtifactInfo> serviceArtifacts = iNotif.getServiceArtifacts();
Optional<IArtifactInfo> artifactOpt = serviceArtifacts.stream().filter(e -> e.getArtifactType().equalsIgnoreCase("WORKFLOW")).findFirst();
if (artifactOpt.isPresent()) {
IArtifactInfo artifactInfo = artifactOpt.get();
logger.debug("Ready to parse this serviceArtifactUUID: " + artifactInfo.getArtifactUUID());
String filePath = Paths.get(getMsoConfigPath(), "ASDC", artifactInfo.getArtifactVersion(), artifactInfo.getArtifactName()).normalize().toString();
ZipParser zipParserInstance = ZipParser.getInstance();
artifactContent = zipParserInstance.parseJsonForZip(filePath);
logger.debug("serviceArtifact parsing success! serviceArtifactUUID: " + artifactInfo.getArtifactUUID());
ResourceStructure resourceStructure = new VfResourceStructure(iNotif, new ResourceInstance());
resourceStructure.setResourceType(ResourceType.OTHER);
toscaInstaller.installNsstService(toscaResourceStructure, (VfResourceStructure) resourceStructure, artifactContent);
} else {
logger.debug("serviceArtifact is null");
toscaInstaller.installNsstService(toscaResourceStructure, null, null);
}
}
} catch (IOException e) {
logger.error("serviceArtifact parse failure for service uuid: " + serviceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_CATEGORY));
} catch (Exception e) {
logger.error("error NSST process resource failure ", e);
}
}
Aggregations