Adding note on who approved committer
[ric-plt/a1.git] / a1 / run.py
index 903fe85..122684a 100644 (file)
--- a/a1/run.py
+++ b/a1/run.py
 #   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()