如何通过Seed Job生成的单份Jenkins流水线脚本创建双流水线
用Jenkins Seed Job创建两条流水线(固定master分支+带分支参数)
直接用Job DSL脚本在Seed Job里定义两个独立的流水线Job即可,以下是具体实现:
1. 固定master分支的流水线
这个Job会始终拉取并构建master分支,无需手动输入参数:
pipelineJob('Master-Branch-Pipeline') { definition { cpsScm { scm { git { remote { url '你的代码仓库地址' } branch '*/master' // 固定绑定master分支 } } scriptPath 'Jenkinsfile' // 指向仓库中的流水线脚本路径 } } }
2. 带分支参数的流水线
这个Job会提供分支参数选项,允许你选择或输入要构建的分支:
pipelineJob('Parameterized-Branch-Pipeline') { // 添加分支参数,这里提供两种可选方式 parameters { // 方式1:字符串参数,支持自定义输入分支名 stringParam('BRANCH_NAME', 'develop', '输入要构建的分支名称(如feature/login-fix、hotfix/v1.0.1)') // 方式2:选择参数,限定可选分支(注释掉方式1后启用) // choiceParam('BRANCH_NAME', ['master', 'develop', 'feature/*'], '选择要构建的分支') } definition { cpsScm { scm { git { remote { url '你的代码仓库地址' } branch '*/${BRANCH_NAME}' // 引用参数动态拉取分支 } } scriptPath 'Jenkinsfile' } } }
补充说明
- 如果你的Jenkinsfile需要用到分支参数,直接在Jenkinsfile中通过
params.BRANCH_NAME调用即可,比如:stage('拉取代码') { steps { git branch: params.BRANCH_NAME, url: '你的代码仓库地址' } } - 确保Seed Job已安装Job DSL插件,且拥有创建新Job的权限。
- 将上述代码整合到你的现有Seed脚本中,运行Seed Job即可生成这两条流水线。
内容的提问来源于stack exchange,提问作者Hellgamer
相关产品推荐
相关产品推荐

