Merge "update sonar property: sonar.python.coverage.reportPath -> sonar.python.covera...
authorYan Yang <yangyanyj@chinamobile.com>
Fri, 7 Feb 2020 01:59:45 +0000 (01:59 +0000)
committerGerrit Code Review <gerrit@onap.org>
Fri, 7 Feb 2020 01:59:45 +0000 (01:59 +0000)
lcm/docker/instance_config.sh
lcm/lcm/nf/biz/create_subscription.py
lcm/lcm/nf/biz/terminate_vnf.py
lcm/lcm/nf/const.py
lcm/lcm/pub/config/config.py
lcm/lcm/pub/utils/notificationsutil.py
lcm/lcm/pub/utils/restcall.py
lcm/lcm/pub/vimapi/adaptor.py
lcm/requirements.txt

index c7cc750..9257c9f 100755 (executable)
@@ -4,11 +4,11 @@ MSB_IP=`echo $MSB_ADDR | cut -d: -f 1`
 MSB_PORT=`echo $MSB_ADDR | cut -d: -f 2`
 
 if [ $MSB_IP ]; then
-    sed -i "s|MSB_SERVICE_IP.*|MSB_SERVICE_IP = '$MSB_IP'|" vfc/gvnfm/vnflcm/lcm/lcm/pub/config/config.py
+    sed -i "s|MSB_SERVICE_IP = .*|MSB_SERVICE_IP = '$MSB_IP'|" vfc/gvnfm/vnflcm/lcm/lcm/pub/config/config.py
 fi
 
 if [ $MSB_PORT ]; then
-    sed -i "s|MSB_SERVICE_PORT.*|MSB_SERVICE_PORT = '$MSB_PORT'|" vfc/gvnfm/vnflcm/lcm/lcm/pub/config/config.py
+    sed -i "s|MSB_SERVICE_PORT = .*|MSB_SERVICE_PORT = '$MSB_PORT'|" vfc/gvnfm/vnflcm/lcm/lcm/pub/config/config.py
 fi
 
 if [ $SERVICE_IP ]; then
index 2b1f606..e999d6e 100644 (file)
@@ -27,7 +27,7 @@ from lcm.pub.database.models import SubscriptionModel
 from lcm.pub.exceptions import NFLCMException
 from lcm.pub.exceptions import NFLCMExceptionSeeOther
 from lcm.pub.utils.values import ignore_case_get
-from lcm.pub.config.config import MSB_SERVICE_IP, MSB_SERVICE_PORT
+from lcm.pub.config.config import MSB_BASE_URL
 
 logger = logging.getLogger(__name__)
 
@@ -53,14 +53,15 @@ class CreateSubscription:
     def check_callbackuri_connection(self):
         logger.debug("SubscribeNotification-post::> Sending GET request "
                      "to %s" % self.callback_uri)
-        try:
-            response = requests.get(self.callback_uri, timeout=2)
-            if response.status_code != status.HTTP_204_NO_CONTENT:
-                raise NFLCMException("callbackUri %s returns %s status "
-                                     "code." % (self.callback_uri, response.status_code))
-        except Exception:
-            raise NFLCMException("callbackUri %s didn't return 204 status"
-                                 "code." % self.callback_uri)
+        retry_count = 3
+        while retry_count > 0:
+            response = requests.get(self.callback_uri, timeout=10)
+            if response.status_code == status.HTTP_204_NO_CONTENT:
+                return
+            logger.debug("callbackUri %s returns %s status code." % (self.callback_uri, response.status_code))
+            retry_count = - 1
+
+        raise NFLCMException("callbackUri %s didn't return 204 status." % self.callback_uri)
 
     def do_biz(self):
         self.subscription_id = str(uuid.uuid4())
@@ -121,7 +122,7 @@ class CreateSubscription:
         for subscription in subscriptions:
             if self.check_filter_exists(subscription):
                 links = json.loads(subscription.links)
-                raise NFLCMExceptionSeeOther("http://%s:%s/%s" % (MSB_SERVICE_IP, MSB_SERVICE_PORT, links["self"]["href"]))
+                raise NFLCMExceptionSeeOther("%s/%s" % (MSB_BASE_URL, links["self"]["href"]))
         return False
 
     def save_db(self):
