aboutsummaryrefslogtreecommitdiff
path: root/util/vnet_run
diff options
context:
space:
mode:
authorNicholas DeMarinis <ndemarinis@wpi.edu>2023-09-30 05:33:35 -0400
committerNicholas DeMarinis <ndemarinis@wpi.edu>2023-09-30 05:33:35 -0400
commit95c3d2500bca14085acb3cf8c5256f8b20313130 (patch)
tree08d7fc040e3a291519e0dde43acaa002f67db062 /util/vnet_run
parente213d1b2b45415c3faff4bb4fdae874bdfcac16d (diff)
Updated vnet_* from reference version.
Diffstat (limited to 'util/vnet_run')
-rwxr-xr-xutil/vnet_run26
1 files changed, 18 insertions, 8 deletions
diff --git a/util/vnet_run b/util/vnet_run
index 0539b23..39d72a6 100755
--- a/util/vnet_run
+++ b/util/vnet_run
@@ -15,6 +15,10 @@ START_SHELL = "/bin/bash"
DEVICE_TYPE_ROUTER = "router"
DEVICE_TYPE_HOST = "host"
+
+VHOST_BINARY_NAME = "vhost"
+VROUTER_BINARY_NAME = "vrouter"
+
VERBOSE_MODE = False
@@ -127,15 +131,17 @@ def main(input_args):
parser = argparse.ArgumentParser()
- parser.add_argument("--router", type=str, default="", help="Path to router binary")
- parser.add_argument("--host", type=str, default="", help="Path to host binary")
+ parser.add_argument("--router", type=str, default="", help="Path to vrouter binary")
+ parser.add_argument("--host", type=str, default="", help="Path to vhost binary")
+ parser.add_argument("--bin-dir", type=str, default=".",
+ help="Path to directory with vhost/vrouter binaries")
parser.add_argument("--bin-config", type=str, default="",
help="Run nodes using binaries.json Overrides --host and --router")
parser.add_argument("--clean", action="store_true",
help="Terminate any open virtual network sessions before starting")
parser.add_argument("lnx_dir", type=str, help="Directory with lnx files")
parser.add_argument("extra_args", nargs="*",
- help="Extra arguments to add when executing each node")
+ help="Extra arguments to add when executing each node", default="")
parser.add_argument("--verbose", action="store_true",
help="Print commands as they are run")
@@ -159,11 +165,15 @@ def main(input_args):
if args.bin_config:
bin_info = BinManager.from_bin_config(args.bin_config)
else:
- if args.router == "" or args.host == "":
- do_exit("Must specify host and router binaries with --host and --router")
-
- router_bin = args.router
- host_bin = args.host
+ if args.bin_dir:
+ host_bin = pathlib.Path(args.bin_dir).resolve() / VHOST_BINARY_NAME
+ router_bin = pathlib.Path(args.bin_dir).resolve() / VROUTER_BINARY_NAME
+ else:
+ if args.router == "" or args.host == "":
+ do_exit("Must specify host and router binaries with --bin-dir or (--host and --router)")
+
+ router_bin = pathlib.Path(args.router).resolve()
+ host_bin = pathlib.Path(args.host).resolve()
check_bin_exists(router_bin)
check_bin_exists(host_bin)