使用 DSL/Groovy Jenkins 插件在剖面视图中添加构建描述
Add Build Description in Sectioned View using DSL/Groovy Jenkins plugin
我希望使用 jenkins-job-dsl 插件在我的剖视图中添加 'Build Description' 列。不幸的是,我在 Jenkins Job DSL API (http://sheehan.github.io/job-dsl-plugin/#) 中找不到任何关于它的信息。
我假设它无法通过 dsl jenkins api 使用,但我想确认一下。谢谢!
如果开箱即用,您可以使用 Configure Block 添加任何配置元素:
sectionedView('project-summary') {
filterBuildQueue()
filterExecutors()
sections {
listView {
name('Project A')
jobs {
regex(/project-A-.*/)
}
columns {
status()
weather()
name()
lastSuccess()
lastFailure()
}
}
}
configure { view ->
view / sections / 'hudson.plugins.sectioned__view.ListViewSection' / columns << 'jenkins.plugins.extracolumns.BuildDescriptionColumn' {
columnWidth(80)
forceWidth(false)
}
}
}
我找到了 daspilker 半有用的答案。要走的路仍然是配置块。但是 anno 2019 它不再能正常工作了。这对我有用:
columns {
status()
name()
weather()
lastSuccess()
lastFailure()
lastDuration()
}
configure {
view ->
view / columns << 'jenkins.branch.DescriptionColumn' {
columnWidth(80)
forceWidth(false)
}
}
部分 "jenkins.branch.DescriptionColumn" 是直接从列表视图的 config.xml 中复制粘贴的。看起来像:
<listView>
<owner class="hudson" reference="../../.."/>
<name>test</name>
<filterExecutors>false</filterExecutors>
<filterQueue>false</filterQueue>
<properties class="hudson.model.View$PropertyList"/>
<jobNames>
<comparator class="hudson.util.CaseInsensitiveComparator"/>
<string>something</string>
</jobNames>
<jobFilters/>
<columns>
<hudson.views.StatusColumn/>
<hudson.views.WeatherColumn/>
<hudson.views.JobColumn/>
<hudson.views.LastSuccessColumn/>
<hudson.views.LastFailureColumn/>
<hudson.views.LastDurationColumn/>
<hudson.views.BuildButtonColumn/>
<hudson.plugins.favorite.column.FavoriteColumn plugin="favorite@2.3.1"/>
<jenkins.branch.DescriptionColumn plugin="branch-api@2.0.20"/>
</columns>
<recurse>false</recurse>
</listView>
我希望使用 jenkins-job-dsl 插件在我的剖视图中添加 'Build Description' 列。不幸的是,我在 Jenkins Job DSL API (http://sheehan.github.io/job-dsl-plugin/#) 中找不到任何关于它的信息。
我假设它无法通过 dsl jenkins api 使用,但我想确认一下。谢谢!
如果开箱即用,您可以使用 Configure Block 添加任何配置元素:
sectionedView('project-summary') {
filterBuildQueue()
filterExecutors()
sections {
listView {
name('Project A')
jobs {
regex(/project-A-.*/)
}
columns {
status()
weather()
name()
lastSuccess()
lastFailure()
}
}
}
configure { view ->
view / sections / 'hudson.plugins.sectioned__view.ListViewSection' / columns << 'jenkins.plugins.extracolumns.BuildDescriptionColumn' {
columnWidth(80)
forceWidth(false)
}
}
}
我找到了 daspilker 半有用的答案。要走的路仍然是配置块。但是 anno 2019 它不再能正常工作了。这对我有用:
columns {
status()
name()
weather()
lastSuccess()
lastFailure()
lastDuration()
}
configure {
view ->
view / columns << 'jenkins.branch.DescriptionColumn' {
columnWidth(80)
forceWidth(false)
}
}
部分 "jenkins.branch.DescriptionColumn" 是直接从列表视图的 config.xml 中复制粘贴的。看起来像:
<listView>
<owner class="hudson" reference="../../.."/>
<name>test</name>
<filterExecutors>false</filterExecutors>
<filterQueue>false</filterQueue>
<properties class="hudson.model.View$PropertyList"/>
<jobNames>
<comparator class="hudson.util.CaseInsensitiveComparator"/>
<string>something</string>
</jobNames>
<jobFilters/>
<columns>
<hudson.views.StatusColumn/>
<hudson.views.WeatherColumn/>
<hudson.views.JobColumn/>
<hudson.views.LastSuccessColumn/>
<hudson.views.LastFailureColumn/>
<hudson.views.LastDurationColumn/>
<hudson.views.BuildButtonColumn/>
<hudson.plugins.favorite.column.FavoriteColumn plugin="favorite@2.3.1"/>
<jenkins.branch.DescriptionColumn plugin="branch-api@2.0.20"/>
</columns>
<recurse>false</recurse>
</listView>