Fuel plugin which enables option to deploy Trove
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.

deployment_tasks.yaml 7.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. # These tasks will be merged into deployment graph. Here you
  2. # can specify new tasks for any roles, even built-in ones.
  3. - id: primary-trove
  4. type: group
  5. role: [primary-trove]
  6. requires: [deploy_start]
  7. required_for: [deploy_end]
  8. tasks: &common_tasks
  9. - hiera
  10. - setup_repositories
  11. - fuel_pkgs
  12. - globals
  13. - tools
  14. - logging
  15. - netconfig
  16. - hosts
  17. - firewall
  18. - ssl-keys-saving
  19. - ssl-add-trust-chain
  20. - ssl-dns-setup
  21. parameters:
  22. strategy:
  23. type: one_by_one
  24. - id: trove
  25. type: group
  26. role: [trove]
  27. requires: [primary-trove]
  28. required_for: [deploy_end]
  29. tasks: *common_tasks
  30. parameters:
  31. strategy:
  32. type: parallel
  33. - id: hiera-trove-override
  34. version: 2.0.0
  35. type: puppet
  36. groups: [primary-trove, trove]
  37. requires: [globals]
  38. required_for: [logging, trove-service]
  39. cross-depends:
  40. - name: globals
  41. parameters:
  42. puppet_manifest: puppet/modules/dbaas_trove/modular/hiera_override.pp
  43. puppet_modules: /etc/puppet/modules:puppet/modules
  44. timeout: 3600
  45. # reexecute_on is needed for scale-down operations
  46. reexecute_on:
  47. - deploy_changes
  48. - id: trove-firewall
  49. version: 2.0.0
  50. type: puppet
  51. groups: [primary-trove, trove]
  52. requires: [hiera-trove-override, firewall]
  53. required_for: [trove-cluster]
  54. cross-depends:
  55. - name: hiera-trove-override
  56. - name: firewall
  57. parameters:
  58. puppet_manifest: puppet/modules/dbaas_trove/modular/firewall.pp
  59. puppet_modules: /etc/puppet/modules:puppet/modules
  60. timeout: 3600
  61. - id: trove-ssl-keys-saving
  62. version: 2.0.0
  63. type: puppet
  64. role: ['/.*/']
  65. requires: [trove-firewall, ssl-keys-saving]
  66. cross-depends:
  67. - name: trove-firewall
  68. - name: ssl-keys-saving
  69. condition: "(settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true) and settings:public_ssl.cert_source.value == 'user_uploaded'"
  70. required_for: [deploy_end]
  71. parameters:
  72. puppet_manifest: puppet/modules/dbaas_trove/modular/ssl_keys_saving.pp
  73. puppet_modules: /etc/puppet/modules:puppet/modules
  74. timeout: 3600
  75. # reexecute_on is needed for scale-down operations
  76. reexecute_on:
  77. - deploy_changes
  78. test_pre:
  79. cmd: ruby /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_keys_saving_pre.rb
  80. - id: trove-ssl-add-trust-chain
  81. type: puppet
  82. version: 2.0.0
  83. role: ['/.*/']
  84. requires: [trove-firewall, trove-ssl-keys-saving]
  85. cross-depends:
  86. - name: trove-firewall
  87. - name: trove-ssl-keys-saving
  88. condition: "settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true"
  89. required_for: [hosts]
  90. parameters:
  91. puppet_manifest: puppet/modules/dbaas_trove/modular/ssl_add_trust_chain.pp
  92. puppet_modules: /etc/puppet/modules:puppet/modules
  93. timeout: 3600
  94. # reexecute_on is needed for scale-down operations
  95. reexecute_on:
  96. - deploy_changes
  97. test_pre:
  98. cmd: ruby /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_keys_saving_pre.rb
  99. - id: trove-ssl-dns-setup
  100. type: puppet
  101. version: 2.0.0
  102. groups: [primary-controller, controller]
  103. requires: [trove-firewall, trove-ssl-add-trust-chain]
  104. cross-depends:
  105. - name: trove-firewall
  106. - name: trove-ssl-add-trust-chain
  107. condition: "settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true"
  108. required_for: [hosts]
  109. parameters:
  110. puppet_manifest: puppet/modules/dbaas_trove/modular/ssl_dns_setup.pp
  111. puppet_modules: /etc/puppet/modules:puppet/modules
  112. timeout: 3600
  113. # reexecute_on is needed for scale-down operations
  114. reexecute_on:
  115. - deploy_changes
  116. - id: primary-trove-cluster
  117. version: 2.0.0
  118. type: puppet
  119. groups: [primary-trove]
  120. requires: [hosts, trove-firewall, hiera-trove-override]
  121. required_for: [deploy_end]
  122. cross-depends:
  123. - name: hosts
  124. - name: trove-firewall
  125. - name: hiera-trove-override
  126. parameters:
  127. puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/cluster/cluster.pp
  128. puppet_modules: puppet/modules:/etc/puppet/modules
  129. timeout: 3600
  130. # reexecute_on is needed for scale-down operations
  131. reexecute_on:
  132. - deploy_changes
  133. - id: trove-cluster
  134. version: 2.0.0
  135. type: puppet
  136. groups: [trove]
  137. requires: [hosts, trove-firewall, hiera-trove-override, primary-trove-cluster]
  138. required_for: [deploy_end]
  139. cross-depends:
  140. - name: hosts
  141. - name: trove-firewall
  142. - name: hiera-trove-override
  143. - name: primary-trove-cluster
  144. parameters:
  145. puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/cluster/cluster.pp
  146. puppet_modules: puppet/modules:/etc/puppet/modules
  147. timeout: 3600
  148. # reexecute_on is needed for scale-down operations
  149. reexecute_on:
  150. - deploy_changes
  151. - id: primary-trove-rabbitmq
  152. version: 2.0.0
  153. type: puppet
  154. groups: [primary-trove]
  155. requires: [trove-firewall, primary-trove-cluster, trove-cluster, hiera-trove-override]
  156. required_for: [trove-service]
  157. cross-depends:
  158. - name: trove-firewall
  159. - name: hiera-trove-override
  160. - name: /(primary-)?trove-cluster/
  161. parameters:
  162. puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/rabbitmq/rabbitmq.pp
  163. puppet_modules: puppet/modules:/etc/puppet/modules
  164. timeout: 3600
  165. # reexecute_on is needed for scale-down operations
  166. reexecute_on:
  167. - deploy_changes
  168. - id: trove-rabbitmq
  169. version: 2.0.0
  170. type: puppet
  171. groups: [trove]
  172. requires: [trove-firewall, primary-trove-cluster, trove-cluster, hiera-trove-override, primary-trove-rabbitmq]
  173. required_for: [trove-service]
  174. cross-depends:
  175. - name: trove-firewall
  176. - name: hiera-trove-override
  177. - name: /(primary-)?trove-cluster/
  178. - name: primary-trove-rabbitmq
  179. - name: trove-rabbitmq
  180. parameters:
  181. puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/rabbitmq/rabbitmq.pp
  182. puppet_modules: puppet/modules:/etc/puppet/modules
  183. timeout: 3600
  184. # reexecute_on is needed for scale-down operations
  185. reexecute_on:
  186. - deploy_changes
  187. - id: trove-db
  188. version: 2.0.0
  189. type: puppet
  190. groups: [primary-controller]
  191. requires: [primary-database, database]
  192. required_for: [trove-service]
  193. cross-depends:
  194. - name: /(primary-)?database/
  195. parameters:
  196. puppet_manifest: puppet/modules/dbaas_trove/modular/db.pp
  197. puppet_modules: /etc/puppet/modules:puppet/modules
  198. timeout: 1800
  199. # reexecute_on is needed for scale-down operations
  200. reexecute_on:
  201. - deploy_changes
  202. - id: trove-keystone
  203. version: 2.0.0
  204. type: puppet
  205. groups: [primary-controller]
  206. requires: [primary-keystone, keystone]
  207. required_for: [trove-service]
  208. cross-depends:
  209. - name: /(primary-)?keystone/
  210. parameters:
  211. puppet_manifest: puppet/modules/dbaas_trove/modular/keystone.pp
  212. puppet_modules: /etc/puppet/modules:puppet/modules
  213. timeout: 1800
  214. # reexecute_on is needed for scale-down operations
  215. reexecute_on:
  216. - deploy_changes
  217. - id: openstack-haproxy-trove
  218. type: puppet
  219. version: 2.0.0
  220. groups: [primary-controller, controller]
  221. requires: [primary-cluster-haproxy, cluster-haproxy]
  222. required_for: [trove-service]
  223. cross-depends:
  224. - name: /(primary-)?cluster-haproxy/
  225. parameters:
  226. puppet_manifest: puppet/modules/dbaas_trove/modular/openstack-haproxy-trove.pp
  227. puppet_modules: /etc/puppet/modules:puppet/modules
  228. timeout: 3600
  229. # reexecute_on is needed for scale-down operations
  230. reexecute_on:
  231. - deploy_changes
  232. - id: trove-service
  233. version: 2.0.0
  234. type: puppet
  235. groups: [primary-trove, trove]
  236. requires: [trove-rabbitmq, trove-db, trove-keystone, openstack-haproxy-trove]
  237. required_for: [deploy_end]
  238. cross-depends:
  239. - name: /(primary-)?trove-rabbitmq/
  240. - name: trove-db
  241. - name: trove-keystone
  242. - name: openstack-haproxy-trove
  243. cross-depended-by:
  244. - name: deploy_end
  245. parameters:
  246. puppet_manifest: puppet/modules/dbaas_trove/modular/trove.pp
  247. puppet_modules: /etc/puppet/modules:puppet/modules
  248. timeout: 1800