Skip to content
Merged

Dev #34

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 10 additions & 9 deletions RLA/easy_log/log_tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -243,23 +243,24 @@ def archive_log(self, skip_ask=False):
s = input("archive these files? (y/n) \n ")
if s == 'y':
print("archiving ...")

self._archive_log(show=False)



class MoveLogTool(BasicLogTool):
class MigrateLogTool(BasicLogTool):
def __init__(self, proj_root, task_table_name, regex, target_task_table_name, *args, **kwargs):
self.proj_root = proj_root
self.task_table_name = task_table_name
self.regex = regex
self.target_task_table_name = target_task_table_name
super(MoveLogTool, self).__init__(*args, **kwargs)
super(MigrateLogTool, self).__init__(*args, **kwargs)

def _archive_log(self, show=False):
def _migrate_log(self, show=False):
for log_type in self.log_types:
root_dir_regex = osp.join(self.proj_root, log_type, self.task_table_name, self.regex)
target_root_dir = osp.join(self.proj_root, log_type, self.target_task_table_name)
prefix_dir = osp.join(self.proj_root, log_type)
prefix_dir = osp.join(self.proj_root, log_type, self.task_table_name)
prefix_len = len(prefix_dir)
empty = True
# os.system("chmod +x -R \"{}\"".format(prefix_dir))
Expand Down Expand Up @@ -288,15 +289,15 @@ def _archive_log(self, show=False):
if empty: print("empty regex {}".format(root_dir_regex))
pass

def archive_log(self, skip_ask=False):
self._archive_log(show=True)
def migrate_log(self, skip_ask=False):
self._migrate_log(show=True)
if skip_ask:
s = 'y'
else:
s = input("archive these files? (y/n) \n ")
s = input("migrate these files? (y/n) \n ")
if s == 'y':
print("moving ...")
self._archive_log(show=False)
print("migrating ...")
self._migrate_log(show=False)



Expand Down
10 changes: 5 additions & 5 deletions rla_scripts/migrate_expt.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Created by xionghuichen at 2022/12/6
# Email: chenxh@lamda.nju.edu.cn
"""
A script to move some important experiments to another task_table
A script to migrate some important experiments in one task table to the target task table.


"""
from rla_script_config import *
from RLA.easy_log.log_tools import MoveLogTool
from RLA.easy_log.log_tools import MigrateLogTool
import argparse

def argsparser():
Expand All @@ -21,6 +21,6 @@ def argsparser():

if __name__=='__main__':
args = argsparser()
dlt = MoveLogTool(proj_root=DATA_ROOT, task_table_name=args.task_table, regex=args.regex,
target_task_table_name=args.target_task_table)
dlt.archive_log()
dlt = MigrateLogTool(proj_root=DATA_ROOT, task_table_name=args.task_table, regex=args.regex,
target_task_table_name=args.target_task_table)
dlt.migrate_log()
13 changes: 12 additions & 1 deletion test/test_scripts.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from test._base import BaseTest
from RLA.easy_log.log_tools import DeleteLogTool, Filter
from RLA.easy_log.log_tools import ArchiveLogTool, ViewLogTool
from RLA.easy_log.log_tools import ArchiveLogTool, ViewLogTool, MigrateLogTool
from RLA.easy_log.tester import exp_manager

import os
Expand Down Expand Up @@ -57,6 +57,17 @@ def test_archive(self) -> None:
log_found = dlt.delete_related_log(skip_ask=True)
assert log_found == 10

def test_migrate(self) -> None:
self.remove_and_copy_data()
dlt = MigrateLogTool(proj_root=self.TARGET_DATA_ROOT, task_table_name=self.TASK_NAME,
regex='2022/03/01/21-13*', target_task_table_name=self.TASK_NAME + '_v2')
dlt.migrate_log(skip_ask=True)
filter = Filter()
filter.config(type=Filter.ALL, timstep_bound=1)
dlt = DeleteLogTool(proj_root=self.TARGET_DATA_ROOT, regex='2022/03/01/21-13*', filter=filter, task_table_name=self.TASK_NAME + '_v2')
log_found = dlt.delete_related_log(skip_ask=True)
assert log_found == 10, f"found {log_found} expts."

def test_view(self) -> None:
"""
view experiment log.See rla_scripts/view_expt.py
Expand Down