Merge "bumping robotframework-onap to 0.5"
authorGary Wu <gary.wu@futurewei.com>
Mon, 17 Jun 2019 18:56:42 +0000 (18:56 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 17 Jun 2019 18:56:42 +0000 (18:56 +0000)
15 files changed:
scripts/policy/policy-apex-pdp/config/apex-pdp/OnapPfConfig.json [deleted file]
scripts/policy/policy-apex-pdp/config/apex-pdp/topic.properties [deleted file]
scripts/policy/policy-apex-pdp/config/pap/defaultConfig.json [deleted file]
scripts/policy/policy-apex-pdp/config/pap/logback.xml [deleted file]
scripts/policy/policy-apex-pdp/config/pap/s3pConfig.json [deleted file]
scripts/policy/policy-apex-pdp/config/pap/ssl/policy-keystore [deleted file]
scripts/policy/policy-apex-pdp/config/pap/ssl/policy-truststore [deleted file]
scripts/policy/policy-apex-pdp/config/pap/topic.properties [deleted file]
scripts/policy/policy-apex-pdp/docker-compose-apex.yml
tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json [new file with mode: 0644]
tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry.json
tests/dcaegen2/prh-testcases/assets/re-registration/expected-logical-link.json
tests/dcaegen2/prh-testcases/assets/re-registration/expected-pnf-ready-event.json [deleted file]
tests/dcaegen2/prh-testcases/resources/prh_library.robot
tests/dcaegen2/prh-testcases/resources/simulator/AAI.py

diff --git a/scripts/policy/policy-apex-pdp/config/apex-pdp/OnapPfConfig.json b/scripts/policy/policy-apex-pdp/config/apex-pdp/OnapPfConfig.json
deleted file mode 100644 (file)
index 6944c9b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-    "name":"OnapPfParameterGroup",
-     "restServerParameters": {
-        "host": "0.0.0.0",
-        "port": 6969,
-        "userName": "healthcheck",
-        "password": "zb!XztG34",
-        "https": true,
-        "aaf": false
-    },
-    "pdpStatusParameters":{
-        "timeIntervalMs": 10000,
-        "pdpType":"apex",
-        "description":"Pdp Heartbeat",
-        "supportedPolicyTypes":[{"name":"onap.policies.controlloop.operational.Apex","version":"1.0.0"}]
-    }
-}
diff --git a/scripts/policy/policy-apex-pdp/config/apex-pdp/topic.properties b/scripts/policy/policy-apex-pdp/config/apex-pdp/topic.properties
deleted file mode 100644 (file)
index b7df11a..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-dmaap.source.topics=POLICY-PDP-PAP
-dmaap.sink.topics=POLICY-PDP-PAP
-
-dmaap.source.topics.POLICY-PDP-PAP.servers= dmaap:3904
-dmaap.sink.topics.POLICY-PDP-PAP.servers= dmaap:3904
diff --git a/scripts/policy/policy-apex-pdp/config/pap/defaultConfig.json b/scripts/policy/policy-apex-pdp/config/pap/defaultConfig.json
deleted file mode 100644 (file)
index 519060d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-    "name": "PapGroup",
-    "restServerParameters": {
-        "host": "0.0.0.0",
-        "port": 6969,
-        "userName": "healthcheck",
-        "password": "zb!XztG34",
-        "https": true,
-        "aaf": false
-    },
-    "pdpParameters": {
-        "heartBeatMs": 120000,
-        "updateParameters": {
-            "maxRetryCount": 1,
-            "maxWaitMs": 30000
-        },
-        "stateChangeParameters": {
-            "maxRetryCount": 1,
-            "maxWaitMs": 30000
-        }
-    },
-    "databaseProviderParameters": {
-        "name": "PolicyProviderParameterGroup",
-        "implementation": "org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl",
-        "databaseDriver": "org.mariadb.jdbc.Driver",
-        "databaseUrl": "jdbc:mariadb://mariadb:3306/policyadmin",
-        "databaseUser": "policy_user",
-        "databasePassword": "cG9saWN5X3VzZXI=",
-        "persistenceUnit": "PolicyMariaDb"
-    }
-}
diff --git a/scripts/policy/policy-apex-pdp/config/pap/logback.xml b/scripts/policy/policy-apex-pdp/config/pap/logback.xml
deleted file mode 100644 (file)
index a34956c..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-<!--
-  ============LICENSE_START=======================================================
-   Copyright (C) 2019 Nordix Foundation.
-   Modifications Copyright (C) 2019 AT&T Intellectual Property.
-  ================================================================================
-  Licensed under the Apache License, Version 2.0 (the "License");
-  you may not use this file except in compliance with the License.
-  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-  SPDX-License-Identifier: Apache-2.0
-  ============LICENSE_END=========================================================
--->
-
-<configuration scan="true" scanPeriod="30 seconds" debug="false">
-
-    <property name="logDir" value="${POLICY_LOGS}" />
-
-    <property name="errorLog" value="error" />
-    <property name="debugLog" value="debug" />
-    <property name="networkLog" value="network" />
-
-    <property name="debugPattern"
-        value="[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%level|%logger{0}|%thread] %msg%n" />
-    <property name="errorPattern" value="${debugPattern}" />
-    <property name="networkPattern" value="[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%t]%m%n" />
-
-    <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${logDir}/${errorLog}.log</file>
-        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-            <fileNamePattern>${logDir}/${errorLog}.%d{yyyy-MM-dd}.%i.log.zip
-            </fileNamePattern>
-            <maxFileSize>50MB</maxFileSize>
-            <maxHistory>30</maxHistory>
-            <totalSizeCap>10GB</totalSizeCap>
-        </rollingPolicy>
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>WARN</level>
-        </filter>
-        <encoder>
-            <pattern>${errorPattern}</pattern>
-        </encoder>
-    </appender>
-
-    <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">
-        <appender-ref ref="ErrorOut" />
-    </appender>
-
-    <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${logDir}/${debugLog}.log</file>
-        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-            <fileNamePattern>${logDir}/${debugLog}.%d{yyyy-MM-dd}.%i.log.zip
-            </fileNamePattern>
-            <maxFileSize>50MB</maxFileSize>
-            <maxHistory>30</maxHistory>
-            <totalSizeCap>10GB</totalSizeCap>
-        </rollingPolicy>
-        <encoder>
-            <pattern>${debugPattern}</pattern>
-        </encoder>
-    </appender>
-
-    <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">
-        <appender-ref ref="DebugOut" />
-    </appender>
-
-    <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${logDir}/${networkLog}.log</file>
-        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-            <fileNamePattern>${logDir}/${networkLog}.%d{yyyy-MM-dd}.%i.log.zip
-            </fileNamePattern>
-            <maxFileSize>50MB</maxFileSize>
-            <maxHistory>30</maxHistory>
-            <totalSizeCap>10GB</totalSizeCap>
-        </rollingPolicy>
-        <encoder>
-            <pattern>${networkPattern}</pattern>
-        </encoder>
-    </appender>
-
-    <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">
-        <appender-ref ref="NetworkOut" />
-    </appender>
-
-    <logger name="network" level="INFO" additivity="false">
-        <appender-ref ref="AsyncNetworkOut" />
-    </logger>
-
-    <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">
-        <appender-ref ref="AsyncNetworkOut" />
-    </logger>
-
-    <root level="INFO">
-        <appender-ref ref="AsyncDebugOut" />
-        <appender-ref ref="AsyncErrorOut" />
-    </root>
-
-</configuration>
diff --git a/scripts/policy/policy-apex-pdp/config/pap/s3pConfig.json b/scripts/policy/policy-apex-pdp/config/pap/s3pConfig.json
deleted file mode 100644 (file)
index 3085f45..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-{
-    "name": "PapGroup",
-    "restServerParameters": {
-        "host": "0.0.0.0",
-        "port": 6969,
-        "userName": "healthcheck",
-        "password": "zb!XztG34",
-        "https": true,
-        "aaf": false
-    }
-}
diff --git a/scripts/policy/policy-apex-pdp/config/pap/ssl/policy-keystore b/scripts/policy/policy-apex-pdp/config/pap/ssl/policy-keystore
deleted file mode 100644 (file)
index bf876b8..0000000
Binary files a/scripts/policy/policy-apex-pdp/config/pap/ssl/policy-keystore and /dev/null differ
diff --git a/scripts/policy/policy-apex-pdp/config/pap/ssl/policy-truststore b/scripts/policy/policy-apex-pdp/config/pap/ssl/policy-truststore
deleted file mode 100644 (file)
index b7d52ad..0000000
Binary files a/scripts/policy/policy-apex-pdp/config/pap/ssl/policy-truststore and /dev/null differ
diff --git a/scripts/policy/policy-apex-pdp/config/pap/topic.properties b/scripts/policy/policy-apex-pdp/config/pap/topic.properties
deleted file mode 100644 (file)
index b7df11a..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-dmaap.source.topics=POLICY-PDP-PAP
-dmaap.sink.topics=POLICY-PDP-PAP
-
-dmaap.source.topics.POLICY-PDP-PAP.servers= dmaap:3904
-dmaap.sink.topics.POLICY-PDP-PAP.servers= dmaap:3904
index e836a58..c6578dd 100644 (file)
@@ -27,7 +27,7 @@ services:
          - ./config/db:/docker-entrypoint-initdb.d
       ports:
        - "3306:3306"
