diff --git a/build.gradle b/build.gradle index 254c47f..7b8da59 100644 --- a/build.gradle +++ b/build.gradle @@ -42,8 +42,9 @@ dependencies { testCompile 'org.jenkins-ci.plugins:structs:1.6@jar' // plugins to install in test instance - testPlugins 'org.jenkins-ci.plugins:ghprb:1.31.4' - testPlugins 'com.coravy.hudson.plugins.github:github:1.19.0' + testPlugins "org.jenkins-ci.plugins:ghprb:${gitHubPullRequestPluginVersion}" + testPlugins "org.jenkins-ci.plugins:nested-view:${nestedViewPluginVersion}" + testPlugins "com.coravy.hudson.plugins.github:github:${gitHubPluginVersion}" } task resolveTestPlugins(type: Copy) { diff --git a/gradle.properties b/gradle.properties index 0f5f2dd..fae3d7a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,2 +1,5 @@ -jobDslVersion=1.71 jenkinsVersion=2.162 +jobDslVersion=1.71 +gitHubPluginVersion=1.19.0 +gitHubPullRequestPluginVersion=1.31.4 +nestedViewPluginVersion=1.17 diff --git a/jobs/views.groovy b/jobs/views.groovy index c522bc0..fd6198d 100644 --- a/jobs/views.groovy +++ b/jobs/views.groovy @@ -1,12 +1,50 @@ -/** - * Jenkins DSL for Steeltoe view. +/* + * Jenkins DSL for Steeltoe views. */ -listView('Steeltoe') { - jobs { - regex(/^steeltoe-.+/) +nestedView('Steeltoe') { + views { + listView('Steeltoe Samples') { + jobs { + regex(/^steeltoe-samples-.+/) + } + columns defaultColumns() + } + listView('Steeltoe Samples: Configuration') { + jobs { + regex(/^steeltoe-samples-configuration-.+/) + } + columns defaultColumns() + } + listView('Steeltoe Samples: Connectors') { + jobs { + regex(/^steeltoe-samples-connectors-.+/) + } + columns defaultColumns() + } + listView('Steeltoe Samples: Management') { + jobs { + regex(/^steeltoe-samples-management-.+/) + } + columns defaultColumns() + } + listView('Steeltoe Samples: Security') { + jobs { + regex(/^steeltoe-samples-security-.+/) + } + columns defaultColumns() + } + listView('Steeltoe Jenkins Seed') { + jobs { + regex(/^steeltoe-seed$/) + } + columns defaultColumns() + } } - columns { +} + +private Closure defaultColumns() { + return { weather() status() name()