循环作业阵列以创建它们?

时间:2018-07-02 21:34:17

标签: jenkins jenkins-plugins jenkins-job-dsl

我已将dsl作业配置为删除未引用的作业,我想保留该作业: enter image description here

我正在尝试这样做:

makeLink() {
    this.names.forEach((name) => { // <----
        var link = document.createElement('li');
        link.innerHTML = name;
        var container = document.getElementById('container');
        container.appendChild(link);
        link.addEventListener('click', (event) => {
            this.sayhello(event.target.innerText); // <----
        });
    });
}

Jenkins创建job1,但是在创建job2时将其删除。如何遍历列表以创建多个作业?

也许我可以构建multibranchPipelineJob objs和listView.jobs的映射/关闭并将其以某种方式传递给dsl?

1 个答案:

答案 0 :(得分:2)

我很愚蠢,实际上只是创建了作业本身,只是列表视图代替了它们。很有道理,因为我为每次迭代都重新创建了相同的列表视图。

https://gist.github.com/kyounger/83134869ea523b3661f0

我只需要将其移出循环即可

listView('mylist') {
  jobs {
    jobsarry.each { job ->
      name(job)
    }
  }
  columns{
    status()
    weather()
    name()
    lastSuccess()
    lastFailure()
    lastDuration()
    buildButton()
  }
}