def test_run_tree_info(self): config_file_path = os.path.join(os.path.dirname(__name__), 'config', 'test_config.ini') luigi.configuration.LuigiConfigParser.add_config_path(config_file_path) os.environ.setdefault('test_param', 'test') tree_info = gokart.tree_info(mode='simple', output_path='tree.txt') with self.assertRaises(SystemExit): gokart.run() self.assertTrue(gokart.make_tree_info(_DummyTask(param='test')), tree_info.output().load())
def _try_tree_info(cmdline_args): with CmdlineParser.global_instance(cmdline_args): mode = gokart.tree_info().mode output_path = gokart.tree_info().output().path() # do nothing if `mode` is empty. if mode == '': return # output tree info and exit. if mode == 'simple': _run_tree_info(cmdline_args, details=False) elif mode == 'all': _run_tree_info(cmdline_args, details=True) else: raise ValueError(f'--tree-info-mode must be "simple" or "all", but "{mode}" is passed.') logger.info(f'output tree info: {output_path}') exit()
def _run_tree_info(cmdline_args, details): with CmdlineParser.global_instance(cmdline_args) as cp: gokart.tree_info().output().dump( gokart.make_tree_info(cp.get_task_obj(), details=details))