Add run-sonar trigger
[releng/builder.git] / jjb / releng-macros.yaml
1 # OLD Releng macros
2
3 - parameter:
4     name: project-parameter
5     parameters:
6         - string:
7             name: PROJECT
8             default: '{project}'
9             description: "JJB configured PROJECT parameter to identify an ODL Gerrit project"
10
11 - parameter:
12     name: gerrit-parameter
13     parameters:
14         - string:
15             name: GERRIT_BRANCH
16             default: '{branch}'
17             description: "JJB configured GERRIT_BRANCH parameter"
18
19 - scm:
20     name: git-scm
21     scm:
22         - git:
23             credentials-id: '{credentials-id}'
24             url: '$GIT_BASE'
25             refspec: ''
26             branches:
27                 - 'origin/{branch}'
28             skip-tag: true
29             wipe-workspace: true
30
31 - scm:
32     name: gerrit-trigger-scm
33     scm:
34         - git:
35             credentials-id: '{credentials-id}'
36             url: '$GIT_BASE'
37             refspec: '{refspec}'
38             branches:
39                 - 'origin/$GERRIT_BRANCH'
40             skip-tag: true
41             choosing-strategy: '{choosing-strategy}'
42
43 - wrapper:
44     name: build-timeout
45     wrappers:
46         - timeout:
47             type: absolute
48             timeout: 360
49             fail: true
50
51 - trigger:
52     name: gerrit-trigger-patch-submitted
53     triggers:
54         - gerrit:
55             server-name: 'OpenDaylight'
56             trigger-on:
57                 - patchset-created-event:
58                     exclude-drafts: 'false'
59                     exclude-trivial-rebase: 'false'
60                     exclude-no-code-change: 'false'
61                 - draft-published-event
62                 - comment-added-contains-event:
63                     comment-contains-value: 'recheck'
64                 - comment-added-contains-event:
65                     comment-contains-value: 'reverify'
66             projects:
67               - project-compare-type: 'ANT'
68                 project-pattern: '{name}'
69                 branches:
70                   - branch-compare-type: 'ANT'
71                     branch-pattern: '**/{branch}'
72
73 - trigger:
74     name: gerrit-trigger-patch-merged
75     triggers:
76         - gerrit:
77             server-name: 'OpenDaylight'
78             trigger-on:
79                 - change-merged-event
80                 - comment-added-contains-event:
81                     comment-contains-value: 'remerge'
82             projects:
83               - project-compare-type: 'ANT'
84                 project-pattern: '{name}'
85                 branches:
86                   - branch-compare-type: 'ANT'
87                     branch-pattern: '**/{branch}'
88
89 - trigger:
90     name: gerrit-trigger-patch-sonar
91     triggers:
92         - gerrit:
93             server-name: 'OpenDaylight'
94             trigger-on:
95                 - comment-added-contains-event:
96                     comment-contains-value: 'run-sonar'
97             projects:
98               - project-compare-type: 'ANT'
99                 project-pattern: '{name}'
100                 branches:
101                   - branch-compare-type: 'ANT'
102                     branch-pattern: '**/master'
103
104 - publisher:
105     name: archive-artifacts
106     publishers:
107         - archive:
108             artifacts: '{artifacts}'
109             allow-empty: true
110             fingerprint: true
111             latest-only: true
112
113 - publisher:
114     name: email-notification
115     publishers:
116         - email-ext:
117             recipients: 'jenkins@lists.opendaylight.org'
118             reply-to:
119             content-type: default
120             subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!'
121             body: |
122                 $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS:
123
124                 Check console output at $BUILD_URL to view the results.
125             unstable: true
126             fixed: true
127             send-to:
128                 - developers
129                 - recipients
130
131 - publisher:
132         name: jacoco-report
133         publishers:
134             - jacoco:
135                 exec-pattern: "**/**.exec"
136                 class-pattern: "**/classes"
137                 source-pattern: "**/src/main/java"
138                 exclusion-pattern: "**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**"
139                 status-update: true
140                 targets:
141                   - branch:
142                       healthy: 10
143                       unhealthy: 20
144                   - method:
145                       healthy: 50
146                       unhealthy: 40
147
148 - builder:
149     name: wipe-org-opendaylight-repo
150     builders:
151         - shell: 'if [ -d /tmp/r/org/opendaylight ]; then rm -rf /tmp/r/org/opendaylight; fi'
152
153 - builder:
154     name: jacoco-nojava-workaround
155     builders:
156         - shell: 'mkdir -p $WORKSPACE/target/classes'
157
158 - builder:
159     name: check-clm
160     builders:
161         - sonatype-clm:
162             application-name: '{application-name}'
163             scan-targets: '**/target/**'
164
165 - builder:
166     name: releng-check-unicode
167     builders:
168         - shell: |
169             $WORKSPACE/scripts/check-unicode.sh jjb/