JenkinsQueueJob@2 - Jenkins 队列作业 v2 任务
使用此任务在 Jenkins 服务器上对作业进行排队。
语法
# Jenkins queue job v2
# Queue a job on a Jenkins server.
- task: JenkinsQueueJob@2
inputs:
serverEndpoint: # string. Required. Jenkins service connection.
jobName: # string. Required. Job name.
#isMultibranchJob: false # boolean. Job is of multibranch pipeline type. Default: false.
#multibranchPipelineBranch: # string. Required when isMultibranchJob = true. Multibranch pipeline branch.
#captureConsole: true # boolean. Capture console output and wait for completion. Default: true.
#capturePipeline: true # boolean. Optional. Use when captureConsole = true. Capture pipeline output and wait for pipeline completion. Default: true.
# Advanced
#isParameterizedJob: false # boolean. Alias: parameterizedJob. Parameterized job. Default: false.
#jobParameters: # string. Optional. Use when parameterizedJob = true. Job parameters.
#failOnUnstableResult: false # boolean. Fail on unstable result. Default: false.
#retryCount: '3' # string. Number of retries for failed connection. Default: 3.
#delayBetweenRetries: '60' # string. Time between retries. Default: 60.
# Jenkins queue job v2
# Queue a job on a Jenkins server.
- task: JenkinsQueueJob@2
inputs:
serverEndpoint: # string. Required. Jenkins service connection.
jobName: # string. Required. Job name.
#isMultibranchJob: false # boolean. Job is of multibranch pipeline type. Default: false.
#multibranchPipelineBranch: # string. Required when isMultibranchJob = true. Multibranch pipeline branch.
#captureConsole: true # boolean. Capture console output and wait for completion. Default: true.
#capturePipeline: true # boolean. Optional. Use when captureConsole = true. Capture pipeline output and wait for pipeline completion. Default: true.
# Advanced
#isParameterizedJob: false # boolean. Alias: parameterizedJob. Parameterized job. Default: false.
#jobParameters: # string. Optional. Use when parameterizedJob = true. Job parameters.
输入
serverEndpoint
-
Jenkins 服务连接
string
。 必填。
指定 Jenkins 实例的服务连接。 单击“管理”链接创建新的 Jenkins 服务连接。
jobName
-
作业名称
string
。 必填。
要排队的 Jenkins 作业的名称。 这必须与 Jenkins 服务器上的作业名称完全匹配。
isMultibranchJob
-
作业是多台管道类型
boolean
。 默认值:false
。
此作业是多台管道。 如果指定,请添加相应的分支名称。 此输入需要适用于 Jenkins v5.3.4 或更高版本的 Team Foundation Server 插件。
multibranchPipelineBranch
-
多分支管道分支
string
。
isMultibranchJob = true
时是必需的。
将此多分支管道作业排在指定的分支上。 此输入需要适用于 Jenkins v5.3.4 或更高版本的 Team Foundation Server 插件。
captureConsole
-
捕获控制台输出并等待完成
boolean
。 默认值:true
。
如果指定,此输入将捕获 Jenkins 生成控制台输出,等待 Jenkins 生成完成,并基于 Jenkins 生成结果成功/失败。 否则,一旦 Jenkins 作业排队,此任务就会成功完成,而无需等待 Jenkins 生成运行。
capturePipeline
-
捕获管道输出并等待管道完成
boolean
。 可选。 当 captureConsole = true
时使用。 默认值:true
。
如果指定,此任务将捕获完整的 Jenkins 生成管道控制台输出,等待完整的 Jenkins 生成管道完成,并根据 Jenkins 生成管道结果成功/失败。 否则,一旦第一个 Jenkins 作业完成,此任务就会成功完成,而无需等待完整的 Jenkins 生成管道运行。
isParameterizedJob
-
参数化作业
输入别名:parameterizedJob
。
boolean
。 默认值:false
。
指定 Jenkins 作业是否接受参数。 即使使用所有默认参数值且实际未指定任何参数,也使用此输入。
jobParameters
-
作业参数
string
。 可选。 当 parameterizedJob = true
时使用。
以 <parameterName>=<parameterValue>
格式指定每行一行的作业参数。
若要将参数设置为空值,这对于重写默认值很有用,请保留参数值。 例如,指定 parameterName=
。
支持变量。 若要将 commitId
参数值设置为生成的 Git 提交 ID,例如,可以使用:commitId=$(Build.SourceVersion)
。 有关详细信息,请参阅有关变量 文档。
支持的 Jenkins 参数类型包括:
Boolean
Choice
Password
String
failOnUnstableResult
-
在不稳定的结果 失败
boolean
。 默认值:false
。
指定成功定义的严格性,或者是否将不稳定视为失败。
false
值为非严格版本,true
用于严格版本。 如果设置为 true
,则不稳定生成结果被视为失败。 否则,不稳定的结果被视为成功。
retryCount
-
失败的连接重试次数
string
。 默认值:3
。
指定发生连接失败或错误时的连接重试次数。
重试之间的 delayBetweenRetries
- 时间
string
。 默认值:60
。
指定发生错误时连接重试之间的时间量。 以秒为单位指定此值。
任务控制选项
除任务输入之外,所有任务都具有控制选项。 有关详细信息,请参阅 控件选项和常见任务属性。
输出变量
此任务定义以下 输出变量,可以在下游步骤、作业和阶段中使用。
JENKINS_JOB_ID
此任务排队的 Jenkins 作业实例的 ID。 在 Jenkins 下载项目任务中使用此变量下载此特定作业实例的项目。
注解
使用此任务在 Jenkins 服务器上对作业进行排队。
Team Foundation Server 插件
可以使用 Team Foundation Server 插件(版本 5.2.0 或更高版本)自动从 Jenkins 工作区收集文件并将其下载到生成中。
设置它:
在 Jenkins 服务器上安装 Team Foundation Server 插件。
在 Jenkins 服务器上,对于要从中收集结果的每个作业,请添加 收集 Azure Pipelines/TFS 的结果 生成后作,然后使用一个或多个结果类型对对其进行配置,并包括文件模式。
在 Jenkins 队列作业上,生成任务启用 捕获控制台输出,并等待完成 从根级别作业收集结果,或 捕获管道输出并等待管道完成 从所有管道作业收集结果。
结果将下载到 $(Build.StagingDirectory)/jenkinsResults/Job Name/team-results.zip 并提取到此位置。 插件收集的每个结果类型都将位于团队结果目录下,$(Build.StagingDirectory)/jenkinsResults/Job Name/team-results/ResultType/。 这是下游任务(例如发布测试结果和发布代码覆盖率结果)可以发布的生成结果的目录。