diff options
-rwxr-xr-x | lcm/docker/instance_config.sh | 4 | ||||
-rw-r--r-- | lcm/lcm/nf/biz/create_subscription.py | 21 | ||||
-rw-r--r-- | lcm/lcm/nf/biz/terminate_vnf.py | 4 | ||||
-rw-r--r-- | lcm/lcm/nf/const.py | 4 | ||||
-rw-r--r-- | lcm/lcm/pub/config/config.py | 3 | ||||
-rw-r--r-- | lcm/lcm/pub/utils/notificationsutil.py | 3 | ||||
-rw-r--r-- | lcm/lcm/pub/utils/restcall.py | 4 | ||||
-rw-r--r-- | lcm/lcm/pub/vimapi/adaptor.py | 2 | ||||
-rw-r--r-- | lcm/requirements.txt | 4 |
9 files changed, 26 insertions, 23 deletions
diff --git a/lcm/docker/instance_config.sh b/lcm/docker/instance_config.sh index c7cc7504..9257c9ff 100755 --- a/lcm/docker/instance_config.sh +++ b/lcm/docker/instance_config.sh @@ -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 diff --git a/lcm/lcm/nf/biz/create_subscription.py b/lcm/lcm/nf/biz/create_subscription.py index 2b1f6064..e999d6ed 100644 --- a/lcm/lcm/nf/biz/create_subscription.py +++ b/lcm/lcm/nf/biz/create_subscription.py @@ -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): diff --git a/lcm/lcm/nf/biz/terminate_vnf.py b/lcm/lcm/nf/biz/terminate_vnf.py index 2b04dc96..e18fad90 100644 --- a/lcm/lcm/nf/biz/terminate_vnf.py +++ b/lcm/lcm/nf/biz/terminate_vnf.py @@ -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): diff --git a/lcm/lcm/nf/const.py b/lcm/lcm/nf/const.py index e961bb3e6..1d584b87 100644 --- a/lcm/lcm/nf/const.py +++ b/lcm/lcm/nf/const.py @@ -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/" diff --git a/lcm/lcm/pub/config/config.py b/lcm/lcm/pub/config/config.py index 5023aefa..27896d06 100644 --- a/lcm/lcm/pub/config/config.py +++ b/lcm/lcm/pub/config/config.py @@ -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' diff --git a/lcm/lcm/pub/utils/notificationsutil.py b/lcm/lcm/pub/utils/notificationsutil.py index fd4efa36..b57b470c 100644 --- a/lcm/lcm/pub/utils/notificationsutil.py +++ b/lcm/lcm/pub/utils/notificationsutil.py @@ -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())} diff --git a/lcm/lcm/pub/utils/restcall.py b/lcm/lcm/pub/utils/restcall.py index 08c33c55..8a9010c2 100644 --- a/lcm/lcm/pub/utils/restcall.py +++ b/lcm/lcm/pub/utils/restcall.py @@ -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) diff --git a/lcm/lcm/pub/vimapi/adaptor.py b/lcm/lcm/pub/vimapi/adaptor.py index 6cda0af0..b79aaaca 100644 --- a/lcm/lcm/pub/vimapi/adaptor.py +++ b/lcm/lcm/pub/vimapi/adaptor.py @@ -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"] diff --git a/lcm/requirements.txt b/lcm/requirements.txt index 4706950a..fc44fc1c 100644 --- a/lcm/requirements.txt +++ b/lcm/requirements.txt @@ -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 |