天天看點

Jenkins 更新網站靜态檔案

要想去更新網站必須先建立新的任務,任務名寫上網站的名字。

現在去更新靜态的logo圖檔是不需要編譯的,是以這裡不會用到建立maven項目,這裡選擇建構自由風格的軟體項目(無需使用make ant maven去編譯)。

Jenkins 更新網站靜态檔案

建立好任務之後需要做一些配置

Jenkins 更新網站靜态檔案

 現在這個就一個功能能夠将svn倉庫的代碼拉取下來,svn倉庫位址 svn:139.224.227.121:8801/edu/vv1,local module directory就是代碼要下載下傳在哪個目錄下,點代表工程目錄。Repository depth代表工程目錄,有的時候工程目錄有多級,這裡是将整個工程目錄下載下傳下來。Quiet check-out代表靜默的形式遷出,遷出的方式為use 'svn update' as much as possible,如果代碼有更新隻遷出更新的那塊代碼,而不是全部遷出來。

Jenkins 更新網站靜态檔案

 通路倉庫必須要使用者名和密碼,點選添加

Jenkins 更新網站靜态檔案

代碼倉庫指定了,最好拉到最下面 點選應用儲存即可

Jenkins 更新網站靜态檔案

上面這些操作最主要的就是寫了一個倉庫位址 ,現在這個任務就一個功能是将svn倉庫的代碼檔案拉取下來,拉取到jenkins伺服器。

建構你的任務

Jenkins 更新網站靜态檔案

在控制台輸出可以看到 拉取的代碼檔案拉取到jenkins伺服器下面的/root/.jenkins/workspace/discuz.test.net目錄下面,--quite表示靜默列印,沒有顯示遷出的檔案名字。

Jenkins 更新網站靜态檔案

 可以看到代碼檔案(logo.png,index.html)就被遷到jenkins伺服器上面來了 

[[email protected] ~]# cd /root/.jenkins/workspace/discuz.test.net/
[[email protected] discuz.test.net]# ll
total 20204
-rw-r--r--. 1 root root     2381 Oct 27 19:17 index.html
-rw-r--r--. 1 root root     3685 Oct 27 19:17 logo.png
           

Jenkins将靜态圖檔拉取到本地了,要怎麼讓jenkins幫我們去更新網站的logo呢? 

在任務的配置裡面選擇建構環境,然後選擇執行shell,,将要部署的shell指令寫進去即可。

Jenkins 更新網站靜态檔案

這裡是更新一台伺服器上面的網站,在更新之前需要配置免密鑰導入。

ssh -l root 192.168.179.104 "mkdir -p /data/backup/`date +%F`"
ssh -l root 192.168.179.104 "\cp /var/www/html/static/image/common/logo.png /data/backup/`date +%F`"
ssh -l root 192.168.179.104 "ls -l /data/backup/`date +%F`"
scp /root/.jenkins/workspace/discuz.test.net/logo.png [email protected]:/var/www/html/static/image/common
           

建構任務,然後觀察控制台的輸出 

Jenkins 更新網站靜态檔案

 可以看到輸出台資訊正常,再去看看網站的logo有沒有更新。

Jenkins 更新網站靜态檔案

可以看到通過jenkins網站更新成功。