jenkins新建任务详解

 

一、新建任务

点击左侧新建任务

 输入任务名称-->选择构建一个自由风格的软件项目-->确认

进入任务配置页面

 

二、基本配置

General

配置构建保留天数,保留个数,必要时并发构建

源码管理

配置svn地址,用户名密码

构建环境

配置ant

构建

 配置maven,pom.xml文件目录,settings.xml文件目录

 

三、任务配置详解

1.General

        (1)项目名称:之前创建项目所取名称

        (2)描述:可写对项目的介绍、项目功能等,可选

        (3)GitHub project:(点击问号可以查看解释信息)

       

        (4)Throttle builds:节流建立

       

        (5)丢弃旧的构建:

      

       (6)参数化构建过程:

      

        1)参数允许您提示用户输入一个或多个输入,这些输入将被传递到构建中。例如,您可能有一个项目,它通过允许用户上传一个zip文件并通过二进制文件进行测试来运行需求测试。这可以通过在这里添加一个文件参数来完成。
        2) 或者您可能有一个发布软件的项目,您希望用户输入与软件一起上传的发布说明。这可以通过在这里添加多行字符串参数来完成。
        3)每个参数都有一个名称和某种值,这取决于参数类型。这些名称/值对将出口作为环境变量时开始生成,可以生成配置的后续部分(如生成步骤)访问这些值,例如使用${PARAMETER_NAME} 语法(或 %PARAMETER_NAME% on Windows)。
        4)这也意味着这里定义的每个参数都应该有唯一的名称。
        5)当一个项目被参数化时,通常的构建链接将被一个带有参数链接的构建所代替,用户将被提示为每个定义的参数指定值。如果他们选择不输入任何内容,那么构建将以每个参数的默认值开始。
        6)如果某个构建是自动启动的,例如,如果由SCM触发器启动,则将使用每个参数的默认值。
        7)当参数化构建在队列中时,尝试启动同一项目的另一个构建只在参数值不同时才成功,或者如果需要启用选项,则执行并发构建。

        详情请查看参数化构建文档:https://wiki.jenkins.io/display/JENKINS/Parameterized+Build

       (7)关闭构建:

       

        1)选中此选项时,将不会执行该项目的新版本。
        2)当你想暂时阻止一个项目被建立时,这会很有帮助。例如,如果您的项目依赖于某些基础设施(例如测试服务器或源代码存储库),并且您知道它将在一段时间内不可用,则可以禁用该项目,以防止在此期间不必要的构建失败(以及任何相应的通知)。

        (8)在必要时并发构建:

               

        1)选中此选项时,可以并行执行此项目的多个构建。
        2)默认情况下,一次只执行一个项目的单个构建 - 任何其他开始构建项目的请求将保留在构建队列中,直到第一次构建完成。
        3)这是一个安全的默认值,因为项目通常可能需要对某些资源(如数据库或硬件)的独占访问。
        4)但是,启用此选项后,如果有足够的构建可执行程序可以处理此项目,则该项目的多个构建将并行进行。如果任何时候没有足够的可用执行程序,则正常情况下,构建队列中将继续保留进一步的构建请求。
        5)启用并发构建对于执行冗长测试套件的项目很有用,因为它允许每个构建包含较少数量的更改,而总周转时间会减少,因为后续构建不需要等待以前的测试运行完成。

        详情请查看文档:https://wiki.jenkins.io/display/JENKINS/Features+controlled+by+system+properties

 

2.源码管理

        (1)None:无源码

        (2)Git:通过git进行源码管理

        (3)Subversion:通过svn进行源码管理

 

3.构建触发器

        (1)触发远程构建 (例如,使用脚本):

       

       1) 如果要通过访问特殊的预定义URL(方便脚本)触发新构建,请启用此选项。
       2)此功能的一个典型示例是从源代码控制系统的钩子脚本(当某人刚刚提交到存储库中的更改)或从解析源控件电子邮件通知的脚本触发新构建时。
       3)您需要以字符串的形式提供授权令牌,以便只有那些知道它的人才能够远程触发此项目的构建。

       (2) Build after other projects are built:在构建其他项目后构建

      

       (3)Build periodically:定期构建

       

        在 日程表中填写 0 * * * *。

        第一个参数代表的是分钟 minute,取值 0~59;

        第二个参数代表的是小时 hour,取值 0~23;

        第三个参数代表的是天 day,取值 1~31;

        第四个参数代表的是月 month,取值 1~12;

        最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。

        所以 0 * * * * 表示的就是每个小时的第 0 分钟执行一次构建。

        (4)GitHub hook trigger for GITScm polling:GITSUB钩子触发器用于GITSCM轮询

       

        如果jenkins从在Git SCM部分中定义的repo中获得PUSH GitHub钩子,它将触发Git SCM轮询逻辑。因此,轮询逻辑实际上属于Git SCM。

        (5)Poll SCM:轮询SCM管理

       

        请注意,这对CVS来说是一项昂贵的操作,因为每次轮询都需要Jenkins扫描整个工作区并与服务器进行验证。 考虑设置“推”触发器,以避免此开销

        详情请查看:https://wiki.jenkins.io/display/JENKINS/Building+a+software+project

 

4.构建环境

        (1)Delete workspace before build starts:在build开始之前删除工作区

       

        (2)Use secret text(s) or file(s):使用保密文本或文件

       

        允许您获取各种凭据,并从shell构建步骤等中使用它们。 每个绑定将定义一个环境变量。

        (3)Abort the build if it's stuck:如果生成失败,中止生成(预防卡住场景)

       

        (4)Add timestamps to the Console Output:向控制台输出添加时间戳

       

        (5)With Ant:ant相关

       

       

5.构建

       

        (1)Execute Windows batch command:执行Windows批处理命令

       

        (2)Execute shell:执行shell

       

        (3)Invoke Ant:调用ant

       

        (4)Invoke Gradle script:调用Gradle脚本

       

        (5)Invoke top-level Maven targets:调用top-level Maven目标

       

        (6)Run with timeout:运行超时

       

        (7)Set build status to "pending" on GitHub commit:在github上设置“等待”的构建状态

       

 

6.构建后操作

       

        (1)Aggregate downstream test results:综合下游测试结果

       

        (2)Archive the artifacts:归档文物

       

        (3)Build other projects:构建其他项目

       

        (4)Publish JUnit test result report:发布JUnit测试结果报告

       

        (5)Record fingerprints of files to track usage:技术文件中的指纹跟踪使用情况

       

        (6)Git Publisher:Git发行商

       

        (7)E-mail Notification:电子邮箱通知配置(邮件格式只支持jenkins固定格式)

       

        (8)Editable E-mail Notification:可编辑电子邮箱通知(发送格式可配)

       

       

        (9)Set GitHub commit status(universal):设置github提交状态(通用)

       

        (10)Set build status on GitHub commit[deprecated] :在github上设置构建状态[已弃用]

       

        (11)Delete workspace when build is done:在完成构建时删除workspace

       

posted @ 2018-06-06 17:52  子渝渝渝  阅读(2493)  评论(0编辑  收藏  举报