for word in str(response_text).split(" "):
if "." in word:
version_text, _, _ = word.partition("-")
- return list(map(int, version_text.split(".")))
+ return version_text
raise ROClientException("Got invalid version text: '{}'".format(response_text), http_code=500)
except aiohttp.errors.ClientOSError as e:
raise ROClientException(e, http_code=504)
import logging.handlers
import getopt
import sys
-import ROclient
-import ns
-import vim_sdn
-import netslice
+
+from osm_lcm import ROclient, ns, vim_sdn, netslice
from time import time, sleep
-from lcm_utils import versiontuple, LcmException, TaskRegistry, LcmExceptionExit
+from osm_lcm.lcm_utils import versiontuple, LcmException, TaskRegistry, LcmExceptionExit
+from osm_lcm import version as lcm_version, version_date as lcm_version_date
-# from osm_lcm import version as lcm_version, version_date as lcm_version_date, ROclient
from osm_common import dbmemory, dbmongo, fslocal, msglocal, msgkafka
from osm_common import version as common_version
from osm_common.dbbase import DbException
__author__ = "Alfonso Tierno"
-min_RO_version = [0, 6, 3]
+min_RO_version = "0.6.3"
min_n2vc_version = "0.0.2"
min_common_version = "0.1.19"
# uncomment if LCM is installed as library and installed, and get them from __init__.py
-lcm_version = '0.1.41'
-lcm_version_date = '2019-06-19'
+# lcm_version = '0.1.41'
+# lcm_version_date = '2019-06-19'
health_check_file = path.expanduser("~") + "/time_last_ping" # TODO find better location for this file
try:
RO = ROclient.ROClient(self.loop, **self.ro_config)
RO_version = await RO.get_version()
- if RO_version < min_RO_version:
+ if versiontuple(RO_version) < versiontuple(min_RO_version):
raise LcmException("Not compatible osm/RO version '{}.{}.{}'. Needed '{}.{}.{}' or higher".format(
*RO_version, *min_RO_version
))
# -*- coding: utf-8 -*-
+##
+# 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.
+##
import asyncio
import logging
import logging.handlers
import traceback
-import ns
-from ns import populate_dict as populate_dict
-import ROclient
-from lcm_utils import LcmException, LcmBase
+from osm_lcm.ns import populate_dict as populate_dict
+from osm_lcm import ROclient, ns
+from osm_lcm.lcm_utils import LcmException, LcmBase
from osm_common.dbbase import DbException
from time import time
from copy import deepcopy