138 lines
5.0 KiB
YAML
138 lines
5.0 KiB
YAML
# The task modifies hiera data to add new cinder-types
|
|
- id: nimble_hiera_override
|
|
type: puppet
|
|
version: 3.0.0
|
|
groups: [primary-controller]
|
|
requires: [hiera]
|
|
required_for: [create-cinder-types]
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/hiera_override.pp
|
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
|
timeout: 360
|
|
|
|
# Execute on controllers only if ceph used for volumes.
|
|
# For LCM inherit condition from openstack-cinder
|
|
# otherwise enabled_backends will be overwritten.
|
|
# https://bugs.launchpad.net/puppet-cinder/+bug/1598094
|
|
- id: nimble_cinder_controller
|
|
type: puppet
|
|
version: 3.0.0
|
|
groups: [primary-controller, controller]
|
|
requires: [openstack-cinder]
|
|
required_for: [deploy_end]
|
|
condition:
|
|
yaql_exp: >
|
|
$.storage.volumes_ceph and
|
|
changedAny($.cinder_nimble, $.network_scheme, $.cinder, $.network_metadata.vips,
|
|
$.get('cinder_volume_group'), $.storage, $.ceilometer, $.sahara,
|
|
$.rabbit, $.get('region', 'RegionOne'), $.get('use_ssl'),
|
|
('primary-controller' in $.roles), $.get('proxy_port'),
|
|
$.get('kombu_compression'), $.get('keystone_endpoint'),
|
|
$.get('glance_endpoint'), $.get('glance_api_servers'),
|
|
$.get('use_syslog'), $.get('use_stderr'), $.get('verbose'), $.debug,
|
|
$.network_metadata.nodes.values().where(
|
|
$.node_roles.any($.matches('controller'))).network_roles.select(
|
|
$.get('mgmt/messaging')),
|
|
$.get('amqp_hosts'), $.get('syslog_log_facility_cinder'),
|
|
$.get('cinder_rate_limits'),
|
|
$.configuration.get('cinder_api_paste_ini'), $.configuration.get('cinder'))
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/site.pp
|
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
|
timeout: 360
|
|
|
|
# For LCM inherit condition from top-role-cinder
|
|
# otherwise enabled_backends will be overwritten.
|
|
# https://bugs.launchpad.net/puppet-cinder/+bug/1598094
|
|
- id: nimble_cinder
|
|
type: puppet
|
|
version: 3.0.0
|
|
groups: [cinder]
|
|
requires: [top-role-cinder]
|
|
required_for: [deploy_end]
|
|
condition:
|
|
yaql_exp: >
|
|
changedAny($.cinder_nimble, $.cinder, $.get('cinder_volume_group'),
|
|
$.network_metadata.nodes.get(concat("node-", $.uid)).network_roles.get('cinder/iscsi'),
|
|
$.network_metadata.vips, $.debug, $.node_volumes, $.storage, $.rabbit, $.ceilometer,
|
|
$.get('use_stderr'), $.get('use_syslog'), $.get('syslog_log_facility_cinder'),
|
|
$.get('syslog_log_facility_ceph'), $.get('proxy_port'), $.get('kombu_compression'),
|
|
$.get('use_ssl'), $.get('service_endpoint'), $.get('glance_api_servers'),
|
|
$.get('amqp_hosts'),
|
|
$.network_metadata.nodes.values().where(
|
|
$.node_roles.any($.matches('controller'))).network_roles.select(
|
|
$.get('mgmt/messaging')))
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/site.pp
|
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
|
timeout: 360
|
|
|
|
# Fix hot pluggability.
|
|
# Override create-cinder-types task with
|
|
# additional dependency on "cinder_nimble".
|
|
- id: create-cinder-types
|
|
type: puppet
|
|
version: 3.0.0
|
|
groups: [primary-controller]
|
|
requires: [openstack-cinder]
|
|
required_for: [deploy_end]
|
|
condition:
|
|
yaql_exp: "changedAny($.storage, $.cinder_nimble)"
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/nimble_cinder_type.pp
|
|
puppet_modules: "puppet/modules/:/etc/puppet/modules/"
|
|
timeout: 1200
|
|
|
|
# Post Deployment tasks
|
|
|
|
# Set the default volume type to the nimble type in <default_volume_type> parameter
|
|
- id: disable_default_type
|
|
role: [primary-controller, controller]
|
|
required_for: [post_deployment_end]
|
|
requires: [post_deployment_start]
|
|
type: puppet
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/disable_default_type.pp
|
|
puppet_modules: "puppet/modules/:/etc/puppet/modules/"
|
|
timeout: 360
|
|
|
|
- id: set_default_type
|
|
role: [primary-controller, controller]
|
|
required_for: [post_deployment_end]
|
|
requires: [disable_default_type]
|
|
type: puppet
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/default_type.pp
|
|
puppet_modules: "puppet/modules/:/etc/puppet/modules/"
|
|
timeout: 360
|
|
|
|
- id: configure_nimblestorage_extraspecs_encryption
|
|
role: [primary-controller, controller]
|
|
required_for: [post_deployment_end]
|
|
requires: [set_default_type]
|
|
type: puppet
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/extraspecs_encryption.pp
|
|
puppet_modules: "puppet/modules/:/etc/puppet/modules/"
|
|
timeout: 360
|
|
|
|
- id: configure_nimblestorage_extraspecs_perfpol
|
|
role: [primary-controller, controller]
|
|
required_for: [post_deployment_end]
|
|
requires: [set_default_type]
|
|
type: puppet
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/extraspecs_perfpol.pp
|
|
puppet_modules: "puppet/modules/:/etc/puppet/modules/"
|
|
timeout: 360
|
|
|
|
- id: configure_nimblestorage_extraspecs_multi_init
|
|
role: [primary-controller, controller]
|
|
required_for: [post_deployment_end]
|
|
requires: [set_default_type]
|
|
type: puppet
|
|
parameters:
|
|
puppet_manifest: puppet/manifests/extraspecs_multi_init.pp
|
|
puppet_modules: "puppet/modules/:/etc/puppet/modules/"
|
|
timeout: 360
|