controller.pp 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. stage { "init": before => Stage["main"] }
  2. Exec { timeout => hiera('DEFAULT_EXEC_TIMEOUT') }
  3. Package { allow_virtual => true }
  4. class {'::packstack::prereqs':
  5. stage => init,
  6. }
  7. include ::firewall
  8. if hiera('CONFIG_NTP_SERVERS', '') != '' {
  9. include '::packstack::chrony'
  10. }
  11. include '::packstack::amqp'
  12. include '::packstack::mariadb'
  13. if hiera('CONFIG_MARIADB_INSTALL') == 'y' {
  14. include 'packstack::mariadb::services'
  15. } else {
  16. include 'packstack::mariadb::services_remote'
  17. }
  18. include '::packstack::apache'
  19. include '::packstack::keystone'
  20. if hiera('CONFIG_GLANCE_INSTALL') == 'y' {
  21. include '::packstack::keystone::glance'
  22. include '::packstack::glance'
  23. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
  24. include '::packstack::glance::ceilometer'
  25. }
  26. if hiera('CONFIG_GLANCE_BACKEND') == 'swift' {
  27. include '::packstack::glance::backend::swift'
  28. } else {
  29. include '::packstack::glance::backend::file'
  30. }
  31. }
  32. if hiera('CONFIG_CINDER_INSTALL') == 'y' {
  33. include '::packstack::keystone::cinder'
  34. include '::packstack::cinder::rabbitmq'
  35. include '::packstack::cinder'
  36. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
  37. include '::packstack::cinder::ceilometer'
  38. }
  39. if hiera('CONFIG_SWIFT_INSTALL') == 'y' {
  40. include '::packstack::cinder::backup'
  41. }
  42. $cinder_backends = hiera_array('CONFIG_CINDER_BACKEND')
  43. case $cinder_backends[0] {
  44. 'lvm': { include '::packstack::cinder::backend::lvm' }
  45. 'gluster': { include '::packstack::cinder::backend::gluster' }
  46. 'nfs': { include '::packstack::cinder::backend::nfs' }
  47. 'vmdk': { include '::packstack::cinder::backend::vmdk' }
  48. 'netapp': { include '::packstack::cinder::backend::netapp' }
  49. 'solidfire': { include '::packstack::cinder::backend::solidfire' }
  50. default: { include '::packstack::cinder::backend::lvm' }
  51. }
  52. }
  53. if hiera('CONFIG_IRONIC_INSTALL') == 'y' {
  54. include '::packstack::keystone::ironic'
  55. include '::packstack::ironic'
  56. include '::packstack::ironic::rabbitmq'
  57. }
  58. if hiera('CONFIG_NOVA_INSTALL') == 'y' {
  59. include '::packstack::keystone::nova'
  60. include '::packstack::nova'
  61. include '::packstack::nova::common'
  62. include '::packstack::nova::api'
  63. include '::packstack::nova::cert'
  64. include '::packstack::nova::conductor'
  65. if hiera('CONFIG_IRONIC_INSTALL') == 'y' {
  66. include '::packstack::nova::sched::ironic'
  67. }
  68. include '::packstack::nova::sched'
  69. include '::packstack::nova::vncproxy'
  70. if hiera('CONFIG_NEUTRON_INSTALL') == 'y' {
  71. include '::packstack::nova::neutron'
  72. }
  73. }
  74. if hiera('CONFIG_NEUTRON_INSTALL') == 'y' {
  75. include '::packstack::keystone::neutron'
  76. include '::packstack::neutron::rabbitmq'
  77. include '::packstack::neutron::api'
  78. if hiera('CONFIG_NOVA_INSTALL') == 'y' {
  79. include '::packstack::neutron::notifications'
  80. }
  81. include '::packstack::neutron::ml2'
  82. }
  83. if hiera('CONFIG_MANILA_INSTALL') == 'y' {
  84. include '::packstack::keystone::manila'
  85. include '::packstack::manila'
  86. include '::packstack::manila::rabbitmq'
  87. if 'generic' in hiera_array('CONFIG_MANILA_BACKEND') {
  88. include '::packstack::manila::backend::generic'
  89. }
  90. if 'netapp' in hiera_array('CONFIG_MANILA_BACKEND') {
  91. include '::packstack::manila::backend::netapp'
  92. }
  93. if 'glusternative' in hiera_array('CONFIG_MANILA_BACKEND') {
  94. include '::packstack::manila::backend::glusternative'
  95. }
  96. if 'glusternfs' in hiera_array('CONFIG_MANILA_BACKEND') {
  97. include '::packstack::manila::backend::glusternfs'
  98. }
  99. }
  100. include '::packstack::openstackclient'
  101. if hiera('CONFIG_HORIZON_INSTALL') == 'y' {
  102. include '::packstack::horizon'
  103. }
  104. if hiera('CONFIG_SWIFT_INSTALL') == 'y' {
  105. include '::packstack::keystone::swift'
  106. include '::packstack::swift'
  107. include '::packstack::swift::ringbuilder'
  108. include '::packstack::swift::proxy'
  109. include '::packstack::swift::storage'
  110. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
  111. include '::packstack::swift::ceilometer'
  112. }
  113. }
  114. if hiera('CONFIG_HEAT_INSTALL') == 'y' {
  115. include '::packstack::keystone::heat'
  116. include '::packstack::heat::rabbitmq'
  117. include '::packstack::heat'
  118. if hiera('CONFIG_HEAT_CLOUDWATCH_INSTALL') == 'y' {
  119. include '::packstack::heat::cloudwatch'
  120. }
  121. if hiera('CONFIG_HEAT_CFN_INSTALL') == 'y' {
  122. include '::packstack::heat::cfn'
  123. }
  124. }
  125. if hiera('CONFIG_MAGNUM_INSTALL') == 'y' {
  126. include '::packstack::keystone::magnum'
  127. include '::packstack::magnum'
  128. include '::packstack::magnum::rabbitmq'
  129. }
  130. if hiera('CONFIG_PROVISION_DEMO') == 'y' or hiera('CONFIG_PROVISION_TEMPEST') == 'y' {
  131. include '::packstack::provision'
  132. if hiera('CONFIG_GLANCE_INSTALL') == 'y' {
  133. include '::packstack::provision::glance'
  134. }
  135. }
  136. if hiera('CONFIG_PROVISION_TEMPEST') == 'y' {
  137. include '::packstack::provision::tempest'
  138. }
  139. if hiera('CONFIG_PROVISION_TEMPEST') == 'y' {
  140. include '::packstack::provision::tempest'
  141. }
  142. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' and hiera('CONFIG_GNOCCHI_INSTALL') == 'y' {
  143. include '::packstack::keystone::gnocchi'
  144. include '::packstack::gnocchi'
  145. }
  146. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' and hiera('CONFIG_PANKO_INSTALL') == 'y' {
  147. include '::packstack::keystone::panko'
  148. include '::packstack::panko'
  149. }
  150. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
  151. include '::packstack::mongodb'
  152. include '::packstack::keystone::ceilometer'
  153. include '::packstack::ceilometer::rabbitmq'
  154. include '::packstack::ceilometer'
  155. if hiera('CONFIG_NOVA_INSTALL') == 'n' {
  156. include '::packstack::ceilometer::nova_disabled'
  157. }
  158. include '::packstack::redis'
  159. }
  160. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' and hiera('CONFIG_AODH_INSTALL') == 'y' {
  161. include '::packstack::keystone::aodh'
  162. include '::packstack::aodh::rabbitmq'
  163. include '::packstack::aodh'
  164. }
  165. if hiera('CONFIG_TROVE_INSTALL') == 'y' {
  166. include '::packstack::keystone::trove'
  167. include '::packstack::trove::rabbitmq'
  168. include '::packstack::trove'
  169. }
  170. if hiera('CONFIG_SAHARA_INSTALL') == 'y' {
  171. include '::packstack::keystone::sahara'
  172. include '::packstack::sahara::rabbitmq'
  173. include '::packstack::sahara'
  174. if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
  175. include '::packstack::sahara::ceilometer'
  176. }
  177. }
  178. if hiera('CONFIG_NAGIOS_INSTALL') == 'y' {
  179. include '::packstack::nagios::server'
  180. include '::packstack::nagios::nrpe'
  181. }