• Jenkins项目部署使用教程-----02视图及项目添加


    注意:此以我公司为例,以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服务器。

  • 相关阅读:
    第二节. SignalR开篇以及如何指定传输协议
    第一节:.Net版基于WebSocket的聊天室样例
    Maven常用dependency记录
    Linux学习笔记
    Maven 学习笔记
    SQL脚本去重分组统计
    版本号定义
    C# Random循环生成随机数重复问题解决方案
    C#通过Oracle.ManagedDataAccess无法访问Oralce
    Java注解的使用,类似于C#的Attribute
  • 原文地址:https://www.cnblogs.com/maxtgood/p/7742509.html
Copyright © 2020-2023  润新知