Jenkins Job DSL:你如何设置“默认子视图”?

时间:2016-02-03 19:57:22

标签: jenkins-job-dsl

我正在尝试使用Jenkins Job DSL Groovy脚本创建嵌套选项卡。它创建它们,但我找不到在DSL API中设置“默认子视图”的方法。在我执行此操作之前,它似乎没有正确显示选项卡。一旦我手动更改默认值,它就会正确显示。这是代码:

nestedView(viewName) {
  views {
    listView("Builds (Staging)") {
      jobs {
        name(buildJobName)
      }
      columns {
                status()
                weather()
                name()
                lastSuccess()
                lastFailure()
                lastDuration()
                buildButton()
              }
    }
    listView("Deployments (Staging)") {
      jobs {
        name(deployJobName)
      }
      columns {
                status()
                weather()
                name()
                lastSuccess()
                lastFailure()
                lastDuration()
                buildButton()
              }
    }
  }
}

Original view

Corrected view after manually changing Default subview in Edit View

2 个答案:

答案 0 :(得分:3)

您可以将Configure Block用于任何缺少的配置XML元素。

nestedView('test') {
  views {
    listView("Builds (Staging)") {
      jobs {
        name('foo')
      }
      columns {
        status()
        weather()
        name()
      }
    }
    listView("Deployments (Staging)") {
      jobs {
        name('bar')
      }
      columns {
        status()
        weather()
        name()
      }
    }
  }
  configure { view ->
    view / defaultView('Builds (Staging)')
  }
}

请提交ticket或打开pull request以查找任何缺失的DSL方法。

答案 1 :(得分:0)

如果您恰好在文件夹下配置视图,则可以在其中进行设置。

folder(abc)
{   
    views {
        listView('foo') {
        primaryView('foo')
    }   
}   

它似乎从1.36版开始可用