blob: 6e91f27dbbcf4def0b0346a67ef8d08a8236475f [file] [log] [blame]
Dmitrii Kabanovb908f302017-08-11 00:21:59 -07001parameters:
2 jenkins:
3 client:
4 view:
5 Validation:
6 enabled: true
7 type: ListView
8 include_regex: "validate.*"
9 job:
10 validate_openstack:
11 type: workflow-scm
12 name: validate-openstack
13 display_name: "Validate - Openstack"
14 discard:
15 build:
Jakub Josef1a828962018-01-23 12:33:34 +010016 keep_num: 50
Dmitrii Kabanovb908f302017-08-11 00:21:59 -070017 artifact:
Jakub Josef1a828962018-01-23 12:33:34 +010018 keep_num: 50
Dmitrii Kabanovb908f302017-08-11 00:21:59 -070019 concurrent: false
20 scm:
21 type: git
22 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
Jakub Josef7938b532017-12-12 18:02:03 +010023 branch: "${_param:jenkins_pipelines_branch}"
Dmitrii Kabanovb908f302017-08-11 00:21:59 -070024 credentials: "gerrit"
25 script: validate-cloud.groovy
Dmitrii Kabanovb908f302017-08-11 00:21:59 -070026 param:
Oleg Basovf465e462019-03-05 23:54:47 +010027 ACCUMULATE_RESULTS:
28 type: boolean
29 default: 'true'
30 description: If chosen then previous build results will be used in the current build
31 JOB_TIMEOUT:
32 type: string
33 default: "3"
34 description: Job timeout in hours
35 RUN_RALLY_TESTS:
36 type: boolean
37 default: 'true'
38 description: |
39 If chosen, Rally tests will be executed. Please set K8S_RALLY='true' if you plan
40 to test K8S cluster with Rally framework. Special K8S plugin has to be utilized
41 RUN_TEMPEST_TESTS:
42 type: boolean
43 default: 'false'
44 description: If chosen then Tempest tests will be executed
45 RUN_SPT_TESTS:
46 type: boolean
47 default: 'false'
48 description: If chosen, SPT tests will be executed
49 TEST_IMAGE:
50 type: string
51 default: 'xrally/xrally-openstack:latest'
52 description: |
53 Docker image to use with required test set. Please use
54 'xrally/xrally-openstack:latest' - for Rally tests
55 "${_param:mcp_docker_registry}/mirantis/oss/qa-tools" -
56 for SPT/Tempest environment setup
57 TARGET_NODE:
58 type: string
59 default: ""
60 description: Target node where this job will be executed from
Dmitrii Kabanovb908f302017-08-11 00:21:59 -070061 SALT_MASTER_URL:
62 type: string
Sam Stoelinga1539f3c2017-09-25 17:05:40 -070063 default: "${_param:jenkins_salt_api_url}"
64 description: Full Salt API address [e.g. https://10.10.10.2:6969]
Dmitrii Kabanovb908f302017-08-11 00:21:59 -070065 SALT_MASTER_CREDENTIALS:
66 type: string
67 default: "salt"
Tetiana Korchakd644b352017-08-25 10:30:57 -070068 description: Credentials to the Salt API
Oleg Basovf465e462019-03-05 23:54:47 +010069 VALIDATE_PARAMS:
70 type: text
71 default: |
72 ---
73 rally:
74 # Name of availability zone
75 AVAILABILITY_ZONE: 'nova'
76 # External(floating) network name
77 FLOATING_NETWORK: 'public'
78 # Rally base image for glance
79 RALLY_IMAGE: 'cirros'
80 # Flavor name for Rally scenarios
81 RALLY_FLAVOR: 'm1.tiny'
82 # Git repository with configuration files for Rally
83 RALLY_CONFIG_REPO: 'https://github.com/Mirantis/scale-scenarios'
84 # Git branch which will be used during the checkout
85 RALLY_CONFIG_BRANCH: 'master'
86 # Git repository with Rally plugins
87 RALLY_PLUGINS_REPO: 'https://github.com/Mirantis/rally-plugins'
88 # Git branch which will be used during the checkout
89 RALLY_PLUGINS_BRANCH: 'master'
90 # Rally scenarios directory or file with scenarios
91 RALLY_SCENARIOS: 'rally-scenarios-light'
92 # Stacklight Rally scenarios directory or file with scenarios
93 RALLY_SL_SCENARIOS: 'rally-stacklight'
94 # Rally scenarios arguments file
95 RALLY_TASK_ARGS_FILE: 'job-params-light.yaml'
96 # Rally-compliant DB connection string for long-term results storing
97 RALLY_DB_CONN_STRING: ''
98 # List of tags for marking Rally tasks. Used as filter for Rally trends
99 RALLY_TAGS:
100 # - 'platform=openstack'
101 # - 'env=your_env_name'
102 # - 'cmp=2'
103 # Generate rally trends report. Requires an external DB
104 RALLY_TRENDS: 'false'
105 # If chosen K8S Rally plugin will be used to test K8S cluster
106 K8S_RALLY: 'false'
107 # If chosen then Stacklight Rally test will be executed
108 STACKLIGHT_RALLY: 'false'
109 # Path for reports outside docker image
110 REPORT_DIR: '/root/qa_results'
111 # Scenarios names/dirs to skip
112 SKIP_LIST: ''
113 tempest:
114 # Set of Tempest tests to run (smoke,full)
115 TEMPEST_TEST_SET: 'smoke'
116 # Git repository with configuration files for Tempest
117 TEMPEST_CONFIG_REPO: ''
118 # Git branch which will be used during the checkout
119 TEMPEST_CONFIG_BRANCH: ''
120 # description: Git repository with Tempest
121 TEMPEST_REPO: ''
122 # description: Version of Tempest (tag, branch or commit)
123 TEMPEST_VERSION: ''
124 # If chosen, run HTML report will be generated
125 GENERATE_REPORT: 'false'
126 spt:
127 # Name of availability zone
128 AVAILABILITY_ZONE: 'nova'
129 # External(floating) network name
130 FLOATING_NETWORK: 'public'
131 # Username that is used to ssh between cluster nodes
132 SPT_SSH_USER: 'root'
133 # Image that is used for network-VM-to-VM-iperf-tests tests
134 SPT_IMAGE: ''
135 # Username that is used to ssh to SPT_IMAGE
136 SPT_IMAGE_USER: ''
137 # Flavor name for SPT_IMAGE (make sure you have required flavor created)
138 SPT_FLAVOR: ''
139 # If chosen, run HTML report will be generated
140 GENERATE_REPORT: 'false'
Oleksii Zhurbad97ac812017-10-05 14:18:50 -0500141 cvp-sanity:
142 type: workflow-scm
Oleksii Zhurba07076052017-11-08 12:59:25 -0600143 name: cvp-sanity
Oleksii Zhurbad97ac812017-10-05 14:18:50 -0500144 display_name: "CVP - Sanity checks"
145 discard:
146 build:
147 keep_num: 20
148 artifact:
149 keep_num: 20
150 concurrent: false
151 scm:
152 type: git
153 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
Jakub Josef7938b532017-12-12 18:02:03 +0100154 branch: "${_param:jenkins_pipelines_branch}"
Oleksii Zhurbad97ac812017-10-05 14:18:50 -0500155 credentials: "gerrit"
Oleksii Zhurbac0af3f02018-06-14 13:47:54 -0500156 script: cvp-runner.groovy
Oleksii Zhurbad97ac812017-10-05 14:18:50 -0500157 param:
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500158 IMAGE:
159 type: string
azvyagintsev33afffc2019-02-22 14:20:20 +0200160 default: ${_param:docker_image_cvp_sanity_checks}
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500161 description: Docker image with tests and all pip dependecies to use for testing
Oleksii Zhurbad97ac812017-10-05 14:18:50 -0500162 SALT_MASTER_URL:
163 type: string
Oleksii Zhurba07076052017-11-08 12:59:25 -0600164 default: "${_param:jenkins_salt_api_url}"
Oleksii Zhurbad97ac812017-10-05 14:18:50 -0500165 description: Full Salt API address [e.g. https://10.10.10.2:6969]
166 SALT_MASTER_CREDENTIALS:
167 type: string
168 default: "salt"
Hanna Arhipova718fbf62019-01-24 18:50:02 +0200169 EXTRA_PARAMS:
170 type: text
171 default: "---"
172 description: YAML context with additional parameters
Oleksii Zhurba852a1fa2017-12-12 16:27:18 -0600173 cvp-func:
174 type: workflow-scm
175 name: cvp-func
176 display_name: "CVP - Functional tests"
177 discard:
178 build:
179 keep_num: 20
180 artifact:
181 keep_num: 20
182 concurrent: false
183 scm:
184 type: git
185 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
Oleksii Zhurba0edf9e52018-10-24 19:00:41 -0500186 branch: "${_param:jenkins_pipelines_branch}"
Oleksii Zhurba852a1fa2017-12-12 16:27:18 -0600187 credentials: "gerrit"
188 script: cvp-func.groovy
189 param:
190 DEBUG_MODE:
191 type: boolean
192 default: 'false'
193 description: Enable if you need to keep container after the test and debug
194 SKIP_LIST_PATH:
195 type: string
196 default: "cvp-configuration/tempest/skip-list.yaml"
197 description: Path to skip list in container
198 SALT_MASTER_URL:
199 type: string
200 default: "${_param:jenkins_salt_api_url}"
201 description: Full Salt API address [e.g. https://10.10.10.2:6969]
202 SALT_MASTER_CREDENTIALS:
203 type: string
204 default: "salt"
205 description: Credentials to the Salt API
206 TEST_IMAGE:
207 type: string
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500208 default: "xrally/xrally-openstack:0.10.1"
Oleksii Zhurba852a1fa2017-12-12 16:27:18 -0600209 description: Docker image to use for running Rally/Tempest
210 TARGET_NODE:
211 type: string
mkraynov16a69cb2018-08-01 15:39:16 +0400212 default: ""
Oleksii Zhurba852a1fa2017-12-12 16:27:18 -0600213 description: Node where container with Tempest will be run
214 PROXY:
215 type: string
216 default: ""
Oleksii Zhurba462124e2018-08-14 10:20:26 -0500217 description: "Proxy address to use to access the Internet. For offline mode, use \"offline\" value."
Oleksii Zhurba852a1fa2017-12-12 16:27:18 -0600218 TEMPEST_TEST_PATTERN:
219 type: string
220 default: "set=smoke"
Oleksii Zhurba7bb22762018-03-21 15:52:38 -0500221 description: Use set=smoke (or identity,full...) or just test name
Oleksii Zhurba852a1fa2017-12-12 16:27:18 -0600222 TEMPEST_ENDPOINT_TYPE:
223 type: choice
224 choices:
225 - internalURL
226 - adminURL
227 - publicURL
228 description: Openstack endpoint type to use during test run
229 TEMPEST_REPO:
230 type: string
231 default: "https://github.com/openstack/tempest"
232 description: URL to Tempest repo (local or remote) or path to tempest folder in container
233 TOOLS_REPO:
234 type: string
235 default: "https://github.com/Mirantis/cvp-configuration"
236 description: URL of repo where testing tools, scenarios, configs are located.
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600237 cvp-ha:
238 type: workflow-scm
239 name: cvp-ha
240 display_name: "CVP - HA tests"
241 discard:
242 build:
243 keep_num: 20
244 artifact:
245 keep_num: 20
246 concurrent: false
247 scm:
248 type: git
249 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
Oleksii Zhurba0edf9e52018-10-24 19:00:41 -0500250 branch: "${_param:jenkins_pipelines_branch}"
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600251 credentials: "gerrit"
252 script: cvp-ha.groovy
253 param:
254 SALT_MASTER_URL:
255 type: string
256 default: "${_param:jenkins_salt_api_url}"
257 description: Full Salt API address [e.g. https://10.10.10.2:6969]
258 SALT_MASTER_CREDENTIALS:
259 type: string
260 default: "salt"
261 description: Credentials to the Salt API
262 TEMPEST_TARGET_NODE:
263 type: string
mkraynov16a69cb2018-08-01 15:39:16 +0400264 default: ""
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600265 description: Node where container with tempest will be run
266 TEST_IMAGE:
267 type: string
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500268 default: "xrally/xrally-openstack:0.10.1"
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600269 description: Docker image to use for running Rally/Tempest
270 TARGET_NODES:
271 type: string
272 default: "ctl*"
273 description: Nodes to test
274 DEBUG_MODE:
275 type: boolean
276 default: 'false'
277 description: If you need to debug (keep container after test), please enabled this
278 RETRY_CHECK_STATUS:
279 type: string
280 default: "200"
281 description: If you have any problems with timeouts (e.g. while waiting for node to be up/down), please increase this value
282 SKIP_LIST_PATH:
283 type: string
Oleksii Zhurba7bb22762018-03-21 15:52:38 -0500284 default: "cvp-configuration/tempest/skip-list.yaml"
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600285 description: path to skip-list file inside container
286 PROXY:
287 type: string
288 default: ""
Oleksii Zhurba462124e2018-08-14 10:20:26 -0500289 description: "Proxy address to use to access the Internet. For offline mode, use \"offline\" value."
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600290 TEMPEST_TEST_PATTERN:
291 type: string
292 default: "set=smoke"
Oleksii Zhurba7bb22762018-03-21 15:52:38 -0500293 description: Use set=smoke (or identity,full...) or just test name
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600294 MANUAL_CONFIRMATION:
295 type: boolean
296 default: 'false'
297 description: Ask for confirmation before doing something destructive (reboot/shutdown node)
298 TEMPEST_REPO:
299 type: string
300 default: "https://github.com/openstack/tempest"
301 description: Can be repo url (local or remote) or path to folder (inside container) with Tempest
302 TOOLS_REPO:
303 type: string
Oleksii Zhurba7bb22762018-03-21 15:52:38 -0500304 default: "https://github.com/Mirantis/cvp-configuration"
Oleksii Zhurbaf59df9f2017-12-07 14:38:49 -0600305 description: URL of repo where testing tools, scenarios, configs are located.
Oleksii Zhurba535032c2017-12-12 16:31:57 -0600306 cvp-perf:
307 type: workflow-scm
308 name: cvp-perf
309 display_name: "CVP - Performance tests"
310 discard:
311 build:
312 keep_num: 20
313 artifact:
314 keep_num: 20
315 concurrent: false
316 scm:
317 type: git
318 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
Oleksii Zhurba0edf9e52018-10-24 19:00:41 -0500319 branch: "${_param:jenkins_pipelines_branch}"
Oleksii Zhurba535032c2017-12-12 16:31:57 -0600320 credentials: "gerrit"
321 script: cvp-perf.groovy
322 param:
323 DEBUG_MODE:
324 type: boolean
325 default: 'false'
326 description: Enable if you need to keep container after the test and debug
327 RALLY_SCENARIO_FILE:
328 type: string
329 default: "cvp-configuration/rally/rally_scenarios.json"
330 description: Path to scenario file in container
331 TEST_IMAGE:
332 type: string
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500333 default: "xrally/xrally-openstack:0.10.1"
Oleksii Zhurba535032c2017-12-12 16:31:57 -0600334 description: Docker image to use for running Rally/Tempest
335 SALT_MASTER_URL:
336 type: string
337 default: "${_param:jenkins_salt_api_url}"
338 description: Full Salt API address [e.g. https://10.10.10.2:6969]
339 SALT_MASTER_CREDENTIALS:
340 type: string
341 default: "salt"
342 description: Credentials to the Salt API
343 TARGET_NODE:
344 type: string
mkraynov16a69cb2018-08-01 15:39:16 +0400345 default: ""
Oleksii Zhurba535032c2017-12-12 16:31:57 -0600346 description: Node where docker container with Rally will be run
347 TOOLS_REPO:
348 type: string
349 default: "https://github.com/Mirantis/cvp-configuration"
Oleksii Zhurba462124e2018-08-14 10:20:26 -0500350 description: URL of repo where testing tools, scenarios, configs are located.
Oleksii Zhurba535032c2017-12-12 16:31:57 -0600351 PROXY:
352 type: string
353 default: ""
Oleksii Zhurba462124e2018-08-14 10:20:26 -0500354 description: "Proxy address to use to access the Internet. For offline mode, use \"offline\" value."
Oleksii Zhurba68ad5042018-02-16 20:13:07 -0600355 cvp-stacklight:
356 type: workflow-scm
357 name: cvp-stacklight
358 display_name: "CVP - Stacklight tests"
359 discard:
360 build:
361 keep_num: 20
362 artifact:
363 keep_num: 20
364 concurrent: false
365 scm:
366 type: git
367 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
368 branch: "${_param:jenkins_pipelines_branch}"
369 credentials: "gerrit"
Hanna Arhipova8285e612019-02-14 13:45:17 +0200370 script: cvp-runner.groovy
Oleksii Zhurba68ad5042018-02-16 20:13:07 -0600371 param:
Hanna Arhipova8285e612019-02-14 13:45:17 +0200372 IMAGE:
373 type: string
374 default: ${_param:docker_image_cvp_sanity_checks}
375 description: Docker image with tests and all pip dependecies to use for testing
Oleksii Zhurba68ad5042018-02-16 20:13:07 -0600376 SALT_MASTER_URL:
377 type: string
378 default: "${_param:jenkins_salt_api_url}"
379 description: Full Salt API address [e.g. https://10.10.10.2:6969]
380 SALT_MASTER_CREDENTIALS:
381 type: string
382 default: "salt"
Hanna Arhipova8285e612019-02-14 13:45:17 +0200383 EXTRA_PARAMS:
384 type: text
385 default: |
386 envs:
387 - SL_AUTOCONF=True
388 description: YAML context with additional parameters
Oleksii Zhurbae729cf72018-06-13 11:29:46 -0500389 cvp-spt:
390 type: workflow-scm
391 name: cvp-spt
392 display_name: "CVP - Simplified Performance Tests (SPT)"
393 discard:
394 build:
395 keep_num: 20
396 artifact:
397 keep_num: 20
398 concurrent: false
399 scm:
400 type: git
401 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
402 branch: "${_param:jenkins_pipelines_branch}"
403 credentials: "gerrit"
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500404 script: cvp-runner.groovy
Oleksii Zhurbae729cf72018-06-13 11:29:46 -0500405 param:
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500406 IMAGE:
407 type: string
azvyagintsev33afffc2019-02-22 14:20:20 +0200408 default: ${_param:docker_image_cvp_sanity_checks}
Oleksii Zhurba26848a62018-09-03 21:29:11 -0500409 description: Docker image with tests and all pip dependecies to use for testing
Oleksii Zhurbae729cf72018-06-13 11:29:46 -0500410 SALT_MASTER_URL:
411 type: string
412 default: "${_param:jenkins_salt_api_url}"
413 description: Full Salt API address [e.g. https://10.10.10.2:6969]
414 SALT_MASTER_CREDENTIALS:
415 type: string
416 default: "salt"
Hanna Arhipova718fbf62019-01-24 18:50:02 +0200417 EXTRA_PARAMS:
418 type: text
419 default: "---"
420 description: YAML context with additional parameters
Oleg Basove8143de2019-01-29 01:36:06 +0100421 cvp-shaker:
422 type: workflow-scm
423 name: cvp-shaker
424 display_name: "CVP - Shaker network tests"
425 discard:
426 build:
427 keep_num: 20
428 artifact:
429 keep_num: 20
430 concurrent: false
431 scm:
432 type: git
433 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
434 branch: "${_param:jenkins_pipelines_branch}"
435 credentials: "gerrit"
436 script: cvp-shaker.groovy
437 param:
438 IMAGE:
439 type: string
Oleg Basov06938fe2019-04-01 20:41:24 +0200440 default: "${_param:docker_image_cvp_shaker_checks}"
Oleg Basove8143de2019-01-29 01:36:06 +0100441 description: Docker image to use for running Shaker.
442 SALT_MASTER_URL:
443 type: string
444 default: "${_param:jenkins_salt_api_url}"
445 description: Full Salt API address [e.g. https://10.10.10.2:6969].
446 SALT_MASTER_CREDENTIALS:
447 type: string
448 default: "salt"
449 description: Credentials to the Salt API.
450 SHAKER_PARAMS:
451 type: text
452 default: |
453 ---
454 SHAKER_SERVER_ENDPOINT: '10.13.0.15:5999'
455 SHAKER_SCENARIOS: 'scenarios/essential'
456 SKIP_LIST: ''
Oleg Basovc3602a72019-02-15 15:49:09 +0100457 MATRIX: ''
Oleg Basove8143de2019-01-29 01:36:06 +0100458 image_builder:
459 # - SHAKER_FLAVOR_DISK=4
460 # - SHAKER_FLAVOR_RAM=512
461 # - SHAKER_FLAVOR_VCPUS=1
462 # - SHAKER_IMAGE_BUILDER_MODE='dib'
463 shaker:
464 # - SHAKER_AGENT_JOIN_TIMEOUT=300
465 # - SHAKER_AGENT_LOSS_TIMEOUT=120
466 # - SCENARIO_AVAILABILITY_ZONE='nova,internal'
467 # - SCENARIO_COMPUTE_NODES=2
468 # - SHAKER_EXTERNAL_NET='public'
469 description: |
470 YAML context with parameters for running Shaker tests, where
471 "SHAKER_SERVER_ENDPOINT" - Address for Shaker server connections (host:port). Should be accessible
472 from tenant's VM network (usually equals to public address of cicd node)
473 "SHAKER_SCENARIOS" - Path to shaker scenarios in the cvp-shaker docker image
474 (can be directory or specific file). Main categories are
475 scenarios/essential/l2
476 scenarios/essential/l3
477 scenarios/additional/cross_az
478 scenarios/additional/external
479 scenarios/additional/qos
Oleg Basovc3602a72019-02-15 15:49:09 +0100480 "MATRIX" - Set the matrix of extra parameters for the scenario. The value is specified in JSON format.
481 To override a scenario duration one may provide "{time: 10}", or to override list of hosts:
482 "{host:[ping.online.net, iperf.eenet.ee]}". When several parameters are overridden all combinations are
483 tested. It is a required field for some of external-category scenarios when the host name with iperf3
484 server needs to be provided as a command-line parameter, e.g. "{host: 10.13.100.4}".
Oleg Basove8143de2019-01-29 01:36:06 +0100485 "SKIP_LIST" - Comma-separated list of Shaker scenarios to skip, directories or files inside scenarios/
486 of cvp-shaker, e.g. "dense_l2.yaml,full_l2.yaml,l3"
487 "image_builder" - shaker-image-builder env variables
488 SHAKER_FLAVOR_DISK=4
489 SHAKER_FLAVOR_RAM=512
490 SHAKER_FLAVOR_VCPUS=1
491 SHAKER_IMAGE_BUILDER_MODE='dib'
492 "shaker" - main shaker runner env variables
493 SHAKER_AGENT_JOIN_TIMEOUT=300
494 SHAKER_AGENT_LOSS_TIMEOUT=120
495 SCENARIO_AVAILABILITY_ZONE='nova,internal'
496 SCENARIO_COMPUTE_NODES=2
497 SHAKER_EXTERNAL_NET='public'
498 For the more detailed description of the last two categories please refer to the shaker documentation
499 https://pyshaker.readthedocs.io/en/latest/tools.html