Search in sources :

Example 1 with NetworkPolicy

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);
    }
}
Also used : AAIPluralResourceUri(org.onap.aaiclient.client.aai.entities.uri.AAIPluralResourceUri) NetworkPolicy(org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy) BBObjectNotFoundException(org.onap.so.client.exception.BBObjectNotFoundException)

Example 2 with NetworkPolicy

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));
}
Also used : AAIBaseResourceUri(org.onap.aaiclient.client.aai.entities.uri.AAIBaseResourceUri) NetworkPolicy(org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy) Test(org.junit.Test)

Example 3 with NetworkPolicy

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;
}
Also used : NetworkPolicy(org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy)

Example 4 with 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"));
}
Also used : Customer(org.onap.so.bpmn.servicedecomposition.bbobjects.Customer) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) ServiceSubscription(org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceSubscription) ContrailNetwork(org.onap.so.adapters.nwrest.ContrailNetwork) MsoRequest(org.onap.so.entity.MsoRequest) ModelInfoNetwork(org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoNetwork) HostRoute(org.onap.so.bpmn.servicedecomposition.bbobjects.HostRoute) UpdateNetworkRequest(org.onap.so.adapters.nwrest.UpdateNetworkRequest) ProviderVlanNetwork(org.onap.so.adapters.nwrest.ProviderVlanNetwork) NetworkPolicy(org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy) RouteTableReference(org.onap.so.bpmn.servicedecomposition.bbobjects.RouteTableReference) VpnBinding(org.onap.so.bpmn.servicedecomposition.bbobjects.VpnBinding) RouteTarget(org.onap.so.bpmn.servicedecomposition.bbobjects.RouteTarget) Subnet(org.onap.so.bpmn.servicedecomposition.bbobjects.Subnet) Test(org.junit.Test)

Example 5 with NetworkPolicy

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));
    }
}
Also used : NetworkPolicy(org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy) AAIResourceUri(org.onap.aaiclient.client.aai.entities.uri.AAIResourceUri) AAIResultWrapper(org.onap.aaiclient.client.aai.entities.AAIResultWrapper) Test(org.junit.Test)

Aggregations

NetworkPolicy (org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy)7 Test (org.junit.Test)5 File (java.io.File)1 ArrayList (java.util.ArrayList)1 HashMap (java.util.HashMap)1 AAIResultWrapper (org.onap.aaiclient.client.aai.entities.AAIResultWrapper)1 AAIBaseResourceUri (org.onap.aaiclient.client.aai.entities.uri.AAIBaseResourceUri)1 AAIPluralResourceUri (org.onap.aaiclient.client.aai.entities.uri.AAIPluralResourceUri)1 AAIResourceUri (org.onap.aaiclient.client.aai.entities.uri.AAIResourceUri)1 ContrailNetwork (org.onap.so.adapters.nwrest.ContrailNetwork)1 ProviderVlanNetwork (org.onap.so.adapters.nwrest.ProviderVlanNetwork)1 UpdateNetworkRequest (org.onap.so.adapters.nwrest.UpdateNetworkRequest)1 Customer (org.onap.so.bpmn.servicedecomposition.bbobjects.Customer)1 HostRoute (org.onap.so.bpmn.servicedecomposition.bbobjects.HostRoute)1 RouteTableReference (org.onap.so.bpmn.servicedecomposition.bbobjects.RouteTableReference)1 RouteTarget (org.onap.so.bpmn.servicedecomposition.bbobjects.RouteTarget)1 ServiceSubscription (org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceSubscription)1 Subnet (org.onap.so.bpmn.servicedecomposition.bbobjects.Subnet)1 VpnBinding (org.onap.so.bpmn.servicedecomposition.bbobjects.VpnBinding)1 ModelInfoNetwork (org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoNetwork)1