zoukankan      html  css  js  c++  java
  • Jenkins Pipeline如何动态的并行任务

    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", visibleItemCount: choices.size())]
     
    7. 如何动态的并行任务:
        def tasks = [:]  //定义一个用例保存task 的 map
        tasks.”task name” = {一个闭包}
     
        parallel tasks //并行所有task
  • 相关阅读:
    23岁的这一年
    迁移ORACLE数据库文件到ASM
    无归档情况下使用BBED处理ORA-01113错误
    Oracle RMAN-06023 和ORA-19693错误
    手工创建Oracle数据库
    使用BBED理解和修改Oracle数据块
    Oracle 11g 重建EM需要删除的对象
    各大主流编程语言-常用爬虫框架以及优劣分析
    pyspider入门
    Centos7上安装docker及使用scrapy-splash
  • 原文地址:https://www.cnblogs.com/FsharpZack/p/13886267.html
Copyright © 2011-2022 走看看