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 <<: *lf_python_xc_clm
163 ######################
164 # Default parameters #
165 ######################
168 - comment-added-contains-event:
169 comment-contains-value: '^Patch Set\s+\d+:\s+run-clm\s*$'
171 #####################
172 # Job Configuration #
173 #####################
176 - lf-infra-gerrit-scm:
177 jenkins-ssh-credential: "{jenkins-ssh-credential}"
179 refspec: "$GERRIT_REFSPEC"
180 branch: "$GERRIT_BRANCH"
181 submodule-recursive: "{submodule-recursive}"
182 submodule-timeout: "{submodule-timeout}"
183 submodule-disable: "{submodule-disable}"
184 choosing-strategy: default
187 # Build weekly on Saturdays
190 server-name: "{gerrit-server-name}"
191 trigger-on: "{obj:gerrit_clm_triggers}"
193 - project-compare-type: ANT
194 project-pattern: "{project}"
196 - branch-compare-type: ANT
197 branch-pattern: "**/{branch}"
198 file-paths: "{obj:gerrit_trigger_file_paths}"
206 name: "{project-name}-python-clm-{stream}"
207 id: github-python-xc-clm
208 <<: *lf_python_common
209 <<: *lf_python_xc_clm
212 - lf-infra-properties:
213 build-days-to-keep: "{build-days-to-keep}"
215 url: "{github-url}/{github-org}/{project}"
218 - lf-infra-github-scm:
219 url: "{git-clone-url}{github-org}/{project}"
221 branch: "refs/heads/{branch}"
222 submodule-recursive: "{submodule-recursive}"
223 submodule-timeout: "{submodule-timeout}"
224 submodule-disable: "{submodule-disable}"
225 choosing-strategy: default
226 jenkins-ssh-credential: "{jenkins-ssh-credential}"
229 # Build weekly on Saturdays
231 - github-pull-request:
232 trigger-phrase: "^run-clm$"
233 only-trigger-phrase: false
234 status-context: "CLM"
237 white-list-target-branches:
239 included-regions: "{obj:github_included_regions}"
241 #########################
242 # Python Sonar with Tox #
243 #########################
245 - lf_tox_sonar: &lf_tox_sonar
248 ######################
249 # Default parameters #
250 ######################
252 branch: master # Sonar should always be run on master branch
253 build-days-to-keep: 7
255 cron: "H H * * *" # run daily
257 git-url: "$GIT_URL/$PROJECT"
258 github-url: "https://github.com"
259 java-version: openjdk8
260 mvn-global-settings: global-settings
262 mvn-settings: "{mvn-settings}"
265 pre-build-script: "# pre-build script goes here"
266 python-version: python3
267 sonar-mvn-goal: "sonar:sonar"
269 sonarcloud-project-key: ""
270 sonarcloud-project-organization: ""
271 sonarcloud-api-token: ""
273 submodule-recursive: true
274 submodule-timeout: 10
275 submodule-disable: false
279 gerrit_trigger_file_paths:
280 - compare-type: REG_EXP
283 # github_included_regions MUST match gerrit_trigger_file_paths
284 github_included_regions:
287 #####################
288 # Job Configuration #
289 #####################
291 disabled: "{disable-job}"
294 - lf-infra-parameters:
298 - lf-infra-tox-parameters:
300 tox-envs: "{tox-envs}"
302 name: ARCHIVE_ARTIFACTS
303 default: "{archive-artifacts}"
304 description: Artifacts to archive to the logs server.
307 # Sets an env var for shell scripts to be able to call the dynamically
308 # installed maven without having to calculate the path themselves.
309 # yamllint disable-line rule:line-length
310 default: "/w/tools/hudson.tasks.Maven_MavenInstallation/{mvn-version}/bin/mvn"
311 description: "Maven selector to be used by shell scripts"
313 name: SONAR_MAVEN_GOAL
314 default: "{sonar-mvn-goal}"
316 Maven goals to pass to the Sonar call. Typically sonar:sonar
317 however to use a specific version of the sonar-maven-plugin we
318 can call "org.codehaus.mojo:sonar-maven-plugin:3.3.0.603:sonar".
322 - lf-infra-tox-install:
323 python-version: "{python-version}"
324 - shell: "{pre-build-script}"
326 parallel: "{parallel}"
327 - lf-provide-maven-settings:
328 global-settings-file: "{mvn-global-settings}"
329 settings-file: "{mvn-settings}"
332 condition-kind: boolean-expression
333 condition-expression: "{sonarcloud}"
335 - shell: echo 'Using SonarCloud'
336 - lf-infra-maven-sonarcloud:
337 java-version: "{java-version}"
338 mvn-goals: "{mvn-goals}"
339 mvn-settings: "{mvn-settings}"
340 mvn-version: "{mvn-version}"
341 sonarcloud-project-key: "{sonarcloud-project-key}"
342 # yamllint disable-line rule:line-length
343 sonarcloud-project-organization: "{sonarcloud-project-organization}"
344 sonarcloud-api-token: "{sonarcloud-api-token}"
349 condition-kind: boolean-expression
350 condition-expression: "{sonarcloud}"
352 - shell: echo 'Using SonarQube'
353 - lf-infra-maven-sonar:
354 java-version: "{java-version}"
355 mvn-goals: "{mvn-goals}"
356 mvn-settings: "{mvn-settings}"
357 mvn-version: "{mvn-version}"
363 name: "{project-name}-tox-sonar"
365 <<: *lf_python_common
368 ######################
369 # Default parameters #
370 ######################
372 gerrit_sonar_triggers:
373 - comment-added-contains-event:
374 comment-contains-value: '^Patch Set\s+\d+:\s+run-sonar\s*$'
376 #####################
377 # Job Configuration #
378 #####################
381 - lf-infra-gerrit-scm:
382 jenkins-ssh-credential: "{jenkins-ssh-credential}"
384 refspec: $GERRIT_REFSPEC
385 branch: $GERRIT_BRANCH
386 submodule-recursive: "{submodule-recursive}"
387 submodule-timeout: "{submodule-timeout}"
388 submodule-disable: "{submodule-disable}"
389 choosing-strategy: default
392 - timed: "{obj:cron}"
394 server-name: "{gerrit-server-name}"
395 trigger-on: "{obj:gerrit_sonar_triggers}"
397 - project-compare-type: "ANT"
398 project-pattern: "{project}"
400 - branch-compare-type: "ANT"
401 branch-pattern: "**/{branch}"
402 file-paths: "{obj:gerrit_trigger_file_paths}"
410 name: "{project-name}-tox-sonar"
412 <<: *lf_python_common
416 - lf-infra-properties:
417 build-days-to-keep: "{build-days-to-keep}"
419 url: "{github-url}/{github-org}/{project}"
422 - lf-infra-github-scm:
423 url: "{git-clone-url}{github-org}/{project}"
424 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
426 submodule-recursive: "{submodule-recursive}"
427 submodule-timeout: "{submodule-timeout}"
428 submodule-disable: "{submodule-disable}"
429 choosing-strategy: default
430 jenkins-ssh-credential: "{jenkins-ssh-credential}"
433 - github-pull-request:
434 trigger-phrase: "^run-sonar$"
435 only-trigger-phrase: false
436 status-context: "Python Sonar"
439 white-list-target-branches:
441 included-regions: "{obj:github_included_regions}"
447 - lf_tox_common: &lf_tox_common
450 ######################
451 # Default parameters #
452 ######################
455 build-days-to-keep: 7
458 git-url: "$GIT_URL/$GERRIT_PROJECT"
459 github-url: "https://github.com"
461 pre-build-script: "# pre-build script goes here"
462 python-version: python3
464 submodule-recursive: true
465 submodule-timeout: 10
466 submodule-disable: false
470 gerrit_trigger_file_paths:
471 - compare-type: REG_EXP
474 # github_included_regions MUST match gerrit_trigger_file_paths
475 github_included_regions:
478 #####################
479 # Job Configuration #
480 #####################
482 project-type: freestyle
485 disabled: "{disable-job}"
488 - lf-infra-properties:
489 build-days-to-keep: "{build-days-to-keep}"
492 - lf-infra-parameters:
496 - lf-infra-tox-parameters:
498 tox-envs: "{tox-envs}"
502 build-timeout: "{build-timeout}"
503 jenkins-ssh-credential: "{jenkins-ssh-credential}"
507 - lf-infra-tox-install:
508 python-version: "{python-version}"
509 - shell: "{pre-build-script}"
511 parallel: "{parallel}"
517 # Python projects typically use tox to run testing.
518 name: "{project-name}-tox-verify-{stream}"
519 id: gerrit-tox-verify
522 ######################
523 # Default parameters #
524 ######################
526 gerrit-skip-vote: false
527 gerrit_verify_triggers:
528 - patchset-created-event:
530 exclude-trivial-rebase: false
531 exclude-no-code-change: false
532 - draft-published-event
533 - comment-added-contains-event:
534 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
536 #####################
537 # Job Configuration #
538 #####################
541 - lf-infra-gerrit-scm:
542 jenkins-ssh-credential: "{jenkins-ssh-credential}"
544 refspec: "$GERRIT_REFSPEC"
545 branch: "$GERRIT_BRANCH"
546 submodule-recursive: "{submodule-recursive}"
547 submodule-timeout: "{submodule-timeout}"
548 submodule-disable: "{submodule-disable}"
549 choosing-strategy: gerrit
553 server-name: "{gerrit-server-name}"
554 trigger-on: "{obj:gerrit_verify_triggers}"
556 - project-compare-type: ANT
557 project-pattern: "{project}"
559 - branch-compare-type: ANT
560 branch-pattern: "**/{branch}"
561 file-paths: "{obj:gerrit_trigger_file_paths}"
563 successful: "{gerrit-skip-vote}"
564 failed: "{gerrit-skip-vote}"
565 unstable: "{gerrit-skip-vote}"
566 notbuilt: "{gerrit-skip-vote}"
569 # Python projects typically use tox to run testing.
570 name: "{project-name}-tox-verify-{stream}"
571 id: github-tox-verify
575 - lf-infra-properties:
576 build-days-to-keep: "{build-days-to-keep}"
578 url: "{github-url}/{github-org}/{project}"
581 - lf-infra-github-scm:
582 url: "{git-clone-url}{github-org}/{project}"
583 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
585 submodule-recursive: "{submodule-recursive}"
586 submodule-timeout: "{submodule-timeout}"
587 submodule-disable: "{submodule-disable}"
588 choosing-strategy: default
589 jenkins-ssh-credential: "{jenkins-ssh-credential}"
592 - github-pull-request:
593 trigger-phrase: "^(recheck|reverify)$"
594 only-trigger-phrase: false
595 status-context: "Tox Verify"
598 white-list-target-branches:
600 included-regions: "{obj:github_included_regions}"
603 # Run tox after merge of gerrit change set
604 name: "{project-name}-tox-merge-{stream}"
608 ######################
609 # Default parameters #
610 ######################
612 gerrit_merge_triggers:
613 - change-merged-event
614 - comment-added-contains-event:
615 comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
617 #####################
618 # Job Configuration #
619 #####################
622 - lf-infra-gerrit-scm:
623 jenkins-ssh-credential: "{jenkins-ssh-credential}"
625 refspec: "$GERRIT_REFSPEC"
626 branch: "$GERRIT_BRANCH"
627 submodule-recursive: "{submodule-recursive}"
628 submodule-timeout: "{submodule-timeout}"
629 submodule-disable: "{submodule-disable}"
630 choosing-strategy: gerrit
634 server-name: "{gerrit-server-name}"
635 trigger-on: "{obj:gerrit_merge_triggers}"
637 - project-compare-type: ANT
638 project-pattern: "{project}"
640 - branch-compare-type: ANT
641 branch-pattern: "**/{branch}"
642 file-paths: "{obj:gerrit_trigger_file_paths}"
645 # Run tox after merge of github pull request
646 name: "{project-name}-tox-merge-{stream}"
651 - lf-infra-properties:
652 build-days-to-keep: "{build-days-to-keep}"
654 url: "{github-url}/{github-org}/{project}"
657 - lf-infra-github-scm:
658 url: "{git-clone-url}{github-org}/{project}"
660 branch: "refs/heads/{branch}"
661 submodule-recursive: "{submodule-recursive}"
662 submodule-timeout: "{submodule-timeout}"
663 submodule-disable: "{submodule-disable}"
664 choosing-strategy: default
665 jenkins-ssh-credential: "{jenkins-ssh-credential}"
668 - github-pull-request:
669 trigger-phrase: "^remerge$"
670 only-trigger-phrase: true
671 status-context: "Tox Merge"
676 white-list: "{obj:github_pr_whitelist}"
677 admin-list: "{obj:github_pr_admin_list}"
678 white-list-target-branches:
680 included-regions: "{obj:github_included_regions}"
686 - lf_pypi_common: &lf_pypi_common
689 ######################
690 # Default parameters #
691 ######################
696 build-days-to-keep: 7
700 git-url: "$GIT_URL/$GERRIT_PROJECT"
701 github-url: "https://github.com"
703 pre-build-script: "# pre-build script goes here"
704 python-version: python3
706 submodule-disable: false
707 submodule-recursive: true
708 submodule-timeout: 10
712 gerrit_trigger_file_paths:
716 # github_included_regions MUST match gerrit_trigger_file_paths
717 github_included_regions:
720 #####################
721 # Job Configuration #
722 #####################
724 project-type: freestyle
726 disabled: "{disable-job}"
729 - lf-infra-properties:
730 build-days-to-keep: "{build-days-to-keep}"
733 - lf-infra-parameters:
737 - lf-infra-tox-parameters:
739 tox-envs: "{tox-envs}"
741 name: BUILD_BDIST_WHEEL
742 default: "{dist-binary}"
743 description: "Set to True to build a wheel"
748 If DRY_RUN is enabled artifacts are not published.
753 - lf_pypi_common_wrappers: &lf_pypi_common_wrappers
754 name: lf-pypi-common-wrappers
758 build-timeout: "{build-timeout}"
759 jenkins-ssh-credential: "{jenkins-ssh-credential}"
761 - lf_pypi_release_wrappers: &lf_pypi_release_wrappers
762 name: lf-pypi-release-wrappers
766 build-timeout: "{build-timeout}"
767 jenkins-ssh-credential: "{jenkins-ssh-release-credential}"
769 - lf_pypi_verify_builders: &lf_pypi_verify_builders
770 name: lf-pypi-verify-builders
774 - lf-infra-tox-install:
775 python-version: "{python-version}"
776 - shell: "{pre-build-script}"
778 parallel: "{parallel}"
779 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
781 - lf_pypi_merge_builders: &lf_pypi_merge_builders
782 name: lf-pypi-merge-builders
786 - lf-infra-tox-install:
787 python-version: "{python-version}"
788 - shell: "{pre-build-script}"
790 parallel: "{parallel}"
791 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
792 - lf-infra-pypi-upload:
793 pypi-repo: "{pypi-repo}"
795 - lf_pypi_release_verify_builders: &lf_pypi_release_verify_builders
796 name: lf-pypi-release-verify-builders
800 - lf-infra-tox-install:
801 python-version: "{python-version}"
802 - shell: "{pre-build-script}"
804 parallel: "{parallel}"
805 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
806 - lf-infra-pypi-tag-release
808 - lf_pypi_release_merge_builders: &lf_pypi_release_merge_builders
809 name: lf-pypi-release-merge-builders
813 - lf-infra-tox-install:
814 python-version: "{python-version}"
815 - shell: "{pre-build-script}"
817 parallel: "{parallel}"
818 - shell: !include-raw-escape: ../shell/pypi-dist-build.sh
819 - lf-infra-pypi-tag-release
820 - lf-infra-pypi-upload:
821 pypi-repo: "{pypi-repo}"
824 name: "{project-name}-pypi-verify-{stream}"
825 id: gerrit-pypi-verify
827 <<: *lf_pypi_common_wrappers
828 <<: *lf_pypi_verify_builders
831 - lf-infra-gerrit-scm:
832 jenkins-ssh-credential: "{jenkins-ssh-credential}"
834 refspec: "$GERRIT_REFSPEC"
835 branch: "$GERRIT_BRANCH"
836 submodule-recursive: "{submodule-recursive}"
837 submodule-timeout: "{submodule-timeout}"
838 submodule-disable: "{submodule-disable}"
839 choosing-strategy: gerrit
843 server-name: "{gerrit-server-name}"
845 - patchset-created-event:
847 exclude-trivial-rebase: false
848 exclude-no-code-change: false
849 - draft-published-event
850 - comment-added-contains-event:
851 # yamllint disable-line rule:line-length
852 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
854 - project-compare-type: ANT
855 project-pattern: "{project}"
857 - branch-compare-type: ANT
858 branch-pattern: "**/{branch}"
859 file-paths: "{obj:gerrit_trigger_file_paths}"
862 name: "{project-name}-pypi-verify-{stream}"
863 id: github-pypi-verify
865 <<: *lf_pypi_common_wrappers
866 <<: *lf_pypi_verify_builders
870 url: "{github-url}/{github-org}/{project}"
873 - lf-infra-github-scm:
874 url: "{git-clone-url}{github-org}/{project}"
875 refspec: "+refs/pull/*:refs/remotes/origin/pr/*"
877 submodule-recursive: "{submodule-recursive}"
878 submodule-timeout: "{submodule-timeout}"
879 submodule-disable: "{submodule-disable}"
880 choosing-strategy: default
881 jenkins-ssh-credential: "{jenkins-ssh-credential}"
884 - github-pull-request:
885 trigger-phrase: "^(recheck|reverify)$"
886 only-trigger-phrase: false
887 status-context: "PyPI Verify"
890 white-list-target-branches:
892 included-regions: "{obj:github_included_regions}"
895 name: "{project-name}-pypi-merge-{stream}"
896 id: gerrit-pypi-merge
898 <<: *lf_pypi_common_wrappers
899 <<: *lf_pypi_merge_builders
905 - lf-infra-gerrit-scm:
906 jenkins-ssh-credential: "{jenkins-ssh-credential}"
908 refspec: "$GERRIT_REFSPEC"
909 branch: "$GERRIT_BRANCH"
910 submodule-recursive: "{submodule-recursive}"
911 submodule-timeout: "{submodule-timeout}"
912 submodule-disable: "{submodule-disable}"
913 choosing-strategy: gerrit
916 - timed: "{obj:cron}"
918 server-name: "{gerrit-server-name}"
920 - change-merged-event
921 - comment-added-contains-event:
922 comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
924 - project-compare-type: ANT
925 project-pattern: "{project}"
927 - branch-compare-type: ANT
928 branch-pattern: "**/{branch}"
929 file-paths: "{obj:gerrit_trigger_file_paths}"
932 name: "{project-name}-pypi-merge-{stream}"
933 id: github-pypi-merge
935 <<: *lf_pypi_common_wrappers
936 <<: *lf_pypi_merge_builders
943 url: "{github-url}/{github-org}/{project}"
946 - lf-infra-github-scm:
947 url: "{git-clone-url}{github-org}/{project}"
949 branch: "refs/heads/{branch}"
950 submodule-recursive: "{submodule-recursive}"
951 submodule-timeout: "{submodule-timeout}"
952 submodule-disable: "{submodule-disable}"
953 choosing-strategy: default
954 jenkins-ssh-credential: "{jenkins-ssh-credential}"
957 - timed: "{obj:cron}"
958 - github-pull-request:
959 trigger-phrase: "^remerge$"
960 only-trigger-phrase: false
961 status-context: "Merge"
966 white-list: "{obj:github_pr_whitelist}"
967 admin-list: "{obj:github_pr_admin_list}"
968 white-list-target-branches:
970 included-regions: "{obj:github_included_regions}"
972 - lf_pypi_release_common: &lf_pypi_release_common
973 name: lf-pypi-release-common
977 use-release-file: true
979 # define once and use twice; jobs MUST NOT override
980 gerrit_release_trigger_file_paths:
981 - compare-type: REG_EXP
982 pattern: '(releases\/.*\.yaml|\.releases\/.*\.yaml)'
984 # yamllint disable-line rule:line-length
985 # github_release_included_regions MUST match gerrit_release_trigger_file_paths
986 github_release_included_regions:
987 - 'releases\/.*\.yaml'
988 - '.releases\/.*\.yaml'
991 - lf-infra-parameters:
995 - lf-infra-tox-parameters:
997 tox-envs: "{tox-envs}"
999 name: BUILD_BDIST_WHEEL
1000 default: "{dist-binary}"
1001 description: "Set to True to build a wheel"
1005 description: "This is the version, example: 1.0.0"
1007 name: USE_RELEASE_FILE
1008 default: "{use-release-file}"
1009 description: "Set to False for job built with parameters"
1014 If DRY_RUN is enabled artifacts are not published.
1017 name: "{project-name}-pypi-release-verify-{stream}"
1018 id: gerrit-pypi-release-verify
1020 <<: *lf_pypi_common_wrappers
1021 <<: *lf_pypi_release_common
1022 <<: *lf_pypi_release_verify_builders
1025 - lf-infra-gerrit-scm:
1026 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1027 git-url: "{git-url}"
1028 refspec: "$GERRIT_REFSPEC"
1029 branch: "$GERRIT_BRANCH"
1030 submodule-recursive: "{submodule-recursive}"
1031 submodule-timeout: "{submodule-timeout}"
1032 submodule-disable: "{submodule-disable}"
1033 choosing-strategy: gerrit
1037 server-name: "{gerrit-server-name}"
1039 - patchset-created-event:
1040 exclude-drafts: true
1041 exclude-trivial-rebase: false
1042 exclude-no-code-change: false
1043 - draft-published-event
1044 - comment-added-contains-event:
1045 # yamllint disable-line rule:line-length
1046 comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
1048 - project-compare-type: "ANT"
1049 project-pattern: "{project}"
1051 - branch-compare-type: ANT
1052 branch-pattern: "**/{branch}"
1053 file-paths: "{obj:gerrit_release_trigger_file_paths}"
1056 name: "{project-name}-pypi-release-verify-{stream}"
1057 id: github-pypi-release-verify
1059 <<: *lf_pypi_common_wrappers
1060 <<: *lf_pypi_release_common
1061 <<: *lf_pypi_release_verify_builders
1065 url: "{github-url}/{github-org}/{project}"
1068 - lf-infra-github-scm:
1069 url: "{git-clone-url}{github-org}/{project}"
1071 branch: "refs/heads/{branch}"
1072 submodule-recursive: "{submodule-recursive}"
1073 submodule-timeout: "{submodule-timeout}"
1074 submodule-disable: "{submodule-disable}"
1075 choosing-strategy: default
1076 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1079 - github-pull-request:
1080 trigger-phrase: "^(recheck|reverify)$"
1081 only-trigger-phrase: false
1082 status-context: "PyPI Release Verify"
1085 white-list-target-branches:
1087 included-regions: "{obj:github_release_included_regions}"
1090 name: "{project-name}-pypi-release-merge-{stream}"
1091 id: gerrit-pypi-release-merge
1093 <<: *lf_pypi_release_wrappers
1094 <<: *lf_pypi_release_common
1095 <<: *lf_pypi_release_merge_builders
1098 - lf-infra-gerrit-scm:
1099 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1100 git-url: "{git-url}"
1101 refspec: "$GERRIT_REFSPEC"
1102 branch: "$GERRIT_BRANCH"
1103 submodule-recursive: "{submodule-recursive}"
1104 submodule-timeout: "{submodule-timeout}"
1105 submodule-disable: "{submodule-disable}"
1106 choosing-strategy: gerrit
1110 server-name: "{gerrit-server-name}"
1112 - change-merged-event
1113 - comment-added-contains-event:
1114 comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
1116 - project-compare-type: "ANT"
1117 project-pattern: "{project}"
1119 - branch-compare-type: ANT
1120 branch-pattern: "**/{branch}"
1121 file-paths: "{obj:gerrit_release_trigger_file_paths}"
1124 name: "{project-name}-pypi-release-merge-{stream}"
1125 id: github-pypi-release-merge
1127 <<: *lf_pypi_release_wrappers
1128 <<: *lf_pypi_release_common
1129 <<: *lf_pypi_release_merge_builders
1133 url: "{github-url}/{github-org}/{project}"
1136 - lf-infra-github-scm:
1137 url: "{git-clone-url}{github-org}/{project}"
1139 branch: "refs/heads/{branch}"
1140 submodule-recursive: "{submodule-recursive}"
1141 submodule-timeout: "{submodule-timeout}"
1142 submodule-disable: "{submodule-disable}"
1143 choosing-strategy: default
1144 jenkins-ssh-credential: "{jenkins-ssh-credential}"
1147 - github-pull-request:
1148 trigger-phrase: "^(remerge)$"
1149 only-trigger-phrase: false
1150 status-context: "PyPI Release Merge"
1153 white-list-target-branches:
1155 included-regions: "{obj:github_release_included_regions}"