Salome HOME
[EDF30356] : Extend management of maximum_time attribute format from pylauncher to...
[modules/kernel.git] / bin / runSalomeNoServer.py
index f63e74a73a766abd9b8a69a5264cfa8c0804f5b3..2698fba032d6d20c78da3bf378390f09ae7db4c2 100755 (executable)
@@ -1,5 +1,5 @@
 #! /usr/bin/env python3
-# Copyright (C) 2021  CEA/DEN, EDF R&D
+# Copyright (C) 2021-2024  CEA, EDF
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 import setenv
-import runSalome
+import runSalomeCommon
 import os
+import logging
+logger = logging.getLogger()
 
-class NoSessionServer(runSalome.SessionServer):
+class NoSessionServer(runSalomeCommon.CommonSessionServer):
     def __init__(self,args,modules_list,modules_root_dir):
         super().__init__(args,modules_list,modules_root_dir)
-        for i in range (len(self.SCMD1)):
-            if self.SCMD1[i] == "SALOME_Session_Server" :
-                self.SCMD1[i] = "SALOME_Session_Server_No_Server"
-        os.putenv("SALOME_EMB_SERVANT", "1")
         SalomeAppSLConfig=os.getenv("SalomeAppConfig","")
         os.putenv("SalomeAppSLConfig", SalomeAppSLConfig)
+    def getSessionServerExe(self):
+        return "SALOME_Session_Server_No_Server"
+
+from server import process_id
+from addToKillList import addToKillList,killList
 
 def main():
     args, modules_list, modules_root_dir = setenv.get_config()
     mySessionServ = NoSessionServer(args, args.get('modules', []), modules_root_dir)
+    runSalomeCommon.setVerbose(mySessionServ.args["verbosity"])
+    if mySessionServ.args["killall"]:
+        killList()
+    logger.debug("Effective args : {}".format(mySessionServ.args))
     mySessionServ.setpath(modules_list, modules_root_dir)
     mySessionServ.run()
+    for pid, cmd in list(process_id.items()):
+        logger.debug("Killing {} {}".format(pid, cmd))
+        addToKillList(pid, cmd)
 
 if __name__ == "__main__":
     main()