1. 程式人生 > >Jenkins項目部署使用教程-----02視圖及項目添加

Jenkins項目部署使用教程-----02視圖及項目添加

set c11 內容 過程 ram jenkins 指定 插件 top

註意:此以我公司為例,以svn上傳代碼

一、添加視圖

1、點擊右上角”+”號,新建新視圖

技術分享

勾選在該視圖下顯示的項目或者在該視圖新建項目,點保存即可。

技術分享

二、新建項目

1、點擊左上角的新建,創建新項目。

技術分享

輸入項目名稱,例如項目名稱為qy-channel-monitor,本次構建選擇構建一個多配置項目,點擊OK,進入配置界面。

技術分享

項目配置界面如下:

技術分享

2、構建過程

整個構建過程包含8個部分:General、Advanced Project Options、源碼管理、構建觸發器、Configuration Matrix、構建環境、構建、構建後操作。

1)、General部分:

項目名稱,描述

技術分享

丟棄舊的構建,保持最近2天的,最大數量是5

技術分享

參數化構建,用來獲取構建過程中用到的一些全局變量

技術分享

進入配置獲取最近版本號的界面

技術分享

選擇Dynamic Parameter 進入配置截取版本的界面,

技術分享

配置接面如下圖:

技術分享

選擇String Parameter,配置端口參數

技術分享

進入端口配置界面:

技術分享

本次配置沒用到Advanced Project Options這個部分,直接進入源碼管理

技術分享

選擇Subversion

填寫完整的svn路徑,svn賬戶名,用來拉取源代碼工程包。

2)、Configuration Matrix部分

本次配置未用到構建觸發器,直接跳過,進入Configuration Matrix,

技術分享

選擇Slaves 進入配置界面,

進入slaves,選擇需要部署項目的目標主機,目標主機的具體添加方法,下面會提到。

技術分享

3)、構建環境部分:

技術分享

勾選第一個,表示再構建之前,會刪除舊的構建文件。

4)、構建部分

技術分享

選擇Execute shell

進入shell 腳本構建的階段,配置舉例如下:

技術分享

5)、構建後操作

配置郵件通知,當構建失敗是發郵件通知郵件給構建人。

技術分享

進入配置界,默認配置即可。(先安裝Email Extension Plugin插件配置,

配置全局郵件通知。)

這裏可以指定單個項目收件人是誰。

選擇Edidatable Email Notification

技術分享

點擊高級設置

技術分享

再點高級

技術分享

技術分享

恢復內容代碼如下(需要修改項目名稱及個別格式,按需求來):

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="UTF-8">
 5 <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次構建日誌</title>
 6 </head>
 7 
 8 <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
 9     offset="0">
10     <table width="95%" cellpadding="0" cellspacing="0"
11         style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
12         <tr>
13             <td>(本郵件是程序自動下發的,請勿回復!)</td>
14         </tr>
15         <tr>
16             <td><h2>
17                     <font color="#0000FF">hi,all:
18                        ************(寫項目名稱)項目已經發布完成,如有問題請及時聯系運維,謝謝~</font>
19                 </h2></td>
20         </tr>
21         <tr>
22             <td><br />
23             <b><font color="#0B610B">構建信息</font></b>
24             <hr size="2" width="100%" align="center" /></td>
25         </tr>
26         <tr>
27             <td>
28                 <ul>
29                     <li>項目名稱&nbsp;&nbsp;${PROJECT_NAME}</li>
30                     <li>構建編號&nbsp;&nbsp;第${BUILD_NUMBER}次構建</li>
31                     <li>SVN&nbsp;版本:&nbsp;${SVN_REVISION}</li>
32                     <li>觸發原因:&nbsp;${CAUSE}</li>
33                 </ul>
34             </td>
35         </tr>
36         <tr>
37             <td><b><font color="#0B610B">Changes Since Last
38                         Successful Build:</font></b>
39             <hr size="2" width="100%" align="center" /></td>
40         </tr>
41         <tr>
42             <td>
43                 <ul>
44                     <li>歷史變更記錄 : <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a></li>
45                 </ul> ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:<br />%c<br />",showPaths=true,changesFormat="<pre>[%a]<br />%m</pre>",pathFormat="&nbsp;&nbsp;&nbsp;&nbsp;%p"}
46             </td>
47         </tr>
48         <tr>
49             <td><b>Failed Test Results</b>
50             <hr size="2" width="100%" align="center" /></td>
51         </tr>
52         <tr>
53             <td><pre
54                     style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">$FAILED_TESTS</pre>
55                 <br /></td>
56         </tr>
57         <tr>
58             <td><b><font color="#0B610B">構建日誌 (最後 500行):</font></b>
59             <hr size="2" width="100%" align="center" /></td>
60         </tr>
61         <!-- <tr>
62             <td>Test Logs (if test has ran): <a
63                 href="${PROJECT_URL}ws/TestResult/archive_logs/Log-Build-${BUILD_NUMBER}.zip">${PROJECT_URL}/ws/TestResult/archive_logs/Log-Build-${BUILD_NUMBER}.zip</a>
64                 <br />
65             <br />
66             </td>
67         </tr> -->
68         <tr>
69             <td><textarea cols="80" rows="30" readonly="readonly"
70                     style="font-family: Courier New">${BUILD_LOG, maxLines=500}</textarea>
71             </td>
72         </tr>
73     </table>
74 </body>
75 </html>

解決坑:

描述一下本人部署過程中碰見過的坑

1.不能用tags.version 用tags_version。

2.如果配置文件有目錄的,必須授權給jenkins用戶。

3.第一次構建升級之前,必須殺掉root用戶啟動的對應服務,chown -R jenkin.jenkins*.log再用jenkins用戶構建升級。

4.Ssh信任做好之後,需要在jenkins服務器上用切換到jenkins用戶下,用jenkins用戶登錄slave服務器。

Jenkins項目部署使用教程-----02視圖及項目添加