Refactor: Cleanup for pre-commit
[ci-management.git] / jjb / onap-jjb / onap-pypi-template.yaml
1 ---
2 # Job definition Anchors
3 - _pypi_job_boiler_plate: &pypi_job_boiler_plate
4     name: pypi_job_boiler_plate
5
6     #####################
7     #   Job Variables   #
8     #####################
9
10     gerrit_merge_triggers:
11       - change-merged-event
12       - comment-added-contains-event:
13           comment-contains-value: pypi-remerge$
14
15     gerrit_release_trigger:
16       - comment-added-contains-event:
17           comment-contains-value: pypi-release$
18
19     gerrit_trigger_file_paths:
20       - compare-type: ANT
21         pattern: "**"
22
23     submodule-disable: false
24     submodule-timeout: 10
25
26     #####################
27     # Job Configuration #
28     #####################
29
30     project-type: freestyle
31     node: "{build-node}"
32
33     parameters:
34       - lf-infra-parameters:
35           project: "{project}"
36           branch: "{branch}"
37           stream: "{stream}"
38           lftools-version: "{lftools-version}"
39       - lf-infra-tox-parameters:
40           tox-dir: "{tox-dir}"
41           tox-envs: "{tox-envs}"
42
43     properties:
44       - lf-infra-properties:
45           build-days-to-keep: "{build-days-to-keep}"
46
47     scm:
48       - lf-infra-gerrit-scm:
49           jenkins-ssh-credential: "{jenkins-ssh-credential}"
50           git-url: "$GIT_URL/$PROJECT"
51           refspec: "$GERRIT_REFSPEC"
52           branch: "$GERRIT_BRANCH"
53           submodule-recursive: true
54           submodule-timeout: "{submodule-timeout}"
55           submodule-disable: "{submodule-disable}"
56           choosing-strategy: default
57
58     wrappers:
59       - lf-infra-wrappers:
60           build-timeout: "{build-timeout}"
61           jenkins-ssh-credential: "{jenkins-ssh-credential}"
62
63     publishers:
64       - lf-infra-publish
65
66 - job-template:
67     name: "{project-name}-python-staging-{stream}"
68
69     # Job template for PyPI staging jobs
70     # Daily Builds
71
72     <<: *pypi_job_boiler_plate
73
74     triggers:
75       - gerrit:
76           server-name: "{gerrit-server-name}"
77           trigger-on: "{obj:gerrit_merge_triggers}"
78           projects:
79             - project-compare-type: ANT
80               project-pattern: "{project}"
81               branches:
82                 - branch-compare-type: ANT
83                   branch-pattern: "**/{branch}"
84               file-paths: "{obj:gerrit_trigger_file_paths}"
85
86     builders:
87       - lf-infra-tox-install:
88           python-version: "{python-version}"
89       - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
90       - config-file-provider:
91           files:
92             - file-id: pypirc
93               target: "$HOME/.pypirc"
94       - shell: !include-raw-escape: ../../shell/pypi-dist-build.sh
95
96       - publish-pypi:
97           pypi-server: staging
98
99 - job-template:
100     name: "{project-name}-python-release-{stream}"
101
102     # Job template for PyPI release jobs
103
104     <<: *pypi_job_boiler_plate
105
106     triggers:
107       - gerrit:
108           server-name: "{gerrit-server-name}"
109           trigger-on: "{obj:gerrit_release_trigger}"
110           projects:
111             - project-compare-type: ANT
112               project-pattern: "{project}"
113               branches:
114                 - branch-compare-type: ANT
115                   branch-pattern: "**/{branch}"
116               file-paths: "{obj:gerrit_trigger_file_paths}"
117
118     builders:
119       - lf-infra-tox-install:
120           python-version: "{python-version}"
121       - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
122       - config-file-provider:
123           files:
124             - file-id: pypirc
125               target: "$HOME/.pypirc"
126       - shell: !include-raw-escape: ../../shell/pypi-dist-build.sh
127
128       - publish-pypi:
129           pypi-server: release
130
131 - job-template:
132     name: "{project-name}-{subproject}-python-staging-{stream}"
133
134     # Job template for PyPI staging jobs
135     # Daily Builds
136
137     <<: *pypi_job_boiler_plate
138
139     triggers:
140       - gerrit:
141           server-name: "{gerrit-server-name}"
142           trigger-on: "{obj:gerrit_merge_triggers}"
143           projects:
144             - project-compare-type: ANT
145               project-pattern: "{project}"
146               branches:
147                 - branch-compare-type: ANT
148                   branch-pattern: "**/{branch}"
149               file-paths: "{obj:gerrit_trigger_file_paths}"
150
151     builders:
152       - lf-infra-tox-install:
153           python-version: "{python-version}"
154       - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
155       - config-file-provider:
156           files:
157             - file-id: pypirc
158               target: "$HOME/.pypirc"
159       - shell: !include-raw-escape: ../../shell/pypi-dist-build.sh
160
161       - publish-pypi:
162           pypi-server: staging
163
164 - job-template:
165     name: "{project-name}-{subproject}-python-release-{stream}"
166
167     # Job template for PyPI release jobs
168
169     <<: *pypi_job_boiler_plate
170
171     triggers:
172       - gerrit:
173           server-name: "{gerrit-server-name}"
174           trigger-on: "{obj:gerrit_release_trigger}"
175           projects:
176             - project-compare-type: ANT
177               project-pattern: "{project}"
178               branches:
179                 - branch-compare-type: ANT
180                   branch-pattern: "**/{branch}"
181               file-paths: "{obj:gerrit_trigger_file_paths}"
182
183     builders:
184       - lf-infra-tox-install:
185           python-version: "{python-version}"
186       - shell: !include-raw-escape: ../global-jjb/shell/tox-run.sh
187       - config-file-provider:
188           files:
189             - file-id: pypirc
190               target: "$HOME/.pypirc"
191       - shell: !include-raw-escape: ../../shell/pypi-dist-build.sh
192
193       - publish-pypi:
194           pypi-server: release