]> git.puffer.fish Git - mirror/frr.git/commitdiff
tests: Handling potential errors gracefully 18476/head
authorY Bharath <y.bharath@samsung.com>
Mon, 24 Mar 2025 07:43:22 +0000 (13:13 +0530)
committerY Bharath <y.bharath@samsung.com>
Mon, 24 Mar 2025 12:24:20 +0000 (17:54 +0530)
Handling potential errors gracefully at exa-receive.py

Signed-off-by: y-bharath14 <y.bharath@samsung.com>
tests/topotests/lib/exa-receive.py

index 2ea3a75a5f2751bf316fd5b79db613c01ad75117..9035b6ab15a6eb3e3efa6d5cb480849363cd2d66 100755 (executable)
@@ -19,8 +19,23 @@ parser.add_argument(
 parser.add_argument("peer", type=int, help="The peer number")
 args = parser.parse_args()
 
-savepath = os.path.join(args.logdir, "peer{}-received.log".format(args.peer))
-routesavefile = open(savepath, "w")
+# Ensure log directory exists
+logdir = args.logdir
+if not os.path.exists(logdir):
+    try:
+        # Create a new log directory
+        os.makedirs(logdir)
+    except OSError as e:
+        print(f"Error in creating log directory: {e}")
+        exit(1)
+
+savepath = os.path.join(logdir, f"peer{args.peer}-received.log")
+
+try:
+    routesavefile = open(savepath, "w")
+except IOError as e:
+    print(f"Error in opening log file: {e}")
+    exit(1)
 
 while True:
     try: