您好,欢迎来到吉趣旅游网。
搜索
您的当前位置:首页JenkinsPipeline如何动态的并行任务

JenkinsPipeline如何动态的并行任务

来源:吉趣旅游网
JenkinsPipeline如何动态的并⾏任务

Jenkins Pipeline 有两种写法: Declarative 以及 Scripted,前⼀种使⽤了Jenkins基于Groovy实现的DSL,写起来相对有;后⼀种可以很好的在Jenkinsfile 中使⽤Groovy语句。 下⾯记录Scripted模式下常见的⼀些注意点:

1. 如何退出当前的build a. 中断退出:

currentBuild.result = 'ABORTED' echo \"没有项⽬被选中\" return b. 错误退出

error “错误信息” c. 不稳定退出

unstable “信息”

2. 如何从⼀个Stage 传值到另⼀个:

env.PREVIOUSE_STAGE_VALUE = “” // 必须String

下⼀个Stage 直接使⽤ def accept = env.PREVIOUSE_STAGE_VALUE 或者:

定义⼀个全局变量

3. gitlab 如何获取指定分⽀后者版本的代码? 使⽤ checkout 功能,不⽤ git 功能

4. 如何切换⽬录 使⽤ dir ⽅法

5. 如何读取上⼀个Stage 存的⽂件: def content = readFile “path”

6. 如何提⽰⽤户输⼊:

def inputStr = input message: \"select project\" , ok : “确认”, parameters: [extendedChoice(description: 'select projects to be compiled',multiSelectDelimiter: ',', name: 'project_name', quoteValue: false, saveJSONParameterToFile: false, type: 'PT_CHECKBOX', value:\"$choices\

def INPUT_PARAMS = input message: \"输⼊配置\确认', parameters : [text(defaultValue: \"\请提供Tag的名字', name: 'tag_name'),text(defaultValue: \"\请提供Tag的描述', name: 'tag_desc'),

text(defaultValue: \"${output_version}\请设置版本,为空则不会打Tag', name: 'custom_versions')]

def custom_versions = INPUT_PARAMS.custom_versions

7. 如何动态的并⾏任务:

def tasks = [:] //定义⼀个⽤例保存task 的 map tasks.”task name” = {⼀个闭包}

parallel tasks //并⾏所有task

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- jqkq.cn 版权所有 赣ICP备2024042794号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务