最近用jenkins+gitlab+ansible做持續化內建,自動化部署和版本復原。然而deploy plugin沒能做到增量更新和復原操作,折騰了很久決定自己寫個腳本來簡單實作。
環境:
各工具職能:
1、gitlab做版本管理
2、jenkins根據指定參數,分别執行部署或復原操作;以及執行結果的展現和記錄。
3、ansible負責腳本的遠端執行。
以下的所有操作都是在上述條件安裝完成且可用的前提下進行。
部署腳本:
版本復原腳本:
jenkins配置:添加一個可選參數
This build is parameterized --> Choice Parameter
變量名為:
變量值:

執行腳本:
最後執行
執行復原操作的輸出日志
這裡隻是簡單地實作了自動化部署和復原操作,如果做得更智能的話,結合資料庫可以做成復原到某個版本等。