-   dmaap:
+   message-router:
       image: dmaap/simulator
       container_name: dmaap-simulator
       hostname: dmaap-simulator
@@ -38,10 +38,9 @@ services:
       container_name: policy-pap
       depends_on:
        - mariadb
-       - dmaap
+       - message-router
       hostname: policy-pap
-      volumes:
-         - ./config/pap/:/opt/app/policy/pap/etc/
+
    api:
       image: nexus3.onap.org:10001/onap/policy-api
       container_name: policy-api
@@ -53,12 +52,11 @@ services:
       container_name: policy-apex-pdp
       depends_on:
        - mariadb
-       - dmaap
+       - message-router
        - pap
       hostname: policy-apex-pdp
       command: ['/opt/app/policy/apex-pdp/bin/apexOnapPf.sh', '-c', '/opt/app/policy/apex-pdp/etc/onappf/config/OnapPfConfig.json', '-p', '/opt/app/policy/apex-pdp/etc/onappf/config/topic.properties']
-      volumes:
-         - ./config/apex-pdp/:/opt/app/policy/apex-pdp/etc/onappf/config/
+
       ports:
        - "6969:6969"
        - "23324:23324"
@@ -69,11 +67,11 @@ services:
       container_name: policy-wait
       depends_on:
         - mariadb
