Fix bug where terminal will not exit

This commit is contained in:
Andrew 2021-12-09 18:35:00 -05:00
parent 635f671fd9
commit 8999a9a5c3
4 changed files with 12 additions and 1 deletions

View File

@ -5,6 +5,8 @@ import time
import threading import threading
import logging import logging
from app.classes.shared.tasks import TasksManager
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
from app.classes.shared.console import console from app.classes.shared.console import console
@ -35,6 +37,7 @@ class MainPrompt(cmd.Cmd, object):
pass pass
def do_exit(self, line): def do_exit(self, line):
self.tasks_manager._main_graceful_exit()
self.universal_exit() self.universal_exit()
def do_migrations(self, line): def do_migrations(self, line):

View File

@ -168,6 +168,7 @@ class Controller:
return running_servers return running_servers
def stop_all_servers(self): def stop_all_servers(self):
print("in stop all servers")
servers = self.list_running_servers() servers = self.list_running_servers()
logger.info("Found {} running server(s)".format(len(servers))) logger.info("Found {} running server(s)".format(len(servers)))
console.info("Found {} running server(s)".format(len(servers))) console.info("Found {} running server(s)".format(len(servers)))
@ -175,7 +176,10 @@ class Controller:
logger.info("Stopping All Servers") logger.info("Stopping All Servers")
console.info("Stopping All Servers") console.info("Stopping All Servers")
print(servers)
for s in servers: for s in servers:
print(s)
logger.info("Stopping Server ID {} - {}".format(s['id'], s['name'])) logger.info("Stopping Server ID {} - {}".format(s['id'], s['name']))
console.info("Stopping Server ID {} - {}".format(s['id'], s['name'])) console.info("Stopping Server ID {} - {}".format(s['id'], s['name']))

View File

@ -109,7 +109,9 @@ class TasksManager:
time.sleep(1) time.sleep(1)
def _main_graceful_exit(self): def _main_graceful_exit(self):
print("in graceful")
try: try:
print("in try")
os.remove(helper.session_file) os.remove(helper.session_file)
os.remove(os.path.join(helper.root_dir, '.header')) os.remove(os.path.join(helper.root_dir, '.header'))
self.controller.stop_all_servers() self.controller.stop_all_servers()

View File

@ -152,6 +152,7 @@ if __name__ == '__main__':
print() # for newline print() # for newline
logger.info("Recieved SIGTERM, stopping Crafty") logger.info("Recieved SIGTERM, stopping Crafty")
console.info("Recieved SIGTERM, stopping Crafty") console.info("Recieved SIGTERM, stopping Crafty")
tasks_manager._main_graceful_exit()
Crafty.universal_exit() Crafty.universal_exit()
signal.signal(signal.SIGTERM, sigterm_handler) signal.signal(signal.SIGTERM, sigterm_handler)
@ -163,6 +164,7 @@ if __name__ == '__main__':
print() # for newline print() # for newline
logger.info("Recieved SIGINT, stopping Crafty") logger.info("Recieved SIGINT, stopping Crafty")
console.info("Recieved SIGINT, stopping Crafty") console.info("Recieved SIGINT, stopping Crafty")
tasks_manager._main_graceful_exit()
Crafty.universal_exit() Crafty.universal_exit()
else: else:
print("Crafty started in daemon mode, no shell will be printed") print("Crafty started in daemon mode, no shell will be printed")
@ -175,5 +177,5 @@ if __name__ == '__main__':
logger.info("Recieved SIGINT, stopping Crafty") logger.info("Recieved SIGINT, stopping Crafty")
console.info("Recieved SIGINT, stopping Crafty") console.info("Recieved SIGINT, stopping Crafty")
break break
tasks_manager._main_graceful_exit()
Crafty.universal_exit() Crafty.universal_exit()