Merge "Set Git SCM Defaults prior to JJB 1.6.2 upgrade"
[releng.git] / jjb / global / releng-macros.yml
1 ---
2 # Releng macros
3 #
4 # NOTE: make sure macros are listed in execution ordered.
5 #
6 # 1. parameters/properties
7 # 2. scm
8 # 3. triggers
9 # 4. wrappers
10 # 5. prebuilders (maven only, configured like Builders)
11 # 6. builders (maven, freestyle, matrix, etc..)
12 # 7. postbuilders (maven only, configured like Builders)
13 # 8. publishers/reporters/notifications
14
15 - parameter:
16     name: project-parameter
17     parameters:
18       - string:
19           name: PROJECT
20           default: '{project}'
21           description: "JJB configured PROJECT parameter to identify an opnfv Gerrit project"
22       - string:
23           name: GS_BASE
24           default: artifacts.opnfv.org/$PROJECT
25           description: "URL to Google Storage."
26       - string:
27           name: GS_BASE_PROXY
28           default: build.opnfv.org/artifacts.opnfv.org/$PROJECT
29           description: "URL to Google Storage proxy"
30       - string:
31           name: BRANCH
32           default: '{branch}'
33           description: "JJB configured BRANCH parameter (e.g. master, stable/danube)"
34       - string:
35           name: GERRIT_BRANCH
36           default: '{branch}'
37           description: "JJB configured GERRIT_BRANCH parameter (deprecated)"
38       - string:
39           name: GERRIT_REFSPEC
40           default: 'refs/heads/{branch}'
41           description: "Default refspec needed for manually triggering."
42
43 ##
44 # Reporting Deployment Results
45 #
46 # To report deployment results to
47 # http://testresults.opnfv.org/test/#/deployresults, add the following
48 # parameters, builders, and publishers to a deployment job:
49 #
50 #   parameters:
51 #    - testapi-parameter
52 #
53 #   builders:
54 #    - track-begin-timestamp
55 #
56 #   publishers:
57 #    - report-provision-result
58 #
59 # Note: The following string parameter must also exist, as they are used
60 #       when reporting the provision result:
61 #
62 #  * INSTALLER
63 #  * INSTALLER_VERSION
64 #  * DEPLOY_SCENARIO
65 #
66 # most installers include these but you should verify first before
67 # adding the publisher, otherwise the deployment build may be marked
68 # unstable.
69 #
70 ##
71 - parameter:
72     name: testapi-parameter
73     parameters:
74       - string:
75           name: TESTAPI_URL
76           default: 'http://testresults.opnfv.org/test/api/v1'
77           description: "Default TestAPI URL, currently using v1"
78       - string:
79           name: INSTALLER_VERSION
80           default: 'master'
81           description: "Installer release version"
82       - string:
83           name: UPSTREAM_JOB_NAME
84           default: ''
85           description: "Parent job name in Jenkins"
86       - string:
87           name: UPSTREAM_BUILD_ID
88           default: ''
89           description: "Parent job build_id in Jenkins"
90
91 - property:
92     name: logrotate-default
93     properties:
94       - build-discarder:
95           days-to-keep: 60
96           num-to-keep: 200
97           artifact-days-to-keep: 60
98           artifact-num-to-keep: 200
99
100 - scm:
101     name: git-scm
102     scm:
103       - git: &git-scm-defaults
104           credentials-id: '$SSH_CREDENTIAL_ID'
105           url: '$GIT_BASE'
106           branches:
107             - 'origin/$BRANCH'
108           timeout: 15
109           per-build-tag: false
110           shallow-clone: false
111           use-author: false
112           ignore-notify: false
113           wipe-workspace: true
114           prune: false
115
116 - scm:
117     name: git-scm-gerrit
118     scm:
119       - git:
120           choosing-strategy: 'gerrit'
121           refspec: '$GERRIT_REFSPEC'
122           <<: *git-scm-defaults
123 - scm:
124     name: git-scm-with-submodules
125     scm:
126       - git:
127           credentials-id: '$SSH_CREDENTIAL_ID'
128           url: '$GIT_BASE'
129           refspec: ''
130           branches:
131             - 'refs/heads/{branch}'
132           skip-tag: true
133           wipe-workspace: true
134           submodule:
135             recursive: true
136             timeout: 20
137
138 - scm:
139     name: git-scm-openstack
140     scm:
141       - git: &git-scm-openstack-defaults
142           url: '$GIT_BASE'
143           branches:
144             - 'origin/$BRANCH'
145           timeout: 15
146
147 - trigger:
148     name: 'daily-trigger-disabled'
149     triggers:
150       - timed: ''
151
152 - trigger:
153     name: 'weekly-trigger-disabled'
154     triggers:
155       - timed: ''
156
157 - trigger:
158     name: gerrit-trigger-patchset-created
159     triggers:
160       - gerrit:
161           server-name: 'gerrit.opnfv.org'
162           trigger-on:
163             - patchset-created-event:
164                 exclude-drafts: 'false'
165                 exclude-trivial-rebase: 'false'
166                 exclude-no-code-change: 'false'
167             - draft-published-event
168             - comment-added-contains-event:
169                 comment-contains-value: 'recheck'
170             - comment-added-contains-event:
171                 comment-contains-value: 'reverify'
172           projects:
173             - project-compare-type: 'ANT'
174               project-pattern: '{project}'
175               branches:
176                 - branch-compare-type: 'ANT'
177                   branch-pattern: '**/{branch}'
178               file-paths:
179                 - compare-type: 'ANT'
180                   pattern: '{files}'
181           skip-vote:
182             successful: false
183             failed: false
184             unstable: false
185             notbuilt: false
186
187 - trigger:
188     name: gerrit-trigger-change-merged
189     triggers:
190       - gerrit:
191           server-name: 'gerrit.opnfv.org'
192           trigger-on:
193             - change-merged-event
194             - comment-added-contains-event:
195                 comment-contains-value: 'remerge'
196           projects:
197             - project-compare-type: 'ANT'
198               project-pattern: '{project}'
199               branches:
200                 - branch-compare-type: 'ANT'
201                   branch-pattern: '**/{branch}'
202               file-paths:
203                 - compare-type: 'ANT'
204                   pattern: '{files}'
205
206 - trigger:
207     name: gerrit-trigger-tag-created
208     triggers:
209       - gerrit:
210           server-name: 'gerrit.opnfv.org'
211           trigger-on:
212             - ref-updated-event
213           projects:
214             - project-compare-type: 'ANT'
215               project-pattern: '{project}'
216               branches:
217                 - branch-compare-type: 'ANT'
218                   branch-pattern: 'refs/tags/**'
219
220 - trigger:
221     name: 'experimental'
222     triggers:
223       - gerrit:
224           server-name: 'gerrit.opnfv.org'
225           trigger-on:
226             - comment-added-contains-event:
227                 comment-contains-value: 'check-experimental'
228           projects:
229             - project-compare-type: 'ANT'
230               project-pattern: '{project}'
231               branches:
232                 - branch-compare-type: 'ANT'
233                   branch-pattern: '**/{branch}'
234               file-paths:
235                 - compare-type: 'ANT'
236                   pattern: '{files}'
237           skip-vote:
238             successful: true
239             failed: true
240             unstable: true
241             notbuilt: true
242
243 - wrapper:
244     name: ssh-agent-wrapper
245     wrappers:
246       - ssh-agent-credentials:
247           users:
248             - 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
249
250 - wrapper:
251     name: build-timeout
252     wrappers:
253       - timeout:
254           timeout: '{timeout}'
255           timeout-var: 'BUILD_TIMEOUT'
256           fail: true
257
258 - wrapper:
259     name: fix-workspace-permissions
260     wrappers:
261       - pre-scm-buildstep:
262           - shell: |
263              #!/bin/bash
264              sudo chown -R $USER:$USER $WORKSPACE || exit 1
265
266 - builder:
267     name: upload-under-review-docs-to-opnfv-artifacts
268     builders:
269       - shell: |
270           #!/bin/bash
271           set -o errexit
272           set -o pipefail
273           set -o xtrace
274           export PATH=$PATH:/usr/local/bin/
275
276           [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
277           [[ -d docs/_build/ ]] || exit 0
278
279           echo
280           echo "###########################"
281           echo "UPLOADING DOCS UNDER REVIEW"
282           echo "###########################"
283           echo
284
285           gs_base="artifacts.opnfv.org/$PROJECT/review"
286           gs_path="$gs_base/$GERRIT_CHANGE_NUMBER"
287           local_path="upload/$GERRIT_CHANGE_NUMBER"
288
289           mkdir -p upload
290           mv docs/_build/html/ "$local_path"
291           gsutil -m cp -r "$local_path" "gs://$gs_base"
292
293           gsutil -m setmeta \
294               -h "Content-Type:text/html" \
295               -h "Cache-Control:private, max-age=0, no-transform" \
296               "gs://$gs_path"/**.html > /dev/null 2>&1
297
298           echo "Document link(s):" >> gerrit_comment.txt
299           find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
300               sed -e "s|^$local_path|    http://$gs_path|" >> gerrit_comment.txt
301
302 # To take advantage of this macro, have your build write
303 # out the file 'gerrit_comment.txt' with information to post
304 # back to gerrit and include this macro in the list of builders.
305 - builder:
306     name: report-build-result-to-gerrit
307     builders:
308       - shell: |
309           #!/bin/bash
310           set -o errexit
311           set -o pipefail
312           set -o xtrace
313           export PATH=$PATH:/usr/local/bin/
314           if [[ -e gerrit_comment.txt ]] ; then
315               echo
316               echo "posting review comment to gerrit..."
317               echo
318               cat gerrit_comment.txt
319               echo
320               ssh -p 29418 gerrit.opnfv.org \
321                   "gerrit review -p $GERRIT_PROJECT \
322                    -m '$(cat gerrit_comment.txt)' \
323                    $GERRIT_PATCHSET_REVISION \
324                    --notify NONE"
325           fi
326
327 - builder:
328     name: remove-old-docs-from-opnfv-artifacts
329     builders:
330       - shell: |
331           #!/bin/bash
332           set -o errexit
333           set -o pipefail
334           set -o xtrace
335           export PATH=$PATH:/usr/local/bin/
336
337           [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
338
339           gs_path="artifacts.opnfv.org/$PROJECT/review/$GERRIT_CHANGE_NUMBER"
340
341           if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
342               echo
343               echo "Deleting Out-of-dated Documents..."
344               gsutil -m rm -r "gs://$gs_path"
345           fi
346           gs_path="artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER"
347
348           if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
349               echo
350               echo "Deleting Out-of-dated Documents..."
351               gsutil -m rm -r "gs://$gs_path"
352           fi
353
354 - builder:
355     name: upload-review-docs
356     builders:
357       - upload-under-review-docs-to-opnfv-artifacts
358       - report-build-result-to-gerrit
359
360 - builder:
361     name: lint-init
362     builders:
363       - shell: |
364           #!/bin/bash
365           # Ensure we start with a clean environment
366           rm -f bash-violation.log python-violation.log yaml-violation.log violation.log
367           git --no-pager diff --diff-filter=MCRAT --name-only HEAD^1 > modified_files
368
369 - builder:
370     name: lint-report
371     builders:
372       - shell: |
373           #!/bin/bash
374           if [[ -s violation.log ]]; then
375               cat violation.log
376               echo "Reporting lint result...."
377               set -x
378               msg="Found syntax error and/or coding style violation(s) in the files modified by your patchset."
379               sed -i -e "1s#^#${msg}\n\n#" violation.log
380               cmd="gerrit review -p $GERRIT_PROJECT -m \"$(cat violation.log)\" $GERRIT_PATCHSET_REVISION --notify NONE"
381               ssh -p 29418 gerrit.opnfv.org "$cmd"
382
383               # Make sure the caller job failed
384               exit 1
385           fi
386
387 - builder:
388     name: lint-bash-code
389     builders:
390       - shell: |
391           #!/bin/bash
392           echo "Checking bash code..."
393           for f in $(egrep '\.sh$' modified_files)
394           do
395               bash -n "$f" 2>> bash-violation.log
396           done
397           if [[ -s bash-violation.log ]]; then
398               echo -e "Bash syntax error(s)\n---" >> violation.log
399               sed -e 's/^/ /g' bash-violation.log >> violation.log
400           fi
401
402 - builder:
403     name: lint-python-code
404     builders:
405       - shell: |
406           #!/bin/bash
407           # Install python package
408           sudo pip install "flake8==2.6.2"
409
410           echo "Checking python code..."
411           for f in $(egrep '\.py$' modified_files)
412           do
413               flake8 "$f" >> python-violation.log
414           done
415           if [[ -s python-violation.log ]]; then
416               echo -e "Python violation(s)\n---" >> violation.log
417               sed -e 's/^/ /g' python-violation.log >> violation.log
418           fi
419
420 - builder:
421     name: lint-yaml-code
422     builders:
423       - shell: |
424           #!/bin/bash
425           # sudo Install python packages
426           sudo pip install "yamllint==1.8.2"
427
428           echo "Checking yaml file..."
429           for f in $(egrep '\.ya?ml$' modified_files)
430           do
431               yamllint "$f" >> yaml-violation.log
432           done
433           if [[ -s yaml-violation.log ]]; then
434               echo -e "YAML violation(s)\n---" >> violation.log
435               sed -e 's/^/ /g' yaml-violation.log >> violation.log
436           fi
437
438 - builder:
439     name: lint-all-code
440     builders:
441       - lint-init
442       - lint-bash-code
443       - lint-python-code
444       - lint-yaml-code
445       - lint-report
446
447 - builder:
448     name: clean-workspace
449     builders:
450       - shell: |
451           #!/bin/bash
452           set -o errexit
453           set -o nounset
454           set -o pipefail
455           sudo /bin/rm -rf "$WORKSPACE"
456
457 - builder:
458     name: clean-workspace-log
459     builders:
460       - shell: |
461           find $WORKSPACE -type f -name '*.log' | xargs rm -f
462
463 - builder:
464     name: track-begin-timestamp
465     builders:
466       - shell: |
467           echo "export TIMESTAMP_START="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' > $WORKSPACE/installer_track.sh
468
469 - publisher:
470     name: archive-artifacts
471     publishers:
472       - archive:
473           artifacts: '{artifacts}'
474           allow-empty: true
475           fingerprint: true
476           latest-only: true
477
478 - publisher:
479     name: publish-coverage
480     publishers:
481       - cobertura:
482           report-file: "coverage.xml"
483           only-stable: "true"
484           health-auto-update: "false"
485           stability-auto-update: "false"
486           zoom-coverage-chart: "true"
487           targets:
488             - files:
489                 healthy: 10
490                 unhealthy: 20
491                 failing: 30
492             - method:
493                 healthy: 50
494                 unhealthy: 40
495                 failing: 30
496
497 # The majority of the email-ext plugin options are set to the default
498 # for this macro so they can be managed through Jenkins' global
499 # settings.
500 - publisher:
501     name: email-jenkins-admins-on-failure
502     publishers:
503       - email-ext:
504           content-type: text
505           attach-build-log: true
506           compress-log: true
507           always: false
508           failure: true
509           send-to:
510             - recipients
511
512 # Email PTL publishers
513 - email_ptl_defaults: &email_ptl_defaults
514     name: 'email_ptl_defaults'
515     content-type: text
516     attach-build-log: true
517     attachments: '*.log'
518     compress-log: true
519     always: true
520     subject: '{subject}'
521
522 - publisher: &email_apex_ptl_defaults
523     name: 'email-apex-ptl'
524     publishers:
525       - email-ext:
526           <<: *email_ptl_defaults
527           recipients: >
528             trozet@redhat.com
529 - publisher:
530     name: 'email-apex-os-net-config-ptl'
531     <<: *email_apex_ptl_defaults
532 - publisher:
533     name: 'email-apex-puppet-tripleo-ptl'
534     <<: *email_apex_ptl_defaults
535 - publisher:
536     name: 'email-apex-tripleo-heat-templates-ptl'
537     <<: *email_apex_ptl_defaults
538
539 - publisher:
540     name: 'email-armband-ptl'
541     publishers:
542       - email-ext:
543           <<: *email_ptl_defaults
544           recipients: >
545             bob.monkman@arm.com
546
547 - publisher:
548     name: 'email-auto-ptl'
549     publishers:
550       - email-ext:
551           <<: *email_ptl_defaults
552           recipients: >
553             tina.tsou@arm.com
554
555 - publisher:
556     name: 'email-availability-ptl'
557     publishers:
558       - email-ext:
559           <<: *email_ptl_defaults
560           recipients: >
561             fuqiao@chinamobile.com
562
563 - publisher:
564     name: 'email-bamboo-ptl'
565     publishers:
566       - email-ext:
567           <<: *email_ptl_defaults
568           recipients: >
569             donaldh@cisco.com
570
571 - publisher:
572     name: 'email-barometer-ptl'
573     publishers:
574       - email-ext:
575           <<: *email_ptl_defaults
576           recipients: >
577             aasmith@redhat.com
578
579 - publisher:
580     name: 'email-bottlenecks-ptl'
581     publishers:
582       - email-ext:
583           <<: *email_ptl_defaults
584           recipients: >
585             gabriel.yuyang@huawei.com
586
587 - publisher:
588     name: 'email-calipso-ptl'
589     publishers:
590       - email-ext:
591           <<: *email_ptl_defaults
592           recipients: >
593             korlev@cisco.com
594
595 - publisher:
596     name: 'email-clover-ptl'
597     publishers:
598       - email-ext:
599           <<: *email_ptl_defaults
600           recipients: >
601             stephen.wong1@huawei.com
602
603 - publisher: &email_compass4nfv_ptl_defaults
604     name: 'email-compass4nfv-ptl'
605     publishers:
606       - email-ext:
607           <<: *email_ptl_defaults
608           recipients: >
609             chigang@huawei.com
610 - publisher:
611     name: 'email-compass-containers-ptl'
612     <<: *email_compass4nfv_ptl_defaults
613
614 - publisher:
615     name: 'email-conductor-ptl'
616     publishers:
617       - email-ext:
618           <<: *email_ptl_defaults
619           recipients: >
620             limingjiang@huawei.com
621
622 - publisher:
623     name: 'email-container4nfv-ptl'
624     publishers:
625       - email-ext:
626           <<: *email_ptl_defaults
627           recipients: >
628             jiaxuan@chinamobile.com
629
630 - publisher:
631     name: 'email-copper-ptl'
632     publishers:
633       - email-ext:
634           <<: *email_ptl_defaults
635           recipients: >
636             aimeeu.opensource@gmail.com
637
638 - publisher:
639     name: 'email-cperf-ptl'
640     publishers:
641       - email-ext:
642           <<: *email_ptl_defaults
643           recipients: >
644             matt.welch@intel.com
645
646 - publisher:
647     name: 'email-daisy-ptl'
648     publishers:
649       - email-ext:
650           <<: *email_ptl_defaults
651           recipients: >
652             hu.zhijiang@zte.com.cn
653
654 - publisher:
655     name: 'email-doctor-ptl'
656     publishers:
657       - email-ext:
658           <<: *email_ptl_defaults
659           recipients: >
660             r-mibu@cq.jp.nec.com
661
662 - publisher:
663     name: 'email-domino-ptl'
664     publishers:
665       - email-ext:
666           <<: *email_ptl_defaults
667           recipients: >
668             ulas.kozat@huawei.com
669
670 - publisher:
671     name: 'email-dovetail-ptl'
672     publishers:
673       - email-ext:
674           <<: *email_ptl_defaults
675           recipients: >
676             georg.kunz@ericsson.com
677
678 - publisher:
679     name: 'email-dpacc-ptl'
680     publishers:
681       - email-ext:
682           <<: *email_ptl_defaults
683           recipients: >
684             denglingli@chinamobile.com
685
686 - publisher:
687     name: 'email-enfv-ptl'
688     publishers:
689       - email-ext:
690           <<: *email_ptl_defaults
691           recipients: >
692             JBuchanan@advaoptical.com
693
694 - publisher:
695     name: 'email-fds-ptl'
696     publishers:
697       - email-ext:
698           <<: *email_ptl_defaults
699           recipients: >
700             fbrockne@cisco.com
701
702 - publisher:
703     name: 'email-fuel-ptl'
704     publishers:
705       - email-ext:
706           <<: *email_ptl_defaults
707           recipients: >
708             gelkinbard@mirantis.com
709
710 - publisher:
711     name: 'email-functest-ptl'
712     publishers:
713       - email-ext:
714           <<: *email_ptl_defaults
715           recipients: >
716             cedric.ollivier@orange.com
717
718 - publisher:
719     name: 'email-ipv6-ptl'
720     publishers:
721       - email-ext:
722           <<: *email_ptl_defaults
723           recipients: >
724             bh526r@att.com
725
726 - publisher:
727     name: 'email-joid-ptl'
728     publishers:
729       - email-ext:
730           <<: *email_ptl_defaults
731           recipients: >
732             artur.tyloch@canonical.com
733
734 - publisher:
735     name: 'email-kvmfornfv-ptl'
736     publishers:
737       - email-ext:
738           <<: *email_ptl_defaults
739           recipients: >
740             raghuveer.reddy@intel.com
741
742 - publisher:
743     name: 'email-models-ptl'
744     publishers:
745       - email-ext:
746           <<: *email_ptl_defaults
747           recipients: >
748             bs3131@att.com
749
750 - publisher:
751     name: 'email-moon-ptl'
752     publishers:
753       - email-ext:
754           <<: *email_ptl_defaults
755           recipients: >
756             ruan.he@orange.com
757
758 - publisher:
759     name: 'email-netready-ptl'
760     publishers:
761       - email-ext:
762           <<: *email_ptl_defaults
763           recipients: >
764             georg.kunz@ericsson.com
765
766 - publisher:
767     name: 'email-nfvbench-ptl'
768     publishers:
769       - email-ext:
770           <<: *email_ptl_defaults
771           recipients: >
772             ahothan@cisco.com
773
774 - publisher:
775     name: 'email-onosfw-ptl'
776     publishers:
777       - email-ext:
778           <<: *email_ptl_defaults
779           recipients: >
780             su.wei@huawei.com
781
782 - publisher:
783     name: 'email-opera-ptl'
784     publishers:
785       - email-ext:
786           <<: *email_ptl_defaults
787           recipients: >
788             Yingjun.li@huawei.com
789
790 - publisher:
791     name: 'email-opnfvdocs-ptl'
792     publishers:
793       - email-ext:
794           <<: *email_ptl_defaults
795           recipients: >
796             sofia.wallin@ericsson.com
797
798 - publisher:
799     name: 'email-orchestra-ptl'
800     publishers:
801       - email-ext:
802           <<: *email_ptl_defaults
803           recipients: >
804             giuseppe.carella@fokus.fraunhofer.de
805
806 - publisher:
807     name: 'email-ovn4nfv-ptl'
808     publishers:
809       - email-ext:
810           <<: *email_ptl_defaults
811           recipients: >
812             trinath.somanchi@gmail.com
813
814 - publisher:
815     name: 'email-ovno-ptl'
816     publishers:
817       - email-ext:
818           <<: *email_ptl_defaults
819           recipients: >
820             wsmackie@juniper.net
821
822 - publisher:
823     name: 'email-ovsnfv-ptl'
824     publishers:
825       - email-ext:
826           <<: *email_ptl_defaults
827           recipients: >
828             MarkD.Graymark.d.gray@intel.com
829
830 - publisher:
831     name: 'email-parser-ptl'
832     publishers:
833       - email-ext:
834           <<: *email_ptl_defaults
835           recipients: >
836             shang.xiaodong@zte.com.cn
837
838 - publisher: &email_pharos_ptl_defaults
839     name: 'email-pharos-ptl'
840     publishers:
841       - email-ext:
842           <<: *email_ptl_defaults
843           recipients: >
844             zhang.jun3g@zte.com.cn
845 - publisher:
846     name: 'email-pharos-tools-ptl'
847     <<: *email_pharos_ptl_defaults
848
849 - publisher:
850     name: 'email-promise-ptl'
851     publishers:
852       - email-ext:
853           <<: *email_ptl_defaults
854           recipients: >
855             kunzmann@docomolab-euro.com
856
857 - publisher:
858     name: 'email-qtip-ptl'
859     publishers:
860       - email-ext:
861           <<: *email_ptl_defaults
862           recipients: >
863             wu.zhihui1@zte.com.cn
864
865 - publisher: &email_releng_ptl_defaults
866     name: 'email-releng-ptl'
867     publishers:
868       - email-ext:
869           <<: *email_ptl_defaults
870           recipients: >
871             fatih.degirmenci@ericsson.com
872 - publisher:
873     name: 'email-releng-anteater-ptl'
874     <<: *email_releng_ptl_defaults
875 - publisher:
876     name: 'email-releng-testresults-ptl'
877     publishers:
878       - email-ext:
879           <<: *email_ptl_defaults
880           recipients: >
881             fatih.degirmenci@ericsson.com
882             feng.xiaowei@zte.com.cn
883 - publisher:
884     name: 'email-releng-utils-ptl'
885     <<: *email_releng_ptl_defaults
886 - publisher:
887     name: 'email-releng-xci-ptl'
888     <<: *email_releng_ptl_defaults
889
890 - publisher:
891     name: 'email-samplevnf-ptl'
892     publishers:
893       - email-ext:
894           <<: *email_ptl_defaults
895           recipients: >
896             deepak.s@intel.com
897
898 - publisher:
899     name: 'email-sdnvpn-ptl'
900     publishers:
901       - email-ext:
902           <<: *email_ptl_defaults
903           recipients: >
904             tim.irnich@ericsson.com
905
906 - publisher:
907     name: 'email-securityscanning-ptl'
908     publishers:
909       - email-ext:
910           <<: *email_ptl_defaults
911           recipients: >
912             lhinds@redhat.com
913
914 - publisher:
915     name: 'email-sfc-ptl'
916     publishers:
917       - email-ext:
918           <<: *email_ptl_defaults
919           recipients: >
920             mbuil@suse.com
921
922 - publisher:
923     name: 'email-snaps-ptl'
924     publishers:
925       - email-ext:
926           <<: *email_ptl_defaults
927           recipients: >
928             s.pisarski@cablelabs.com
929
930 - publisher:
931     name: 'email-stor4nfv-ptl'
932     publishers:
933       - email-ext:
934           <<: *email_ptl_defaults
935           recipients: >
936             shane.wang@intel.com
937
938 - publisher:
939     name: 'email-storperf-ptl'
940     publishers:
941       - email-ext:
942           <<: *email_ptl_defaults
943           recipients: >
944             mark.beierl@emc.com
945
946 - publisher:
947     name: 'email-ves-ptl'
948     publishers:
949       - email-ext:
950           <<: *email_ptl_defaults
951           recipients: >
952             bryan.sullivan@att.com
953
954 - publisher:
955     name: 'email-vswitchperf-ptl'
956     publishers:
957       - email-ext:
958           <<: *email_ptl_defaults
959           recipients: >
960             sridhar.rao@spirent.com
961
962 - publisher:
963     name: 'email-yardstick-ptl'
964     publishers:
965       - email-ext:
966           <<: *email_ptl_defaults
967           recipients: >
968             ross.b.brattain@intel.com
969
970 - publisher:
971     name: 'report-provision-result'
972     publishers:
973       - postbuildscript:
974           script-only-if-succeeded: true
975           builders:
976             - shell: |
977                 echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
978                 echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
979                 echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
980             - shell:
981                 !include-raw: installer-report.sh
982       - postbuildscript:
983           script-only-if-succeeded: false
984           script-only-if-failed: true
985           builders:
986             - shell: |
987                 echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
988                 echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
989                 echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
990             - shell:
991                 !include-raw: installer-report.sh