首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >每个分支用户轴

每个分支用户轴
EN

Stack Overflow用户
提问于 2014-07-11 21:20:17
回答 3查看 570关注 0票数 1

假设我有一个在分支master上进行测试的用户轴

  • TESTS = test_1,test_2,test_3

现在,我创建了另一个分支feature,并添加了另一个测试:test_4。当然,我想在服务器上进行测试。我不想直接修改jenkins上的项目,因为如果我有更多的分支,它就会变得容易出错和混乱。我正在寻找类似于.travis.yml配置文件的东西。

更新

目前我正在使用矩阵-项目 jenkins插件。这个插件允许我将“用户定义的Axis”测试设置为:test_1test_2test_3,但是对于all项目,它是一个整体(即Jenkins -> MyProject ->配置)。现在,我只想为一个feature分支修改这个轴(我想向axis再添加一个值:test_4)。我正在寻找插件,允许我有每个分支的配置(如.travis.yml,我已经提到过)。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-07-12 23:18:46

您可以使用工作-dsl插件重新构建项目。这个插件现在是直接支持矩阵作业

您需要的是一个单独的作业,其中包含一个(groovy)作业-dsl步骤来重建您的矩阵。如果使用模板作业,那么所有现有配置都可以驻留在那里。就我个人而言,我喜欢将其全部保存在作业-dsl步骤中,因为逻辑可以在版本控制下进行。

代码语言:javascript
运行
复制
def branches = ['a','b','c']

job(type: Matrix) {
    name ('existingJob')
    using ('myTemplateJob')
    axes {
        label('label', branches)

    }
}

我将使用JsonSlurper加载git分支。

编辑-我把这个脚本放在一起来演示在作业-dsl回购中构建(3)分支的轴。

代码语言:javascript
运行
复制
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 )
  }
}
票数 2
EN

Stack Overflow用户

发布于 2014-07-13 09:33:44

我找到的最接近的解决方案是识字插件

例如,分支master

代码语言:javascript
运行
复制
# Build
    echo "This is the master branch"

如果创建分支feature-1,则可以更改消息:

代码语言:javascript
运行
复制
# Build
    echo "this is a feature-1 branch"

但不幸的是,AFAIK没有用户定义的自定义变量。

更新

这个特性是计划中。好的!

票数 1
EN

Stack Overflow用户

发布于 2015-06-25 13:59:09

配方建造商插件允许您添加一个.jenkins.yml文件,就像使用Jenkins一样。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24706725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档