Fuel plugin to enable block storage support for Nimble in Fuel
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 5.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. # The task modifies hiera data to add new cinder-types
  2. - id: nimble_hiera_override
  3. type: puppet
  4. version: 3.0.0
  5. groups: [primary-controller]
  6. requires: [hiera]
  7. required_for: [create-cinder-types]
  8. parameters:
  9. puppet_manifest: puppet/manifests/hiera_override.pp
  10. puppet_modules: puppet/modules:/etc/puppet/modules
  11. timeout: 360
  12. # Execute on controllers only if ceph used for volumes.
  13. # For LCM inherit condition from openstack-cinder
  14. # otherwise enabled_backends will be overwritten.
  15. # https://bugs.launchpad.net/puppet-cinder/+bug/1598094
  16. - id: nimble_cinder_controller
  17. type: puppet
  18. version: 3.0.0
  19. groups: [primary-controller, controller]
  20. requires: [openstack-cinder]
  21. required_for: [deploy_end]
  22. condition:
  23. yaql_exp: >
  24. $.storage.volumes_ceph and
  25. changedAny($.cinder_nimble, $.network_scheme, $.cinder, $.network_metadata.vips,
  26. $.get('cinder_volume_group'), $.storage, $.ceilometer, $.sahara,
  27. $.rabbit, $.get('region', 'RegionOne'), $.get('use_ssl'),
  28. ('primary-controller' in $.roles), $.get('proxy_port'),
  29. $.get('kombu_compression'), $.get('keystone_endpoint'),
  30. $.get('glance_endpoint'), $.get('glance_api_servers'),
  31. $.get('use_syslog'), $.get('use_stderr'), $.get('verbose'), $.debug,
  32. $.network_metadata.nodes.values().where(
  33. $.node_roles.any($.matches('controller'))).network_roles.select(
  34. $.get('mgmt/messaging')),
  35. $.get('amqp_hosts'), $.get('syslog_log_facility_cinder'),
  36. $.get('cinder_rate_limits'),
  37. $.configuration.get('cinder_api_paste_ini'), $.configuration.get('cinder'))
  38. parameters:
  39. puppet_manifest: puppet/manifests/site.pp
  40. puppet_modules: puppet/modules:/etc/puppet/modules
  41. timeout: 360
  42. # For LCM inherit condition from top-role-cinder
  43. # otherwise enabled_backends will be overwritten.
  44. # https://bugs.launchpad.net/puppet-cinder/+bug/1598094
  45. - id: nimble_cinder
  46. type: puppet
  47. version: 3.0.0
  48. groups: [cinder]
  49. requires: [top-role-cinder]
  50. required_for: [deploy_end]
  51. condition:
  52. yaql_exp: >
  53. changedAny($.cinder_nimble, $.cinder, $.get('cinder_volume_group'),
  54. $.network_metadata.nodes.get(concat("node-", $.uid)).network_roles.get('cinder/iscsi'),
  55. $.network_metadata.vips, $.debug, $.node_volumes, $.storage, $.rabbit, $.ceilometer,
  56. $.get('use_stderr'), $.get('use_syslog'), $.get('syslog_log_facility_cinder'),
  57. $.get('syslog_log_facility_ceph'), $.get('proxy_port'), $.get('kombu_compression'),
  58. $.get('use_ssl'), $.get('service_endpoint'), $.get('glance_api_servers'),
  59. $.get('amqp_hosts'),
  60. $.network_metadata.nodes.values().where(
  61. $.node_roles.any($.matches('controller'))).network_roles.select(
  62. $.get('mgmt/messaging')))
  63. parameters:
  64. puppet_manifest: puppet/manifests/site.pp
  65. puppet_modules: puppet/modules:/etc/puppet/modules
  66. timeout: 360
  67. # Fix hot pluggability.
  68. # Override create-cinder-types task with
  69. # additional dependency on "cinder_nimble".
  70. - id: create-cinder-types
  71. type: puppet
  72. version: 3.0.0
  73. groups: [primary-controller]
  74. requires: [openstack-cinder]
  75. required_for: [deploy_end]
  76. condition:
  77. yaql_exp: "changedAny($.storage, $.cinder_nimble)"
  78. parameters:
  79. puppet_manifest: puppet/manifests/nimble_cinder_type.pp
  80. puppet_modules: "puppet/modules/:/etc/puppet/modules/"
  81. timeout: 1200
  82. # Post Deployment tasks
  83. # Set the default volume type to the nimble type in <default_volume_type> parameter
  84. - id: disable_default_type
  85. role: [primary-controller, controller]
  86. required_for: [post_deployment_end]
  87. requires: [post_deployment_start]
  88. type: puppet
  89. version: 3.0.0
  90. parameters:
  91. puppet_manifest: puppet/manifests/disable_default_type.pp
  92. puppet_modules: "puppet/modules/:/etc/puppet/modules/"
  93. timeout: 360
  94. - id: set_default_type
  95. role: [primary-controller, controller]
  96. required_for: [post_deployment_end]
  97. requires: [disable_default_type]
  98. type: puppet
  99. version: 3.0.0
  100. parameters:
  101. puppet_manifest: puppet/manifests/default_type.pp
  102. puppet_modules: "puppet/modules/:/etc/puppet/modules/"
  103. timeout: 360
  104. - id: configure_nimblestorage_extraspecs_encryption
  105. role: [primary-controller]
  106. required_for: [post_deployment_end]
  107. requires: [set_default_type]
  108. type: puppet
  109. version: 3.0.0
  110. parameters:
  111. puppet_manifest: puppet/manifests/extraspecs_encryption.pp
  112. puppet_modules: "puppet/modules/:/etc/puppet/modules/"
  113. timeout: 360
  114. - id: configure_nimblestorage_extraspecs_perfpol
  115. role: [primary-controller]
  116. required_for: [post_deployment_end]
  117. requires: [set_default_type]
  118. type: puppet
  119. version: 3.0.0
  120. parameters:
  121. puppet_manifest: puppet/manifests/extraspecs_perfpol.pp
  122. puppet_modules: "puppet/modules/:/etc/puppet/modules/"
  123. timeout: 360
  124. - id: configure_nimblestorage_extraspecs_multi_init
  125. role: [primary-controller]
  126. required_for: [post_deployment_end]
  127. requires: [set_default_type]
  128. type: puppet
  129. version: 3.0.0
  130. parameters:
  131. puppet_manifest: puppet/manifests/extraspecs_multi_init.pp
  132. puppet_modules: "puppet/modules/:/etc/puppet/modules/"
  133. timeout: 360