diff --git a/wetb/utils/cluster_tools/pbsfile.py b/wetb/utils/cluster_tools/pbsfile.py index 16217c57c392ff16d14d503bb3e25afa438cbf70..10adeacc8987fa3f8d160cfa954032b4bc8a708c 100644 --- a/wetb/utils/cluster_tools/pbsfile.py +++ b/wetb/utils/cluster_tools/pbsfile.py @@ -142,7 +142,7 @@ class PBSMultiRunner(PBSFile): # find available nodes with open(os.environ['PBS_NODEFILE']) as fid: files = set([f.strip() for f in fid.readlines() if f.strip() != '']) - pbs_files = glob.glob('./**/*.in', recursive=True) + pbs_files = [os.path.join(root, f) for root, folders, f_lst in os.walk('.') for f in f_lst if f.endswith('.in')] # Make a list of [(pbs_in_filename, stdout_filename, walltime),...] pat = re.compile(r'[\s\S]*#\s*PBS\s+-o\s+(.*)[\s\S]*(\d\d:\d\d:\d\d)[\s\S]*') @@ -158,7 +158,7 @@ class PBSMultiRunner(PBSFile): # sort wrt walltime pbs_info_lst = sorted(pbs_info_lst, key=lambda fow: tuple(map(int, fow[2].split(':'))))[::-1] # make dict {node1: pbs_info_lst1, ...} and save - d = {f: pbs_info_lst[i::len(files)] for i, f in enumerate(files)} + d = dict([(f, pbs_info_lst[i::len(files)]) for i, f in enumerate(files)]) with open('pbs.dict', 'w') as fid: fid.write(str(d)) diff --git a/wetb/utils/tests/test_pbs_file.py b/wetb/utils/tests/test_pbs_file.py index 117a631b9e390778e6558a95bc56706bcb7d871b..b15bcd1c51d70243d199ae368113295b59df678c 100644 --- a/wetb/utils/tests/test_pbs_file.py +++ b/wetb/utils/tests/test_pbs_file.py @@ -94,7 +94,7 @@ import re # find available nodes with open(os.environ['PBS_NODEFILE']) as fid: files = set([f.strip() for f in fid.readlines() if f.strip() != '']) -pbs_files = glob.glob('./**/*.in', recursive=True) +pbs_files = [os.path.join(root, f) for root, folders, f_lst in os.walk('.') for f in f_lst if f.endswith('.in')] # Make a list of [(pbs_in_filename, stdout_filename, walltime),...] pat = re.compile(r'[\s\S]*#\s*PBS\s+-o\s+(.*)[\s\S]*(\d\d:\d\d:\d\d)[\s\S]*') @@ -110,7 +110,7 @@ pbs_info_lst = map(get_info, pbs_files) # sort wrt walltime pbs_info_lst = sorted(pbs_info_lst, key=lambda fow: tuple(map(int, fow[2].split(':'))))[::-1] # make dict {node1: pbs_info_lst1, ...} and save -d = {f: pbs_info_lst[i::len(files)] for i, f in enumerate(files)} +d = dict([(f, pbs_info_lst[i::len(files)]) for i, f in enumerate(files)]) with open('pbs.dict', 'w') as fid: fid.write(str(d))