標籤:操作 tor get ima 一鍵 環境 enable html 參數
轉載:http://www.cnblogs.com/EasonJim/p/6295372.htmlJenkins使用FTP進行一鍵部署及復原2(Windows)(項目實踐)前提:
這一篇是繼上一篇http://www.cnblogs.com/EasonJim/p/6092938.html的真實項目實踐。
思路和大致實現步驟請參照上一篇文章。
注意:這篇文章涉及到兩台伺服器:1為測試伺服器。2為正式伺服器。且,兩台伺服器都必須安裝了jenkins。
注意2:這裡所說的一鍵部署是指從測試伺服器到正式伺服器的發布功能。
提示:如果出現CLI調用的許可權或者錯誤問題,參考:http://www.cnblogs.com/EasonJim/p/6086018.html
具體操作:一、配置正式伺服器的工程
選擇構建項目時,選擇【構建一個自由式饒舌的軟體項目】
查看原圖
1、解壓工程:
查看原圖
查看原圖
查看原圖
命令列:
echo [INFO] 備份壓縮操作call C:\"Program Files"\WinRAR\Rar.exe a -x*\Upload* -x*\ueditor* -x*\UploadFolder* %FilePath%.bak.rar %UnzipPath%echo [INFO] 解壓操作call c:\"Program Files"\winrar\rar.exe x -ep2 -o+- %FilePath% %UnzipPath%
說明:
先備份再解壓,也就是說每一次操作之前都要備份。
1)部署時,比如上傳的檔案名稱為1.rar,那麼備份檔案為1.rar.bak.rar。
2、還原工程:
查看原圖
查看原圖
查看原圖
命令列:
echo [INFO] 備份壓縮操作call C:\"Program Files"\WinRAR\Rar.exe a -k -r -s -m1 -x*\Upload* -x*\ueditor* -x*\UploadFolder* -x*\Web.config -x*\DownloadFile* -x*\ErrorLog* -x*\LogFiles* %FilePath%-%BUILD_ID%.restorebak.rar %UnzipPath%echo [INFO] 解壓操作set "url=%UnzipPath%"call c:\"Program Files"\winrar\rar.exe x -ep2 -o+- %FilePath% %url:~0,3%
說明:
先備份再解壓,也就是說每一次操作之前都要備份。
0)壓縮時我加入了buildid作為參數,避免還原同一個時會重複的問題。
1)復原時,比如上傳備份的檔案名稱為1.rar.bak.rar,那麼復原操作備份檔案為1.rar.bak.rar.restorebak.rar。
2)這裡由於上面備份的壓縮包是全路徑的,所以我用字串切割提取到盤符直接解壓。
二、配置測試伺服器的工程1、一鍵部署工程:
選擇構建項目時,選擇【構建一個自由式饒舌的軟體項目】
查看原圖1)配置工程資訊:
查看原圖2)配置批處理進行壓縮:
查看原圖
說明:這裡採用規則的命名方式,且最後會拷貝到workspace中,因為ftp上傳軟體只支援當前工作空間的目錄。
批處理如下:
echo [INFO] 壓縮要上傳的檔案,這裡已經排除了一些檔案cd D:\wwwroot\nhq\wwwrootcall C:\"Program Files"\WinRAR\Rar.exe a -k -r -s -m1 -x*\Upload* -x*\ueditor* -x*\UploadFolder* -x*\Web.config -x*\DownloadFile* -x*\ErrorLog* -x*\LogFiles* -ag{%BUILD_ID%.push} D:\wwwroot\nhq\wwwrootmove %BUILD_ID%.push.rar %workspace%
3)配置FTP上傳:
查看原圖
在【Name】上選擇的server是需要手動進行配置的,如下:
安裝外掛程式【Publish Over FTP】
在【系統管理】->【系統設定】->【Publish over FTP】->點擊【增加】按鈕,增加一個要串連的FTP:
查看原圖
注意:
【Source files】表示的不是絕對路徑,而是jenkins的workpase的路徑,相當於相對路徑,如果要上傳整個目錄包括子目錄的,最後加上【\**】;
【Remove prefix】表示去除目錄首碼,如果不去除,將會按照上面的目錄依次建立。
【Remote directory】為ftp的存放目錄,如果上面沒有這個目錄將會自動建立。
【Exclude files】為要排除的檔案和檔案夾,上面為參考。
4)配置CLI的調用服務:
注意:這裡是直接調用正式伺服器的cli服務。
查看原圖
批處理如下:
echo [INFO] 通過CLI調用公網Jenkins進行解包java -jar "C:\Program Files (x86)\Jenkins\war\WEB-INF\jenkins-cli.jar" -s http://192.168.199.1:8080/ build Unzip -p FilePath=E:\wwwroot\inetpub\bak\%BUILD_ID%.push.rar -p UnzipPath=E:\wwwroot\inetpub\wwwroot\TestBank --username administrator --password administrator
參數說明參考上面的說明。
5)配置郵件發送:
查看原圖
觸發點為無論結果如何都發送。
查看原圖2、一鍵復原工程:
選擇構建項目時,選擇【構建一個自由式饒舌的軟體項目】
查看原圖1)配置工程資訊:
查看原圖2)配置構建選擇參數:
查看原圖
提示:這裡的Project就是上面配置的一鍵部署的工程,能自動識別到構建ID。
3)調用CLI進行產生環境的復原:
查看原圖
批處理如下:
echo [INFO] 通過CLI調用公網Jenkins進行解包Setlocal enabledelayedexpansionset url="%ProjectName%"set "buildID="set url=%url::=/%set url=%url:///=/%set url=%url://=/%for /f "tokens=1,2,3,4,5,6* delims=/" %%a in (%url%) do ( set "buildID=%%f")java -jar "C:\Program Files (x86)\Jenkins\war\WEB-INF\jenkins-cli.jar" -s http://192.169.199.1:8080/ build Restore -p FilePath=E:\wwwroot\inetpub\bak\%buildID%.push.rar.bak.rar -p UnzipPath=E:\wwwroot\inetpub\wwwroot\TestBank --username administrator --password administrator
提示:這裡上面採用的批處理切割擷取buildid,用於指定要復原哪個版本。
4)配置郵件通知:
查看原圖
觸發點:
查看原圖
到此,配置全部搞定。
Jenkins使用FTP進行一鍵部署及復原2(Windows)(項目實踐)