2 # This file contains job templates for Maven projects.
5 name: '{project-name}-maven-jobs'
7 # This job group contains all the recommended jobs that should be deployed
10 # TODO: Add Maven Merge job to this list once it's been fully tested.
14 - gerrit-maven-release
16 - gerrit-maven-verify-dependencies
19 name: '{project-name}-github-maven-jobs'
21 # This job group contains all the recommended jobs that should be deployed
22 # for any project ci that is using github.
24 # TODO: Add Maven Merge job to this list once it's been fully tested.
28 - github-maven-release
32 name: '{project-name}-maven-javadoc-jobs'
34 # This job group contains all the recommended jobs that should be deployed
38 - gerrit-maven-javadoc-publish
39 - gerrit-maven-javadoc-verify
42 name: '{project-name}-github-maven-javadoc-jobs'
44 # This job group contains all the recommended jobs that should be deployed
48 - github-maven-javadoc-publish
49 - github-maven-javadoc-verify
59 properties-content: 'MAVEN_GOALS={mvn-goals}'
60 - shell: !include-raw-escape:
61 - ../shell/common-variables.sh
62 - ../shell/maven-build.sh
67 - shell: !include-raw:
68 - ../shell/common-variables.sh
69 - ../shell/maven-deploy.sh
74 # include-raw-escape fails due to JJB bug
75 - shell: !include-raw:
76 - ../shell/common-variables.sh
77 - ../shell/maven-stage.sh
80 name: lf-update-java-alternatives
83 # Work around inject plugin overriding our GIT_URL variable incorrectly
84 # https://issues.jenkins-ci.org/browse/JENKINS-49775
86 SET_JDK_VERSION={java-version}
88 - shell: !include-raw-escape: ../shell/update-java-alternatives.sh
90 properties-file: '/tmp/java.env'
96 - lf_maven_common: &lf_maven_common
99 ######################
100 # Default parameters #
101 ######################
106 **/target/**/feature.xml
107 **/target/failsafe-reports/failsafe-summary.xml
108 **/target/surefire-reports/*-output.txt
110 #####################
111 # Job Configuration #
112 #####################
114 project-type: freestyle
118 - lf-infra-properties:
119 build-days-to-keep: '{build-days-to-keep}'
122 - lf-infra-parameters:
126 lftools-version: '{lftools-version}'
127 - lf-infra-maven-parameters:
128 mvn-opts: '{mvn-opts}'
129 mvn-params: '{mvn-params}'
130 mvn-version: '{mvn-version}'
131 # Staging repos do not make sense for CLM jobs so set it blank.
132 staging-profile-id: '{staging-profile-id}'
134 name: ARCHIVE_ARTIFACTS
135 default: '{archive-artifacts}'
136 description: Artifacts to archive to the logs server.
140 build-timeout: '{build-timeout}'
141 jenkins-ssh-credential: '{jenkins-ssh-credential}'
144 # TODO: Make email notification work.
145 # - lf-infra-email-notify:
146 # email-recipients: '{email-recipients}'
147 # email-prefix: '[releng]'
154 - lf_maven_clm: &lf_maven_clm
157 ######################
158 # Default parameters #
159 ######################
162 build-days-to-keep: 30 # 30 days for troubleshooting purposes
164 git-url: '$GIT_URL/$PROJECT'
165 java-version: openjdk8
166 mvn-global-settings: global-settings
170 staging-profile-id: '' # Unused in this job
172 submodule-recursive: true
175 - comment-added-contains-event:
176 comment-contains-value: run-clm$
178 #####################
179 # Job Configuration #
180 #####################
184 mvn-version: '{mvn-version}'
185 - lf-update-java-alternatives:
186 java-version: '{java-version}'
187 - lf-provide-maven-settings:
188 global-settings-file: '{mvn-global-settings}'
189 settings-file: '{mvn-settings}'
190 - shell: !include-raw-escape:
191 - ../shell/common-variables.sh
192 - ../shell/sonatype-clm.sh
193 - lf-provide-maven-settings-cleanup
194 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
196 application-name: '{project-name}'
199 name: '{project-name}-maven-clm-{stream}'
202 # yamllint disable-line rule:key-duplicates
206 - lf-infra-gerrit-scm:
207 jenkins-ssh-credential: '{jenkins-ssh-credential}'
209 refspec: '$GERRIT_REFSPEC'
210 branch: '$GERRIT_BRANCH'
211 submodule-recursive: '{submodule-recursive}'
212 choosing-strategy: default
215 # Build weekly on Saturdays
218 server-name: '{gerrit-server-name}'
219 trigger-on: '{obj:gerrit_clm_triggers}'
221 - project-compare-type: ANT
222 project-pattern: '{project}'
224 - branch-compare-type: ANT
225 branch-pattern: '**/{branch}'
233 name: '{project-name}-maven-clm-{stream}'
236 # yamllint disable-line rule:key-duplicates
240 - lf-infra-properties:
241 build-days-to-keep: '{build-days-to-keep}'
243 url: '{git-url}/{github-org}/{project}'
246 - lf-infra-github-scm:
247 url: '{git-clone-url}{github-org}/{project}'
249 branch: 'refs/heads/{branch}'
250 submodule-recursive: '{submodule-recursive}'
251 choosing-strategy: default
252 jenkins-ssh-credential: '{jenkins-ssh-credential}'
255 # Build weekly on Saturdays
257 - github-pull-request:
258 trigger-phrase: '^run-clm$'
259 only-trigger-phrase: false
260 status-context: 'CLM'
265 white-list: '{obj:github_pr_whitelist}'
266 admin-list: '{obj:github_pr_admin_list}'
268 #########################
269 # Maven Javadoc Publish #
270 #########################
272 - lf_maven_javadoc_publish: &lf_maven_javadoc_publish
273 name: lf-maven-javadoc-publish
275 ######################
276 # Default parameters #
277 ######################
280 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
282 git-url: '$GIT_URL/$PROJECT'
283 java-version: openjdk8
284 mvn-global-settings: global-settings
288 staging-profile-id: '' # Unused by the javadoc jobs
290 submodule-recursive: true
292 gerrit_merge_triggers:
293 - change-merged-event
294 - comment-added-contains-event:
295 comment-contains-value: remerge$
297 #####################
298 # Job Configuration #
299 #####################
303 mvn-version: '{mvn-version}'
304 - lf-update-java-alternatives:
305 java-version: '{java-version}'
306 - lf-provide-maven-settings:
307 global-settings-file: '{mvn-global-settings}'
308 settings-file: '{mvn-settings}'
309 - lf-infra-create-netrc:
310 server-id: '{mvn-site-id}'
312 properties-content: 'DEPLOY_PATH={javadoc-path}'
313 - shell: !include-raw-escape:
314 - ../shell/common-variables.sh
315 - ../shell/maven-javadoc-generate.sh
316 - ../shell/lftools-install.sh
317 - ../shell/maven-javadoc-publish.sh
318 - lf-provide-maven-settings-cleanup
321 name: '{project-name}-maven-javadoc-publish-{stream}'
322 id: gerrit-maven-javadoc-publish
324 # yamllint disable-line rule:key-duplicates
325 <<: *lf_maven_javadoc_publish
327 git-url: '$GIT_URL/$GERRIT_PROJECT'
330 - lf-infra-gerrit-scm:
334 submodule-recursive: '{submodule-recursive}'
335 choosing-strategy: default
336 jenkins-ssh-credential: '{jenkins-ssh-credential}'
340 server-name: '{gerrit-server-name}'
341 trigger-on: '{obj:gerrit_merge_triggers}'
343 - project-compare-type: ANT
344 project-pattern: '{project}'
346 - branch-compare-type: ANT
347 branch-pattern: '**/{branch}'
350 name: '{project-name}-maven-javadoc-publish-{stream}'
351 id: github-maven-javadoc-publish
353 # yamllint disable-line rule:key-duplicates
354 <<: *lf_maven_javadoc_publish
357 - lf-infra-properties:
358 build-days-to-keep: '{build-days-to-keep}'
360 url: '{git-url}/{github-org}/{project}'
363 - lf-infra-github-scm:
364 url: '{git-clone-url}{github-org}/{project}'
367 submodule-recursive: '{submodule-recursive}'
368 choosing-strategy: default
369 jenkins-ssh-credential: '{jenkins-ssh-credential}'
375 - github-pull-request:
376 trigger-phrase: '^remerge$'
377 only-trigger-phrase: true
378 status-context: 'Maven Javadoc Publish'
383 white-list: '{obj:github_pr_whitelist}'
384 admin-list: '{obj:github_pr_admin_list}'
386 ########################
387 # Maven Javadoc Verify #
388 ########################
390 - lf_maven_javadoc_verify: &lf_maven_javadoc_verify
391 name: lf-maven-javadoc-verify
393 ######################
394 # Default parameters #
395 ######################
398 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
400 git-url: '$GIT_URL/$PROJECT'
401 java-version: openjdk8
402 mvn-global-settings: global-settings
406 staging-profile-id: '' # Unused by the javadoc jobs
408 submodule-recursive: true
410 gerrit_verify_triggers:
411 - patchset-created-event:
413 exclude-trivial-rebase: false
414 exclude-no-code-change: false
415 - draft-published-event
416 - comment-added-contains-event:
417 comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$'
419 #####################
420 # Job Configuration #
421 #####################
427 mvn-version: '{mvn-version}'
428 - lf-update-java-alternatives:
429 java-version: '{java-version}'
430 - lf-provide-maven-settings:
431 global-settings-file: '{mvn-global-settings}'
432 settings-file: '{mvn-settings}'
433 - shell: !include-raw-escape:
434 - ../shell/common-variables.sh
435 - ../shell/maven-javadoc-generate.sh
436 - lf-provide-maven-settings-cleanup
439 name: '{project-name}-maven-javadoc-verify-{stream}'
440 id: gerrit-maven-javadoc-verify
442 # yamllint disable-line rule:key-duplicates
443 <<: *lf_maven_javadoc_verify
446 - lf-infra-gerrit-scm:
447 jenkins-ssh-credential: '{jenkins-ssh-credential}'
449 refspec: '$GERRIT_REFSPEC'
450 branch: '$GERRIT_BRANCH'
451 submodule-recursive: '{submodule-recursive}'
452 choosing-strategy: gerrit
456 server-name: '{gerrit-server-name}'
457 trigger-on: '{obj:gerrit_verify_triggers}'
459 - project-compare-type: ANT
460 project-pattern: '{project}'
462 - branch-compare-type: ANT
463 branch-pattern: '**/{branch}'
466 name: '{project-name}-maven-javadoc-verify-{stream}'
467 id: github-maven-javadoc-verify
469 # yamllint disable-line rule:key-duplicates
470 <<: *lf_maven_javadoc_verify
473 - lf-infra-properties:
474 build-days-to-keep: '{build-days-to-keep}'
476 url: '{git-url}/{github-org}/{project}'
479 - lf-infra-github-scm:
480 url: '{git-clone-url}{github-org}/{project}'
481 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
483 submodule-recursive: '{submodule-recursive}'
484 choosing-strategy: default
485 jenkins-ssh-credential: '{jenkins-ssh-credential}'
488 - github-pull-request:
489 trigger-phrase: ^(recheck|reverify)$
490 only-trigger-phrase: false
491 status-context: 'Maven Javadoc Verify'
499 - lf_maven_merge: &lf_maven_merge
502 ######################
503 # Default parameters #
504 ######################
507 build-days-to-keep: 30 # 30 days in case we need to troubleshoot
509 cron: 'H H * * 0' # push fresh snapshot weekly
510 git-url: '$GIT_URL/$PROJECT'
511 java-version: openjdk8
512 mvn-global-settings: global-settings
513 mvn-goals: clean deploy
515 mvn-params: '-Dmerge'
517 nexus-cut-dirs: 6 # Number of dirs in the Nexus path to remove for wget -r.
518 staging-profile-id: '' # Unused by this job.
520 submodule-recursive: true
522 gerrit_merge_triggers:
523 - change-merged-event
524 - comment-added-contains-event:
525 comment-contains-value: remerge$
527 gerrit_trigger_file_paths:
528 - compare-type: REG_EXP
531 # github_included_regions MUST match gerrit_trigger_file_paths
532 github_included_regions:
535 post_build_trigger: ''
537 #####################
538 # Job Configuration #
539 #####################
542 - lf-jacoco-nojava-workaround
544 mvn-version: '{mvn-version}'
545 - lf-update-java-alternatives:
546 java-version: '{java-version}'
547 - lf-provide-maven-settings:
548 global-settings-file: '{mvn-global-settings}'
549 settings-file: '{mvn-settings}'
550 - lf-infra-create-netrc:
551 server-id: '{mvn-snapshot-id}'
553 properties-content: |
554 NEXUS_CUT_DIRS={nexus-cut-dirs}
555 NEXUS_REPO={nexus-snapshot-repo}
556 - shell: !include-raw-escape:
557 - ../shell/lftools-install.sh
558 - ../shell/maven-fetch-metadata.sh
560 mvn-goals: '{mvn-goals}'
562 - lf-provide-maven-settings-cleanup
568 - trigger-parameterized-builds: '{obj:post_build_trigger}'
571 name: '{project-name}-maven-merge-{stream}'
572 id: gerrit-maven-merge
574 # yamllint disable-line rule:key-duplicates
578 - lf-infra-gerrit-scm:
579 jenkins-ssh-credential: '{jenkins-ssh-credential}'
581 refspec: '$GERRIT_REFSPEC'
582 branch: '$GERRIT_BRANCH'
583 submodule-recursive: '{submodule-recursive}'
584 choosing-strategy: default
587 - timed: '{obj:cron}'
589 server-name: '{gerrit-server-name}'
590 trigger-on: '{obj:gerrit_merge_triggers}'
592 - project-compare-type: ANT
593 project-pattern: '{project}'
595 - branch-compare-type: ANT
596 branch-pattern: '**/{branch}'
597 file-paths: '{obj:gerrit_trigger_file_paths}'
600 name: '{project-name}-maven-merge-{stream}'
601 id: github-maven-merge
603 # yamllint disable-line rule:key-duplicates
607 - lf-infra-properties:
608 build-days-to-keep: '{build-days-to-keep}'
610 url: '{git-url}/{github-org}/{project}'
613 - lf-infra-github-scm:
614 url: '{git-clone-url}{github-org}/{project}'
615 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
617 submodule-recursive: '{submodule-recursive}'
618 choosing-strategy: default
619 jenkins-ssh-credential: '{jenkins-ssh-credential}'
625 - github-pull-request:
626 trigger-phrase: '^remerge$'
627 only-trigger-phrase: true
628 status-context: 'Maven Merge'
633 white-list: '{obj:github_pr_whitelist}'
634 admin-list: '{obj:github_pr_admin_list}'
635 included-regions: '{obj:github_included_regions}'
641 - lf_maven_release: &lf_maven_release
642 name: lf-maven-release
644 ######################
645 # Default parameters #
646 ######################
649 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
652 git-url: '$GIT_URL/$PROJECT'
653 java-version: openjdk8
654 mvn-global-settings: global-settings
655 mvn-goals: clean deploy
660 submodule-recursive: true
662 gerrit_release_triggers:
663 - comment-added-contains-event:
664 comment-contains-value: build release$
666 #####################
667 # Job Configuration #
668 #####################
671 - lf-jacoco-nojava-workaround
673 mvn-version: '{mvn-version}'
674 - lf-update-java-alternatives:
675 java-version: '{java-version}'
676 - lf-provide-maven-settings:
677 global-settings-file: '{mvn-global-settings}'
678 settings-file: '{mvn-settings}'
679 - lf-infra-create-netrc:
680 server-id: '{mvn-staging-id}'
681 - shell: !include-raw-escape:
682 - ../shell/lftools-install.sh
683 - ../shell/maven-patch-release.sh
685 mvn-goals: '{mvn-goals}'
687 - lf-provide-maven-settings-cleanup
690 name: '{project-name}-maven-release-{stream}'
691 id: gerrit-maven-release
693 # yamllint disable-line rule:key-duplicates
694 <<: *lf_maven_release
697 - lf-infra-gerrit-scm:
698 jenkins-ssh-credential: '{jenkins-ssh-credential}'
700 refspec: '$GERRIT_REFSPEC'
701 branch: '$GERRIT_BRANCH'
702 submodule-recursive: '{submodule-recursive}'
703 choosing-strategy: default
706 - timed: '{obj:cron}'
708 server-name: '{gerrit-server-name}'
709 trigger-on: '{obj:gerrit_release_triggers}'
711 - project-compare-type: ANT
712 project-pattern: '{project}'
714 - branch-compare-type: ANT
715 branch-pattern: '**/{branch}'
718 name: '{project-name}-maven-release-{stream}'
719 id: github-maven-release
721 # yamllint disable-line rule:key-duplicates
722 <<: *lf_maven_release
725 - lf-infra-properties:
726 build-days-to-keep: '{build-days-to-keep}'
728 url: '{git-url}/{github-org}/{project}'
731 - lf-infra-github-scm:
732 url: '{git-clone-url}{github-org}/{project}'
733 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
735 submodule-recursive: '{submodule-recursive}'
736 choosing-strategy: default
737 jenkins-ssh-credential: '{jenkins-ssh-credential}'
740 - timed: '{obj:cron}'
741 - github-pull-request:
742 trigger-phrase: '^build release$'
743 only-trigger-phrase: true
744 status-context: 'Maven Release'
752 - lf_maven_sonar: &lf_maven_sonar
755 ######################
756 # Default parameters #
757 ######################
759 branch: master # Sonar should always be run on master branch
760 build-days-to-keep: 7
762 cron: 'H H * * 6' # run weekly
763 git-url: '$GIT_URL/$PROJECT'
764 java-version: openjdk8
765 mvn-global-settings: global-settings
769 sonar-mvn-goal: 'sonar:sonar'
770 staging-profile-id: '' # Unused in this job
772 submodule-recursive: true
774 gerrit_sonar_triggers:
775 - comment-added-contains-event:
776 comment-contains-value: run-sonar$
778 #####################
779 # Job Configuration #
780 #####################
783 - lf-infra-parameters:
787 lftools-version: '{lftools-version}'
788 - lf-infra-maven-parameters:
789 mvn-opts: '{mvn-opts}'
790 mvn-params: '{mvn-params}'
791 mvn-version: '{mvn-version}'
792 # Staging repos do not make sense for Sonar jobs so set it blank.
793 staging-profile-id: ''
795 name: ARCHIVE_ARTIFACTS
796 default: '{archive-artifacts}'
797 description: Artifacts to archive to the logs server.
799 name: SONAR_MAVEN_GOAL
800 default: '{sonar-mvn-goal}'
802 Maven goals to pass to the Sonar call. Typically sonar:sonar
803 however to use a specific version of the sonar-maven-plugin we
804 can call "org.codehaus.mojo:sonar-maven-plugin:3.3.0.603:sonar".
807 - timed: '{obj:cron}'
809 server-name: '{gerrit-server-name}'
810 trigger-on: '{obj:gerrit_sonar_triggers}'
812 - project-compare-type: 'ANT'
813 project-pattern: '{project}'
815 - branch-compare-type: 'ANT'
816 branch-pattern: '**/master'
824 - lf-infra-maven-sonar:
825 java-version: '{java-version}'
826 mvn-settings: '{mvn-settings}'
827 mvn-version: '{mvn-version}'
835 name: lf-infra-maven-sonar
836 # Run a Sonar build with Maven
839 mvn-version: '{mvn-version}'
840 - lf-update-java-alternatives:
841 java-version: '{java-version}'
843 # Switch this to the sonar wrapper when JJB 2.0 is available
844 properties-content: SONAR_HOST_URL=$SONAR_URL
845 - lf-provide-maven-settings:
846 global-settings-file: global-settings
847 settings-file: '{mvn-settings}'
848 - shell: !include-raw-escape:
849 - ../shell/common-variables.sh
850 - ../shell/maven-sonar.sh
851 - lf-provide-maven-settings-cleanup
854 name: '{project-name}-sonar'
855 id: gerrit-maven-sonar
857 # yamllint disable-line rule:key-duplicates
861 - lf-infra-gerrit-scm:
862 jenkins-ssh-credential: '{jenkins-ssh-credential}'
864 refspec: $GERRIT_REFSPEC
865 branch: $GERRIT_BRANCH
866 submodule-recursive: '{submodule-recursive}'
867 choosing-strategy: default
870 name: '{project-name}-sonar'
871 id: github-maven-sonar
873 # yamllint disable-line rule:key-duplicates
877 - lf-infra-properties:
878 build-days-to-keep: '{build-days-to-keep}'
880 url: '{git-url}/{github-org}/{project}'
883 - lf-infra-github-scm:
884 url: '{git-clone-url}{github-org}/{project}'
885 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
887 submodule-recursive: '{submodule-recursive}'
888 choosing-strategy: default
889 jenkins-ssh-credential: '{jenkins-ssh-credential}'
892 - github-pull-request:
893 trigger-phrase: '^run-sonar$'
894 only-trigger-phrase: false
895 status-context: 'Maven Sonar'
903 - lf_maven_verify: &lf_maven_verify
904 name: lf-maven-verify
906 ######################
907 # Default parameters #
908 ######################
911 build-days-to-keep: 7
913 git-url: '$GIT_URL/$PROJECT'
914 java-version: openjdk8
915 mvn-global-settings: global-settings
916 mvn-goals: clean deploy
918 mvn-params: '-Dstream=$STREAM'
920 staging-profile-id: '' # Unused in this job
922 submodule-recursive: true
924 gerrit_verify_triggers:
925 - patchset-created-event:
927 exclude-trivial-rebase: false
928 exclude-no-code-change: false
929 - draft-published-event
930 - comment-added-contains-event:
931 comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$'
933 gerrit_trigger_file_paths:
934 - compare-type: REG_EXP
937 # github_included_regions MUST match gerrit_trigger_file_paths
938 github_included_regions:
941 #####################
942 # Job Configuration #
943 #####################
948 - lf-jacoco-nojava-workaround
950 mvn-version: '{mvn-version}'
951 - lf-update-java-alternatives:
952 java-version: '{java-version}'
953 - lf-provide-maven-settings:
954 global-settings-file: '{mvn-global-settings}'
955 settings-file: '{mvn-settings}'
956 - shell: !include-raw-escape:
957 - ../shell/lftools-install.sh
959 mvn-goals: '{mvn-goals}'
960 - lf-provide-maven-settings-cleanup
968 name: '{project-name}-maven-verify-{stream}-{mvn-version}-{java-version}'
969 id: gerrit-maven-verify
971 # yamllint disable-line rule:key-duplicates
975 - lf-infra-gerrit-scm:
976 jenkins-ssh-credential: '{jenkins-ssh-credential}'
978 refspec: '$GERRIT_REFSPEC'
979 branch: '$GERRIT_BRANCH'
980 submodule-recursive: '{submodule-recursive}'
981 choosing-strategy: gerrit
985 server-name: '{gerrit-server-name}'
986 trigger-on: '{obj:gerrit_verify_triggers}'
988 - project-compare-type: ANT
989 project-pattern: '{project}'
991 - branch-compare-type: ANT
992 branch-pattern: '**/{branch}'
993 file-paths: '{obj:gerrit_trigger_file_paths}'
996 name: '{project-name}-maven-verify-{stream}-{mvn-version}-{java-version}'
997 id: github-maven-verify
999 # yamllint disable-line rule:key-duplicates
1000 <<: *lf_maven_verify
1003 - lf-infra-properties:
1004 build-days-to-keep: '{build-days-to-keep}'
1006 url: '{git-url}/{github-org}/{project}'
1009 - lf-infra-github-scm:
1010 url: '{git-clone-url}{github-org}/{project}'
1011 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
1013 submodule-recursive: '{submodule-recursive}'
1014 choosing-strategy: default
1015 jenkins-ssh-credential: '{jenkins-ssh-credential}'
1018 - github-pull-request:
1019 trigger-phrase: '^(recheck|reverify)$'
1020 only-trigger-phrase: false
1021 status-context: 'Maven Verify'
1024 included-regions: '{obj:github_included_regions}'
1026 #############################
1027 # Maven Verify Dependencies #
1028 #############################
1030 - lf_maven_verify_dependencies: &lf_maven_verify_dependencies
1031 name: lf-maven-verify-dependencies
1033 ######################
1034 # Default parameters #
1035 ######################
1038 build-days-to-keep: 7
1040 git-url: '$GIT_URL/$PROJECT'
1041 java-version: openjdk8
1042 mvn-global-settings: global-settings
1043 mvn-goals: clean deploy
1045 mvn-params: '-Dstream=$STREAM'
1047 staging-profile-id: '' # Unused by this job
1049 submodule-recursive: true
1051 gerrit_verify_triggers:
1052 - comment-added-contains-event:
1053 comment-contains-value: 'recheck: [0-9 ]+'
1054 gerrit_trigger_file_paths:
1058 #####################
1059 # Job Configuration #
1060 #####################
1065 - lf-jacoco-nojava-workaround
1067 mvn-version: '{mvn-version}'
1068 - lf-update-java-alternatives:
1069 java-version: '{java-version}'
1070 - lf-provide-maven-settings:
1071 global-settings-file: '{mvn-global-settings}'
1072 settings-file: '{mvn-settings}'
1073 - lf-fetch-dependent-patches
1074 - shell: !include-raw-escape:
1075 - ../shell/common-variables.sh
1076 - ../shell/maven-build-deps.sh
1078 mvn-goals: '{mvn-goals}'
1079 - lf-provide-maven-settings-cleanup
1087 name: '{project-name}-maven-verify-deps-{stream}-{mvn-version}-{java-version}'
1088 id: gerrit-maven-verify-dependencies
1089 <<: *lf_maven_common
1090 # yamllint disable-line rule:key-duplicates
1091 <<: *lf_maven_verify_dependencies
1094 - lf-infra-gerrit-scm:
1095 jenkins-ssh-credential: '{jenkins-ssh-credential}'
1096 git-url: '{git-url}'
1097 refspec: '$GERRIT_REFSPEC'
1098 branch: '$GERRIT_BRANCH'
1099 submodule-recursive: '{submodule-recursive}'
1100 choosing-strategy: gerrit
1104 server-name: '{gerrit-server-name}'
1105 trigger-on: '{obj:gerrit_verify_triggers}'
1107 - project-compare-type: ANT
1108 project-pattern: '{project}'
1110 - branch-compare-type: ANT
1111 branch-pattern: '**/{branch}'
1112 file-paths: '{obj:gerrit_trigger_file_paths}'