Skip to content

Commit b7055b3

Browse files
committed
SWS-1044 - Enhance CI pipeline.
* Remove JDK images as a trigger for pull-requests. * Add Slack notifications.
1 parent 5bdcca5 commit b7055b3

File tree

1 file changed

+202
-18
lines changed

1 file changed

+202
-18
lines changed

ci/pipeline-template.yml

Lines changed: 202 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,11 @@ resources:
6464
repository: spring-projects/spring-ws
6565
branch: ((branch))
6666

67+
- name: slack
68+
type: slack-notification
69+
source:
70+
url: ((slack))
71+
6772
groups:
6873
- name: spring-ws
6974
jobs:
@@ -92,6 +97,24 @@ jobs:
9297
- task: test
9398
file: spring-ws-github/ci/test.yml
9499
params: { PROFILE: "distribute,convergence" }
100+
on_failure:
101+
put: slack
102+
params:
103+
attachments:
104+
- color: danger
105+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
106+
text: "Build has failed"
107+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
108+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
109+
on_success:
110+
put: slack
111+
params:
112+
attachments:
113+
- color: good
114+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
115+
text: "Build has succeeded!"
116+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
117+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
95118

96119
- name: Test - JDK 8 and Spring.NEXT
97120
serial: true
@@ -104,6 +127,24 @@ jobs:
104127
- task: test
105128
file: spring-ws-github/ci/test.yml
106129
params: { PROFILE: "springnext,convergence" }
130+
on_failure:
131+
put: slack
132+
params:
133+
attachments:
134+
- color: danger
135+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
136+
text: "Build has failed"
137+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
138+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
139+
on_success:
140+
put: slack
141+
params:
142+
attachments:
143+
- color: good
144+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
145+
text: "Build has succeeded!"
146+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
147+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
107148

108149
- name: Test - JDK 8 and Spring.NEXT (snapshots)
109150
serial: true
@@ -116,6 +157,24 @@ jobs:
116157
- task: test
117158
file: spring-ws-github/ci/test.yml
118159
params: { PROFILE: "springnext-buildsnapshot,convergence" }
160+
on_failure:
161+
put: slack
162+
params:
163+
attachments:
164+
- color: danger
165+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
166+
text: "Build has failed"
167+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
168+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
169+
on_success:
170+
put: slack
171+
params:
172+
attachments:
173+
- color: good
174+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
175+
text: "Build has succeeded!"
176+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
177+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
119178

120179
- name: Test - JDK 8 and Spring (snapshots)
121180
serial: true
@@ -128,6 +187,24 @@ jobs:
128187
- task: test
129188
file: spring-ws-github/ci/test.yml
130189
params: { PROFILE: "spring-buildsnapshot,convergence" }
190+
on_failure:
191+
put: slack
192+
params:
193+
attachments:
194+
- color: danger
195+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
196+
text: "Build has failed"
197+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
198+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
199+
on_success:
200+
put: slack
201+
params:
202+
attachments:
203+
- color: good
204+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
205+
text: "Build has succeeded!"
206+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
207+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
131208

132209
- name: Test - JDK 11
133210
serial: true
@@ -141,6 +218,24 @@ jobs:
141218
image: openjdk:11-jdk
142219
file: spring-ws-github/ci/test.yml
143220
params: { PROFILE: "distribute,java11,convergence" }
221+
on_failure:
222+
put: slack
223+
params:
224+
attachments:
225+
- color: danger
226+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
227+
text: "Build has failed"
228+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
229+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
230+
on_success:
231+
put: slack
232+
params:
233+
attachments:
234+
- color: good
235+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
236+
text: "Build has succeeded!"
237+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
238+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
144239

145240
- name: Test - JDK 11 and Spring.NEXT
146241
serial: true
@@ -154,6 +249,24 @@ jobs:
154249
image: openjdk:11-jdk
155250
file: spring-ws-github/ci/test.yml
156251
params: { PROFILE: "springnext,java11,convergence" }
252+
on_failure:
253+
put: slack
254+
params:
255+
attachments:
256+
- color: danger
257+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
258+
text: "Build has failed"
259+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
260+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
261+
on_success:
262+
put: slack
263+
params:
264+
attachments:
265+
- color: good
266+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
267+
text: "Build has succeeded!"
268+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
269+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
157270

