Jenkins實現測試環境到生產環境一鍵部署(Windows)


前言:

因為dotnet在發布站點后,然后再上傳服務時,會因為各種的網速問題,導致站點瞬間掛掉!那么通過一鍵部署,先在測試站點測試好的文件,復制到正式站點上的一個緩沖區,進行預熱配置,之后再本機進行文件替換,速度是相當的快,最終把影響降到最低。

所用到的插件:

文件復制插件,從master復制到slave:【Copy Data To Workspace Plugin】:https://wiki.jenkins-ci.org/display/JENKINS/Copy+Data+To+Workspace+Plugin

注意:此插件很久沒有更新,一次只能是一個目錄!

前提:

必須有兩台服務器,且已經配置了slave的節點,參考:(Windows)http://www.cnblogs.com/EasonJim/p/6054436.html

實現思路:

1、在測試環境應該模擬和生成環境的配置和編譯版本保持是Release狀態,且功能已經滿足預期發布需求。

2、通過文件復制插件,復制測試環境上的部署文件到生成環境上的jenkins工作空間。

3、通過批處理處理不需要覆蓋的文件或者臨時要修改的配置等。

4、利用rar備份生成環境上即將要覆蓋的文件,注意命名上遵循一定規律:日期-項目-文件夾-{BuildID}.bak.rar。

5、利用批處理進行從生成環境的jenkins工作空間上把文件復制到站點上,常用命令:xcopy。

具體的實現步驟:

1、在jenkins上安裝【Copy Data To Workspace Plugin】文件復制插件:

【系統管理】->【管理插件】->點擊【可選插件】->搜索框輸入【Copy Data To Workspace Plugin】

2、新建工程,把上面實現思路配置進去:

 新建項目,注意:這里要選擇【構建一個自由風格的軟件】,不然復制文件插件無法復制!

如果你出現了“Waiting for next available executor”,那么有可能是你選擇成了【構建一個多配置項目】

進入項目詳情頁面,填寫備注等信息,注意頁面上的選擇

關聯這個項目這能運行在這個節點上,這里的節點的選擇是通過新建節點時輸入的標簽名稱,注意頁面上的選擇

 選中復制文件插件,並指定要從master復制的文件夾,注意頁面上的選擇

添加批處理進行slave的文件夾備份,注意頁面上的選擇

填寫備份的配處理,這里我用了RAR的壓縮命令,所以如果要用RAR的時候,確保機器上已經安裝。且,備份后的文件我寫的比較有規律:

命令:

start c:\"Program Files"\winrar\rar.exe a -k -r -s -m1 -agYYYYMMDDHHMMSS-NN{-Admin-%BUILD_ID%.bak} {要備份到的文件夾} {要備份的文件夾}

 再增加一個批處理,進行剛在master復制到slave的工作空間的文件用xcopy命令覆蓋slave上的站點Admin文件夾

這里使用xcopy命令進行復制

命令:

xcopy /y /e /r {slave工作空間上的項目文件夾} {要復制到替換的文件夾}

最后【Save】,可以測試是否成功了。

注意:如果中途沒有截圖的選項,一般默認不選擇,其實也可能根據需要進行選擇。

如果想要在構建完之后,觀察是否成功復制等信息,可以點【增加構建后操作步驟】來增加配置郵件的發送等操作。

后話:

有一鍵部署,那么肯定就有一鍵回滾,可以參考:http://www.cnblogs.com/EasonJim/p/5945266.html

最后是部署環境拓撲圖和流程:http://www.cnblogs.com/EasonJim/p/6007669.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM