55 lines
1.6 KiB
C++
55 lines
1.6 KiB
C++
/**
|
||
* @file WorkflowTool.h
|
||
* @brief 工作流辅助工具(支持脚本生成jar submit)
|
||
* @author huojidong
|
||
*/
|
||
#ifndef PAI_HOME_WORKFLOWENGINE_WORKFLOWTOOLS_H
|
||
#define PAI_HOME_WORKFLOWENGINE_WORKFLOWTOOLS_H
|
||
|
||
#include <string>
|
||
|
||
namespace pai {
|
||
namespace workflow {
|
||
|
||
class CWorkflowTool
|
||
{
|
||
public:
|
||
CWorkflowTool();
|
||
~CWorkflowTool();
|
||
public:
|
||
/**
|
||
* @brief 生成一个jar包
|
||
* @param jsonfilepath 传入的json路径(绝对路径)
|
||
* @param jarfilename 输入的jar包文件名(可以不填)
|
||
*/
|
||
bool GenerateJarFile(const std::string &jsonfilepath,const std::string&jarfilename,const std::string &destjarpath);
|
||
/**
|
||
* @brief 得到要存放Jar包文件路径
|
||
*/
|
||
std::string GetDestJarPath()const {return destJarPath;}
|
||
/**
|
||
* @brief 设置要存放Jar包的路径
|
||
*/
|
||
void SetDestJarPath(std::string inputJarPath){inputJarPath.append("/");destJarPath=inputJarPath;}
|
||
private:
|
||
/**
|
||
*@brief 将json文件拷贝到临时目录的之下(吻合compiler下的GeneratorJobFile函数)
|
||
*@param strFilePath json路径
|
||
*@param strCompileTmpDir 临时文件夹路径
|
||
*/
|
||
bool SaveJsonToLocalCompileTmp(const std::string& strFilePath,const std::string& strCompileTmpDir);
|
||
/**
|
||
*@brief 将生成的jar文件拷贝到PAI_HOME下的res目录下(脚本执行的当前目录)
|
||
*@param strCompileTmpDir 临时目录
|
||
*@param jarfilename 目标jar包文件名
|
||
*@param jardestpath jar包存储路径
|
||
*/
|
||
bool CopyJarFileToDestFilePath(const std::string&strCompileTmpDir,const std::string& jarfilename);
|
||
private:
|
||
std::string destJarPath;//目标路径地址
|
||
};
|
||
|
||
}
|
||
}
|
||
#endif
|