日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

Jenkins使用FTP进行一键部署及回滚2(Windows)(项目实践)

發(fā)布時(shí)間:2025/3/20 windows 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Jenkins使用FTP进行一键部署及回滚2(Windows)(项目实践) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前提:

這一篇是繼上一篇http://www.cnblogs.com/EasonJim/p/6092938.html的真實(shí)項(xiàng)目實(shí)踐。

思路和大致實(shí)現(xiàn)步驟請(qǐng)參照上一篇文章。

注意:這篇文章涉及到兩臺(tái)服務(wù)器:1為測試服務(wù)器。2為正式服務(wù)器。且,兩臺(tái)服務(wù)器都必須安裝了jenkins。

注意2:這里所說的一鍵部署是指從測試服務(wù)器到正式服務(wù)器的發(fā)布功能。

提示:如果出現(xiàn)CLI調(diào)用的權(quán)限或者錯(cuò)誤問題,參考:http://www.cnblogs.com/EasonJim/p/6086018.html

具體操作:

一、配置正式服務(wù)器的工程

選擇構(gòu)建項(xiàng)目時(shí),選擇【構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目】

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)部署時(shí),比如上傳的文件名為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)壓縮時(shí)我加入了buildid作為參數(shù),避免還原同一個(gè)時(shí)會(huì)重復(fù)的問題。

1)回滾時(shí),比如上傳備份的文件名為1.rar.bak.rar,那么回滾操作備份文件為1.rar.bak.rar.restorebak.rar。

2)這里由于上面?zhèn)浞莸膲嚎s包是全路徑的,所以我用字符串切割提取到盤符直接解壓。

二、配置測試服務(wù)器的工程

1、一鍵部署工程:

選擇構(gòu)建項(xiàng)目時(shí),選擇【構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目】

1)配置工程信息:

?

2)配置批處理進(jìn)行壓縮:

說明:這里采用規(guī)則的命名方式,且最后會(huì)拷貝到workspace中,因?yàn)閒tp上傳軟件只支持當(dāng)前工作空間的目錄。

批處理如下:

echo [INFO] 壓縮要上傳的文件,這里已經(jīng)排除了一些文件 cd D:\wwwroot\nhq\wwwroot\ 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* -ag{%BUILD_ID%.push} D:\wwwroot\nhq\wwwroot\ move %BUILD_ID%.push.rar %workspace%

3)配置FTP上傳:

?

在【Name】上選擇的server是需要手動(dòng)進(jìn)行配置的,如下:

安裝插件【Publish Over FTP】

在【系統(tǒng)管理】->【系統(tǒng)設(shè)置】->【Publish over FTP】->點(diǎn)擊【增加】按鈕,增加一個(gè)要連接的FTP:

注意:

【Source files】表示的不是絕對(duì)路徑,而是jenkins的workpase的路徑,相當(dāng)于相對(duì)路徑,如果要上傳整個(gè)目錄包括子目錄的,最后加上【\**】;

【Remove prefix】表示去除目錄前綴,如果不去除,將會(huì)按照上面的目錄依次創(chuàng)建。

【Remote directory】為ftp的存放目錄,如果上面沒有這個(gè)目錄將會(huì)自動(dòng)創(chuàng)建。

【Exclude files】為要排除的文件和文件夾,上面為參考。

4)配置CLI的調(diào)用服務(wù):

注意:這里是直接調(diào)用正式服務(wù)器的cli服務(wù)。

批處理如下:

echo [INFO] 通過CLI調(diào)用公網(wǎng)Jenkins進(jìn)行解包 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

參數(shù)說明參考上面的說明。

5)配置郵件發(fā)送:

?

觸發(fā)點(diǎn)為無論結(jié)果如何都發(fā)送。

2、一鍵回滾工程:

選擇構(gòu)建項(xiàng)目時(shí),選擇【構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目】

1)配置工程信息:

2)配置構(gòu)建選擇參數(shù):

提示:這里的Project就是上面配置的一鍵部署的工程,能自動(dòng)識(shí)別到構(gòu)建ID。

3)調(diào)用CLI進(jìn)行生成環(huán)境的回滾:

批處理如下:

echo [INFO] 通過CLI調(diào)用公網(wǎng)Jenkins進(jìn)行解包 Setlocal enabledelayedexpansion set 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,用于指定要回滾哪個(gè)版本。

4)配置郵件通知:

觸發(fā)點(diǎn):

?

?到此,配置全部搞定。

?

轉(zhuǎn)載于:https://www.cnblogs.com/EasonJim/p/6295372.html

總結(jié)

以上是生活随笔為你收集整理的Jenkins使用FTP进行一键部署及回滚2(Windows)(项目实践)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。