def create_proc_table(manager): for exchange in verifier_config.topics().keys(): stats = manager.dict() proc_info = dict(process=None, pid=0, exchange=exchange, stats=stats) processes[exchange] = proc_info
return reconciler.Reconciler(rec_config) if __name__ == '__main__': def make_and_start_verifier(exchange): # Gotta create it and run it this way so things don't get # lost when the process is forked. verifier = None if exchange == "nova": reconcile = verifier_config.reconcile() reconciler = None if reconcile: reconciler = _load_nova_reconciler() verifier = nova_verifier.NovaVerifier(verifier_config, reconciler=reconciler) elif exchange == "glance": verifier = glance_verifier.GlanceVerifier(verifier_config) verifier.run() for exchange in verifier_config.topics().keys(): process = Process(target=make_and_start_verifier, args=(exchange,)) process.start() processes.append(process) if len(processes) > 0: # Only pause parent process if there are children running. # Otherwise just end... signal.signal(signal.SIGINT, kill_time) signal.signal(signal.SIGTERM, kill_time) signal.pause()
def make_and_start_verifier(exchange): # Gotta create it and run it this way so things don't get # lost when the process is forked. verifier = None if exchange == "nova": reconcile = verifier_config.reconcile() reconciler = None if reconcile: reconciler = _load_nova_reconciler() verifier = nova_verifier.NovaVerifier(verifier_config, reconciler=reconciler) elif exchange == "glance": verifier = glance_verifier.GlanceVerifier(verifier_config) verifier.run() verifier_config.load() log_listener = stacklog.LogListener(_get_parent_logger()) log_listener.start() for exchange in verifier_config.topics().keys(): process = Process(target=make_and_start_verifier, args=(exchange, )) process.start() processes.append(process) if len(processes) > 0: # Only pause parent process if there are children running. # Otherwise just end... signal.signal(signal.SIGINT, kill_time) signal.signal(signal.SIGTERM, kill_time) signal.pause()