栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Jenkins创建git流水线并且通过流水线串行其他项目

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Jenkins创建git流水线并且通过流水线串行其他项目

在使用Jenkins的SCM流水线时,可以配合git parameter插件,来指定分支打包。

创建参数选择git分支

这里要选择Pipeline script from SCM  配置远端git  这里要注意不能直接用$Branch不知道是bug还是啥原因获取不出来需要做些特殊处理

在前面加入refs/remotes/如下图

接着设置流水线脚本名称 可以自定义也可以用默认的 这个脚本必须要在git工程的根目录下且不能有扩展名

流水线中可能会执行多个任务,项目可能会依赖一些参数设置,此时在执行项目时就需要传递参数。

对于String类型的传递,可以使用如下方式

build job: "build" , parameters:[ string(name:"Branch", value: "${params.Branch}")]                             
                              

对于Boolean类型的参数传递,只能使用如下方式

[$class: "BooleanParameterValue", name: "BuildFtp", value:  "${params.BuildFtp}"]
// 或者
[$class: "BooleanParameterValue", name: "BuildFtp", value:  true]

如果Boolean和String类型都需要传递,则只能使用以下方式

                  build job: "build" , parameters:[ 
                                [$class: "StringParameterValue", name: "Branch", value: "${params.Branch}"],
                                [$class: "StringParameterValue", name: "version", value: "${params.version}"],
                                [$class: "BooleanParameterValue", name: "BuildFtp", value: true]
                            ]

后面就是编写脚本类容测试

package groovy


def languageList = ["CN", "TW", "EN", "JP", "KO", "RU", "FR", "DE"]
 

pipeline {
    agent any
    stages {
        stage("BuildTest") {
            steps {
                script{
                    stage("BuildTest"){
                        build job: "build" , parameters:[ // 启动build工程并且传入参数
                            [$class: "StringParameterValue", name: "Branch", value: "${params.Branch}"],
                            [$class: "StringParameterValue", name: "version", value: "${params.version}"],
                            [$class: "StringParameterValue", name: "BuildOption", value: "${params.BuildOption}"],
                            [$class: "StringParameterValue", name: "ApkName", value: "${params.ApkName}"],
                            [$class: "StringParameterValue", name: "Language", value: i],
                            [$class: "StringParameterValue", name: "FtpIpAddress", value: "${params.FtpIpAddress}"],
                            [$class: "BooleanParameterValue", name: "BuildFtp", value: true]
                        ]
                    }
                            
                    for ( i in languageList){
                        stage("Build_For_Test"){
                            echo 'eee' + i + "$params.Branch" // 循环log测试 或者也可以把上面放入到循环里面 根据配置打不同包
                        }
                    }
                }
            }
        }
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/913474.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号