Source code for smug.run

import signal
import subprocess
import sys
import os


from smug.connection_manager import ConnectionManager

processes = []

cleaners = 2
preprocessors = 1
processors = 2
savers = 1

importers = 0


[docs]def run(): subprocess.run(['python', 'initializers/initializer.py']) for i in range(cleaners): processes.append(subprocess.Popen(['python', 'cleaners/cleaner.py'])) for i in range(preprocessors): processes.append(subprocess.Popen(['python', 'preprocessors/preprocessing.py'])) for i in range(processors): processes.append(subprocess.Popen(['python', 'processors/word_vectoring_processor.py'])) for i in range(processors): processes.append(subprocess.Popen(['python', 'processors/location_prediction_module.py'])) for i in range(savers): processes.append(subprocess.Popen(['python', 'savers/mongo_save.py'])) print('Workers running') processes[::-1][0].wait()
[docs]def signal_handler(signal, frame): print('Killing all processes') for process in processes: process.kill() sys.exit(0)
signal.signal(signal.SIGINT, signal_handler) if __name__ == '__main__': os.chdir(os.getcwd()) run()