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

jenkins新建任务详解的更多相关文章
- 利用 Java 操作 Jenkins API 实现对 Jenkins 的控制详解
本文转载自利用 Java 操作 Jenkins API 实现对 Jenkins 的控制详解 导语 由于最近工作需要利用 Jenkins 远程 API 操作 Jenkins 来完成一些列操作,就抽空研究 ...
- Jenkins安全配置详解
一.进入安全配置界面 首页后点击进入系统管理(Manage Jenkins) ——下拉下方看到安全配置(Configure Global Security) ——进入安全配置界面 二,详解安全配置的选 ...
- Jenkins CLI 命令详解
笔者在前文<通过 CLI 管理 Jenkins Server>中介绍了如何通过 SSH 或客户端命令行的方式管理 Jenkins Server,限于篇幅,前文主要的目的是介绍连接 Jenk ...
- 自动化集成:Jenkins管理工具详解
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Jenkins基础用法. 一.Jenkins安装 1. ...
- Jenkins 自动化部署详解
一.背景 以前在发布系统的时候,总是需要经过本地合并代码 >编译 >发布到本地 >拷贝代码到远程服务器 >停止掉服务器上的应用池 >将要发布的文件替换原文件 >重启 ...
- jenkins构建触发器详解-不登录触发远程构建详解
利用jenkins的远程构建功能,我们可以使用任何脚本,甚至定制一个Web页来控制Job的执行,但是远程构建你如果直接使用的话,老是需要登录才能执行,如何避免登录?稍微折腾了一下,调通了. 1.首先去 ...
- Jenkins pipeline 语法详解
原文地址http://www.cnblogs.com/fengjian2016/p/8227532.html pipeline 是一套运行于jenkins上的工作流框架,将原本独立运行于单个或者多个节 ...
- jenkins构建触发器详解-不登录触发远程构建
利用jenkins的远程构建功能,我们可以使用任何脚本,甚至定制一个Web页来控制Job的执行,但是远程构建你如果直接使用的话,老是需要登录才能执行,如何避免登录?稍微折腾了一下,调通了. 1.首先去 ...
- Jenkins Pipeline 参数详解
Pipeline 是什么 Jenkins Pipeline 实际上是基于 Groovy 实现的 CI/CD 领域特定语言(DSL),主要分为两类,一类叫做 Declarative Pipeline,一 ...
随机推荐
- PAT (Basic Level) Practice (中文)1016 部分A+B (15 分)
正整数 A 的“DA(为 1 位整数)部分”定义为由 A 中所有 DA 组成的新整数 PA.例如:给定 8,DA=6,则 A 的“6 部分”PA 是 66,因为 A 中有 ...
- Selenium3+python自动化014-自动化测试框架的作用
1.能够有效组织和管理测试脚本 2.进行数据驱动或者关键字驱动的测试 3.将基础的测试代码进行封装,降低测试脚本编写的复杂性和重复性 4.提高测试脚本维护和修改的效率 5.自动执行测试脚本,并自动发布 ...
- asp.net core 配置文件动态更新
IOptions<T> //站点启动后,获取到的值永远不变 IOptionsSnapshot<T> //站点启动后,每次获取到的值都是配置文件里的最新值 (reloadOnCh ...
- python 3 可迭代对象与迭代器
1,可迭代对象 内部含有__iter__方法的对象是可迭代对象 遵循可迭代协议 dir() 检查对象含有什么方法 dir()会返回一个列表,这个列表中含有该对象的以字符串的形式所有方法名.这样我们就可 ...
- AcWing 1057. 股票买卖 IV
//f[i,j,1]表示走到第i天已经进行完j次交易并且手中没有股票的所有的购买方式的集合 //f[i,j,0]表示走到第i天并且正在进行第j次交易且手中有货的所有的购买方式的集合 //属性利益最大值 ...
- vjudge 最大公约数GCD 直接求最大共约束和最小公倍数的指令
原题链接https://vjudge.net/contest/331993#problem/C 输入2个正整数A,B,求A与B的最大公约数. Input2个数A,B,中间用空格隔开.(1<= A ...
- java字符串操作扩充:灵活截取字符串
java字符串操作扩充:灵活截取字符串 public class StringUtil { static int varlen1; static int varlen2; static String ...
- Python-Django学习笔记(三)-Model模型的编写以及Oracle数据库的配置
Django使用的 MTV 设计模式(Models.Templates.Views) 因此本节将围绕这三部分并按照这个顺序来创建第一个页面 模型层models.py 模型是数据唯一而且准确的信息来源. ...
- URL简介&HTTP协议
世界上任何一栋建筑必须有一个地址才能找到 互联网上任何一个资源必须有一个“URL”才能被访问 URL的完整格式: <scheme>://<user>:<pwd>@& ...
- Docker最全教程——从理论到实战(九)
使用Tencent Hub来完成CI 关于Tencent Hub Tencent Hub是腾讯出品的DevOps服务.主要提供多存储格式的版本管理,支持Docker Image.Binary.Helm ...