Merge "Run integration-test job post-build"
[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             skip-vote:
104                 successful: true
105                 failed: true
106                 unstable: true
107                 notbuilt: true
108
109 - publisher:
110     name: archive-artifacts
111     publishers:
112         - archive:
113             artifacts: '{artifacts}'
114             allow-empty: true
115             fingerprint: true
116             latest-only: true
117
118 - publisher:
119     name: email-notification
120     publishers:
121         - email-ext:
122             recipients: 'jenkins@lists.opendaylight.org'
123             reply-to:
124             content-type: default
125             subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!'
126             body: |
127                 $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS:
128
129                 Check console output at $BUILD_URL to view the results.
130             unstable: true
131             fixed: true
132             send-to:
133                 - developers
134                 - recipients
135
136 - publisher:
137         name: jacoco-report
138         publishers:
139             - jacoco:
140                 exec-pattern: "**/**.exec"
141                 class-pattern: "**/classes"
142                 source-pattern: "**/src/main/java"
143                 exclusion-pattern: "**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**"
144                 status-update: true
145                 targets:
146                   - branch:
147                       healthy: 10
148                       unhealthy: 20
149                   - method:
150                       healthy: 50
151                       unhealthy: 40
152
153 - builder:
154     name: wipe-org-opendaylight-repo
155     builders:
156         - shell: 'if [ -d /tmp/r/org/opendaylight ]; then rm -rf /tmp/r/org/opendaylight; fi'
157
158 - builder:
159     name: jacoco-nojava-workaround
160     builders:
161         - shell: 'mkdir -p $WORKSPACE/target/classes'
162
163 - builder:
164     name: check-clm
165     builders:
166         - sonatype-clm:
167             application-name: '{application-name}'
168             scan-targets: '**/target/**'
169
170 - builder:
171     name: releng-check-unicode
172     builders:
173         - shell: |
174             $WORKSPACE/scripts/check-unicode.sh jjb/
175
176 - builder:
177     name: provide-maven-settings
178     builders:
179     - config-file-provider:
180         files:
181         - file-id: '{global-settings-file}'
182           variable: 'GLOBAL_SETTINGS_FILE'
183         - file-id: '{settings-file}'
184           variable: 'SETTINGS_FILE'