"--json", help="output the matrix to file in json format") return parser.parse_args() logger = logging.getLogger() logger.setLevel(logging.DEBUG) console = logging.StreamHandler(stream=sys.stderr) if get_args().debug: console.setLevel(logging.DEBUG) else: console.setLevel(logging.INFO) logger.addHandler(console) client_implementations = [ name for name, value in IMPLEMENTATIONS.items() if value["role"] == 0 or value["role"] == 2 ] server_implementations = [ name for name, value in IMPLEMENTATIONS.items() if value["role"] == 1 or value["role"] == 2 ] replace_arg = get_args().replace if replace_arg: for s in replace_arg.split(","): pair = s.split("=") if len(pair) != 2: sys.exit("Invalid format for replace") name, image = pair[0], pair[1] if name not in IMPLEMENTATIONS:
from implementations import IMPLEMENTATIONS print("Pulling the simulator...") os.system("docker pull martenseemann/quic-network-simulator") print("\nPulling the iperf endpoint...") os.system("docker pull martenseemann/quic-interop-iperf-endpoint") def get_args(): parser = argparse.ArgumentParser() parser.add_argument("-i", "--implementations", help="implementations to pull") return parser.parse_args() implementations = {} if get_args().implementations: for s in get_args().implementations.split(","): if s not in [n for n, _ in IMPLEMENTATIONS.items()]: sys.exit("implementation " + s + " not found.") implementations[s] = IMPLEMENTATIONS[s] else: implementations = IMPLEMENTATIONS for name, value in implementations.items(): print("\nPulling " + name + "...") os.system("docker pull " + value["url"])
help="replace path of implementation. Example: -r myquicimpl=dockertagname", ) parser.add_argument("-j", "--json", help="output the matrix to file in json format") return parser.parse_args() logger = logging.getLogger() logger.setLevel(logging.DEBUG) console = logging.StreamHandler(stream=sys.stderr) if get_args().debug: console.setLevel(logging.DEBUG) else: console.setLevel(logging.INFO) logger.addHandler(console) implementations = {name: value["url"] for name, value in IMPLEMENTATIONS.items()} client_implementations = [ name for name, value in IMPLEMENTATIONS.items() if value["role"] == 0 or value["role"] == 2 ] server_implementations = [ name for name, value in IMPLEMENTATIONS.items() if value["role"] == 1 or value["role"] == 2 ] replace_arg = get_args().replace if replace_arg: for s in replace_arg.split(","): pair = s.split("=")