2 # Job definition Anchors
3 - pypi_job_boiler_plate: &pypi_job_boiler_plate
4 name: pypi_job_boiler_plate
10 gerrit_merge_triggers:
12 - comment-added-contains-event:
13 comment-contains-value: pypi-remerge$
15 gerrit_release_trigger:
16 - comment-added-contains-event:
17 comment-contains-value: pypi-release$
19 gerrit_trigger_file_paths:
27 project-type: freestyle
31 - lf-infra-parameters:
35 lftools-version: '{lftools-version}'
36 - lf-infra-tox-parameters:
38 tox-envs: '{tox-envs}'
42 - lf-infra-properties:
43 build-days-to-keep: '{build-days-to-keep}'
46 - lf-infra-gerrit-scm:
47 jenkins-ssh-credential: '{jenkins-ssh-credential}'
48 git-url: '$GIT_URL/$PROJECT'
49 refspec: '$GERRIT_REFSPEC'
50 branch: '$GERRIT_BRANCH'
51 submodule-recursive: true
52 choosing-strategy: default
56 build-timeout: '{build-timeout}'
57 jenkins-ssh-credential: '{jenkins-ssh-credential}'
63 name: '{project-name}-python-staging-{stream}'
65 # Job template for PyPI staging jobs
68 <<: *pypi_job_boiler_plate
72 server-name: '{gerrit-server-name}'
73 trigger-on: '{obj:gerrit_merge_triggers}'
75 - project-compare-type: ANT
76 project-pattern: '{project}'
78 - branch-compare-type: ANT
79 branch-pattern: '**/{branch}'
80 file-paths: '{obj:gerrit_trigger_file_paths}'
83 - lf-infra-tox-install:
84 python-version: '{python-version}'
85 - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
86 - config-file-provider:
89 target: '$HOME/.pypirc'
91 !include-raw-escape: ../shell/pypi-dist-build.sh
97 name: '{project-name}-python-release-{stream}'
99 # Job template for PyPI release jobs
101 <<: *pypi_job_boiler_plate
105 server-name: '{gerrit-server-name}'
106 trigger-on: '{obj:gerrit_release_trigger}'
108 - project-compare-type: ANT
109 project-pattern: '{project}'
111 - branch-compare-type: ANT
112 branch-pattern: '**/{branch}'
113 file-paths: '{obj:gerrit_trigger_file_paths}'
116 - lf-infra-tox-install:
117 python-version: '{python-version}'
118 - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
119 - config-file-provider:
122 target: '$HOME/.pypirc'
124 !include-raw-escape: ../shell/pypi-dist-build.sh
130 name: '{project-name}-{subproject}-python-staging-{stream}'
132 # Job template for PyPI staging jobs
135 <<: *pypi_job_boiler_plate
139 server-name: '{gerrit-server-name}'
140 trigger-on: '{obj:gerrit_merge_triggers}'
142 - project-compare-type: ANT
143 project-pattern: '{project}'
145 - branch-compare-type: ANT
146 branch-pattern: '**/{branch}'
147 file-paths: '{obj:gerrit_trigger_file_paths}'
150 - lf-infra-tox-install:
151 python-version: '{python-version}'
152 - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
153 - config-file-provider:
156 target: '$HOME/.pypirc'
158 !include-raw-escape: ../shell/pypi-dist-build.sh
164 name: '{project-name}-{subproject}-python-release-{stream}'
166 # Job template for PyPI release jobs
168 <<: *pypi_job_boiler_plate
172 server-name: '{gerrit-server-name}'
173 trigger-on: '{obj:gerrit_release_trigger}'
175 - project-compare-type: ANT
176 project-pattern: '{project}'
178 - branch-compare-type: ANT
179 branch-pattern: '**/{branch}'
180 file-paths: '{obj:gerrit_trigger_file_paths}'
183 - lf-infra-tox-install:
184 python-version: '{python-version}'
185 - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
186 - config-file-provider:
189 target: '$HOME/.pypirc'
191 !include-raw-escape: ../shell/pypi-dist-build.sh