-        - dmaap
+        - message-router
       hostname: policy-wait
       command:
         mariadb:3306
-        dmaap:3904
+        message-router:3904
    start_all:
       image: dadarek/wait-for-dependencies
       environment:
@@ -81,14 +79,14 @@ services:
       container_name: policy-wait-all
       depends_on:
         - mariadb
-        - dmaap
+        - message-router
         - api
         - pap
         - apex
       hostname: policy-wait-all
       command:
         mariadb:3306
-        dmaap:3904
+        message-router:3904
         api:6969
         pap:6969
         apex:6969
diff --git a/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json b/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json
new file mode 100644 (file)
index 0000000..6119ea8
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "service-instance-id": "bbs_service",
+  "service-instance-name": "bbs_service",
+  "environment-context": "General_Revenue-Bearing",
+  "workload-context": "Production",
+  "model-invariant-id": "c71827e7-42fc-46ab-b059-22584c58108b",
+  "model-version-id": "8efe4a8a-6646-43e2-8807-a376ff22d2e0",
+  "resource-version": "1554127221722",
+  "orchestration-status": "Active",
+  "relationship-list": {
+    "relationship": [
+      {
+        "related-to": "pnf",
+        "relationship-label": "org.onap.relationships.inventory.ComposedOf",
+        "related-link": "/aai/v12/network/pnfs/pnf/NOK6061ZW9",
+        "relationship-data": [
+          {
+            "relationship-key": "pnf.pnf-name",
+            "relationship-value": "NOK6061ZW9"
+          }
+        ]
+      }
+    ]
+  }
+}
\ No newline at end of file
index 8787dc1..e01e26e 100644 (file)
     "ipaddress-v6-oam": "example-ipaddress-v6-oam-val-92665",
     "inv-status": "example-inv-status-val-8477",
     "prov-status": "example-prov-status-val-68268",
