echo *********************************************************
echo 脚本功能:O4ARES导出。
echo 脚本编写
echo 修订时间:
echo *********************************************************
rem 主流程
:main
rem SVN更新(在Jenkins中执行)
rem 初始配置
call %Workspace%\initTMP.bat
call %Workspace%\autopack\UFT_20160122_LS\initNEW2-UFT.bat
rem 判断是否需要编译
if "%U_ARES%" EQU "true" (
rem 导出ARES代码及脚本
call :ExportSrc
rem 升级环境
call :ExecSqlHg
rem 编译基础合规后台服务
call :Compilesrc
) else (
echo 本次不需要编译UFT后台
)
exit 0
goto :eof
exit /b
rem ==========================导出ARES代码及脚本===============================================
:ExportSrc
echo 导出目标源码及脚本......
echo 本次导出配置如下:
echo Ares工作空间: %AresData%
echo Ares工程名称: %AresProject%
echo 基础ARES导出前时间:%time% >>%LogDir%\ARES1计算时间.log
rem eclipsec.exe 参数格式:
rem -project ARES的工程(分支版本,需要修改)
rem -data 工作空间(不同的环境,需要修改)
rem -aresuserargs script:cmd_integrated.js 命令行需要执行的脚本
rem -noSplash 取消启动画面 (不需修改)
rem -application 要启动的应用,此应用固定在开发工具中(不需修改)
cd /d %AresPath%
rmdir /q /s %SourcesDirSrc%\%AresProject%\
eclipsec.exe -noAutoBuild -noSplash -application com.hundsun.ares.studio.compile.application -data %AresData% -project %AresProject% -aresuserargs script:O4Script/cmd_integrated.js 1>%LogDir%\ares_info.log 2>%LogDir%\ares_error.log
echo base导出目标源码及脚本完成。
echo 基础ARES导出后时间:%time% >>%LogDir%\ARES1计算时间.log
goto :eof
rem ==========================升级环境======================================================
:ExecSqlHg
echo 升级脚本前时间:%time% >>%LogDir%\计算时间.log
echo 执行清库脚本(后续不同版本需要创建不同用户)
call :ExecSQL %SrcDir%\base\Run\buildscript\autopack\清库脚本 dropobj_hshg.sql %HGDB%
if "%AresProject%" equ "UFT_20150331F" (
echo HG升级脚本...
call :ExecSQL %SrcDir%\compliance\Sources\ufrmgnt\Script\02.升级脚本 hshg_update.sql %HGDB%
) else (
xcopy /y /q /e %SrcDir%\compliance\Sources\ufrmgnt\Script\02.升级脚本 %SrcDir%\compliance\Sources\ufrmgnt\Script\02.安装脚本\
echo HG升级脚本...
call :ExecSQL %SrcDir%\compliance\Sources\ufrmgnt\Script\02.安装脚本 hshg_update.sql %HGDB%
)
echo 升级脚本后时间:%time% >>%LogDir%\计算时间.log
goto :eof
rem 函数功能:执行SQL脚本
rem 函数参数:脚本路径%1, 脚本名称%2, 连接串%3,工作目录%4
:ExecSQL
set sqlScriptDir=%1
set sqlScriptFile=%2
set sqlDBServer=%3
set sqlCurDate=%date:~0,4%%date:~5,2%%date:~8,2%
set sqlTmp=%sqlScriptFile%_%sqlCurDate%.sql
set sqlLogFile=%sqlScriptFile%_%sqlCurDate%.log
cd /d %sqlScriptDir%
echo 生成脚本升级的脚本....
echo set feedback 1 >%sqlTmp%
echo set define off >>%sqlTmp%
echo set autoprint on>>%sqlTmp%
echo WHENEVER sqlERROR continue>>%sqlTmp%
echo conn %sqlDBServer%>>%sqlTmp%
echo PROMPT 已连接到本地数据库,开始执行...>>%sqlTmp%
echo @%sqlScriptFile%>>%sqlTmp%
echo SHOW ERROR>>%sqlTmp%
echo disconnect>>%sqlTmp%
echo exit>>%sqlTmp%
echo 执行脚本...
sqlplus /nolog @%sqlTmp%>%sqlScriptDir%\%sqlLogFile%
copy /y %sqlTmp% %LogDir%\
copy /y %sqlLogFile% %LogDir%\
del %sqlTmp%
del %sqlLogFile%
cd /d %Workspace%
goto :eof
rem ==========================编译基础合规后台服务======================================================
:Compilesrc
echo 编译基础合规清算后台前时间:%time% >>%LogDir%\计算时间.log
rem 上传基础合规清算后台
%puttyDir%\pscp.exe -sftp -l %CompileUser% -pw %CompilePwd% -r %SrcDir%\compliance\Sources\ufrmgnt\Src\* %CompileIp%:/home/%CompileUser%/src <%puttyDir%\a.txt 2>>%LogDir%\ftp_error.log
%puttyDir%\pscp.exe -sftp -l %CompileUser% -pw %CompilePwd% -r %SourcesDirSrc%\%AresProject%\* %CompileIp%:/home/%CompileUser%/src 2>>%LogDir%\ftp_error.log
%puttyDir%\pscp.exe -sftp -l %CompileUser% -pw %CompilePwd% -r %SrcDir%\base\Sources\appcom\* %CompileIp%:/home/%CompileUser%/appcom 2>>%LogDir%\ftp_error.log
rem 编译基础合规清算后台
%puttyDir%\plink.exe -ssh -l %CompileUser% -pw %CompilePwd% -m %SrcDir%\autopack\后台编译命令\srchg_cmd.txt %CompileIp% >%LogDir%\srcBRU_error.log 2>>&1
echo 编译基础合规清算后台服务完成。
echo 编译基础合规清算后台后时间:%time% >>%LogDir%\计算时间.log
goto :eof
echo 脚本功能:O4ARES导出。
echo 脚本编写
echo 修订时间:
echo *********************************************************
rem 主流程
:main
rem SVN更新(在Jenkins中执行)
rem 初始配置
call %Workspace%\initTMP.bat
call %Workspace%\autopack\UFT_20160122_LS\initNEW2-UFT.bat
rem 判断是否需要编译
if "%U_ARES%" EQU "true" (
rem 导出ARES代码及脚本
call :ExportSrc
rem 升级环境
call :ExecSqlHg
rem 编译基础合规后台服务
call :Compilesrc
) else (
echo 本次不需要编译UFT后台
)
exit 0
goto :eof
exit /b
rem ==========================导出ARES代码及脚本===============================================
:ExportSrc
echo 导出目标源码及脚本......
echo 本次导出配置如下:
echo Ares工作空间: %AresData%
echo Ares工程名称: %AresProject%
echo 基础ARES导出前时间:%time% >>%LogDir%\ARES1计算时间.log
rem eclipsec.exe 参数格式:
rem -project ARES的工程(分支版本,需要修改)
rem -data 工作空间(不同的环境,需要修改)
rem -aresuserargs script:cmd_integrated.js 命令行需要执行的脚本
rem -noSplash 取消启动画面 (不需修改)
rem -application 要启动的应用,此应用固定在开发工具中(不需修改)
cd /d %AresPath%
rmdir /q /s %SourcesDirSrc%\%AresProject%\
eclipsec.exe -noAutoBuild -noSplash -application com.hundsun.ares.studio.compile.application -data %AresData% -project %AresProject% -aresuserargs script:O4Script/cmd_integrated.js 1>%LogDir%\ares_info.log 2>%LogDir%\ares_error.log
echo base导出目标源码及脚本完成。
echo 基础ARES导出后时间:%time% >>%LogDir%\ARES1计算时间.log
goto :eof
rem ==========================升级环境======================================================
:ExecSqlHg
echo 升级脚本前时间:%time% >>%LogDir%\计算时间.log
echo 执行清库脚本(后续不同版本需要创建不同用户)
call :ExecSQL %SrcDir%\base\Run\buildscript\autopack\清库脚本 dropobj_hshg.sql %HGDB%
if "%AresProject%" equ "UFT_20150331F" (
echo HG升级脚本...
call :ExecSQL %SrcDir%\compliance\Sources\ufrmgnt\Script\02.升级脚本 hshg_update.sql %HGDB%
) else (
xcopy /y /q /e %SrcDir%\compliance\Sources\ufrmgnt\Script\02.升级脚本 %SrcDir%\compliance\Sources\ufrmgnt\Script\02.安装脚本\
echo HG升级脚本...
call :ExecSQL %SrcDir%\compliance\Sources\ufrmgnt\Script\02.安装脚本 hshg_update.sql %HGDB%
)
echo 升级脚本后时间:%time% >>%LogDir%\计算时间.log
goto :eof
rem 函数功能:执行SQL脚本
rem 函数参数:脚本路径%1, 脚本名称%2, 连接串%3,工作目录%4
:ExecSQL
set sqlScriptDir=%1
set sqlScriptFile=%2
set sqlDBServer=%3
set sqlCurDate=%date:~0,4%%date:~5,2%%date:~8,2%
set sqlTmp=%sqlScriptFile%_%sqlCurDate%.sql
set sqlLogFile=%sqlScriptFile%_%sqlCurDate%.log
cd /d %sqlScriptDir%
echo 生成脚本升级的脚本....
echo set feedback 1 >%sqlTmp%
echo set define off >>%sqlTmp%
echo set autoprint on>>%sqlTmp%
echo WHENEVER sqlERROR continue>>%sqlTmp%
echo conn %sqlDBServer%>>%sqlTmp%
echo PROMPT 已连接到本地数据库,开始执行...>>%sqlTmp%
echo @%sqlScriptFile%>>%sqlTmp%
echo SHOW ERROR>>%sqlTmp%
echo disconnect>>%sqlTmp%
echo exit>>%sqlTmp%
echo 执行脚本...
sqlplus /nolog @%sqlTmp%>%sqlScriptDir%\%sqlLogFile%
copy /y %sqlTmp% %LogDir%\
copy /y %sqlLogFile% %LogDir%\
del %sqlTmp%
del %sqlLogFile%
cd /d %Workspace%
goto :eof
rem ==========================编译基础合规后台服务======================================================
:Compilesrc
echo 编译基础合规清算后台前时间:%time% >>%LogDir%\计算时间.log
rem 上传基础合规清算后台
%puttyDir%\pscp.exe -sftp -l %CompileUser% -pw %CompilePwd% -r %SrcDir%\compliance\Sources\ufrmgnt\Src\* %CompileIp%:/home/%CompileUser%/src <%puttyDir%\a.txt 2>>%LogDir%\ftp_error.log
%puttyDir%\pscp.exe -sftp -l %CompileUser% -pw %CompilePwd% -r %SourcesDirSrc%\%AresProject%\* %CompileIp%:/home/%CompileUser%/src 2>>%LogDir%\ftp_error.log
%puttyDir%\pscp.exe -sftp -l %CompileUser% -pw %CompilePwd% -r %SrcDir%\base\Sources\appcom\* %CompileIp%:/home/%CompileUser%/appcom 2>>%LogDir%\ftp_error.log
rem 编译基础合规清算后台
%puttyDir%\plink.exe -ssh -l %CompileUser% -pw %CompilePwd% -m %SrcDir%\autopack\后台编译命令\srchg_cmd.txt %CompileIp% >%LogDir%\srcBRU_error.log 2>>&1
echo 编译基础合规清算后台服务完成。
echo 编译基础合规清算后台后时间:%time% >>%LogDir%\计算时间.log
goto :eof