Ansible job definitions for OpenStack projects CI systems
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

project-templates.yaml 28KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120
  1. # Shared project-templates specific to the OpenStack Project
  2. - project-template:
  3. name: system-required
  4. description: |
  5. Jobs that *every* project in OpenStack CI should have by default.
  6. merge-check:
  7. jobs:
  8. - noop
  9. - project-template:
  10. name: noop-jobs
  11. description: |
  12. This template runs no jobs, it is needed if a project does not use
  13. any single job so that changes can get merged.
  14. Do not use this with projects that have jobs defined in the gate
  15. pipeline.
  16. check:
  17. jobs:
  18. - noop
  19. gate:
  20. jobs:
  21. - noop
  22. - project-template:
  23. name: build-openstack-sphinx-docs
  24. description: |
  25. Runs normal OpenStack PTI doc build without publication jobs.
  26. check:
  27. jobs:
  28. - build-openstack-sphinx-docs
  29. gate:
  30. jobs:
  31. - build-openstack-sphinx-docs
  32. - project-template:
  33. name: build-openstack-sphinx-docs-python3
  34. description: |
  35. Runs normal OpenStack PTI doc build without publication jobs.
  36. Builds the docs using Sphinx with Python3.
  37. check:
  38. jobs:
  39. - build-openstack-sphinx-docs:
  40. vars:
  41. sphinx_python: python3
  42. gate:
  43. jobs:
  44. - build-openstack-sphinx-docs:
  45. vars:
  46. sphinx_python: python3
  47. - project-template:
  48. name: publish-openstack-sphinx-docs
  49. description: |
  50. Runs normal OpenStack PTI doc build and publication jobs.
  51. check:
  52. jobs:
  53. - build-openstack-sphinx-docs
  54. gate:
  55. jobs:
  56. - build-openstack-sphinx-docs
  57. post:
  58. jobs:
  59. - publish-openstack-sphinx-docs
  60. - project-template:
  61. name: publish-openstack-sphinx-docs-python3
  62. description: |
  63. Runs normal OpenStack PTI doc build and publication jobs.
  64. Builds the docs using Sphinx with Python3.
  65. check:
  66. jobs:
  67. - build-openstack-sphinx-docs:
  68. vars:
  69. sphinx_python: python3
  70. gate:
  71. jobs:
  72. - build-openstack-sphinx-docs:
  73. vars:
  74. sphinx_python: python3
  75. post:
  76. jobs:
  77. - publish-openstack-sphinx-docs-python3
  78. - project-template:
  79. name: publish-openstack-sphinx-docs-infra
  80. description: |
  81. Runs normal OpenStack PTI build jobs and publishes to the Infra
  82. docs location.
  83. check:
  84. jobs:
  85. - build-sphinx-docs
  86. gate:
  87. jobs:
  88. - build-sphinx-docs
  89. post:
  90. jobs:
  91. - publish-openstack-sphinx-docs-infra
  92. - project-template:
  93. name: release-openstack-sphinx-docs-infra
  94. description: |
  95. Runs normal OpenStack PTI build jobs and publishes to the Infra
  96. docs location only on tagged releases.
  97. check:
  98. jobs:
  99. - build-sphinx-docs
  100. gate:
  101. jobs:
  102. - build-sphinx-docs
  103. release:
  104. jobs:
  105. - publish-openstack-sphinx-docs-infra
  106. - project-template:
  107. name: puppet-release-jobs
  108. check:
  109. jobs:
  110. - build-openstack-puppet-tarball
  111. gate:
  112. jobs:
  113. - build-openstack-puppet-tarball
  114. pre-release:
  115. jobs:
  116. - release-openstack-puppet
  117. - announce-release:
  118. dependencies:
  119. - release-openstack-puppet
  120. release:
  121. jobs:
  122. - release-openstack-puppet
  123. - announce-release:
  124. dependencies:
  125. - release-openstack-puppet
  126. post:
  127. jobs:
  128. - publish-openstack-puppet-branch-tarball
  129. - project-template:
  130. name: publish-to-pypi
  131. description: |
  132. Publish a Python package to PyPI, then send release announcement
  133. emails and propose updates to upper-constraints as needed.
  134. pre-release:
  135. jobs:
  136. - release-openstack-python
  137. - announce-release:
  138. dependencies:
  139. - release-openstack-python
  140. - propose-update-constraints:
  141. dependencies:
  142. - release-openstack-python
  143. release:
  144. jobs:
  145. - release-openstack-python
  146. - announce-release:
  147. dependencies:
  148. - release-openstack-python
  149. - propose-update-constraints:
  150. dependencies:
  151. - release-openstack-python
  152. - project-template:
  153. name: publish-to-pypi-python3
  154. description: |
  155. Publish a Python package to PyPI, then send release announcement
  156. emails and propose updates to upper-constraints as needed.
  157. pre-release:
  158. jobs:
  159. - release-openstack-python3
  160. - announce-release:
  161. dependencies:
  162. - release-openstack-python3
  163. - propose-update-constraints:
  164. dependencies:
  165. - release-openstack-python3
  166. release:
  167. jobs:
  168. - release-openstack-python3
  169. - announce-release:
  170. dependencies:
  171. - release-openstack-python3
  172. - propose-update-constraints:
  173. dependencies:
  174. - release-openstack-python3
  175. - project-template:
  176. name: publish-to-pypi-neutron
  177. description: |
  178. Publish a Python package to PyPI with neutron added to required-projects
  179. for the various networking projects that need that, then send release
  180. announcement emails and propose updates to upper-constraints as needed.
  181. pre-release:
  182. jobs:
  183. - release-openstack-python:
  184. required-projects:
  185. - openstack/neutron
  186. - announce-release:
  187. dependencies:
  188. - release-openstack-python
  189. - propose-update-constraints:
  190. dependencies:
  191. - release-openstack-python
  192. release:
  193. jobs:
  194. - release-openstack-python:
  195. required-projects:
  196. - openstack/neutron
  197. - announce-release:
  198. dependencies:
  199. - release-openstack-python
  200. - propose-update-constraints:
  201. dependencies:
  202. - release-openstack-python
  203. - project-template:
  204. name: publish-to-pypi-horizon
  205. description: |
  206. Publish a Python package to PyPI with horizon added to required-projects
  207. for the various dashboard projects that need that, then send release
  208. announcement emails and propose updates to upper-constraints as needed.
  209. pre-release:
  210. jobs:
  211. - release-openstack-python:
  212. required-projects:
  213. - openstack/horizon
  214. - announce-release:
  215. dependencies:
  216. - release-openstack-python
  217. - propose-update-constraints:
  218. dependencies:
  219. - release-openstack-python
  220. release:
  221. jobs:
  222. - release-openstack-python:
  223. required-projects:
  224. - openstack/horizon
  225. - announce-release:
  226. dependencies:
  227. - release-openstack-python
  228. - propose-update-constraints:
  229. dependencies:
  230. - release-openstack-python
  231. - project-template:
  232. name: publish-xstatic-to-pypi
  233. description: |
  234. Publish an XStatic Python package to PyPI, then send release announcement
  235. emails and propose updates to upper-constraints as needed.
  236. pre-release:
  237. jobs:
  238. - xstatic-check-version
  239. - release-openstack-python:
  240. dependencies:
  241. - xstatic-check-version
  242. - announce-release:
  243. dependencies:
  244. - release-openstack-python
  245. - propose-update-constraints:
  246. dependencies:
  247. - release-openstack-python
  248. release:
  249. jobs:
  250. - xstatic-check-version
  251. - release-openstack-python:
  252. dependencies:
  253. - xstatic-check-version
  254. - announce-release:
  255. dependencies:
  256. - release-openstack-python
  257. - propose-update-constraints:
  258. dependencies:
  259. - release-openstack-python
  260. - project-template:
  261. name: publish-to-pypi-quietly
  262. description: |
  263. Publish a Python package to PyPI but do not send announce emails or
  264. propose upper-constraints updates.
  265. pre-release:
  266. jobs:
  267. - release-openstack-python
  268. release:
  269. jobs:
  270. - release-openstack-python
  271. - project-template:
  272. name: release-openstack-server
  273. description: |
  274. Release OpenStack server projects.
  275. pre-release:
  276. jobs:
  277. - release-openstack-python-without-pypi
  278. - announce-release:
  279. dependencies:
  280. - release-openstack-python-without-pypi
  281. release:
  282. jobs:
  283. - release-openstack-python-without-pypi
  284. - announce-release:
  285. dependencies:
  286. - release-openstack-python-without-pypi
  287. - project-template:
  288. name: release-notes-jobs
  289. check:
  290. jobs:
  291. - build-openstack-releasenotes
  292. gate:
  293. jobs:
  294. - build-openstack-releasenotes
  295. post:
  296. jobs:
  297. - publish-openstack-releasenotes
  298. tag:
  299. jobs:
  300. - publish-openstack-releasenotes
  301. - project-template:
  302. name: release-notes-jobs-python3
  303. description: |
  304. Runs the release notes jobs under python 3.
  305. check:
  306. jobs:
  307. - build-openstack-releasenotes:
  308. vars:
  309. sphinx_python: python3
  310. gate:
  311. jobs:
  312. - build-openstack-releasenotes:
  313. vars:
  314. sphinx_python: python3
  315. post:
  316. jobs:
  317. - publish-openstack-releasenotes-python3
  318. tag:
  319. jobs:
  320. - publish-openstack-releasenotes-python3
  321. - project-template:
  322. name: openstack-python-jobs
  323. check:
  324. jobs:
  325. - openstack-tox-pep8
  326. - openstack-tox-py27
  327. gate:
  328. jobs:
  329. - openstack-tox-pep8
  330. - openstack-tox-py27
  331. post:
  332. jobs:
  333. - publish-openstack-python-branch-tarball
  334. - project-template:
  335. name: openstack-python-jobs-horizon
  336. description: |
  337. The standard openstack-python-jobs but with horizon added as a
  338. required-projects. The dashboard projects currently need this
  339. due to how the tox_install.sh zuul-cloner's horizon for them.
  340. check:
  341. jobs:
  342. - openstack-tox-pep8:
  343. required-projects:
  344. - openstack/horizon
  345. - openstack-tox-py27:
  346. required-projects:
  347. - openstack/horizon
  348. gate:
  349. jobs:
  350. - openstack-tox-pep8:
  351. required-projects:
  352. - openstack/horizon
  353. - openstack-tox-py27:
  354. required-projects:
  355. - openstack/horizon
  356. post:
  357. jobs:
  358. - publish-openstack-python-branch-tarball:
  359. required-projects:
  360. - openstack/horizon
  361. - project-template:
  362. name: openstack-python-jobs-neutron
  363. description: |
  364. The standard openstack-python-jobs but with neutron added as a
  365. required-projects. The neutron stadium projects currently need this
  366. due to how the tox_install.sh zuul-cloner's neutron for them.
  367. check:
  368. jobs:
  369. - openstack-tox-pep8:
  370. required-projects:
  371. - openstack/neutron
  372. - openstack-tox-py27:
  373. required-projects:
  374. - openstack/neutron
  375. gate:
  376. jobs:
  377. - openstack-tox-pep8:
  378. required-projects:
  379. - openstack/neutron
  380. - openstack-tox-py27:
  381. required-projects:
  382. - openstack/neutron
  383. post:
  384. jobs:
  385. - publish-openstack-python-branch-tarball:
  386. required-projects:
  387. - openstack/neutron
  388. - project-template:
  389. name: openstack-python35-jobs
  390. check:
  391. jobs:
  392. - openstack-tox-py35
  393. gate:
  394. jobs:
  395. - openstack-tox-py35
  396. - project-template:
  397. name: openstack-python35-jobs-horizon
  398. description: |
  399. The standard openstack-python35-jobs but with horizon added as a
  400. required-projects. The dashboard projects currently need this
  401. due to how the tox_install.sh zuul-cloner's horizon for them.
  402. check:
  403. jobs:
  404. - openstack-tox-py35:
  405. required-projects:
  406. - openstack/horizon
  407. gate:
  408. jobs:
  409. - openstack-tox-py35:
  410. required-projects:
  411. - openstack/horizon
  412. - project-template:
  413. name: openstack-python35-jobs-neutron
  414. description: |
  415. The standard openstack-python35-jobs but with neutron added as a
  416. required-projects. The neutron stadium projects currently need this
  417. due to how the tox_install.sh zuul-cloner's neutron for them.
  418. check:
  419. jobs:
  420. - openstack-tox-py35:
  421. required-projects:
  422. - openstack/neutron
  423. gate:
  424. jobs:
  425. - openstack-tox-py35:
  426. required-projects:
  427. - openstack/neutron
  428. - project-template:
  429. name: openstack-python35-jobs-nonvoting
  430. check:
  431. jobs:
  432. - openstack-tox-py35:
  433. voting: false
  434. - project-template:
  435. name: openstack-python36-jobs
  436. check:
  437. jobs:
  438. - openstack-tox-py36
  439. gate:
  440. jobs:
  441. - openstack-tox-py36
  442. - project-template:
  443. name: openstack-python36-jobs-nonvoting
  444. check:
  445. jobs:
  446. - openstack-tox-py36:
  447. voting: false
  448. - project-template:
  449. name: openstack-python-jobs-no-constraints
  450. description: |
  451. Runs the OpenStack PTI jobs for python, but uses the versions of them
  452. that do not use constraints.
  453. check:
  454. jobs:
  455. - tox-pep8
  456. - tox-py27
  457. gate:
  458. jobs:
  459. - tox-pep8
  460. - tox-py27
  461. post:
  462. jobs:
  463. - publish-openstack-python-branch-tarball
  464. - project-template:
  465. name: openstack-python35-jobs-no-constraints
  466. description: |
  467. Runs the OpenStack PTI jobs for python3.5, but uses the versions of them
  468. that do not use constraints.
  469. check:
  470. jobs:
  471. - tox-py35
  472. gate:
  473. jobs:
  474. - tox-py35
  475. post:
  476. jobs:
  477. - publish-openstack-python-branch-tarball
  478. - project-template:
  479. name: openstack-pypy-jobs
  480. check:
  481. jobs:
  482. - openstack-tox-pypy
  483. gate:
  484. jobs:
  485. - openstack-tox-pypy
  486. - project-template:
  487. name: openstack-pypy-jobs-nonvoting
  488. check:
  489. jobs:
  490. - openstack-tox-pypy:
  491. voting: false
  492. - project-template:
  493. name: openstack-python-jobs-trusty
  494. check:
  495. jobs:
  496. - openstack-tox-pep8:
  497. nodeset: ubuntu-trusty
  498. - openstack-tox-py27:
  499. nodeset: ubuntu-trusty
  500. gate:
  501. jobs:
  502. - openstack-tox-pep8:
  503. nodeset: ubuntu-trusty
  504. - openstack-tox-py27:
  505. nodeset: ubuntu-trusty
  506. - project-template:
  507. name: docs-on-readthedocs
  508. description: |
  509. Runs normal OpenStack PTI build jobs but publishes to readthedocs
  510. instead of docs.openstack.org. This is intended for projects that are
  511. aiming to follow the PTI but are not official.
  512. check:
  513. jobs:
  514. - build-openstack-sphinx-docs
  515. gate:
  516. jobs:
  517. - build-openstack-sphinx-docs
  518. post:
  519. jobs:
  520. - trigger-readthedocs
  521. pre-release:
  522. jobs:
  523. - trigger-readthedocs
  524. release:
  525. jobs:
  526. - trigger-readthedocs
  527. - project-template:
  528. name: nodejs4-publish-to-npm
  529. post:
  530. jobs:
  531. - publish-openstack-javascript-tarball:
  532. vars:
  533. node_version: 4
  534. release:
  535. jobs:
  536. - release-openstack-javascript:
  537. vars:
  538. node_version: 4
  539. - announce-release:
  540. dependencies:
  541. - release-openstack-javascript
  542. - project-template:
  543. name: nodejs6-publish-to-npm
  544. post:
  545. jobs:
  546. - publish-openstack-javascript-tarball:
  547. vars:
  548. node_version: 6
  549. release:
  550. jobs:
  551. - release-openstack-javascript:
  552. vars:
  553. node_version: 6
  554. - announce-release:
  555. dependencies:
  556. - release-openstack-javascript
  557. - project-template:
  558. name: nodejs8-publish-to-npm
  559. post:
  560. jobs:
  561. - publish-openstack-javascript-tarball:
  562. vars:
  563. node_version: 8
  564. release:
  565. jobs:
  566. - release-openstack-javascript:
  567. vars:
  568. node_version: 8
  569. - announce-release:
  570. dependencies:
  571. - release-openstack-javascript
  572. - project-template:
  573. name: translation-jobs
  574. description: |
  575. Sync translations to translation server and back again for
  576. **master** only.
  577. This is intented for official OpenStack projects that have
  578. translations set up.
  579. post:
  580. jobs:
  581. - upstream-translation-update:
  582. branches: master
  583. periodic:
  584. jobs:
  585. - propose-translation-update:
  586. branches: master
  587. - project-template:
  588. name: translation-jobs-pike
  589. description: |
  590. Sync translations to translation server and back again for
  591. **stable/pike** branch only.
  592. This is intented for official OpenStack projects that have
  593. translations set up.
  594. post:
  595. jobs:
  596. - upstream-translation-update:
  597. branches: stable/pike
  598. periodic:
  599. jobs:
  600. - propose-translation-update:
  601. branches: stable/pike
  602. - project-template:
  603. name: translation-jobs-queens
  604. description: |
  605. Sync translations to translation server and back again for
  606. **stable/queens** branch only.
  607. This is intented for official OpenStack projects that have
  608. translations set up.
  609. post:
  610. jobs:
  611. - upstream-translation-update:
  612. branches: stable/queens
  613. periodic:
  614. jobs:
  615. - propose-translation-update:
  616. branches: stable/queens
  617. - project-template:
  618. name: openstack-specs-jobs
  619. description: |
  620. Runs jobs to build and publish documents for a specs repository.
  621. check:
  622. jobs:
  623. - build-openstack-sphinx-docs
  624. gate:
  625. jobs:
  626. - build-openstack-sphinx-docs
  627. post:
  628. jobs:
  629. - publish-openstack-specs
  630. - project-template:
  631. name: build-only-specs-jobs
  632. description: |
  633. Runs jobs to build only documents for a specs repository.
  634. check:
  635. jobs:
  636. - build-openstack-sphinx-docs
  637. gate:
  638. jobs:
  639. - build-openstack-sphinx-docs
  640. - project-template:
  641. name: api-guide-jobs
  642. description: |
  643. Build and publish api-guide document.
  644. check:
  645. jobs:
  646. - build-openstack-api-guide
  647. gate:
  648. jobs:
  649. - build-openstack-api-guide
  650. post:
  651. jobs:
  652. - publish-api-guide
  653. - project-template:
  654. name: api-ref-jobs
  655. description: |
  656. Build and publish api-ref document.
  657. check:
  658. jobs:
  659. - build-openstack-api-ref
  660. gate:
  661. jobs:
  662. - build-openstack-api-ref
  663. post:
  664. jobs:
  665. - publish-api-ref
  666. - project-template:
  667. name: deploy-guide-jobs
  668. description: |
  669. Build and publish deploy-guide document.
  670. check:
  671. jobs:
  672. - build-openstack-deploy-guide
  673. gate:
  674. jobs:
  675. - build-openstack-deploy-guide
  676. post:
  677. jobs:
  678. - publish-deploy-guide
  679. - project-template:
  680. name: install-guide-jobs
  681. description: |
  682. Build and publish install-guide document.
  683. check:
  684. jobs:
  685. - build-openstack-install-guide
  686. gate:
  687. jobs:
  688. - build-openstack-install-guide
  689. post:
  690. jobs:
  691. - publish-install-guide
  692. - project-template:
  693. name: periodic-stable-jobs
  694. description: |
  695. Runs periodic jobs on stable branches.
  696. periodic-stable:
  697. jobs:
  698. - build-openstack-sphinx-docs:
  699. branches:
  700. - stable/ocata
  701. - stable/pike
  702. - stable/queens
  703. - openstack-tox-py27:
  704. branches:
  705. - stable/ocata
  706. - stable/pike
  707. - stable/queens
  708. - project-template:
  709. name: periodic-stable-jobs-neutron
  710. periodic-stable:
  711. jobs:
  712. - build-openstack-sphinx-docs:
  713. branches:
  714. - stable/ocata
  715. - stable/pike
  716. - stable/queens
  717. required-projects:
  718. - openstack/neutron
  719. - openstack-tox-py27:
  720. branches:
  721. - stable/ocata
  722. - stable/pike
  723. - stable/queens
  724. required-projects:
  725. - openstack/neutron
  726. - project-template:
  727. name: periodic-jobs-with-neutron-lib-master
  728. description: |
  729. Runs periodic job on master branch using
  730. neutron-lib from source.
  731. periodic:
  732. jobs:
  733. - openstack-tox-py35-with-neutron-lib-master
  734. - project-template:
  735. name: periodic-jobs-with-oslo-master
  736. description: |
  737. Runs periodic jobs on master branch using
  738. oslo libraries from source.
  739. periodic:
  740. jobs:
  741. - openstack-tox-py27-with-oslo-master
  742. - openstack-tox-py35-with-oslo-master
  743. - project-template:
  744. name: periodic-jobs-with-ovsdbapp-master
  745. description: |
  746. Runs periodic job on master branch using
  747. ovdsdbapp from source.
  748. periodic:
  749. jobs:
  750. - openstack-tox-py35-with-ovsdbapp-master
  751. - project-template:
  752. name: python-charm-interface-jobs
  753. description: |
  754. Run Python tests for charm-interface projects.
  755. check:
  756. jobs:
  757. - openstack-tox-pep8
  758. gate:
  759. jobs:
  760. - openstack-tox-pep8
  761. - project-template:
  762. name: python-charm-jobs
  763. description: |
  764. Run Python tests for charm projects.
  765. check:
  766. jobs:
  767. - openstack-tox-pep8
  768. - openstack-tox-py27
  769. gate:
  770. jobs:
  771. - openstack-tox-pep8
  772. - openstack-tox-py27
  773. - project-template:
  774. name: python-charm-layer-jobs
  775. check:
  776. jobs:
  777. - openstack-tox-pep8
  778. - openstack-tox-build
  779. gate:
  780. jobs:
  781. - openstack-tox-pep8
  782. - openstack-tox-build
  783. - project-template:
  784. name: python35-charm-jobs
  785. description: |
  786. Run tox-pep8 and tox-py35 check and gate jobs, plus publish.
  787. check:
  788. jobs:
  789. - openstack-tox-pep8
  790. - openstack-tox-py35
  791. gate:
  792. jobs:
  793. - openstack-tox-pep8
  794. - openstack-tox-py35
  795. - project-template:
  796. name: nodejs4-jobs
  797. description: |
  798. Run lint and test jobs using Node 4.
  799. check:
  800. jobs:
  801. - nodejs-npm-run-lint:
  802. vars:
  803. node_version: 4
  804. - nodejs-npm-run-test:
  805. vars:
  806. node_version: 4
  807. gate:
  808. jobs:
  809. - nodejs-npm-run-lint:
  810. vars:
  811. node_version: 4
  812. - nodejs-npm-run-test:
  813. vars:
  814. node_version: 4
  815. - project-template:
  816. name: nodejs6-jobs
  817. description: |
  818. Run lint and test jobs using Node 6.
  819. check:
  820. jobs:
  821. - nodejs-npm-run-lint:
  822. vars:
  823. node_version: 6
  824. - nodejs-npm-run-test:
  825. vars:
  826. node_version: 6
  827. gate:
  828. jobs:
  829. - nodejs-npm-run-lint:
  830. vars:
  831. node_version: 6
  832. - nodejs-npm-run-test:
  833. vars:
  834. node_version: 6
  835. - project-template:
  836. name: nodejs8-jobs
  837. description: |
  838. Run lint and test jobs using Node 8.
  839. check:
  840. jobs:
  841. - nodejs-npm-run-lint:
  842. vars:
  843. node_version: 8
  844. - nodejs-npm-run-test:
  845. vars:
  846. node_version: 8
  847. gate:
  848. jobs:
  849. - nodejs-npm-run-lint:
  850. vars:
  851. node_version: 8
  852. - nodejs-npm-run-test:
  853. vars:
  854. node_version: 8
  855. - project-template:
  856. name: nodejs4-docs
  857. description: |
  858. Run docs jobs using Node 4.
  859. check:
  860. jobs:
  861. - nodejs-npm-run-docs:
  862. vars:
  863. node_version: 4
  864. gate:
  865. jobs:
  866. - nodejs-npm-run-docs:
  867. vars:
  868. node_version: 4
  869. - project-template:
  870. name: nodejs6-docs
  871. description: |
  872. Run docs jobs using Node 6.
  873. check:
  874. jobs:
  875. - nodejs-npm-run-docs:
  876. vars:
  877. node_version: 6
  878. gate:
  879. jobs:
  880. - nodejs-npm-run-docs:
  881. vars:
  882. node_version: 6
  883. - project-template:
  884. name: nodejs8-docs
  885. description: |
  886. Run docs jobs using Node 8.
  887. check:
  888. jobs:
  889. - nodejs-npm-run-docs:
  890. vars:
  891. node_version: 8
  892. gate:
  893. jobs:
  894. - nodejs-npm-run-docs:
  895. vars:
  896. node_version: 8
  897. - project-template:
  898. name: tempest-plugin-jobs
  899. description: |
  900. A set of jobs to run against Tempest Plugins
  901. check:
  902. jobs:
  903. - openstack-tox-pep8
  904. gate:
  905. jobs:
  906. - openstack-tox-pep8
  907. post:
  908. jobs:
  909. - publish-openstack-python-branch-tarball
  910. - project-template:
  911. name: ansible-role-jobs
  912. description: |
  913. Run default tests for ansible-role repositories: Build
  914. documentation and run tox based linter.
  915. check:
  916. jobs:
  917. - build-openstack-sphinx-docs
  918. - openstack-tox-linters
  919. gate:
  920. jobs:
  921. - build-openstack-sphinx-docs
  922. - openstack-tox-linters
  923. - project-template:
  924. name: snap-jobs
  925. description: |
  926. Run tests for snap repositories.
  927. check:
  928. jobs:
  929. - openstack-tox-snap-with-sudo
  930. gate:
  931. jobs:
  932. - openstack-tox-snap-with-sudo
  933. - project-template:
  934. name: ansible-role-functional-jobs-centos7
  935. description: |
  936. Run functional tests on ansible-role repositories using
  937. CentOS 7 nodes.
  938. check:
  939. jobs:
  940. - ansible-role-functional-centos-7
  941. gate:
  942. jobs:
  943. - ansible-role-functional-centos-7
  944. - project-template:
  945. name: ansible-role-functional-jobs-xenial
  946. description: |
  947. Run functional tests on ansible-role repositories using
  948. Ubuntu Xenial nodes.
  949. check:
  950. jobs:
  951. - ansible-role-functional-ubuntu-xenial
  952. gate:
  953. jobs:
  954. - ansible-role-functional-ubuntu-xenial
  955. - project-template:
  956. name: ansible-role-functional-jobs-xenial-nv
  957. description: |
  958. Run functional tests on ansible-role repositories using
  959. Ubuntu Xenial nodes. The tests are non-voting.
  960. check:
  961. jobs:
  962. - ansible-role-functional-ubuntu-xenial:
  963. voting: false
  964. - project-template:
  965. name: integrated-gate-py35
  966. description: |
  967. Run the python3 Tempest integration tests in check and gate for
  968. repositories in the integrated gate.
  969. check:
  970. jobs:
  971. - tempest-full-py3:
  972. branches: ^(?!(stable/(newton|ocata|pike)|driverfixes)).*$
  973. gate:
  974. jobs:
  975. - tempest-full-py3:
  976. branches: ^(?!(stable/(newton|ocata|pike)|driverfixes)).*$
  977. - project-template:
  978. name: golang-jobs
  979. description: |
  980. Run golang tests in check and gate.
  981. check:
  982. jobs:
  983. - golang-fmt
  984. - golang-unit
  985. gate:
  986. jobs:
  987. - golang-fmt
  988. - golang-unit
  989. - project-template:
  990. name: puppet-beaker-jobs-xenial-infra
  991. check:
  992. jobs:
  993. - puppet-beaker-rspec-infra
  994. gate:
  995. jobs:
  996. - puppet-beaker-rspec-infra
  997. experimental:
  998. jobs:
  999. - puppet-beaker-rspec-puppet-4-infra
  1000. - project-template:
  1001. name: puppet-beaker-jobs-xenial-infra-nv
  1002. check:
  1003. jobs:
  1004. - puppet-beaker-rspec-infra:
  1005. voting: false
  1006. - project-template:
  1007. name: puppet-beaker-jobs-centos-7-infra
  1008. check:
  1009. jobs:
  1010. - puppet-beaker-rspec-centos-7-infra
  1011. gate:
  1012. jobs:
  1013. - puppet-beaker-rspec-centos-7-infra
  1014. experimental:
  1015. jobs:
  1016. - puppet-beaker-rspec-puppet-4-centos-7-infra
  1017. - project-template:
  1018. name: infra-puppet-apply-jobs
  1019. check:
  1020. jobs:
  1021. - infra-puppet-apply-3-centos-7
  1022. - infra-puppet-apply-3-ubuntu-trusty:
  1023. branches: master
  1024. - infra-puppet-apply-3-ubuntu-xenial
  1025. - openstackci-beaker-centos-7
  1026. - openstackci-beaker-ubuntu-trusty
  1027. - openstackci-beaker
  1028. gate:
  1029. jobs:
  1030. - infra-puppet-apply-3-centos-7
  1031. - infra-puppet-apply-3-ubuntu-trusty:
  1032. branches: master
  1033. - infra-puppet-apply-3-ubuntu-xenial
  1034. - openstackci-beaker-centos-7
  1035. - openstackci-beaker-ubuntu-trusty
  1036. - infra-puppet-apply-4-centos-7
  1037. - infra-puppet-apply-4-ubuntu-xenial
  1038. - openstackci-beaker
  1039. experimental:
  1040. jobs:
  1041. - openstackci-beaker-puppet-4-centos-7
  1042. - openstackci-beaker-puppet-4