158271
- name: Test - JDK 11 and Spring.NEXT (snapshots)
159272
serial: true
@@ -167,6 +280,24 @@ jobs:
167280
image: openjdk:11-jdk
168281
file: spring-ws-github/ci/test.yml
169282
params: { PROFILE: "springnext-buildsnapshot,java11,convergence" }
283+
on_failure:
284+
put: slack
285+
params:
286+
attachments:
287+
- color: danger
288+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
289+
text: "Build has failed"
290+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
291+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
292+
on_success:
293+
put: slack
294+
params:
295+
attachments:
296+
- color: good
297+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
298+
text: "Build has succeeded!"
299+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
300+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
170301

171302
- name: Test - JDK 11 and Spring (snapshots)
172303
serial: true
@@ -180,6 +311,24 @@ jobs:
180311
image: openjdk:11-jdk
181312
file: spring-ws-github/ci/test.yml
182313
params: { PROFILE: "spring-buildsnapshot,java11,convergence" }
314+
on_failure:
315+
put: slack
316+
params:
317+
attachments:
318+
- color: danger
319+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
320+
text: "Build has failed"
321+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
322+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
323+
on_success:
324+
put: slack
325+
params:
326+
attachments:
327+
- color: good
328+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
329+
text: "Build has succeeded!"
330+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
331+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
183332

184333
- name: Build
185334
serial: true
@@ -215,16 +364,34 @@ jobs:
215364
properties:
216365
archives: '*:*:*:*@zip zip.name:spring-ws, zip.displayname:Spring Web Services, zip.deployed:false'
217366
on_failure:
218-
put: spring-ws-status
219-
params:
220-
commit: spring-ws-github
221-
state: failure
367+
aggregate:
368+
- put: spring-ws-status
369+
params:
370+
commit: spring-ws-github
371+
state: failure
372+
- put: slack
373+
params:
374+
attachments:
375+
- color: danger
376+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
377+
text: "Build has failed"
378+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
379+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
222380
on_success:
223-
put: spring-ws-status
224-
params:
225-
commit: spring-ws-github
226-
state: success
227-
381+
aggregate:
382+
- put: spring-ws-status
383+
params:
384+
commit: spring-ws-github
385+
state: success
386+
- put: slack
387+
params:
388+
attachments:
389+
- color: good
390+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
391+
text: "Build has succeeded!"
392+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
393+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
394+
228395
- name: spring-ws-pull-requests
229396
public: true
230397
plan:
@@ -233,7 +400,6 @@ jobs:
233400
trigger: true
234401
version: every
235402
- get: openjdk:11-jdk
236-
trigger: true
237403
- put: spring-ws-pull-requests
238404
params:
239405
path: spring-ws-github
@@ -268,12 +434,30 @@ jobs:
268434
file: spring-ws-github/ci/test.yml
269435
params: { PROFILE: "spring-buildsnapshot,java11,convergence" }
270436
on_failure:
271-
put: spring-ws-pull-requests
272-
params:
273-
path: spring-ws-github
274-
status: failure
437+
aggregate:
438+
- put: spring-ws-pull-requests
439+
params:
440+
path: spring-ws-github
441+
status: failure
442+
- put: slack
443+
params:
444+
attachments:
445+
- color: danger
446+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <FAILURE>"
447+
text: "Build has failed"
448+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
449+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME
275450
on_success:
276-
put: spring-ws-pull-requests
277-
params:
278-
path: spring-ws-github
279-
status: success
451+
aggregate:
452+
- put: spring-ws-pull-requests
453+
params:
454+
path: spring-ws-github
455+
status: success
456+
- put: slack
457+
params:
458+
attachments:
459+
- color: good
460+
fallback: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME <SUCCESS>"
461+
text: "Build has succeeded!"
462+
title: "$BUILD_PIPELINE_NAME/$BUILD_JOB_NAME #$BUILD_NAME"
463+
title_link: $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME

0 commit comments

Comments
 (0)