-    "nf-role": "example-nf-role-val-68489"
+    "nf-role": "example-nf-role-val-68489",
+    "relationship-list": {
+        "relationship": [
+            {
+                "related-to": "service-instance",
+                "relationship-label": "org.onap.relationships.inventory.ComposedOf",
+                "related-link": "/aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service",
+                "relationship-data": [
+                    {
+                        "relationship-key": "customer.global-customer-id",
+                        "relationship-value": "Demonstration"
+                    },
+                    {
+                        "relationship-key": "service-subscription.service-type",
+                        "relationship-value": "vFW"
+                    },
+                    {
+                        "relationship-key": "service-instance.service-instance-id",
+                        "relationship-value": "bbs_service"
+                    }
+                ],
+                "related-to-property": [
+                    {
+                        "property-key": "service-instance.service-instance-name",
+                        "property-value": "bbs_service"
+                    }
+                ]
+            },
+            {
+                "related-to": "logical-link",
+                "relationship-label": "org.onap.relationships.inventory.BridgedTo",
+                "related-link": "/aai/v12/network/logical-links/logical-link/bbs-link",
+                "relationship-data": [
+                    {
+                        "relationship-key": "logical-link.link-name",
+                        "relationship-value": "bbs-link"
+                    }
+                ]
+            }
+        ]
+    }
+
+
+
 }
\ No newline at end of file
index b75df88..0e4f6ab 100644 (file)
@@ -1,13 +1,22 @@
 {
   "link-name": "bbs-link",
+  "in-maint": false,
   "link-type": "attachment-point",
   "relationship-list":
   {
     "relationship": [
       {
+        "related-to": "pnf",
+        "relationship-label": "org.onap.relationships.inventory.BridgedTo",
         "related-link": "/network/pnfs/pnf/NOK6061ZW9",
-        "relationship-data": []
+        "relationship-data": [
+          {
+            "relationship-key": "pnf.pnf-name",
+            "relationship-value": "NOK6061ZW9"
+          }
+        ]
       }
     ]
   }
 }
+
diff --git a/tests/dcaegen2/prh-testcases/assets/re-registration/expected-pnf-ready-event.json b/tests/dcaegen2/prh-testcases/assets/re-registration/expected-pnf-ready-event.json
deleted file mode 100644 (file)
index 5c77e12..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-[
-  {
-    "additionalFields": {
-      "attachment-point": "bbs-link"
-    },
-    "correlationId": "NOK6061ZW9"
-  }
-]
\ No newline at end of file
index 7bf1264..007caf3 100644 (file)
@@ -58,14 +58,15 @@ Verify AAI not responding is logged
 Verify PNF re registration
     [Timeout]    100s
     [Arguments]    ${test_case_directory}
-    ${expected_logical_link}=    Get Data From File    ${test_case_directory}/expected-logical-link.json
-    Verify PNF ready sent    ${test_case_directory}
-    Check created Logical Link    ${expected_logical_link}
+    ${aai_entry}=    Get Data From File    ${test_case_directory}/aai-entry.json
+    Add PNF entry in AAI    ${aai_entry}
+    ${service_instance}=    Get Data From File    ${test_case_directory}/aai-entry-service-instance.json
+    Add service instance entry in AAI    ${service_instance}
 
     ${ves_event}=    Get Data From File    ${test_case_directory}/ves-event.json
     Set VES event in DMaaP    ${ves_event}
     ${expected_pnf_update_event}=    Get Data From File    ${test_case_directory}/expected-pnf-update-event.json
