integrate pittest & sonar
[sebhoss-jenkins-seed-jobs.git] / deployments.groovy
blobb73f7e412d0f04d111a24c8337873bfa30e184ef
1 import groovy.json.JsonSlurper
3 def projectCatalog = new File("/var/git/stable/jenkins-jobs-setup/projects.json")
4 def slurper = new JsonSlurper()
5 def jsonText = projectCatalog.getText()
6 def json = slurper.parseText(jsonText)
8 json.each {
9 def project = it
10 folder(project.name)
11 job("${project.name}/${project.name}_deploy_to_local-nexus") {
12 logRotator {
13 numToKeep(5)
14 daysToKeep(7)
16 scm {
17 git(project.repository)
19 triggers {
20 scm("H/15 * * * *")
22 steps {
23 maven {
24 goals("clean")
25 goals("deploy")
26 mavenInstallation("maven-latest")
27 providedGlobalSettings("talk-to-local-nexus")
30 steps {
31 maven {
32 goals("sonar:sonar")
33 properties("sonar.host.url": "http://sonar:9000")
34 properties("sonar.pitest.mode": "reuseReport")
35 mavenInstallation("maven-latest")
36 providedGlobalSettings("talk-to-local-nexus")
39 publishers {
40 irc {
41 strategy("ALL")
42 notificationMessage("SummaryOnly")
48 listView("Deployments") {
49 description("All jobs that deploy artifacts")
50 jobs {
51 json.each {
52 name("${it.name}/${it.name}_deploy_to_local-nexus")
55 recurse(true)
56 columns {
57 status()
58 weather()
59 name()
60 lastSuccess()
61 lastFailure()
62 lastDuration()
63 buildButton()