Skip to content

Commit f415c18

Browse files
committed
[script] use run dir name instead of only accepting the run dir num
1 parent aad848b commit f415c18

File tree

1 file changed

+23
-25
lines changed
  • vtr_flow/scripts/python_libs/vtr

1 file changed

+23
-25
lines changed

vtr_flow/scripts/python_libs/vtr/util.py

Lines changed: 23 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
from vtr import paths
2323

2424

25-
# The run number passed by get_latest_run_number is the latest run number for the task if this number is None. Otherwise
26-
# it is the run number to parse.
27-
global_run_dir_number = None
25+
# The run directory name passed by set_global_run_dir is the run directory name to parse. If it is None,
26+
# the latest run directory will be parsed.
27+
global_run_dir_name = None
2828

2929
class RawDefaultHelpFormatter(
3030
argparse.ArgumentDefaultsHelpFormatter, argparse.RawDescriptionHelpFormatter
@@ -228,12 +228,12 @@ def run_system_command(
228228

229229
# pylint: enable=too-many-arguments, too-many-instance-attributes, too-few-public-methods, too-many-locals
230230

231-
def set_global_run_dir_number(run_dir_number):
231+
def set_global_run_dir(run_dir_name):
232232
"""
233-
Set the global run directory number.
233+
Set the global run directory name.
234234
"""
235-
global global_run_dir_number
236-
global_run_dir_number = run_dir_number
235+
global global_run_dir_name
236+
global_run_dir_name = run_dir_name
237237

238238

239239
def check_cmd(command):
@@ -536,12 +536,12 @@ def get_latest_run_dir(base_dir):
536536
"""
537537
Returns the run directory with the highest run number in base_dir
538538
"""
539-
latest_run_number = get_latest_run_number(base_dir)
539+
latest_run_dir_name = get_latest_run_dir_name(base_dir)
540540

541-
if latest_run_number is None:
541+
if latest_run_dir_name is None:
542542
return None
543543

544-
return str(PurePath(base_dir) / run_dir_name(latest_run_number))
544+
return str(PurePath(base_dir) / latest_run_dir_name)
545545

546546

547547
def get_existing_run_dir(base_dir: str, run_dir: str) -> str:
@@ -560,23 +560,24 @@ def get_next_run_number(base_dir):
560560
"""
561561
Returns the next available (i.e. non-existing) run number in base_dir
562562
"""
563-
latest_run_number = get_latest_run_number(base_dir)
564-
565-
if latest_run_number is None:
566-
next_run_number = 1
567-
else:
563+
latest_run_dir_name = get_latest_run_dir_name(base_dir)
564+
match = re.match(r"^run(\d{3})$", latest_run_dir_name)
565+
if match:
566+
latest_run_number = int(match.group(1))
568567
next_run_number = latest_run_number + 1
569-
570-
return next_run_number
568+
return next_run_number
569+
else:
570+
return 1
571571

572572

573-
def get_latest_run_number(base_dir):
573+
def get_latest_run_dir_name(base_dir):
574574
"""
575575
Returns the highest run number of all run directories with in base_dir
576576
"""
577-
global global_run_dir_number
578-
run_number = None
579-
if global_run_dir_number is None:
577+
global global_run_dir_name
578+
if global_run_dir_name is not None:
579+
return global_run_dir_name
580+
else:
580581
run_number = 1
581582
run_dir = Path(base_dir) / run_dir_name(run_number)
582583

@@ -590,10 +591,7 @@ def get_latest_run_number(base_dir):
590591

591592
# Currently one-past the last existing run dir,
592593
# to get latest existing, subtract one
593-
run_number = run_number - 1
594-
else:
595-
run_number = global_run_dir_number
596-
return run_number
594+
return run_dir_name(run_number-1)
597595

598596

599597
def run_dir_name(run_num):

0 commit comments

Comments
 (0)