in dynalab_cli/utils.py [0:0]
def write_exclude_filelist(self, outfile, model_name, exclude_model=False):
def _write_exclude_entry_safe(file, f_obj):
if os.path.exists(os.path.join(self.root_dir, file)):
f_obj.write(file + "\n")
config = self.load_config()
with open(outfile, "w") as f:
# exclude itself
_write_exclude_entry_safe(outfile, f)
# all exclude files and folders
if config["exclude"]:
for ex in config["exclude"]:
_write_exclude_entry_safe(ex, f)
# tmp dir for test
tmp_dir = os.path.join(self.config_dir, "tmp")
_write_exclude_entry_safe(tmp_dir, f)
# past submissions
_write_exclude_entry_safe(self.submission_dir, f)
# dir for other models
if os.path.exists(self.dynalab_dir):
for m in os.listdir(self.dynalab_dir):
if m != model_name:
_write_exclude_entry_safe(os.path.join(self.dynalab_dir, m), f)
if exclude_model:
_write_exclude_entry_safe(config["checkpoint"], f)
_write_exclude_entry_safe(config["handler"], f)