2 # This file contains job templates for Maven projects.
12 properties-content: 'MAVEN_GOALS={mvn-goals}'
13 - shell: !include-raw-escape:
14 - ../shell/common-variables.sh
15 - ../shell/maven-build.sh
20 - shell: !include-raw:
21 - ../shell/common-variables.sh
22 - ../shell/maven-deploy.sh
27 # include-raw-escape fails due to JJB bug
28 - shell: !include-raw:
29 - ../shell/common-variables.sh
30 - ../shell/maven-stage.sh
33 name: lf-update-java-alternatives
36 # Work around inject plugin overriding our GIT_URL variable incorrectly
37 # https://issues.jenkins-ci.org/browse/JENKINS-49775
39 SET_JDK_VERSION={java-version}
41 - shell: !include-raw-escape: ../shell/update-java-alternatives.sh
43 properties-file: '/tmp/java.env'
49 - lf_maven_common: &lf_maven_common
52 ######################
53 # Default parameters #
54 ######################
59 **/target/**/feature.xml
60 **/target/failsafe-reports/failsafe-summary.xml
61 **/target/surefire-reports/*-output.txt
67 project-type: freestyle
71 - lf-infra-properties:
72 build-days-to-keep: '{build-days-to-keep}'
75 - lf-infra-parameters:
79 lftools-version: '{lftools-version}'
80 - lf-infra-maven-parameters:
81 mvn-opts: '{mvn-opts}'
82 mvn-params: '{mvn-params}'
83 mvn-version: '{mvn-version}'
85 name: ARCHIVE_ARTIFACTS
86 default: '{archive-artifacts}'
87 description: Artifacts to archive to the logs server.
91 build-timeout: '{build-timeout}'
92 jenkins-ssh-credential: '{jenkins-ssh-credential}'
95 # TODO: Make email notification work.
96 # - lf-infra-email-notify:
97 # email-recipients: '{email-recipients}'
98 # email-prefix: '[releng]'
105 - lf_maven_clm: &lf_maven_clm
108 ######################
109 # Default parameters #
110 ######################
113 build-days-to-keep: 30 # 30 days for troubleshooting purposes
116 git-url: '$GIT_URL/$PROJECT'
117 github-url: 'https://github.com'
118 java-version: openjdk8
119 mvn-global-settings: global-settings
123 nexus-iq-stage: 'build'
125 submodule-recursive: true
127 nexus_iq_scan_patterns:
135 - comment-added-contains-event:
136 comment-contains-value: run-clm$
139 - lf-infra-parameters:
143 lftools-version: '{lftools-version}'
144 - lf-infra-maven-parameters:
145 mvn-opts: '{mvn-opts}'
146 mvn-params: '{mvn-params}'
147 mvn-version: '{mvn-version}'
149 name: ARCHIVE_ARTIFACTS
150 default: '{archive-artifacts}'
151 description: Artifacts to archive to the logs server.
153 nexus-iq-stage: '{nexus-iq-stage}'
155 #####################
156 # Job Configuration #
157 #####################
159 disabled: '{disable-job}'
163 mvn-version: '{mvn-version}'
164 - lf-update-java-alternatives:
165 java-version: '{java-version}'
166 - lf-provide-maven-settings:
167 global-settings-file: '{mvn-global-settings}'
168 settings-file: '{mvn-settings}'
169 - shell: !include-raw-escape:
170 - ../shell/common-variables.sh
171 - ../shell/sonatype-clm.sh
172 - lf-provide-maven-settings-cleanup
173 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
174 - nexus-iq-policy-evaluator:
175 stage: '{nexus-iq-stage}'
176 application-type: 'manual'
177 application-id: '{project-name}'
178 scan-patterns: '{obj:nexus_iq_scan_patterns}'
179 fail-build-network-error: true
182 name: '{project-name}-maven-clm-{stream}'
185 # yamllint disable-line rule:key-duplicates
189 - lf-infra-gerrit-scm:
190 jenkins-ssh-credential: '{jenkins-ssh-credential}'
192 refspec: '$GERRIT_REFSPEC'
193 branch: '$GERRIT_BRANCH'
194 submodule-recursive: '{submodule-recursive}'
195 choosing-strategy: default
198 # Build weekly on Saturdays
201 server-name: '{gerrit-server-name}'
202 trigger-on: '{obj:gerrit_clm_triggers}'
204 - project-compare-type: ANT
205 project-pattern: '{project}'
207 - branch-compare-type: ANT
208 branch-pattern: '**/{branch}'
216 name: '{project-name}-maven-clm-{stream}'
219 # yamllint disable-line rule:key-duplicates
223 - lf-infra-properties:
224 build-days-to-keep: '{build-days-to-keep}'
226 url: '{github-url}/{github-org}/{project}'
229 - lf-infra-github-scm:
230 url: '{git-clone-url}{github-org}/{project}'
232 branch: 'refs/heads/{branch}'
233 submodule-recursive: '{submodule-recursive}'
234 choosing-strategy: default
235 jenkins-ssh-credential: '{jenkins-ssh-credential}'
238 # Build weekly on Saturdays
240 - github-pull-request:
241 trigger-phrase: '^run-clm$'
242 only-trigger-phrase: true
243 status-context: 'CLM'
248 white-list: '{obj:github_pr_whitelist}'
249 admin-list: '{obj:github_pr_admin_list}'
250 white-list-target-branches:
253 #########################
254 # Maven Javadoc Publish #
255 #########################
257 - lf_maven_javadoc_publish: &lf_maven_javadoc_publish
258 name: lf-maven-javadoc-publish
260 ######################
261 # Default parameters #
262 ######################
265 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
268 git-url: '$GIT_URL/$PROJECT'
269 github-url: 'https://github.com'
270 java-version: openjdk8
271 mvn-global-settings: global-settings
276 submodule-recursive: true
278 gerrit_merge_triggers:
279 - change-merged-event
280 - comment-added-contains-event:
281 comment-contains-value: remerge$
283 #####################
284 # Job Configuration #
285 #####################
287 disabled: '{disable-job}'
291 mvn-version: '{mvn-version}'
292 - lf-update-java-alternatives:
293 java-version: '{java-version}'
294 - lf-provide-maven-settings:
295 global-settings-file: '{mvn-global-settings}'
296 settings-file: '{mvn-settings}'
297 - lf-infra-create-netrc:
298 server-id: '{mvn-site-id}'
300 properties-content: 'DEPLOY_PATH={javadoc-path}'
301 - shell: !include-raw-escape:
302 - ../shell/common-variables.sh
303 - ../shell/maven-javadoc-generate.sh
304 - ../shell/lftools-install.sh
305 - ../shell/maven-javadoc-publish.sh
306 - lf-provide-maven-settings-cleanup
309 name: '{project-name}-maven-javadoc-publish-{stream}'
310 id: gerrit-maven-javadoc-publish
312 # yamllint disable-line rule:key-duplicates
313 <<: *lf_maven_javadoc_publish
315 git-url: '$GIT_URL/$GERRIT_PROJECT'
318 - lf-infra-gerrit-scm:
322 submodule-recursive: '{submodule-recursive}'
323 choosing-strategy: default
324 jenkins-ssh-credential: '{jenkins-ssh-credential}'
328 server-name: '{gerrit-server-name}'
329 trigger-on: '{obj:gerrit_merge_triggers}'
331 - project-compare-type: ANT
332 project-pattern: '{project}'
334 - branch-compare-type: ANT
335 branch-pattern: '**/{branch}'
338 name: '{project-name}-maven-javadoc-publish-{stream}'
339 id: github-maven-javadoc-publish
341 # yamllint disable-line rule:key-duplicates
342 <<: *lf_maven_javadoc_publish
345 - lf-infra-properties:
346 build-days-to-keep: '{build-days-to-keep}'
348 url: '{github-url}/{github-org}/{project}'
351 - lf-infra-github-scm:
352 url: '{git-clone-url}{github-org}/{project}'
355 submodule-recursive: '{submodule-recursive}'
356 choosing-strategy: default
357 jenkins-ssh-credential: '{jenkins-ssh-credential}'
363 - github-pull-request:
364 trigger-phrase: '^remerge$'
365 only-trigger-phrase: true
366 status-context: 'Maven Javadoc Publish'
371 white-list: '{obj:github_pr_whitelist}'
372 admin-list: '{obj:github_pr_admin_list}'
373 white-list-target-branches:
376 ########################
377 # Maven Javadoc Verify #
378 ########################
380 - lf_maven_javadoc_verify: &lf_maven_javadoc_verify
381 name: lf-maven-javadoc-verify
383 ######################
384 # Default parameters #
385 ######################
388 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
391 git-url: '$GIT_URL/$PROJECT'
392 github-url: 'https://github.com'
393 java-version: openjdk8
394 mvn-global-settings: global-settings
399 submodule-recursive: true
401 gerrit_verify_triggers:
402 - patchset-created-event:
404 exclude-trivial-rebase: false
405 exclude-no-code-change: false
406 - draft-published-event
407 - comment-added-contains-event:
408 comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$'
410 #####################
411 # Job Configuration #
412 #####################
415 disabled: '{disable-job}'
419 mvn-version: '{mvn-version}'
420 - lf-update-java-alternatives:
421 java-version: '{java-version}'
422 - lf-provide-maven-settings:
423 global-settings-file: '{mvn-global-settings}'
424 settings-file: '{mvn-settings}'
425 - shell: !include-raw-escape:
426 - ../shell/common-variables.sh
427 - ../shell/maven-javadoc-generate.sh
428 - lf-provide-maven-settings-cleanup
431 name: '{project-name}-maven-javadoc-verify-{stream}'
432 id: gerrit-maven-javadoc-verify
434 # yamllint disable-line rule:key-duplicates
435 <<: *lf_maven_javadoc_verify
438 - lf-infra-gerrit-scm:
439 jenkins-ssh-credential: '{jenkins-ssh-credential}'
441 refspec: '$GERRIT_REFSPEC'
442 branch: '$GERRIT_BRANCH'
443 submodule-recursive: '{submodule-recursive}'
444 choosing-strategy: gerrit
448 server-name: '{gerrit-server-name}'
449 trigger-on: '{obj:gerrit_verify_triggers}'
451 - project-compare-type: ANT
452 project-pattern: '{project}'
454 - branch-compare-type: ANT
455 branch-pattern: '**/{branch}'
458 name: '{project-name}-maven-javadoc-verify-{stream}'
459 id: github-maven-javadoc-verify
461 # yamllint disable-line rule:key-duplicates
462 <<: *lf_maven_javadoc_verify
465 - lf-infra-properties:
466 build-days-to-keep: '{build-days-to-keep}'
468 url: '{github-url}/{github-org}/{project}'
471 - lf-infra-github-scm:
472 url: '{git-clone-url}{github-org}/{project}'
473 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
475 submodule-recursive: '{submodule-recursive}'
476 choosing-strategy: default
477 jenkins-ssh-credential: '{jenkins-ssh-credential}'
480 - github-pull-request:
481 trigger-phrase: ^(recheck|reverify)$
482 only-trigger-phrase: false
483 status-context: 'Maven Javadoc Verify'
486 white-list-target-branches:
493 - lf_maven_merge: &lf_maven_merge
496 ######################
497 # Default parameters #
498 ######################
501 build-days-to-keep: 30 # 30 days in case we need to troubleshoot
505 git-url: '$GIT_URL/$PROJECT'
506 github-url: 'https://github.com'
507 java-version: openjdk8
508 mvn-global-settings: global-settings
509 mvn-goals: clean deploy
511 mvn-params: '-Dmerge'
513 nexus-cut-dirs: 6 # Number of dirs in the Nexus path to remove for wget -r.
515 submodule-recursive: true
517 gerrit_merge_triggers:
518 - change-merged-event
519 - comment-added-contains-event:
520 comment-contains-value: remerge$
522 gerrit_trigger_file_paths:
523 - compare-type: REG_EXP
526 # github_included_regions MUST match gerrit_trigger_file_paths
527 github_included_regions:
530 post_build_trigger: ''
532 #####################
533 # Job Configuration #
534 #####################
536 disabled: '{disable-job}'
539 - lf-jacoco-nojava-workaround
541 mvn-version: '{mvn-version}'
542 - lf-update-java-alternatives:
543 java-version: '{java-version}'
544 - lf-provide-maven-settings:
545 global-settings-file: '{mvn-global-settings}'
546 settings-file: '{mvn-settings}'
547 - lf-infra-create-netrc:
548 server-id: '{mvn-snapshot-id}'
550 properties-content: |
551 NEXUS_CUT_DIRS={nexus-cut-dirs}
552 NEXUS_REPO={nexus-snapshot-repo}
553 - shell: !include-raw-escape:
554 - ../shell/lftools-install.sh
555 - ../shell/maven-fetch-metadata.sh
557 mvn-goals: '{mvn-goals}'
559 - lf-provide-maven-settings-cleanup
565 - trigger-parameterized-builds: '{obj:post_build_trigger}'
568 name: '{project-name}-maven-merge-{stream}'
569 id: gerrit-maven-merge
571 # yamllint disable-line rule:key-duplicates
575 - lf-infra-gerrit-scm:
576 jenkins-ssh-credential: '{jenkins-ssh-credential}'
578 refspec: '$GERRIT_REFSPEC'
579 branch: '$GERRIT_BRANCH'
580 submodule-recursive: '{submodule-recursive}'
581 choosing-strategy: default
584 - timed: '{obj:cron}'
586 server-name: '{gerrit-server-name}'
587 trigger-on: '{obj:gerrit_merge_triggers}'
589 - project-compare-type: ANT
590 project-pattern: '{project}'
592 - branch-compare-type: ANT
593 branch-pattern: '**/{branch}'
594 file-paths: '{obj:gerrit_trigger_file_paths}'
597 name: '{project-name}-maven-merge-{stream}'
598 id: github-maven-merge
600 # yamllint disable-line rule:key-duplicates
604 - lf-infra-properties:
605 build-days-to-keep: '{build-days-to-keep}'
607 url: '{github-url}/{github-org}/{project}'
610 - lf-infra-github-scm:
611 url: '{git-clone-url}{github-org}/{project}'
612 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
614 submodule-recursive: '{submodule-recursive}'
615 choosing-strategy: default
616 jenkins-ssh-credential: '{jenkins-ssh-credential}'
619 - timed: '{obj:cron}'
623 - github-pull-request:
624 trigger-phrase: '^remerge$'
625 only-trigger-phrase: true
626 status-context: 'Maven Merge'
631 white-list: '{obj:github_pr_whitelist}'
632 admin-list: '{obj:github_pr_admin_list}'
633 white-list-target-branches:
635 included-regions: '{obj:github_included_regions}'
641 - lf_maven_stage: &lf_maven_stage
644 ######################
645 # Default parameters #
646 ######################
649 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
653 git-url: '$GIT_URL/$PROJECT'
654 github-url: 'https://github.com'
655 java-version: openjdk8
656 mvn-global-settings: global-settings
657 mvn-goals: clean deploy
661 sign-artifacts: false
663 submodule-recursive: true
665 gerrit_release_triggers:
666 - comment-added-contains-event:
667 comment-contains-value: stage-release$
669 #####################
670 # Job Configuration #
671 #####################
673 disabled: '{disable-job}'
676 - lf-infra-parameters:
680 lftools-version: '{lftools-version}'
681 - lf-infra-maven-parameters:
682 mvn-opts: '{mvn-opts}'
683 mvn-params: '{mvn-params}'
684 mvn-version: '{mvn-version}'
685 staging-profile-id: '{staging-profile-id}'
687 name: ARCHIVE_ARTIFACTS
688 default: '{archive-artifacts}'
689 description: Artifacts to archive to the logs server.
691 name: STAGING_PROFILE_ID
692 default: '{staging-profile-id}'
693 description: Nexus staging profile ID.
696 - lf-jacoco-nojava-workaround
698 mvn-version: '{mvn-version}'
699 - lf-update-java-alternatives:
700 java-version: '{java-version}'
701 - lf-provide-maven-settings:
702 global-settings-file: '{mvn-global-settings}'
703 settings-file: '{mvn-settings}'
704 - lf-infra-create-netrc:
705 server-id: '{mvn-staging-id}'
706 - shell: !include-raw-escape:
707 - ../shell/lftools-install.sh
708 - ../shell/maven-patch-release.sh
710 mvn-goals: '{mvn-goals}'
712 sign-artifacts: '{sign-artifacts}'
713 sign-dir: '$WORKSPACE/m2repo'
715 - lf-provide-maven-settings-cleanup
718 name: '{project-name}-maven-stage-{stream}'
719 id: gerrit-maven-stage
721 # yamllint disable-line rule:key-duplicates
725 - lf-infra-gerrit-scm:
726 jenkins-ssh-credential: '{jenkins-ssh-credential}'
728 refspec: '$GERRIT_REFSPEC'
729 branch: '$GERRIT_BRANCH'
730 submodule-recursive: '{submodule-recursive}'
731 choosing-strategy: default
734 - timed: '{obj:cron}'
736 server-name: '{gerrit-server-name}'
737 trigger-on: '{obj:gerrit_release_triggers}'
739 - project-compare-type: ANT
740 project-pattern: '{project}'
742 - branch-compare-type: ANT
743 branch-pattern: '**/{branch}'
746 name: '{project-name}-maven-stage-{stream}'
747 id: github-maven-stage
749 # yamllint disable-line rule:key-duplicates
753 - lf-infra-properties:
754 build-days-to-keep: '{build-days-to-keep}'
756 url: '{github-url}/{github-org}/{project}'
759 - lf-infra-github-scm:
760 url: '{git-clone-url}{github-org}/{project}'
761 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
763 submodule-recursive: '{submodule-recursive}'
764 choosing-strategy: default
765 jenkins-ssh-credential: '{jenkins-ssh-credential}'
768 - timed: '{obj:cron}'
769 - github-pull-request:
770 trigger-phrase: '^build release$'
771 only-trigger-phrase: true
772 status-context: 'Maven Release'
775 white-list-target-branches:
782 - lf_maven_sonar: &lf_maven_sonar
785 ######################
786 # Default parameters #
787 ######################
789 branch: master # Sonar should always be run on master branch
790 build-days-to-keep: 7
792 cron: 'H H * * 6' # run weekly
794 git-url: '$GIT_URL/$PROJECT'
795 github-url: 'https://github.com'
796 java-version: openjdk8
797 mvn-global-settings: global-settings
801 sonar-mvn-goal: 'sonar:sonar'
803 submodule-recursive: true
805 gerrit_sonar_triggers:
806 - comment-added-contains-event:
807 comment-contains-value: run-sonar$
809 #####################
810 # Job Configuration #
811 #####################
813 disabled: '{disable-job}'
816 - lf-infra-parameters:
820 lftools-version: '{lftools-version}'
821 - lf-infra-maven-parameters:
822 mvn-opts: '{mvn-opts}'
823 mvn-params: '{mvn-params}'
824 mvn-version: '{mvn-version}'
826 name: ARCHIVE_ARTIFACTS
827 default: '{archive-artifacts}'
828 description: Artifacts to archive to the logs server.
830 name: SONAR_MAVEN_GOAL
831 default: '{sonar-mvn-goal}'
833 Maven goals to pass to the Sonar call. Typically sonar:sonar
834 however to use a specific version of the sonar-maven-plugin we
835 can call "org.codehaus.mojo:sonar-maven-plugin:3.3.0.603:sonar".
838 - timed: '{obj:cron}'
840 server-name: '{gerrit-server-name}'
841 trigger-on: '{obj:gerrit_sonar_triggers}'
843 - project-compare-type: 'ANT'
844 project-pattern: '{project}'
846 - branch-compare-type: 'ANT'
847 branch-pattern: '**/master'
855 - lf-infra-maven-sonar:
856 java-version: '{java-version}'
857 mvn-settings: '{mvn-settings}'
858 mvn-version: '{mvn-version}'
866 name: lf-infra-maven-sonar
867 # Run a Sonar build with Maven
870 mvn-version: '{mvn-version}'
871 - lf-update-java-alternatives:
872 java-version: '{java-version}'
874 # Switch this to the sonar wrapper when JJB 2.0 is available
875 properties-content: SONAR_HOST_URL=$SONAR_URL
876 - lf-provide-maven-settings:
877 global-settings-file: global-settings
878 settings-file: '{mvn-settings}'
879 - shell: !include-raw-escape:
880 - ../shell/common-variables.sh
881 - ../shell/maven-sonar.sh
882 - lf-provide-maven-settings-cleanup
885 name: '{project-name}-sonar'
886 id: gerrit-maven-sonar
888 # yamllint disable-line rule:key-duplicates
892 - lf-infra-gerrit-scm:
893 jenkins-ssh-credential: '{jenkins-ssh-credential}'
895 refspec: $GERRIT_REFSPEC
896 branch: $GERRIT_BRANCH
897 submodule-recursive: '{submodule-recursive}'
898 choosing-strategy: default
901 name: '{project-name}-sonar'
902 id: github-maven-sonar
904 # yamllint disable-line rule:key-duplicates
908 - lf-infra-properties:
909 build-days-to-keep: '{build-days-to-keep}'
911 url: '{github-url}/{github-org}/{project}'
914 - lf-infra-github-scm:
915 url: '{git-clone-url}{github-org}/{project}'
916 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
918 submodule-recursive: '{submodule-recursive}'
919 choosing-strategy: default
920 jenkins-ssh-credential: '{jenkins-ssh-credential}'
923 - github-pull-request:
924 trigger-phrase: '^run-sonar$'
925 only-trigger-phrase: false
926 status-context: 'Maven Sonar'
929 white-list-target-branches:
936 - lf_maven_verify: &lf_maven_verify
937 name: lf-maven-verify
939 ######################
940 # Default parameters #
941 ######################
944 build-days-to-keep: 7
947 git-url: '$GIT_URL/$PROJECT'
948 github-url: 'https://github.com'
949 java-version: openjdk8
950 mvn-global-settings: global-settings
951 mvn-goals: clean deploy
953 mvn-params: '-Dstream=$STREAM'
956 submodule-recursive: true
958 gerrit_verify_triggers:
959 - patchset-created-event:
961 exclude-trivial-rebase: false
962 exclude-no-code-change: false
963 - draft-published-event
964 - comment-added-contains-event:
965 comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$'
967 gerrit_trigger_file_paths:
968 - compare-type: REG_EXP
971 # github_included_regions MUST match gerrit_trigger_file_paths
972 github_included_regions:
975 #####################
976 # Job Configuration #
977 #####################
980 disabled: '{disable-job}'
983 - lf-jacoco-nojava-workaround
985 mvn-version: '{mvn-version}'
986 - lf-update-java-alternatives:
987 java-version: '{java-version}'
988 - lf-provide-maven-settings:
989 global-settings-file: '{mvn-global-settings}'
990 settings-file: '{mvn-settings}'
991 - shell: !include-raw-escape:
992 - ../shell/lftools-install.sh
994 mvn-goals: '{mvn-goals}'
995 - lf-provide-maven-settings-cleanup
1003 name: '{project-name}-maven-verify-{stream}-{mvn-version}-{java-version}'
1004 id: gerrit-maven-verify
1005 <<: *lf_maven_common
1006 # yamllint disable-line rule:key-duplicates
1007 <<: *lf_maven_verify
1010 - lf-infra-gerrit-scm:
1011 jenkins-ssh-credential: '{jenkins-ssh-credential}'
1012 git-url: '{git-url}'
1013 refspec: '$GERRIT_REFSPEC'
1014 branch: '$GERRIT_BRANCH'
1015 submodule-recursive: '{submodule-recursive}'
1016 choosing-strategy: gerrit
1020 server-name: '{gerrit-server-name}'
1021 trigger-on: '{obj:gerrit_verify_triggers}'
1023 - project-compare-type: ANT
1024 project-pattern: '{project}'
1026 - branch-compare-type: ANT
1027 branch-pattern: '**/{branch}'
1028 file-paths: '{obj:gerrit_trigger_file_paths}'
1031 name: '{project-name}-maven-verify-{stream}-{mvn-version}-{java-version}'
1032 id: github-maven-verify
1033 <<: *lf_maven_common
1034 # yamllint disable-line rule:key-duplicates
1035 <<: *lf_maven_verify
1038 - lf-infra-properties:
1039 build-days-to-keep: '{build-days-to-keep}'
1041 url: '{github-url}/{github-org}/{project}'
1044 - lf-infra-github-scm:
1045 url: '{git-clone-url}{github-org}/{project}'
1046 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
1048 submodule-recursive: '{submodule-recursive}'
1049 choosing-strategy: default
1050 jenkins-ssh-credential: '{jenkins-ssh-credential}'
1053 - github-pull-request:
1054 trigger-phrase: '^(recheck|reverify)$'
1055 only-trigger-phrase: false
1056 status-context: 'Maven Verify'
1059 white-list-target-branches:
1061 included-regions: '{obj:github_included_regions}'
1063 #############################
1064 # Maven Verify Dependencies #
1065 #############################
1067 - lf_maven_verify_dependencies: &lf_maven_verify_dependencies
1068 name: lf-maven-verify-dependencies
1070 ######################
1071 # Default parameters #
1072 ######################
1075 build-days-to-keep: 7
1078 git-url: '$GIT_URL/$PROJECT'
1079 github-url: 'https://github.com'
1080 java-version: openjdk8
1081 mvn-global-settings: global-settings
1082 mvn-goals: clean deploy
1084 mvn-params: '-Dstream=$STREAM'
1087 submodule-recursive: true
1089 gerrit_verify_triggers:
1090 - comment-added-contains-event:
1091 comment-contains-value: 'recheck: [0-9 ]+'
1092 gerrit_trigger_file_paths:
1096 #####################
1097 # Job Configuration #
1098 #####################
1101 disabled: '{disable-job}'
1104 - lf-jacoco-nojava-workaround
1106 mvn-version: '{mvn-version}'
1107 - lf-update-java-alternatives:
1108 java-version: '{java-version}'
1109 - lf-provide-maven-settings:
1110 global-settings-file: '{mvn-global-settings}'
1111 settings-file: '{mvn-settings}'
1112 - lf-fetch-dependent-patches
1113 - shell: !include-raw-escape:
1114 - ../shell/common-variables.sh
1115 - ../shell/maven-build-deps.sh
1117 mvn-goals: '{mvn-goals}'
1118 - lf-provide-maven-settings-cleanup
1126 name: '{project-name}-maven-verify-deps-{stream}-{mvn-version}-{java-version}'
1127 id: gerrit-maven-verify-dependencies
1128 <<: *lf_maven_common
1129 # yamllint disable-line rule:key-duplicates
1130 <<: *lf_maven_verify_dependencies
1133 - lf-infra-gerrit-scm:
1134 jenkins-ssh-credential: '{jenkins-ssh-credential}'
1135 git-url: '{git-url}'
1136 refspec: '$GERRIT_REFSPEC'
1137 branch: '$GERRIT_BRANCH'
1138 submodule-recursive: '{submodule-recursive}'
1139 choosing-strategy: gerrit
1143 server-name: '{gerrit-server-name}'
1144 trigger-on: '{obj:gerrit_verify_triggers}'
1146 - project-compare-type: ANT
1147 project-pattern: '{project}'
1149 - branch-compare-type: ANT
1150 branch-pattern: '**/{branch}'
1151 file-paths: '{obj:gerrit_trigger_file_paths}'