fuel-library/deployment/puppet/osnailyfacter/modular/ceph/tasks.yaml

199 lines
6.1 KiB
YAML

- id: top-role-ceph-osd
type: puppet
version: 2.1.0
groups: [ceph-osd]
required_for: [deploy_end]
requires: [hosts, firewall]
condition:
yaql_exp:
changedAny($.storage, $.get('ceph_tuning_settings'), $.get('use_ssl'),
$.get('use_syslog'), $.network_scheme,
$.network_metadata.nodes.values().where(
('controller' in $.node_roles) or
('primary-controller' in $.node_roles)),
('primary-controller' in $.roles))
cross-depends:
- name: /^(primary-)?ceph-mon$/
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/ceph-osd.pp
puppet_modules: /etc/puppet/modules
timeout: 3600
- id: primary-ceph-mon
type: puppet
version: 2.1.0
groups: [primary-controller]
required_for: [deploy_end, controller_remaining_tasks]
requires: [primary-openstack-controller, primary-openstack-cinder]
condition:
yaql_exp: &ceph_mon >
($.storage.objects_ceph or $.storage.images_ceph or
$.storage.volumes_ceph or $.storage.ephemeral_ceph) and
changedAny($.storage, $.get('use_syslog'), $.network_scheme,
$.network_metadata.nodes.values().where(
$.node_roles.any($.matches('(primary-)?controller'))))
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/mon.pp
puppet_modules: /etc/puppet/modules
timeout: 300
- id: ceph-mon
type: puppet
version: 2.1.0
groups: [controller]
required_for: [deploy_end, controller_remaining_tasks]
requires: [primary-openstack-controller, openstack-controller, openstack-cinder]
condition:
yaql_exp: *ceph_mon
cross-depends:
- name: primary-ceph-mon
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/mon.pp
puppet_modules: /etc/puppet/modules
timeout: 300
- id: primary-mon-update
type: puppet
version: 2.1.0
groups: [primary-controller]
required_for: [deploy_end, controller_remaining_tasks]
requires: [primary-ceph-mon]
condition:
yaql_exp: *ceph_mon
cross-depends:
- name: /^(primary-)?ceph-mon$/
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/primary_mon_update.pp
puppet_modules: /etc/puppet/modules
timeout: 300
- id: ceph-radosgw
version: 2.2.0
type: puppet
tags: [primary-controller, controller]
required_for: [deploy_end]
requires: [radosgw-keystone, apache, keystone, ceph-mon]
cross-depends:
- name: radosgw-keystone
- name: apache
role: self
- name: ceph-mon
role: self
cross-depended-by:
- name: deploy_end
role: self
condition:
yaql_exp:
$.storage.objects_ceph and
changedAny($.storage, $.get('use_syslog'), $.keystone, $.network_metadata.vips, $.get('use_ssl'),
$.network_metadata.nodes.values().where(
('controller' in $.node_roles) or
('primary-controller' in $.node_roles)),
('primary-controller' in $.roles), $.network_scheme, $.get('apache_ports'))
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/radosgw.pp
puppet_modules: /etc/puppet/modules
timeout: 3600
test_pre:
cmd: ruby /etc/puppet/modules/osnailyfacter/modular/ceph/radosgw_pre.rb
test_post:
cmd: ruby /etc/puppet/modules/osnailyfacter/modular/ceph/radosgw_post.rb
- id: radosgw-keystone
type: puppet
version: 2.2.0
tags: [primary-keystone]
required_for: [ceph-radosgw]
requires: [keystone, primary-mon-update]
cross-depends:
- name: /^(primary-)?keystone$/
role: self
- name: primary-mon-update
cross-depended-by:
- name: ceph-radosgw
condition:
yaql_exp:
$.storage.objects_ceph and
changedAny($.storage, $.network_metadata.vips,
$.get('region', 'RegionOne'), $.public_ssl, $.get('use_ssl'))
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/radosgw_keystone.pp
puppet_modules: /etc/puppet/modules
timeout: 1800
- id: ceph-compute
type: puppet
version: 2.1.0
groups: [compute]
cross-depends:
- name: /^(primary-)?ceph-mon$/
requires: [top-role-compute]
required_for: [deploy_end]
condition:
yaql_exp: &storage_changed >
($.storage.objects_ceph or $.storage.images_ceph or
$.storage.volumes_ceph or $.storage.ephemeral_ceph) and
(changedAny($.storage, $.quantum, $.network_metadata.vips,
$.get('use_syslog'), $.get('syslog_log_facility_ceph'), $.keystone,
$.network_scheme,
$.network_metadata.nodes.values().flatten().node_roles.flatten().where(
$ = 'controller' or $ = 'primary-controller')))
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/ceph_compute.pp
puppet_modules: /etc/puppet/modules
timeout: 300
cwd: /
test_post:
cmd: ruby /etc/puppet/modules/osnailyfacter/modular/ceph/ceph_compute_post.rb
#
# POST_DEPLOYMENT Tasks
#
- id: ceph_create_pools
type: puppet
version: 2.1.0
role: [primary-controller, controller]
requires: [post_deployment_start]
required_for: [ceph_ready_check]
cross-depended-by:
- name: ceph_ready_check
condition:
yaql_exp: &ceph_changed >
($.storage.objects_ceph or $.storage.images_ceph or
$.storage.volumes_ceph or $.storage.ephemeral_ceph) and
changed($.storage)
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/ceph_pools.pp
puppet_modules: /etc/puppet/modules
timeout: 300
cwd: /
- id: ceph_ready_check
type: puppet
version: 2.1.0
role: [primary-controller]
condition:
yaql_exp: *ceph_changed
requires: [post_deployment_start]
required_for: [upload_cirros]
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/ceph_ready_check.pp
puppet_modules: /etc/puppet/modules
timeout: 1800
cwd: /
- id: updatedb
type: puppet
version: 2.1.0
role: [primary-controller, controller, ceph-osd]
condition:
yaql_exp: *ceph_changed
requires: [post_deployment_start]
required_for: [post_deployment_end]
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/updatedb.pp
puppet_modules: /etc/puppet/modules
timeout: 120
cwd: /