index 2b04dc9..e18fad9 100644 (file)
@@ -66,8 +66,8 @@ class TerminateVnf(Thread):
         self.lcm_op_occ = VnfLcmOpOcc(
             vnf_inst_id=nf_inst_id,
             lcm_op_id=job_id,
-            operation=OPERATION_TYPE.SCALE,
-            task=OPERATION_TASK.SCALE
+            operation=OPERATION_TYPE.TERMINATE,
+            task=OPERATION_TASK.TERMINATE
         )
 
     def run(self):
index e961bb3..1d584b8 100644 (file)
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-from lcm.pub.config import config
+from lcm.pub.config.config import MSB_BASE_URL
 from lcm.pub.utils.jobutil import enum
 
 HEAL_ACTION_TYPE = enum(
@@ -142,7 +142,7 @@ CHANGE_TYPE = enum(
 RESOURCE_MAP = {'Storage': 'volumn', 'Network': 'network', 'SubNetwork': 'subnet', 'Port': 'port',
                 'Flavour': 'flavor', 'Vm': 'vm'}
 
-URL_PREFIX = "http://%s:%s/api/vnflcm/v1" % (config.MSB_SERVICE_IP, config.MSB_SERVICE_PORT)
+URL_PREFIX = "%s/api/vnflcm/v1" % (MSB_BASE_URL)
 
 ROOT_URI = "api/vnflcm/v1/subscriptions/"
 
index 5023aef..27896d0 100644 (file)
@@ -14,7 +14,8 @@
 
 # [MSB]
 MSB_SERVICE_IP = '127.0.0.1'
-MSB_SERVICE_PORT = '80'
+MSB_SERVICE_PORT = '443'
+MSB_BASE_URL = "https://%s:%s" % (MSB_SERVICE_IP, MSB_SERVICE_PORT)
 
 # [REDIS]
 REDIS_HOST = '127.0.0.1'
index fd4efa3..b57b470 100644 (file)
@@ -52,7 +52,8 @@ class NotificationsUtil(object):
         logger.info("Send Notifications to the callbackUri")
         filters = {
             "operationState": "operation_states",
-            "operation": "operation_types"
+            "operation": "operation_types",
+            "vnfInstanceId": "vnf_instance_filter"
         }
         subscriptions_filter = {v + "__contains": notification[k] for k, v in list(filters.items())}
 
index 08c33c5..8a9010c 100644 (file)
@@ -20,7 +20,7 @@ import urllib.error
 import uuid
 import httplib2
 
-from lcm.pub.config.config import MSB_SERVICE_IP, MSB_SERVICE_PORT
+from lcm.pub.config.config import MSB_BASE_URL
 
 rest_no_auth, rest_oneway_auth, rest_bothway_auth = 0, 1, 2
 HTTP_200_OK, HTTP_201_CREATED, HTTP_204_NO_CONTENT, HTTP_202_ACCEPTED = '200', '201', '204', '202'
@@ -81,7 +81,7 @@ def call_req(base_url, user, passwd, auth_type, resource, method, content='', ad
 
 
 def req_by_msb(resource, method, content=''):
-    base_url = "http://%s:%s/" % (MSB_SERVICE_IP, MSB_SERVICE_PORT)
+    base_url = MSB_BASE_URL
     return call_req(base_url, "", "", rest_no_auth, resource, method, content)
 
 
index 6cda0af..b79aaac 100644 (file)
@@ -390,7 +390,7 @@ def create_vm(vim_cache, res_cache, data, vm, do_notify, res_type):
         param["nicArray"].append({
             "portId": get_res_id(res_cache, RES_PORT, cp_id)
         })
-    param["contextArray"] = ignore_case_get(vm["properties"], "inject_files")
+    param["contextArray"] = ignore_case_get(vm["properties"], "inject_files", [])
     logger.debug("contextArray:%s", param["contextArray"])
     for vol_data in ignore_case_get(vm, "volume_storages"):
         vol_id = vol_data["volume_storage_id"]
index 4706950..fc44fc1 100644 (file)
@@ -1,6 +1,6 @@
 # rest framework
 Django==2.1.10
-djangorestframework==3.9.4
+djangorestframework==3.10.0
 
 # for access MySQL
 PyMySQL==0.9.3
@@ -21,7 +21,7 @@ unittest_xml_reporting==1.12.0
 
 # for auto-swagger
 ruamel.yaml==0.15.97
-drf-yasg==1.14.0
+drf-yasg==1.17.0
 flex>=6.11.1
 swagger-spec-validator>=2.1.0