def __create_action(self, main_root):
		action_dir = os.path.join(main_root, 'action')
		safe_mkdir(action_dir)

		actions = set()
		for unit, param in self.__task.data['workflow'].items():
			actions.add(param['type'])
		self.__action_mgr.create_actions(actions, action_dir)
def dfs(self,can,cursum,target,res):
        if cursum > target: return 
        if cursum == target: 
            self.result.append(res)
            return 
        for i in xrange(len(can)):
            if not res or res[len(res)-1] <= can[i]:
                self.dfs(can,cursum+can[i],target,res+[can[i]])