yao000 发表于 2018-1-7 18:57:45

Jenkins+Git 集成测试(build、zip、curl)

  自上篇文章《jenkins + Git 搭建持续集成环境》后,这次配置的job有了新的要求,同时也踩到了新的坑。特此记录,以警己身。
  任务要求:
https://images2015.cnblogs.com/blog/412020/201601/412020-20160119113246422-696208027.png
  这三个步骤都在job配置页面中Build部分添加build步骤。
  首先添加“打包构建”的命令:
  

cd buildScripts\  
build.bat
  

  build.bat中会自动使用dojo的构建工具。
  添加压缩命令:
  

cd buildOutput  

  

// 将构建后生成的文件夹和文件拷贝到一个目录中  
mkdir WebAppBuilderForArcGIS
  
move client WebAppBuilderForArcGIS
  
move server WebAppBuilderForArcGIS
  
move startup.bat WebAppBuilderForArcGIS
  
// copy nodejs.exe到目录中
  
xcopy E:\youPath\nodejs WebAppbuilderForArcGIS\server /Y /E
  

  
// 调用7zip生成压缩包
  
"C:\Program Files\7-Zip\7z.exe" a wab.zip WebAppBuilderForArcGIS\*
  

  
//将zip包拷贝到目标目录
  
mkdir E:\yourPath\WebAppBuilderForArcGIS\%BUILD_NUMBER%
  

  
copy wab.zip E:\xt-release\WebAppBuilderForArcGIS\%BUILD_NUMBER%
  
move wab.zip E:\xt-release\WebAppBuilderForArcGIS\
  

  在这一步过程中需要有7zip和nodejs
  发送zip:
  

curl http://server:8080/job/Project/build?token=build_WABSanity  

  这一步我们使用curl命令,告诉另一台远程服务器,我们的zip已经压缩好了。远程服务器接受命令后,执行自己的自动化脚本。
  在这个过程中windows用户需要单独安装curl,并且在全局变量path中配置curl的目录,使curl成为全局命令。
  在这次配置中碰到的坑是:虽然所有的脚本命令都没有异步操作,但如果这所有的命令都放到一个build step中,执行完build.bat后并不会继续执行下面命令。最后得出的结论是将整个流程拆分,每一部分单独放到一个build step中。
页: [1]
查看完整版本: Jenkins+Git 集成测试(build、zip、curl)