-    Wait Until Keyword Succeeds    10x    3000ms    Check created PNF_UPDATE notification    ${expected_pnf_update_event}
+    #Wait Until Keyword Succeeds    10x    3000ms    Check created PNF_UPDATE notification    ${expected_pnf_update_event}
 
 Check CBS ready
     ${resp}=    Get Request    ${consul_setup_session}    /v1/catalog/services
@@ -115,6 +116,13 @@ Add PNF entry in AAI
     ${resp}=    Put Request    ${aai_setup_session}    /setup/add_pnf_entry    headers=${suite_headers}    data=${pnf_entry}
     Should Be Equal As Strings    ${resp.status_code}    200
 
+Add service instance entry in AAI
+    [Arguments]    ${aai_service_instance}
+    ${headers}=    Create Dictionary    Accept=application/json    Content-Type=application/json
+    Log    AAI url ${AAI_SIMULATOR_SETUP_URL}
+    ${resp}=    Put Request    ${aai_setup_session}    /setup/add_service_instace    headers=${suite_headers}    data=${aai_service_instance}
+    Should Be Equal As Strings    ${resp.status_code}    200
+
 Set VES event in DMaaP
     [Arguments]    ${ves_event}
     ${resp}=    Put Request    ${dmaap_setup_session}    /setup/ves_event    headers=${suite_headers}    data=${ves_event}
index 9b76adf..f6d3b1f 100644 (file)
@@ -22,6 +22,7 @@ AAI_RESOURCE_NOT_FOUND = b'{}'
 pnf_entries = {}
 patched_pnf = AAI_RESOURCE_NOT_FOUND
 created_logical_link = AAI_RESOURCE_NOT_FOUND
+service_instance = AAI_RESOURCE_NOT_FOUND
 
 class AAISetup(BaseHTTPRequestHandler):
 
@@ -53,6 +54,13 @@ class AAISetup(BaseHTTPRequestHandler):
 
                 httpServerLib.set_response_200_ok(self)
                 logger.debug('AAISetup PUT /setup/add_pnf_entry [' + pnf_name + '] -> 200 OK')
+            elif re.search('/setup/add_service_instace', self.path):
+                service_instance_payload = httpServerLib.get_payload(self)
+                global service_instance
+                service_instance = json.loads(service_instance_payload)
+                httpServerLib.set_response_200_ok(self)
+                logger.debug('AAISetup PUT /setup/add_service_instace -> 200 OK')
+
             elif re.search('/set_pnf', self.path):
                 pnf_name = httpServerLib.get_payload(self).decode()
                 pnf_entries[pnf_name] = AAI_RESOURCE_NOT_FOUND
@@ -70,9 +78,11 @@ class AAISetup(BaseHTTPRequestHandler):
                 global pnf_entries
                 global patched_pnf
                 global created_logical_link
+                global service_instance
                 pnf_entries = {}
                 patched_pnf = AAI_RESOURCE_NOT_FOUND
                 created_logical_link = AAI_RESOURCE_NOT_FOUND
+                service_instance = AAI_RESOURCE_NOT_FOUND
 
                 httpServerLib.set_response_200_ok(self)
                 logger.debug('AAISetup POST /reset -> 200 OK')
@@ -95,6 +105,9 @@ class AAIHandler(BaseHTTPRequestHandler):
                 else:
                     httpServerLib.set_response_404_not_found(self)
                     logger.info('AAIHandler GET /aai/v12/network/pnfs/pnf/' + pnf_name + ' -> 404 Not found, actual entries: ' + str(pnf_entries.keys()))
+            elif re.search('aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service', self.path):
+                httpServerLib.set_response_200_ok(self, payload = service_instance)
+                logger.debug('AAIHandler GET aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service -> 200 OK')
             else:
                 httpServerLib.set_response_404_not_found(self)
                 logger.info('AAIHandler GET ' + self.path + ' -> 404 Not found')