Manage a pool of nodes for a distributed test infrastructure
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.

.zuul.yaml 7.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. - job:
  2. name: nodepool-zuul-functional
  3. parent: tox
  4. description: |
  5. Test that zuul works with current nodepool sources.
  6. This test runs the zuul project ``nodepool`` environment.
  7. pre-run: playbooks/nodepool-zuul-functional/pre.yaml
  8. post-run: playbooks/nodepool-zuul-functional/post.yaml
  9. required-projects:
  10. - openstack-infra/nodepool
  11. - openstack-infra/zuul
  12. vars:
  13. zuul_work_dir: "{{ zuul.projects['git.openstack.org/openstack-infra/zuul'].src_dir }}"
  14. tox_envlist: nodepool
  15. # NOTE(ianw): this job doesn't really do anything unless you set
  16. # "NODEPOOL_PAUSE_something_DIB: false" to unpause one or more builds.
  17. - job:
  18. name: nodepool-functional-base
  19. parent: devstack
  20. # NOTE(ianw): for now, keep these jobs as Xenial only. We will
  21. # add bionic variants, but we want to keep Xenial testing around
  22. # whilst we still run Xenial for upstream nodepool-builders too
  23. nodeset: openstack-single-node-xenial
  24. pre-run: playbooks/nodepool-functional-base/pre.yaml
  25. post-run: playbooks/nodepool-functional-base/post.yaml
  26. timeout: 5400
  27. required-projects:
  28. - openstack-infra/nodepool
  29. vars:
  30. devstack_localrc:
  31. USE_PYTHON3: True
  32. devstack_services:
  33. horizon: false
  34. ceilometer-acentral: false
  35. ceilometer-acompute: false
  36. ceilometer-alarm-evaluator: false
  37. ceilometer-alarm-notifier: false
  38. ceilometer-anotification: false
  39. ceilometer-api: false
  40. ceilometer-collector: false
  41. cinder: false
  42. c-bak: false
  43. c-sch: false
  44. c-api: false
  45. c-vol: false
  46. s-account: false
  47. s-container: false
  48. s-object: false
  49. s-proxy: false
  50. # Nodepool doesn't need vnc access
  51. n-novnc: false
  52. # Nodepool testing uses config drive only
  53. n-api-meta: false
  54. q-meta: false
  55. devstack_plugins:
  56. nodepool: https://git.openstack.org/openstack-infra/nodepool
  57. zuul_copy_output:
  58. '/var/log/nodepool/builds': 'logs'
  59. - job:
  60. name: nodepool-functional-py35
  61. parent: nodepool-functional-base
  62. description: |
  63. Run nodepool functional tests for py35
  64. run: playbooks/nodepool-functional-py35/run.yaml
  65. vars:
  66. devstack_localrc:
  67. NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB: false
  68. - job:
  69. name: nodepool-functional-py35-src-base
  70. parent: nodepool-functional-base
  71. run: playbooks/nodepool-functional-py35-src/run.yaml
  72. required-projects:
  73. - name: github.com/sqlalchemy/dogpile.cache
  74. - name: openstack-infra/glean
  75. - name: openstack-infra/nodepool
  76. - name: openstack/diskimage-builder
  77. - name: openstack/openstacksdk
  78. - job:
  79. name: nodepool-functional-py35-src
  80. parent: nodepool-functional-py35-src-base
  81. vars:
  82. devstack_localrc:
  83. NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB: false
  84. # Distro functional tests. This is used by projects such as
  85. # diskimage-builder and glean as live-boot tests
  86. - job:
  87. name: nodepool-functional-py35-redhat-src
  88. parent: nodepool-functional-py35-src-base
  89. vars:
  90. devstack_localrc:
  91. NODEPOOL_PAUSE_CENTOS_7_DIB: false
  92. NODEPOOL_PAUSE_FEDORA_29_DIB: false
  93. - job:
  94. name: nodepool-functional-py35-suse-src
  95. parent: nodepool-functional-py35-src-base
  96. vars:
  97. devstack_localrc:
  98. NODEPOOL_PAUSE_OPENSUSE_423_DIB: false
  99. NODEPOOL_PAUSE_OPENSUSE_150_DIB: false
  100. NODEPOOL_PAUSE_OPENSUSE_TUMBLEWEED_DIB: false
  101. - job:
  102. name: nodepool-functional-py35-gentoo-src
  103. parent: nodepool-functional-py35-src-base
  104. vars:
  105. devstack_localrc:
  106. NODEPOOL_PAUSE_GENTOO_17_0_SYSTEMD_DIB: false
  107. - job:
  108. name: nodepool-functional-py35-ubuntu-src
  109. parent: nodepool-functional-py35-src-base
  110. vars:
  111. devstack_localrc:
  112. NODEPOOL_PAUSE_UBUNTU_BIONIC_DIB: false
  113. NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB: false
  114. NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB: false
  115. - job:
  116. name: nodepool-functional-py35-debian-src
  117. parent: nodepool-functional-py35-src-base
  118. vars:
  119. devstack_localrc:
  120. NODEPOOL_PAUSE_DEBIAN_STRETCH_DIB: false
  121. - job:
  122. description: |
  123. Test that nodepool works with kubernetes.
  124. name: nodepool-functional-k8s
  125. pre-run: playbooks/nodepool-functional-k8s/pre.yaml
  126. run: playbooks/nodepool-functional-k8s/run.yaml
  127. post-run: playbooks/nodepool-functional-k8s/post.yaml
  128. nodeset: ubuntu-xenial
  129. required-projects:
  130. - openstack-infra/nodepool
  131. - job:
  132. description: |
  133. Test that nodepool works with openshift.
  134. name: nodepool-functional-openshift
  135. pre-run: playbooks/nodepool-functional-openshift/pre.yaml
  136. run: playbooks/nodepool-functional-openshift/run.yaml
  137. nodeset:
  138. nodes:
  139. - name: cluster
  140. label: centos-7
  141. - name: launcher
  142. label: fedora-28
  143. required-projects:
  144. - openstack-infra/nodepool
  145. - secret:
  146. name: nodepool-dockerhub
  147. data:
  148. username: zuulzuul
  149. password: !encrypted/pkcs1-oaep
  150. - VV5m4XbsYvAz0/7T+WoIypvD3ijRsPYrGo4O5JuOHt6TX14s9B1KddeMwnabEEKapPdbb
  151. cwqbzFKoHRMi8DdXiDKxrgbTSC1jb3BvKq7XE0/xF4Bq2dM+r3yDnXS6a7BuijSqFSiMG
  152. /9bf0jqEAWXWCvbYUAxKOklJIRLjcKywCP5CulmW6EV8f1Iya8Y7UGpjGyL34FVQuc52Y
  153. 5MLp+Dra95pvBJMgikbu7LtMPCXOMctUFBpwNArCjWKGhz00UZwyAmsbPPHwQWb+884ZP
  154. v9zi2FuRAL+rn4DRVwyIw28ZdCEr5F5EkZon3lSIhikhdQIyHPtW8VwMJTL4RxBdmgcEt
  155. +zZBbLlOU+0AHPGLlO/yQNvHeSzwY9pe2oIGuqSu3h6zp6Y0NIE/Q0VpiIXWpOAnLOmno
  156. uOd3j9tZ1beol2mg4Yk7rOaXu1Fvtfhd1K3LpLzEbiGzCMIEZuFHU2ZInAbUmtm0BtbDa
  157. /bYvI9dB/uqA2xgse5rVMa++v3AfWJTJhFY/wBU4fHOWlFBUZKFuSoijUcWMfnfMMyU2B
  158. A5CQKhv4Wmtzbvo/oneYkwFOTYaPNj2DS0BcFJFkR8FZDYmTBPnKoBH5wpwwnrzPOpCMa
  159. L21z+Vp1Vce1XCsaOduMrmZDvuQcK1YOKIIUeElAQw8GuwTfcXqekoPvp54SeE=
  160. - job:
  161. name: nodepool-build-image
  162. parent: build-docker-image
  163. description: Build Docker images.
  164. vars: &nodepool_image_vars
  165. docker_images:
  166. - context: .
  167. repository: zuul/nodepool-base
  168. target: nodepool-base
  169. - context: .
  170. repository: zuul/nodepool
  171. target: nodepool
  172. - context: .
  173. repository: zuul/nodepool-launcher
  174. target: nodepool-launcher
  175. - context: .
  176. repository: zuul/nodepool-builder
  177. target: nodepool-builder
  178. - job:
  179. name: nodepool-upload-image
  180. parent: upload-docker-image
  181. description: Build Docker images and upload to Docker Hub.
  182. vars: *nodepool_image_vars
  183. secrets:
  184. - name: docker_credentials
  185. secret: nodepool-dockerhub
  186. pass-to-parent: true
  187. - job:
  188. name: nodepool-promote-image
  189. parent: promote-docker-image
  190. description: Promote previously uploaded Docker images.
  191. vars: *nodepool_image_vars
  192. secrets:
  193. - name: docker_credentials
  194. secret: nodepool-dockerhub
  195. pass-to-parent: true
  196. - project:
  197. check:
  198. jobs:
  199. - tox-docs
  200. - tox-pep8
  201. - tox-py35
  202. - tox-py36:
  203. nodeset: ubuntu-bionic
  204. - nodepool-zuul-functional:
  205. voting: false
  206. - nodepool-functional-py35:
  207. voting: false
  208. - nodepool-functional-py35-src:
  209. voting: false
  210. - nodepool-functional-k8s
  211. - nodepool-functional-openshift
  212. - nodepool-build-image
  213. - zuul-quick-start
  214. gate:
  215. jobs:
  216. - tox-docs
  217. - tox-pep8
  218. - tox-py35
  219. - tox-py36:
  220. nodeset: ubuntu-bionic
  221. - zuul-quick-start
  222. - nodepool-upload-image
  223. post:
  224. jobs:
  225. - publish-zuul-docs
  226. promote:
  227. jobs:
  228. - nodepool-promote-image
  229. experimental:
  230. jobs:
  231. - nodepool-functional-py35-debian-src
  232. release:
  233. jobs:
  234. - release-zuul-python
  235. - publish-zuul-docs