Git 每个分支用户轴
假设我有一个在分支Git 每个分支用户轴,git,jenkins,Git,Jenkins,假设我有一个在分支master上进行测试的用户轴: # Build echo "This is the master branch" 测试=测试1、测试2、测试3 现在,我创建了另一个分支功能,并添加了一个测试:test_4。 当然,我想在服务器上测试它。我不想直接修改jenkins上的项目 因为如果我有更多的分支,它就会变得容易出错和混乱。我在找类似的东西 配置文件 使现代化 目前我正在使用jenkins插件。该插件允许我设置“用户定义轴”测试,如:test_1,test_2,t
master
上进行测试的用户轴:
# Build
echo "This is the master branch"
- 测试=测试1、测试2、测试3
功能
,并添加了一个测试:test_4
。
当然,我想在服务器上测试它。我不想直接修改jenkins上的项目
因为如果我有更多的分支,它就会变得容易出错和混乱。我在找类似的东西
配置文件
使现代化
目前我正在使用jenkins插件。该插件允许我设置“用户定义轴”测试,如:test_1
,test_2
,test_3
,但用于整个项目(即Jenkins->
MyProject->Configure)。现在,我只想为一个特性
分支修改该轴(我想为axis添加一个值:test_4
)。我正在寻找允许我进行每个分支配置的插件(如我已经提到的)。您可以使用该插件重建项目。现在就打开这个插件
您需要的是一个带有(groovy)作业dsl步骤的单独作业来重建矩阵。如果使用模板作业,则所有现有配置都可以驻留在那里。就个人而言,我喜欢将其全部保留在作业dsl步骤中,因为逻辑可以在版本控制下进行
def branches = ['a','b','c']
job(type: Matrix) {
name ('existingJob')
using ('myTemplateJob')
axes {
label('label', branches)
}
}
我将使用加载git分支
编辑 我将这个脚本放在一起,以演示在作业dsl repo中哪个构建了(3)个分支的轴
def gitURL = new URL("https://api.github.com/repos/jenkinsci/job-dsl-plugin/branches")
def branches = new groovy.json.JsonSlurper().parse(gitURL.newReader())
def names = []
branches.each{ names << it.name }
job(type: Matrix) {
name 'git-matrix'
description 'Matrix Job of my git repo'
axes{
text('branch', names )
}
}
def gitURL=新URL(“https://api.github.com/repos/jenkinsci/job-dsl-plugin/branches")
def branchs=new groovy.json.JsonSlurper().parse(gitURL.newReader())
def名称=[]
分支。每个{names都可以使用该插件重建项目。该插件现在可用
你需要的是一个单独的作业和一个(groovy)作业dsl步骤来重建你的矩阵。如果你使用一个模板作业,那么所有现有的配置都可以驻留在那里。就个人而言,我喜欢将其全部保留在作业dsl步骤中,因为逻辑可以在版本控制下
def branches = ['a','b','c']
job(type: Matrix) {
name ('existingJob')
using ('myTemplateJob')
axes {
label('label', branches)
}
}
我将使用加载git分支
编辑
我将这个脚本放在一起,以演示在作业dsl repo中哪个构建了(3)个分支的轴
def gitURL = new URL("https://api.github.com/repos/jenkinsci/job-dsl-plugin/branches")
def branches = new groovy.json.JsonSlurper().parse(gitURL.newReader())
def names = []
branches.each{ names << it.name }
job(type: Matrix) {
name 'git-matrix'
description 'Matrix Job of my git repo'
axes{
text('branch', names )
}
}
def gitURL=新URL(“https://api.github.com/repos/jenkinsci/job-dsl-plugin/branches")
def branchs=new groovy.json.JsonSlurper().parse(gitURL.newReader())
def名称=[]
分支。每个{names我找到的最接近的解决方案是
例如,分支master
:
# Build
echo "This is the master branch"
如果创建分支功能-1
,则可以更改消息:
# Build
echo "this is a feature-1 branch"
但不幸的是,目前还没有用户定义的自定义变量
使现代化
此功能非常有用。
很好!我找到的最接近的解决方案是
例如,分支master
:
# Build
echo "This is the master branch"
如果创建分支功能-1
,则可以更改消息:
# Build
echo "this is a feature-1 branch"
但不幸的是,目前还没有用户定义的自定义变量
使现代化
此功能非常有用。
很好!这个插件可以让你添加一个.jenkins.yml
文件,就像你和jenkins一起使用一样。这个插件可以让你添加一个.jenkins.yml
文件,就像你和jenkins一起使用一样。对不起,我错过了jenkins部分。对不起,我错过了jenkins部分。谢谢你分享这个,这是一个很好的插件,+1。但是我认为这是一个爱我知道travis ci在幕后使用jenkins,所以我认为我根本找不到具有“源代码配置”功能的插件(这是一种明显的解决方案)。但看起来travis不仅仅是一个“jenkins包装器”))目前我发现的最接近的东西是一个识字插件,请看我的答案。看起来这个功能还没有在识字插件中实现,所以我会接受你的回答。谢谢你分享这个,它是一个很好的插件,+1。但是我认为对于这样一个琐碎的任务来说,这是一个过火的任务(又一个项目,现在我需要学习一门新语言?)我知道travis ci在幕后使用jenkins,所以我想我根本找不到具有“源代码配置”功能的插件(这是一种显而易见的解决方案)。但看起来travis不仅仅是一个“jenkins包装器”))我现在发现的最接近的东西是一个识字插件,请看我的答案。看起来这个功能还没有在识字插件中实现,所以我会接受你的答案