use of org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy in project so by onap.
the class AAICreateTasks method createNetworkPolicies.
/**
* This method is used to put the network policy in A&AI.
*
* @param execution @throws
*/
public void createNetworkPolicies(BuildingBlockExecution execution) {
try {
String fqdns = execution.getVariable(CONTRAIL_NETWORK_POLICY_FQDN_LIST);
if (fqdns != null && !fqdns.isEmpty()) {
String[] fqdnList = fqdns.split(",");
int fqdnCount = fqdnList.length;
if (fqdnCount > 0) {
for (int i = 0; i < fqdnCount; i++) {
String fqdn = fqdnList[i];
AAIPluralResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().networkPolicies());
uri.queryParam(NETWORK_POLICY_FQDN_PARAM, fqdn);
Optional<org.onap.aai.domain.yang.NetworkPolicy> oNetPolicy = aaiNetworkResources.getNetworkPolicy(uri);
if (!oNetPolicy.isPresent()) {
logger.debug("This network policy FQDN is not in AAI yet: {}", fqdn);
String networkPolicyId = UUID.randomUUID().toString();
logger.debug("Adding network-policy with network-policy-id {}", networkPolicyId);
NetworkPolicy networkPolicy = new NetworkPolicy();
networkPolicy.setNetworkPolicyId(networkPolicyId);
networkPolicy.setNetworkPolicyFqdn(fqdn);
networkPolicy.setHeatStackId(execution.getVariable(HEAT_STACK_ID));
aaiNetworkResources.createNetworkPolicy(networkPolicy);
}
}
}
}
} catch (Exception ex) {
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
}
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy in project so by onap.
the class AAICreateTasksTest method createNetworkPolicyNeedToCreateNoneTest.
@Test
public void createNetworkPolicyNeedToCreateNoneTest() {
execution.setVariable("heatStackId", "testHeatStackId");
execution.setVariable("contrailNetworkPolicyFqdnList", "ABC123");
NetworkPolicy networkPolicy = new NetworkPolicy();
doReturn(Optional.of(networkPolicy)).when(aaiNetworkResources).getNetworkPolicy(any(AAIBaseResourceUri.class));
doNothing().when(aaiNetworkResources).createNetworkPolicy(any(NetworkPolicy.class));
aaiCreateTasks.createNetworkPolicies(execution);
verify(aaiNetworkResources, times(0)).createNetworkPolicy(any(NetworkPolicy.class));
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy in project so by onap.
the class TestDataSetup method buildNetworkPolicy.
public NetworkPolicy buildNetworkPolicy() {
NetworkPolicy networkPolicy = new NetworkPolicy();
networkPolicy.setNetworkPolicyId("testNetworkPolicyId");
networkPolicy.setNetworkPolicyFqdn("testNetworkPolicyFqdn");
networkPolicy.setHeatStackId("testHeatStackId");
return networkPolicy;
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy in project so by onap.
the class NetworkAdapterObjectMapperTest method updateNetworkRequestMapperTest.
@Test
public void updateNetworkRequestMapperTest() throws UnsupportedEncodingException {
org.onap.so.openstack.beans.Subnet subnet = new org.onap.so.openstack.beans.Subnet();
subnet.setSubnetId("subnetId");
subnet.setGatewayIp("NULL");
subnet.setHostRoutes(new ArrayList<org.onap.so.openstack.beans.HostRoute>());
List<org.onap.so.openstack.beans.Subnet> subnets = new ArrayList<>();
subnets.add(subnet);
ProviderVlanNetwork providerVlanNetwork = new ProviderVlanNetwork("physicalNetworkName", new ArrayList<Integer>());
List<String> policyFqdns = Arrays.asList("networkPolicyFqdn");
org.onap.so.openstack.beans.RouteTarget expectedRouteTarget = new org.onap.so.openstack.beans.RouteTarget();
expectedRouteTarget.setRouteTarget("globalRouteTarget");
ContrailNetwork contrailNetwork = new ContrailNetwork();
contrailNetwork.setPolicyFqdns(policyFqdns);
contrailNetwork.setRouteTableFqdns(new ArrayList<String>());
contrailNetwork.setRouteTargets(new ArrayList<org.onap.so.openstack.beans.RouteTarget>());
contrailNetwork.getRouteTargets().add(expectedRouteTarget);
contrailNetwork.getRouteTableFqdns().add("routeTableReferenceFqdn");
MsoRequest msoRequest = new MsoRequest();
msoRequest.setServiceInstanceId("testServiceInstanceId1");
ModelInfoNetwork modelInfoNetwork = new ModelInfoNetwork();
modelInfoNetwork.setNetworkType("networkType");
modelInfoNetwork.setModelCustomizationUUID("modelCustomizationUuid");
modelInfoNetwork.setModelVersion("modelVersion");
Subnet actualSubnet = new Subnet();
actualSubnet.setSubnetId("subnetId");
actualSubnet.setDhcpEnabled(false);
actualSubnet.setIpVersion("4");
RouteTarget routeTarget = new RouteTarget();
routeTarget.setGlobalRouteTarget("globalRouteTarget");
VpnBinding vpnBinding = new VpnBinding();
vpnBinding.setVpnId("vpnId");
vpnBinding.getRouteTargets().add(routeTarget);
Customer customer = new Customer();
customer.getVpnBindings().add(vpnBinding);
ServiceSubscription serviceSubscription = new ServiceSubscription();
customer.setServiceSubscription(serviceSubscription);
// set Customer on service instance
customer.getServiceSubscription().getServiceInstances().add(serviceInstance);
NetworkPolicy networkPolicy = new NetworkPolicy();
networkPolicy.setNetworkPolicyId("networkPolicyId");
networkPolicy.setNetworkPolicyFqdn("networkPolicyFqdn");
RouteTableReference routeTableReference = new RouteTableReference();
routeTableReference.setRouteTableReferenceFqdn("routeTableReferenceFqdn");
l3Network.setModelInfoNetwork(modelInfoNetwork);
l3Network.setPhysicalNetworkName("physicalNetworkName");
l3Network.getSubnets().add(actualSubnet);
l3Network.getNetworkPolicies().add(networkPolicy);
l3Network.getContrailNetworkRouteTableReferences().add(routeTableReference);
l3Network.setIsSharedNetwork(false);
l3Network.setIsExternalNetwork(false);
HashMap<String, String> networkParams = new HashMap<String, String>();
networkParams.put("shared", "false");
networkParams.put("external", "false");
networkParams.put("testUserInputKey", "testUserInputValue");
UpdateNetworkRequest expectedUpdateNetworkRequest = new UpdateNetworkRequest();
expectedUpdateNetworkRequest.setCloudSiteId(cloudRegion.getLcpCloudRegionId());
expectedUpdateNetworkRequest.setTenantId(cloudRegion.getTenantId());
expectedUpdateNetworkRequest.setNetworkId(l3Network.getNetworkId());
expectedUpdateNetworkRequest.setNetworkStackId(l3Network.getHeatStackId());
expectedUpdateNetworkRequest.setNetworkName(l3Network.getNetworkName());
expectedUpdateNetworkRequest.setNetworkType(l3Network.getModelInfoNetwork().getNetworkType());
expectedUpdateNetworkRequest.setNetworkTypeVersion(l3Network.getModelInfoNetwork().getModelVersion());
expectedUpdateNetworkRequest.setModelCustomizationUuid(l3Network.getModelInfoNetwork().getModelCustomizationUUID());
expectedUpdateNetworkRequest.setSubnets(subnets);
expectedUpdateNetworkRequest.setProviderVlanNetwork(providerVlanNetwork);
expectedUpdateNetworkRequest.setContrailNetwork(contrailNetwork);
expectedUpdateNetworkRequest.setNetworkParams(networkParams);
expectedUpdateNetworkRequest.setMsoRequest(msoRequest);
expectedUpdateNetworkRequest.setSkipAAI(true);
expectedUpdateNetworkRequest.setBackout(Boolean.TRUE.equals(orchestrationContext.getIsRollbackEnabled()));
expectedUpdateNetworkRequest.setMessageId("messageId");
expectedUpdateNetworkRequest.setNotificationUrl("http://localhost:28080/mso/WorkflowMesssage/NetworkAResponse/messageId");
doReturn("messageId").when(SPY_networkAdapterObjectMapper).getRandomUuid();
doReturn("http://localhost:28080/mso/WorkflowMesssage").when(SPY_networkAdapterObjectMapper).getEndpoint();
UpdateNetworkRequest actualUpdateNetworkRequest = SPY_networkAdapterObjectMapper.createNetworkUpdateRequestMapper(requestContext, cloudRegion, orchestrationContext, serviceInstance, l3Network, userInput, customer);
assertThat(actualUpdateNetworkRequest, sameBeanAs(expectedUpdateNetworkRequest).ignoring("msoRequest.requestId"));
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy in project so by onap.
the class AAINetworkResourcesTest method getNetworkPolicyTest.
@Test
public void getNetworkPolicyTest() throws Exception {
final String content = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "queryAaiNetworkPolicy.json")));
AAIResultWrapper aaiResultWrapper = new AAIResultWrapper(content);
Optional<org.onap.aai.domain.yang.NetworkPolicy> oNetPolicy = Optional.empty();
AAIResourceUri netPolicyUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().networkPolicy("ModelInvariantUUID"));
doReturn(aaiResultWrapper).when(MOCK_aaiResourcesClient).get(isA(AAIResourceUri.class));
oNetPolicy = aaiNetworkResources.getNetworkPolicy(netPolicyUri);
verify(MOCK_aaiResourcesClient, times(1)).get(any(AAIResourceUri.class));
if (oNetPolicy.isPresent()) {
org.onap.aai.domain.yang.NetworkPolicy networkPolicy = oNetPolicy.get();
assertThat(aaiResultWrapper.asBean(org.onap.aai.domain.yang.NetworkPolicy.class).get(), sameBeanAs(networkPolicy));
}
}
Aggregations