Пример #1
0
def try_stop_network(scenario):
    if world.processes:
        primitives.destroy_network(world.processes)

    if world.mon_proc:
        world.mon_proc.send_signal(signal.SIGINT)
        world.mon_proc.wait()

    if world.stat_f_obj:
        world.stat_f_obj.close()
Пример #2
0
def when_stop_n_nodes(step, nodes_count):
    stop_nodes = []
    stop_addrs = []
    for i in xrange(int(nodes_count)):
        while True:
            proc = random.choice(world.processes)
            if proc not in stop_nodes:
                stop_addrs.append(world.addresses[world.processes.index(proc)])
                stop_nodes.append(proc)
                break

    primitives.destroy_network(stop_nodes, destroy_hdds=False)

    for proc in stop_nodes:
        del world.processes[world.processes.index(proc)]

    for addr in stop_addrs:
        world.stat_f_obj.write('\nStopping %s node...\n'%addr)
        del world.addresses[world.addresses.index(addr)]