7 name: lf-infra-clm-python
10 properties-content: "CLM_PROJECT_NAME={clm-project-name}"
11 - shell: !include-raw-escape: ../shell/nexus-iq-cli.sh
14 name: lf-infra-pypi-tag-release
16 - config-file-provider:
18 - file-id: sigul-config
19 variable: SIGUL_CONFIG
20 - file-id: sigul-password
21 variable: SIGUL_PASSWORD
24 - file-id: signing-pubkey
25 variable: SIGNING_PUBKEY
26 - shell: !include-raw: ../shell/sigul-configuration.sh
27 - shell: !include-raw: ../shell/sigul-install.sh
28 - shell: !include-raw: ../shell/pypi-tag-release.sh
31 name: lf-infra-pypi-upload
33 - config-file-provider:
36 target: "$HOME/.pypirc"
38 properties-content: "REPOSITORY={pypi-repo}"
39 - shell: !include-raw-escape: ../shell/pypi-upload.sh
42 name: lf-infra-tox-install
45 properties-content: "PYTHON={python-version}"
46 - shell: !include-raw-escape: ../shell/tox-install.sh
49 name: lf-infra-tox-run
52 properties-content: "PARALLEL={parallel}"
53 - shell: !include-raw-escape: ../shell/tox-run.sh
59 - lf_python_common: &lf_python_common
60 name: lf-python-common
62 ######################
63 # Default parameters #
64 ######################
73 project-type: freestyle
77 - lf-infra-properties:
78 build-days-to-keep: "{build-days-to-keep}"
81 - lf-infra-parameters:
88 build-timeout: "{build-timeout}"
89 jenkins-ssh-credential: "{jenkins-ssh-credential}"
98 - lf_python_clm_xc: &lf_python_xc_clm
99 name: lf-python-xc-clm
101 ######################
102 # Default parameters #
103 ######################
106 build-days-to-keep: 30 # 30 days for troubleshooting purposes
109 git-url: "$GIT_URL/$PROJECT"
110 github-url: "https://github.com"
111 java-version: openjdk8
112 nexus-iq-cli-version: 1.44.0-01
113 nexus-iq-namespace: "" # Recommend a trailing dash when set. Example: odl-
114 pre-build-script: "# pre-build script goes here"
116 submodule-recursive: true
117 submodule-timeout: 10
118 submodule-disable: false
120 gerrit_trigger_file_paths:
124 # github_included_regions MUST match gerrit_trigger_file_paths
125 github_included_regions:
128 #####################
129 # Job Configuration #
130 #####################
132 disabled: "{disable-job}"
135 - lf-infra-parameters:
140 name: NEXUS_IQ_CLI_VERSION
141 default: "{nexus-iq-cli-version}"
142 description: Nexus IQ CLI package to download and use.
145 - credentials-binding:
146 - username-password-separated:
147 credential-id: nexus-iq-xc-clm
149 password: CLM_PASSWORD
151 - lf-update-java-alternatives:
152 java-version: "{java-version}"
153 - shell: "{pre-build-script}"
154 - lf-infra-clm-python:
155 clm-project-name: "{nexus-iq-namespace}{project-name}"
158 name: "{project-name}-python-clm-{stream}"
159 id: gerrit-python-xc-clm
160 <<: *lf_python_common
161 # yamllint disable-line rule:key-duplicates
162 <<: *lf_python_xc_clm
164 ######################
165 # Default parameters #
166 ######################
169 - comment-added-contains-event:
170 comment-contains-value: '^Patch Set\s+\d+:\s+run-clm\s*$'
172 #####################
173 # Job Configuration #
174 #####################
177 - lf-infra-gerrit-scm:
178 jenkins-ssh-credential: "{jenkins-ssh-credential}"
180 refspec: "$GERRIT_REFSPEC"
181 branch: "$GERRIT_BRANCH"
182 submodule-recursive: "{submodule-recursive}"
183 submodule-timeout: "{submodule-timeout}"
184 submodule-disable: "{submodule-disable}"
185 choosing-strategy: default
188 # Build weekly on Saturdays
191 server-name: "{gerrit-server-name}"
192 trigger-on: "{obj:gerrit_clm_triggers}"
194 - project-compare-type: ANT
195 project-pattern: "{project}"
197 - branch-compare-type: ANT
198 branch-pattern: "**/{branch}"
199 file-paths: "{obj:gerrit_trigger_file_paths}"
207 name: "{project-name}-python-clm-{stream}"
208 id: github-python-xc-clm
209 <<: *lf_python_common
210 # yamllint disable-line rule:key-duplicates
211 <<: *lf_python_xc_clm
214 - lf-infra-properties:
215 build-days-to-keep: "{build-days-to-keep}"
217 url: "{github-url}/{github-org}/{project}"
220 - lf-infra-github-scm:
221 url: "{git-clone-url}{github-org}/{project}"
223 branch: "refs/heads/{branch}"
224 submodule-recursive: "{submodule-recursive}"
225 submodule-timeout: "{submodule-timeout}"
226 submodule-disable: "{submodule-disable}"
227 choosing-strategy: default
228 jenkins-ssh-credential: "{jenkins-ssh-credential}"
231 # Build weekly on Saturdays
233 - github-pull-request:
234 trigger-phrase: "^run-clm$"
235 only-trigger-phrase: false
236 status-context: "CLM"
239 white-list-target-branches:
241 included-regions: "{obj:github_included_regions}"
243 #########################
244 # Python Sonar with Tox #
245 #########################
247 - lf_tox_sonar: &lf_tox_sonar
250 ######################
251 # Default parameters #
252 ######################
254 branch: master # Sonar should always be run on master branch
255 build-days-to-keep: 7
257 cron: "H H * * *" # run daily
259 git-url: "$GIT_URL/$PROJECT"
260 github-url: "https://github.com"
261 java-version: openjdk8
262 mvn-global-settings: global-settings
264 mvn-settings: "{mvn-settings}"
267 pre-build-script: "# pre-build script goes here"
268 python-version: python3
269 sonar-mvn-goal: "sonar:sonar"
271 submodule-recursive: true
272 submodule-timeout: 10
273 submodule-disable: false
275 gerrit_trigger_file_paths:
276 - compare-type: REG_EXP
279 # github_included_regions MUST match gerrit_trigger_file_paths
280 github_included_regions:
283 #####################
284 # Job Configuration #
285 #####################
287 disabled: "{disable-job}"
290 - lf-infra-parameters:
295 name: ARCHIVE_ARTIFACTS
296 default: "{archive-artifacts}"
297 description: Artifacts to archive to the logs server.
300 # Sets an env var for shell scripts to be able to call the dynamically
301 # installed maven without having to calculate the path themselves.
302 # yamllint disable-line rule:line-length
303 default: "/w/tools/hudson.tasks.Maven_MavenInstallation/{mvn-version}/bin/mvn"
304 description: "Maven selector to be used by shell scripts"
306 name: SONAR_MAVEN_GOAL
307 default: "{sonar-mvn-goal}"
309 Maven goals to pass to the Sonar call. Typically sonar:sonar
310 however to use a specific version of the sonar-maven-plugin we
311 can call "org.codehaus.mojo:sonar-maven-plugin:3.3.0.603:sonar".
315 - lf-infra-tox-install:
316 python-version: "{python-version}"
317 - shell: "{pre-build-script}"
319 parallel: "{parallel}"
320 - lf-provide-maven-settings:
321 global-settings-file: "{mvn-global-settings}"
322 settings-file: "{mvn-settings}"
323 - lf-infra-maven-sonar:
324 java-version: "{java-version}"
325 mvn-goals: "{mvn-goals}"
326 mvn-settings: "{mvn-settings}"
327 mvn-version: "{mvn-version}"
333 name: "{project-name}-tox-sonar"
335 <<: *lf_python_common
336 # yamllint disable-line rule:key-duplicates
339 ######################
340 # Default parameters #
341 ######################
343 gerrit_sonar_triggers:
344 - comment-added-contains-event:
345 comment-contains-value: '^Patch Set\s+\d+:\s+run-sonar\s*$'
347 #####################
348 # Job Configuration #
349 #####################
352 - lf-infra-gerrit-scm:
353 jenkins-ssh-credential: "{jenkins-ssh-credential}"
355 refspec: $GERRIT_REFSPEC
356 branch: $GERRIT_BRANCH
357 submodule-recursive: "{submodule-recursive}"
358 submodule-timeout: "{submodule-timeout}"
359 submodule-disable: "{submodule-disable}"
360 choosing-strategy: default
363 - timed: "{obj:cron}"
365 server-name: "{gerrit-server-name}"
366 trigger-on: "{obj:gerrit_sonar_triggers}"
368 - project-compare-type: "ANT"
369 project-pattern: "{project}"
371 - branch-compare-type: "ANT"
372 branch-pattern: "**/{branch}"
373 file-paths: "{obj:gerrit_trigger_file_paths}"
381 name: "{project-name}-tox-sonar"
383 <<: *lf_python_common
384 # yamllint disable-line rule:key-duplicates
388 - lf-infra-properties:
389 build-days-to-keep: "{build-days-to-keep}"
391 url: "{github-url}/{github-org}/{project}"
394 - lf-infra-github-scm:
395 url: "{git-clone-url}{github-org}/{project}"
396 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
398 submodule-recursive: "{submodule-recursive}"
399 submodule-timeout: "{submodule-timeout}"
400 submodule-disable: "{submodule-disable}"
401 choosing-strategy: default
402 jenkins-ssh-credential: "{jenkins-ssh-credential}"
405 - github-pull-request:
406 trigger-phrase: "^run-sonar$"
407 only-trigger-phrase: false
408 status-context: "Python Sonar"
411 white-list-target-branches:
413 included-regions: "{obj:github_included_regions}"
419 - lf_tox_common: &lf_tox_common
422 ######################
423 # Default parameters #
424 ######################
427 build-days-to-keep: 7
430 git-url: "$GIT_URL/$GERRIT_PROJECT"
431 github-url: "https://github.com"
433 pre-build-script: "# pre-build script goes here"
434 python-version: python3
436 submodule-recursive: true
437 submodule-timeout: 10
438 submodule-disable: false
442 gerrit_trigger_file_paths:
443 - compare-type: REG_EXP
446 # github_included_regions MUST match gerrit_trigger_file_paths
447 github_included_regions:
450 #####################
451 # Job Configuration #
452 #####################
454 project-type: freestyle
457 disabled: "{disable-job}"
460 - lf-infra-properties:
461 build-days-to-keep: "{build-days-to-keep}"
464 - lf-infra-parameters:
468 - lf-infra-tox-parameters:
470 tox-envs: "{tox-envs}"
474 build-timeout: "{build-timeout}"
475 jenkins-ssh-credential: "{jenkins-ssh-credential}"
479 - lf-infra-tox-install:
480 python-version: "{python-version}"
481 - shell: "{pre-build-script}"
483 parallel: "{parallel}"
489 # Python projects typically use tox to run testing.
490 name: "{project-name}-tox-verify-{stream}"
491 id: gerrit-tox-verify
494 ######################
495 # Default parameters #
496 ######################
498 gerrit-skip-vote: false
499 gerrit_verify_triggers:
500 - patchset-created-event:
502 exclude-trivial-rebase: false
503 exclude-no-code-change: false
504 - draft-published-event
505 - comment-added-contains-event:
506 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
508 #####################
509 # Job Configuration #
510 #####################
513 - lf-infra-gerrit-scm:
514 jenkins-ssh-credential: "{jenkins-ssh-credential}"
516 refspec: "$GERRIT_REFSPEC"
517 branch: "$GERRIT_BRANCH"
518 submodule-recursive: "{submodule-recursive}"
519 submodule-timeout: "{submodule-timeout}"
520 submodule-disable: "{submodule-disable}"
521 choosing-strategy: gerrit
525 server-name: "{gerrit-server-name}"
526 trigger-on: "{obj:gerrit_verify_triggers}"
528 - project-compare-type: ANT
529 project-pattern: "{project}"
531 - branch-compare-type: ANT
532 branch-pattern: "**/{branch}"
533 file-paths: "{obj:gerrit_trigger_file_paths}"
535 successful: "{gerrit-skip-vote}"
536 failed: "{gerrit-skip-vote}"
537 unstable: "{gerrit-skip-vote}"
538 notbuilt: "{gerrit-skip-vote}"
541 # Python projects typically use tox to run testing.
542 name: "{project-name}-tox-verify-{stream}"
543 id: github-tox-verify
547 - lf-infra-properties:
548 build-days-to-keep: "{build-days-to-keep}"
550 url: "{github-url}/{github-org}/{project}"
553 - lf-infra-github-scm:
554 url: "{git-clone-url}{github-org}/{project}"
555 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
557 submodule-recursive: "{submodule-recursive}"
558 submodule-timeout: "{submodule-timeout}"
559 submodule-disable: "{submodule-disable}"
560 choosing-strategy: default
561 jenkins-ssh-credential: "{jenkins-ssh-credential}"
564 - github-pull-request:
565 trigger-phrase: "^(recheck|reverify)$"
566 only-trigger-phrase: false
567 status-context: "Tox Verify"
570 white-list-target-branches:
572 included-regions: "{obj:github_included_regions}"
575 # Run tox after merge of gerrit change set
576 name: "{project-name}-tox-merge-{stream}"
580 ######################
581 # Default parameters #
582 ######################
584 gerrit_merge_triggers:
585 - change-merged-event
586 - comment-added-contains-event:
587 comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
589 #####################
590 # Job Configuration #
591 #####################
594 - lf-infra-gerrit-scm:
595 jenkins-ssh-credential: "{jenkins-ssh-credential}"
597 refspec: "$GERRIT_REFSPEC"
598 branch: "$GERRIT_BRANCH"
599 submodule-recursive: "{submodule-recursive}"
600 submodule-timeout: "{submodule-timeout}"
601 submodule-disable: "{submodule-disable}"
602 choosing-strategy: gerrit
606 server-name: "{gerrit-server-name}"
607 trigger-on: "{obj:gerrit_merge_triggers}"
609 - project-compare-type: ANT
610 project-pattern: "{project}"
612 - branch-compare-type: ANT
613 branch-pattern: "**/{branch}"
614 file-paths: "{obj:gerrit_trigger_file_paths}"
617 # Run tox after merge of github pull request
618 name: "{project-name}-tox-merge-{stream}"
623 - lf-infra-properties:
624 build-days-to-keep: "{build-days-to-keep}"
626 url: "{github-url}/{github-org}/{project}"
629 - lf-infra-github-scm:
630 url: "{git-clone-url}{github-org}/{project}"
632 branch: "refs/heads/{branch}"
633 submodule-recursive: "{submodule-recursive}"
634 submodule-timeout: "{submodule-timeout}"
635 submodule-disable: "{submodule-disable}"
636 choosing-strategy: default
637 jenkins-ssh-credential: "{jenkins-ssh-credential}"
640 - github-pull-request:
641 trigger-phrase: "^remerge$"
642 only-trigger-phrase: true
643 status-context: "Tox Merge"
648 white-list: "{obj:github_pr_whitelist}"
649 admin-list: "{obj:github_pr_admin_list}"
650 white-list-target-branches:
652 included-regions: "{obj:github_included_regions}"
658 - lf_pypi_common: &lf_pypi_common
661 ######################
662 # Default parameters #
663 ######################
666 build-days-to-keep: 7
670 git-url: "$GIT_URL/$GERRIT_PROJECT"
671 github-url: "https://github.com"
673 pre-build-script: "# pre-build script goes here"
674 python-version: python3
676 submodule-recursive: true
677 submodule-timeout: 10
678 submodule-disable: false
682 gerrit_trigger_file_paths:
686 # github_included_regions MUST match gerrit_trigger_file_paths
687 github_included_regions:
691 - lf-infra-parameters:
695 - lf-infra-tox-parameters:
697 tox-envs: "{tox-envs}"
699 name: BUILD_BDIST_WHEEL
700 default: "{dist-binary}"
701 description: "Set to True to build a wheel"
703 - lf_pypi_verify_builders: &lf_pypi_verify_builders
704 name: lf-pypi-verify-builders
708 - lf-infra-tox-install:
709 python-version: "{python-version}"
710 - shell: "{pre-build-script}"
712 parallel: "{parallel}"
713 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
715 - lf_pypi_merge_builders: &lf_pypi_merge_builders
716 name: lf-pypi-merge-builders
720 - lf-infra-tox-install:
721 python-version: "{python-version}"
722 - shell: "{pre-build-script}"
724 parallel: "{parallel}"
725 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
726 - lf-infra-pypi-upload:
727 pypi-repo: "{pypi-repo}"
729 - lf_pypi_release_verify_builders: &lf_pypi_release_verify_builders
730 name: lf-pypi-release-verify-builders
734 - lf-infra-tox-install:
735 python-version: "{python-version}"
736 - shell: "{pre-build-script}"
738 parallel: "{parallel}"
739 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
740 - lf-infra-pypi-tag-release
742 - lf_pypi_release_merge_builders: &lf_pypi_release_merge_builders
743 name: lf-pypi-release-merge-builders
747 - lf-infra-tox-install:
748 python-version: "{python-version}"
749 - shell: "{pre-build-script}"
751 parallel: "{parallel}"
752 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
753 - lf-infra-pypi-tag-release
754 - lf-infra-pypi-upload:
755 pypi-repo: "{pypi-repo}"
758 name: "{project-name}-pypi-verify-{stream}"
759 id: gerrit-pypi-verify
760 <<: *lf_python_common
761 # yamllint disable-line rule:key-duplicates
763 <<: *lf_pypi_verify_builders
765 gerrit_verify_triggers:
766 - patchset-created-event:
768 exclude-trivial-rebase: false
769 exclude-no-code-change: false
770 - draft-published-event
771 - comment-added-contains-event:
772 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
775 - lf-infra-gerrit-scm:
776 jenkins-ssh-credential: "{jenkins-ssh-credential}"
778 refspec: "$GERRIT_REFSPEC"
779 branch: "$GERRIT_BRANCH"
780 submodule-recursive: "{submodule-recursive}"
781 submodule-timeout: "{submodule-timeout}"
782 submodule-disable: "{submodule-disable}"
783 choosing-strategy: gerrit
787 server-name: "{gerrit-server-name}"
788 trigger-on: "{obj:gerrit_verify_triggers}"
790 - project-compare-type: ANT
791 project-pattern: "{project}"
793 - branch-compare-type: ANT
794 branch-pattern: "**/{branch}"
795 file-paths: "{obj:gerrit_trigger_file_paths}"
798 name: "{project-name}-pypi-verify-{stream}"
799 id: github-pypi-verify
800 <<: *lf_python_common
801 # yamllint disable-line rule:key-duplicates
803 <<: *lf_pypi_verify_builders
807 url: "{github-url}/{github-org}/{project}"
810 - lf-infra-github-scm:
811 url: "{git-clone-url}{github-org}/{project}"
812 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
814 submodule-recursive: "{submodule-recursive}"
815 submodule-timeout: "{submodule-timeout}"
816 submodule-disable: "{submodule-disable}"
817 choosing-strategy: default
818 jenkins-ssh-credential: "{jenkins-ssh-credential}"
821 - github-pull-request:
822 trigger-phrase: "^(recheck|reverify)$"
823 only-trigger-phrase: false
824 status-context: "PyPI Verify"
827 white-list-target-branches:
829 included-regions: "{obj:github_included_regions}"
832 name: "{project-name}-pypi-merge-{stream}"
833 id: gerrit-pypi-merge
834 <<: *lf_python_common
835 # yamllint disable-line rule:key-duplicates
837 <<: *lf_pypi_merge_builders
841 gerrit_merge_triggers:
842 - change-merged-event
843 - comment-added-contains-event:
844 comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
847 - lf-infra-gerrit-scm:
848 jenkins-ssh-credential: "{jenkins-ssh-credential}"
850 refspec: "$GERRIT_REFSPEC"
851 branch: "$GERRIT_BRANCH"
852 submodule-recursive: "{submodule-recursive}"
853 submodule-timeout: "{submodule-timeout}"
854 submodule-disable: "{submodule-disable}"
855 choosing-strategy: gerrit
859 server-name: "{gerrit-server-name}"
860 trigger-on: "{obj:gerrit_merge_triggers}"
862 - project-compare-type: ANT
863 project-pattern: "{project}"
865 - branch-compare-type: ANT
866 branch-pattern: "**/{branch}"
867 file-paths: "{obj:gerrit_trigger_file_paths}"
870 name: "{project-name}-pypi-merge-{stream}"
871 id: github-pypi-merge
872 <<: *lf_python_common
873 # yamllint disable-line rule:key-duplicates
875 <<: *lf_pypi_merge_builders
881 url: "{github-url}/{github-org}/{project}"
884 - lf-infra-github-scm:
885 url: "{git-clone-url}{github-org}/{project}"
887 branch: "refs/heads/{branch}"
888 submodule-recursive: "{submodule-recursive}"
889 submodule-timeout: "{submodule-timeout}"
890 submodule-disable: "{submodule-disable}"
891 choosing-strategy: default
892 jenkins-ssh-credential: "{jenkins-ssh-credential}"
895 - github-pull-request:
896 trigger-phrase: "^remerge$"
897 only-trigger-phrase: false
898 status-context: "Merge"
903 white-list: "{obj:github_pr_whitelist}"
904 admin-list: "{obj:github_pr_admin_list}"
905 white-list-target-branches:
907 included-regions: "{obj:github_included_regions}"
909 - lf_pypi_release_common: &lf_pypi_release_common
910 name: lf-pypi-release-common
914 use-release-file: true
916 gerrit_trigger_file_paths:
917 - compare-type: REG_EXP
918 pattern: '(releases\/.*\.yaml|\.releases\/.*\.yaml)'
920 # github_included_regions MUST match gerrit_trigger_file_paths
921 github_included_regions:
922 - 'releases\/.*\.yaml'
923 - '.releases\/.*\.yaml'
926 - lf-infra-parameters:
930 - lf-infra-tox-parameters:
932 tox-envs: "{tox-envs}"
934 name: BUILD_BDIST_WHEEL
935 default: "{dist-binary}"
936 description: "Set to True to build a wheel"
940 description: "This is the version, example: 1.0.0"
942 name: USE_RELEASE_FILE
943 default: "{use-release-file}"
944 description: "Set to False for job built with parameters"
949 If DRY_RUN is enabled artifacts are not published.
952 name: "{project-name}-pypi-release-verify-{stream}"
953 id: gerrit-pypi-release-verify
954 <<: *lf_python_common
955 # yamllint disable-line rule:key-duplicates
957 <<: *lf_pypi_release_common
958 <<: *lf_pypi_release_verify_builders
960 gerrit_verify_triggers:
961 - patchset-created-event:
963 exclude-trivial-rebase: false
964 exclude-no-code-change: false
965 - draft-published-event
966 - comment-added-contains-event:
967 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
970 - lf-infra-gerrit-scm:
971 jenkins-ssh-credential: "{jenkins-ssh-credential}"
973 refspec: "$GERRIT_REFSPEC"
974 branch: "$GERRIT_BRANCH"
975 submodule-recursive: "{submodule-recursive}"
976 submodule-timeout: "{submodule-timeout}"
977 submodule-disable: "{submodule-disable}"
978 choosing-strategy: gerrit
982 server-name: "{gerrit-server-name}"
983 trigger-on: "{obj:gerrit_verify_triggers}"
985 - project-compare-type: "ANT"
986 project-pattern: "{project}"
988 - branch-compare-type: "ANT"
990 file-paths: "{obj:gerrit_trigger_file_paths}"
993 name: "{project-name}-pypi-release-verify-{stream}"
994 id: github-pypi-release-verify
995 <<: *lf_python_common
996 # yamllint disable-line rule:key-duplicates
998 <<: *lf_pypi_release_common
999 <<: *lf_pypi_release_verify_builders
1003 url: "{github-url}/{github-org}/{project}"
1006 - lf-infra-github-scm:
1007 url: "{git-clone-url}{github-org}/{project}"
1009 branch: "refs/heads/{branch}"
1010 submodule-recursive: "{submodule-recursive}"
1011 submodule-timeout: "{submodule-timeout}"
1012 submodule-disable: "{submodule-disable}"
1013 choosing-strategy: default
1014 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1017 - github-pull-request:
1018 trigger-phrase: "^(recheck|reverify)$"
1019 only-trigger-phrase: false
1020 status-context: "PyPI Release Verify"
1023 white-list-target-branches:
1025 included-regions: "{obj:github_included_regions}"
1028 name: "{project-name}-pypi-release-merge-{stream}"
1029 id: gerrit-pypi-release-merge
1030 <<: *lf_python_common
1031 # yamllint disable-line rule:key-duplicates
1033 <<: *lf_pypi_release_common
1034 <<: *lf_pypi_release_merge_builders
1036 gerrit_release_triggers:
1037 - change-merged-event
1040 - lf-infra-gerrit-scm:
1041 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1042 git-url: "{git-url}"
1043 refspec: "$GERRIT_REFSPEC"
1044 branch: "$GERRIT_BRANCH"
1045 submodule-recursive: "{submodule-recursive}"
1046 submodule-timeout: "{submodule-timeout}"
1047 submodule-disable: "{submodule-disable}"
1048 choosing-strategy: gerrit
1052 server-name: "{gerrit-server-name}"
1053 trigger-on: "{obj:gerrit_release_triggers}"
1055 - project-compare-type: "ANT"
1056 project-pattern: "{project}"
1058 - branch-compare-type: "ANT"
1059 branch-pattern: "**"
1060 file-paths: "{obj:gerrit_trigger_file_paths}"
1063 name: "{project-name}-pypi-release-merge-{stream}"
1064 id: github-pypi-release-merge
1065 <<: *lf_python_common
1066 # yamllint disable-line rule:key-duplicates
1068 <<: *lf_pypi_release_common
1069 <<: *lf_pypi_release_merge_builders
1073 url: "{github-url}/{github-org}/{project}"
1076 - lf-infra-github-scm:
1077 url: "{git-clone-url}{github-org}/{project}"
1079 branch: "refs/heads/{branch}"
1080 submodule-recursive: "{submodule-recursive}"
1081 submodule-timeout: "{submodule-timeout}"
1082 submodule-disable: "{submodule-disable}"
1083 choosing-strategy: default
1084 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1087 - github-pull-request:
1088 trigger-phrase: "^(remerge)$"
1089 only-trigger-phrase: false
1090 status-context: "PyPI Release Merge"
1093 white-list-target-branches:
1095 included-regions: "{obj:github_included_regions}"