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 disabled: "{disable-job}"
684 gerrit_trigger_file_paths:
688 # github_included_regions MUST match gerrit_trigger_file_paths
689 github_included_regions:
693 - lf-infra-parameters:
697 - lf-infra-tox-parameters:
699 tox-envs: "{tox-envs}"
701 name: BUILD_BDIST_WHEEL
702 default: "{dist-binary}"
703 description: "Set to True to build a wheel"
705 - lf_pypi_verify_builders: &lf_pypi_verify_builders
706 name: lf-pypi-verify-builders
710 - lf-infra-tox-install:
711 python-version: "{python-version}"
712 - shell: "{pre-build-script}"
714 parallel: "{parallel}"
715 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
717 - lf_pypi_merge_builders: &lf_pypi_merge_builders
718 name: lf-pypi-merge-builders
722 - lf-infra-tox-install:
723 python-version: "{python-version}"
724 - shell: "{pre-build-script}"
726 parallel: "{parallel}"
727 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
728 - lf-infra-pypi-upload:
729 pypi-repo: "{pypi-repo}"
731 - lf_pypi_release_verify_builders: &lf_pypi_release_verify_builders
732 name: lf-pypi-release-verify-builders
736 - lf-infra-tox-install:
737 python-version: "{python-version}"
738 - shell: "{pre-build-script}"
740 parallel: "{parallel}"
741 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
742 - lf-infra-pypi-tag-release
744 - lf_pypi_release_merge_builders: &lf_pypi_release_merge_builders
745 name: lf-pypi-release-merge-builders
749 - lf-infra-tox-install:
750 python-version: "{python-version}"
751 - shell: "{pre-build-script}"
753 parallel: "{parallel}"
754 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
755 - lf-infra-pypi-tag-release
756 - lf-infra-pypi-upload:
757 pypi-repo: "{pypi-repo}"
760 name: "{project-name}-pypi-verify-{stream}"
761 id: gerrit-pypi-verify
762 <<: *lf_python_common
763 # yamllint disable-line rule:key-duplicates
765 <<: *lf_pypi_verify_builders
767 gerrit_verify_triggers:
768 - patchset-created-event:
770 exclude-trivial-rebase: false
771 exclude-no-code-change: false
772 - draft-published-event
773 - comment-added-contains-event:
774 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
777 - lf-infra-gerrit-scm:
778 jenkins-ssh-credential: "{jenkins-ssh-credential}"
780 refspec: "$GERRIT_REFSPEC"
781 branch: "$GERRIT_BRANCH"
782 submodule-recursive: "{submodule-recursive}"
783 submodule-timeout: "{submodule-timeout}"
784 submodule-disable: "{submodule-disable}"
785 choosing-strategy: gerrit
789 server-name: "{gerrit-server-name}"
790 trigger-on: "{obj:gerrit_verify_triggers}"
792 - project-compare-type: ANT
793 project-pattern: "{project}"
795 - branch-compare-type: ANT
796 branch-pattern: "**/{branch}"
797 file-paths: "{obj:gerrit_trigger_file_paths}"
800 name: "{project-name}-pypi-verify-{stream}"
801 id: github-pypi-verify
802 <<: *lf_python_common
803 # yamllint disable-line rule:key-duplicates
805 <<: *lf_pypi_verify_builders
809 url: "{github-url}/{github-org}/{project}"
812 - lf-infra-github-scm:
813 url: "{git-clone-url}{github-org}/{project}"
814 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
816 submodule-recursive: "{submodule-recursive}"
817 submodule-timeout: "{submodule-timeout}"
818 submodule-disable: "{submodule-disable}"
819 choosing-strategy: default
820 jenkins-ssh-credential: "{jenkins-ssh-credential}"
823 - github-pull-request:
824 trigger-phrase: "^(recheck|reverify)$"
825 only-trigger-phrase: false
826 status-context: "PyPI Verify"
829 white-list-target-branches:
831 included-regions: "{obj:github_included_regions}"
834 name: "{project-name}-pypi-merge-{stream}"
835 id: gerrit-pypi-merge
836 <<: *lf_python_common
837 # yamllint disable-line rule:key-duplicates
839 <<: *lf_pypi_merge_builders
844 gerrit_merge_triggers:
845 - change-merged-event
846 - comment-added-contains-event:
847 comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
850 - lf-infra-gerrit-scm:
851 jenkins-ssh-credential: "{jenkins-ssh-credential}"
853 refspec: "$GERRIT_REFSPEC"
854 branch: "$GERRIT_BRANCH"
855 submodule-recursive: "{submodule-recursive}"
856 submodule-timeout: "{submodule-timeout}"
857 submodule-disable: "{submodule-disable}"
858 choosing-strategy: gerrit
861 - timed: "{obj:cron}"
863 server-name: "{gerrit-server-name}"
864 trigger-on: "{obj:gerrit_merge_triggers}"
866 - project-compare-type: ANT
867 project-pattern: "{project}"
869 - branch-compare-type: ANT
870 branch-pattern: "**/{branch}"
871 file-paths: "{obj:gerrit_trigger_file_paths}"
874 name: "{project-name}-pypi-merge-{stream}"
875 id: github-pypi-merge
876 <<: *lf_python_common
877 # yamllint disable-line rule:key-duplicates
879 <<: *lf_pypi_merge_builders
886 url: "{github-url}/{github-org}/{project}"
889 - lf-infra-github-scm:
890 url: "{git-clone-url}{github-org}/{project}"
892 branch: "refs/heads/{branch}"
893 submodule-recursive: "{submodule-recursive}"
894 submodule-timeout: "{submodule-timeout}"
895 submodule-disable: "{submodule-disable}"
896 choosing-strategy: default
897 jenkins-ssh-credential: "{jenkins-ssh-credential}"
900 - timed: "{obj:cron}"
901 - github-pull-request:
902 trigger-phrase: "^remerge$"
903 only-trigger-phrase: false
904 status-context: "Merge"
909 white-list: "{obj:github_pr_whitelist}"
910 admin-list: "{obj:github_pr_admin_list}"
911 white-list-target-branches:
913 included-regions: "{obj:github_included_regions}"
915 - lf_pypi_release_common: &lf_pypi_release_common
916 name: lf-pypi-release-common
920 use-release-file: true
922 # define once and use twice; jobs MUST NOT override
923 gerrit_release_trigger_file_paths:
924 - compare-type: REG_EXP
925 pattern: '(releases\/.*\.yaml|\.releases\/.*\.yaml)'
927 # github_release_included_regions MUST match gerrit_release_trigger_file_paths
928 github_release_included_regions:
929 - 'releases\/.*\.yaml'
930 - '.releases\/.*\.yaml'
933 - lf-infra-parameters:
937 - lf-infra-tox-parameters:
939 tox-envs: "{tox-envs}"
941 name: BUILD_BDIST_WHEEL
942 default: "{dist-binary}"
943 description: "Set to True to build a wheel"
947 description: "This is the version, example: 1.0.0"
949 name: USE_RELEASE_FILE
950 default: "{use-release-file}"
951 description: "Set to False for job built with parameters"
956 If DRY_RUN is enabled artifacts are not published.
959 name: "{project-name}-pypi-release-verify-{stream}"
960 id: gerrit-pypi-release-verify
961 <<: *lf_python_common
962 # yamllint disable-line rule:key-duplicates
964 <<: *lf_pypi_release_common
965 <<: *lf_pypi_release_verify_builders
967 gerrit_verify_triggers:
968 - patchset-created-event:
970 exclude-trivial-rebase: false
971 exclude-no-code-change: false
972 - draft-published-event
973 - comment-added-contains-event:
974 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
977 - lf-infra-gerrit-scm:
978 jenkins-ssh-credential: "{jenkins-ssh-credential}"
980 refspec: "$GERRIT_REFSPEC"
981 branch: "$GERRIT_BRANCH"
982 submodule-recursive: "{submodule-recursive}"
983 submodule-timeout: "{submodule-timeout}"
984 submodule-disable: "{submodule-disable}"
985 choosing-strategy: gerrit
989 server-name: "{gerrit-server-name}"
990 trigger-on: "{obj:gerrit_verify_triggers}"
992 - project-compare-type: "ANT"
993 project-pattern: "{project}"
995 - branch-compare-type: "ANT"
997 file-paths: "{obj:gerrit_release_trigger_file_paths}"
1000 name: "{project-name}-pypi-release-verify-{stream}"
1001 id: github-pypi-release-verify
1002 <<: *lf_python_common
1003 # yamllint disable-line rule:key-duplicates
1005 <<: *lf_pypi_release_common
1006 <<: *lf_pypi_release_verify_builders
1010 url: "{github-url}/{github-org}/{project}"
1013 - lf-infra-github-scm:
1014 url: "{git-clone-url}{github-org}/{project}"
1016 branch: "refs/heads/{branch}"
1017 submodule-recursive: "{submodule-recursive}"
1018 submodule-timeout: "{submodule-timeout}"
1019 submodule-disable: "{submodule-disable}"
1020 choosing-strategy: default
1021 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1024 - github-pull-request:
1025 trigger-phrase: "^(recheck|reverify)$"
1026 only-trigger-phrase: false
1027 status-context: "PyPI Release Verify"
1030 white-list-target-branches:
1032 included-regions: "{obj:github_release_included_regions}"
1035 name: "{project-name}-pypi-release-merge-{stream}"
1036 id: gerrit-pypi-release-merge
1037 <<: *lf_python_common
1038 # yamllint disable-line rule:key-duplicates
1040 <<: *lf_pypi_release_common
1041 <<: *lf_pypi_release_merge_builders
1043 gerrit_release_triggers:
1044 - change-merged-event
1047 - lf-infra-gerrit-scm:
1048 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1049 git-url: "{git-url}"
1050 refspec: "$GERRIT_REFSPEC"
1051 branch: "$GERRIT_BRANCH"
1052 submodule-recursive: "{submodule-recursive}"
1053 submodule-timeout: "{submodule-timeout}"
1054 submodule-disable: "{submodule-disable}"
1055 choosing-strategy: gerrit
1059 server-name: "{gerrit-server-name}"
1060 trigger-on: "{obj:gerrit_release_triggers}"
1062 - project-compare-type: "ANT"
1063 project-pattern: "{project}"
1065 - branch-compare-type: "ANT"
1066 branch-pattern: "**"
1067 file-paths: "{obj:gerrit_release_trigger_file_paths}"
1070 name: "{project-name}-pypi-release-merge-{stream}"
1071 id: github-pypi-release-merge
1072 <<: *lf_python_common
1073 # yamllint disable-line rule:key-duplicates
1075 <<: *lf_pypi_release_common
1076 <<: *lf_pypi_release_merge_builders
1080 url: "{github-url}/{github-org}/{project}"
1083 - lf-infra-github-scm:
1084 url: "{git-clone-url}{github-org}/{project}"
1086 branch: "refs/heads/{branch}"
1087 submodule-recursive: "{submodule-recursive}"
1088 submodule-timeout: "{submodule-timeout}"
1089 submodule-disable: "{submodule-disable}"
1090 choosing-strategy: default
1091 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1094 - github-pull-request:
1095 trigger-phrase: "^(remerge)$"
1096 only-trigger-phrase: false
1097 status-context: "PyPI Release Merge"
1100 white-list-target-branches:
1102 included-regions: "{obj:github_release_included_regions}"