如何获取多分支管道作业的所有 branches/jobs?
How to get all branches/jobs of a multibranch pipeline job?
有没有办法获取多分支管道作业扫描收集到的所有分支的名称?
我想设置一个依赖于现有构建作业的夜间构建,因此需要检查多分支作业是否包含某些特定分支。另一种方法是检查现有作业。
我找到了使用 Jenkins API 的方法。
万一其他人有这个问题:这是我的 groovy 解决方案:
(欢迎批评和编辑)
import java.util.ArrayList
import hudson.model.*;
def ArrayList<String> call(String pipelineName) {
def hi = hudson.model.Hudson.instance;
def item = hi.getItemByFullName(pipelineName);
def jobs = item.getAllJobs();
def arr = new ArrayList<String>();
Iterator<?> iterator = jobs.iterator();
while (iterator.hasNext()) {
def job = iterator.next();
arr.add(pipelineName + "/" + job.name);
}
return arr;
}
有没有办法获取多分支管道作业扫描收集到的所有分支的名称?
我想设置一个依赖于现有构建作业的夜间构建,因此需要检查多分支作业是否包含某些特定分支。另一种方法是检查现有作业。
我找到了使用 Jenkins API 的方法。
万一其他人有这个问题:这是我的 groovy 解决方案: (欢迎批评和编辑)
import java.util.ArrayList
import hudson.model.*;
def ArrayList<String> call(String pipelineName) {
def hi = hudson.model.Hudson.instance;
def item = hi.getItemByFullName(pipelineName);
def jobs = item.getAllJobs();
def arr = new ArrayList<String>();
Iterator<?> iterator = jobs.iterator();
while (iterator.hasNext()) {
def job = iterator.next();
arr.add(pipelineName + "/" + job.name);
}
return arr;
}