69 lines
2.2 KiB
YAML
69 lines
2.2 KiB
YAML
- id: primary-cluster
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: [primary-controller]
|
|
required_for: [deploy_end]
|
|
requires: [hosts, firewall, deploy_start]
|
|
condition:
|
|
yaql_exp: &cluster >
|
|
changedAny($.network_scheme, $.get('cluster_recheck_interval', '190s'),
|
|
$.network_metadata, $.get('corosync_roles'))
|
|
parameters:
|
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/cluster/cluster.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 300
|
|
test_post:
|
|
cmd: ruby /etc/puppet/modules/osnailyfacter/modular/cluster/cluster_post.rb
|
|
|
|
- id: cluster
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: [controller]
|
|
cross-depends:
|
|
yaql_exp: >
|
|
[{name=>'primary-cluster', role=>$.roles.select('primary-' + $)}]
|
|
required_for: [deploy_end]
|
|
requires: [hosts, firewall, deploy_start]
|
|
condition:
|
|
yaql_exp: *cluster
|
|
parameters:
|
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/cluster/cluster.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 300
|
|
test_post:
|
|
cmd: ruby /etc/puppet/modules/osnailyfacter/modular/cluster/cluster_post.rb
|
|
|
|
- id: cluster_health
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: [primary-controller, controller]
|
|
required_for: [deploy_end]
|
|
requires: [primary-cluster, cluster]
|
|
condition:
|
|
yaql_exp: >
|
|
changedAny($.get('corosync_roles'), $.get('corosync_disks'),
|
|
$.get('corosync_min_disk_space'), $.get('corosync_disk_unit'),
|
|
$.get('corosync_disk_monitor_interval'),
|
|
$.get('cluster_recheck_interval', '190s'), $.network_metadata,
|
|
$.network_scheme)
|
|
parameters:
|
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/cluster/health.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 600
|
|
test_post:
|
|
cmd: ruby /etc/puppet/modules/osnailyfacter/modular/cluster/health_post.rb
|
|
|
|
- id: cluster_mm
|
|
type: shell
|
|
version: 2.1.0
|
|
groups: [primary-controller, controller]
|
|
requires: [primary-cluster, cluster]
|
|
required_for: [deploy_end]
|
|
condition:
|
|
yaql_exp: "$.status = 'ready' and changedAny($.network_metadata.nodes.keys(), $.get('corosync_roles'))"
|
|
cross-depended-by:
|
|
- name: /^(primary-)?(database|rabbitmq)$/
|
|
parameters:
|
|
cmd: crm node maintenance
|
|
timeout: 120
|