用SVN和Jenkins控制各个分支的编译

Control the compilation of various branches with SVN and Jenkins

我正在设置一个开发代码的验证过程,它包括每天Jenkins编译在SVN中打开的分支并验证它们是否稳定。

今天我们打开了 3 个分支用于维护、产品开发和项目,所以我有以下示例:

branch_manutencao_4.2.x 
branch_evolutivo_5.0.x 
branch_projetos

今天我有一个制作流程的管道,但我想创建一些东西作为参数传递给分支,所以如果我必须创建一个新分支,Jenkins 理解。

我尝试使用插件 MultiBranches,但没有取得太大的成功。我的想法是创建一个列表动态组合的文件或作业。

有人知道我该怎么做吗?

流水线项目支持 ☑ 该项目参数化

  • 添加一个Active Choices Parameter:

    姓名: Branch

    Groovy 脚本:

    return [
      'branch_manutencao_4.2.x:selected', 
      'branch_evolutivo_5.0.x', 
      'branch_projetos',
      'New branch...'
    ]
    

    选择类型Radio Buttons

  • 添加一个Active Choices Reactive 参考参数:

    姓名: New_Branch

    Groovy 脚本:

    if ( Branch.equals('New branch...') )
      return '<input name=\"value\" type=\"text\">'
    else
      return ' by selecting <i>New branch</i> above...'
    

    选择类型Formatted HTML

    参考参数Branch

    省略值字段

  • 在您的管道脚本中:

    if ( New_Branch?.trim() && Branch.equals('New branch...') )
      echo "New branch: ${New_Branch}"
      // ...
    else if ( Branch?.trim() && ! Branch.equals('New branch...') )
      echo "Existing branch: ${Branch}"
      // ...
    else
      echo 'No branch supplied.'