自上篇文章《jenkins + Git 搭建持續集成環境》后,這次配置的job有了新的要求,同時也踩到了新的坑。特此記錄,以警己身。
任務要求:
這三個步驟都在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中。