X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=a1%2Frun.py;h=122684afcfe6fe669cfbf066da170263e7a22c80;hb=6803b12d1c2af87c57d7dccaced70b49bcb44815;hp=903fe856a7c6ab6d320186c3b04365148486449c;hpb=5ad8f03e1fc7683bb59da31f59edc2f6c0b2372b;p=ric-plt%2Fa1.git diff --git a/a1/run.py b/a1/run.py index 903fe85..122684a 100644 --- a/a1/run.py +++ b/a1/run.py @@ -14,27 +14,29 @@ # See the License for the specific language governing permissions and # limitations under the License. # ================================================================================== +""" +A1 entrypoint +""" +from os import environ from gevent.pywsgi import WSGIServer -from a1 import get_module_logger, app -from a1 import utils, exceptions -from a1.a1rmr import init_rmr -import sys +from mdclogpy import Logger +from a1 import app +from a1 import a1rmr -logger = get_module_logger(__name__) +mdc_logger = Logger(name=__name__) def main(): """Entrypoint""" - # Fail fast if we don't have a manifest - try: - utils.get_ric_manifest() - except exceptions.MissingManifest: - logger.error("Failing fast: no A1 manifest found!") - sys.exit(1) - - logger.debug("Initializing rmr") - init_rmr() - logger.debug("Starting gevent server") - http_server = WSGIServer(('', 10000), app) + mdc_logger.debug("A1Mediator starts") + # start rmr thread + mdc_logger.debug("Starting RMR thread with RMR_RTG_SVC {0}, RMR_SEED_RT {1}".format(environ.get('RMR_RTG_SVC'), environ.get('RMR_SEED_RT'))) + mdc_logger.debug("RMR initialization must complete before webserver can start") + a1rmr.start_rmr_thread() + mdc_logger.debug("RMR initialization complete") + # start webserver + port = 10000 + mdc_logger.debug("Starting gevent webserver on port {0}".format(port)) + http_server = WSGIServer(("", port), app) http_server.serve_forever()