fuel-library/deployment/puppet/openstack_tasks/examples/ironic/tasks.yaml

104 lines
3.6 KiB
YAML

- id: ironic-api
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
cross-depends:
- name: ironic-db
- name: ironic-keystone
required_for: [primary-openstack-controller, openstack-controller]
requires: [openstack-haproxy, ironic-db, ironic-keystone]
condition:
yaql_exp: >
$.ironic.enabled and changedAny($.ironic,
$.get('service_endpoint'), $.get('database_vip'),
$.get('neutron_endpoint'), $.debug, $.get('verbose'), $.network_metadata,
$.get('glance_api_servers'), $.get('default_log_levels'),
$.get('use_syslog'), $.get('syslog_log_facility_ironic'), $.rabbit,
$.network_metadata.nodes.values().where(
$.node_roles.any($.matches('controller'))).network_roles.select(
$.get('mgmt/messaging')),
$.get('amqp_hosts'), $.get('amqp_port'), $.quantum_settings,
('primary-controller' in $.roles), $.get('kombu_compression'),
$.get('use_ssl'), $.network_scheme)
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ironic/ironic.pp
puppet_modules: /etc/puppet/modules
timeout: 3600
- id: ironic-db
type: puppet
version: 2.2.0
tags: [primary-database]
required_for: [ironic-api]
requires: [primary-database, database]
cross-depends:
- name: /^(primary-)?database$/
cross-depended-by:
- name: ironic-api
condition:
yaql_exp: >
$.ironic.enabled and changedAny($.ironic, $.mysql, $.get('database_vip'),
$.get('mysql_custom_setup_class'))
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ironic/db.pp
puppet_modules: /etc/puppet/modules
timeout: 1800
- id: ironic-keystone
type: puppet
version: 2.2.0
tags: [primary-keystone]
required_for: [ironic-api]
requires: [primary-keystone, keystone]
cross-depends:
- name: /^(primary-)?keystone$/
cross-depended-by:
- name: ironic-api
condition:
yaql_exp: >
$.ironic.enabled and changedAny($.ironic, $.network_metadata.vips,
$.public_ssl, $.get('region', 'RegionOne'))
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ironic/keystone.pp
puppet_modules: /etc/puppet/modules
timeout: 1800
- id: ironic-compute
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
condition:
yaql_exp: >
$.ironic.enabled and changedAny($.ironic, $.nova,
$.network_metadata.vips, $.get('database_vip'),
$.get('neutron_endpoint'), $.get('ironic_endpoint'),
$.get('glance_api_servers'), $.debug, $.get('verbose'),
$.get('use_syslog'), $.get('syslog_log_facility_ironic'),
$.get('syslog_log_facility_nova'),
$.network_metadata.nodes.values().where(
$.node_roles.any($.matches('controller'))).network_roles.select(
$.get('mgmt/messaging')),
$.get('amqp_hosts'), $.rabbit,
$.get('nova_report_interval', '60'),
$.get('nova_service_down_time', '180'), $.quantum_settings,
$.get('memcached_servers'),
$.network_metadata.nodes.values().where(
('controller' in $.node_roles) or
('primary-controller' in $.node_roles)),
$.get('use_ssl'))
required_for: [deploy_end]
requires: [primary-openstack-controller, openstack-controller, openstack-network-end, ironic-api]
refresh_on: [nova_config, nova_paste_api_ini]
cross-depends:
- name: /^(primary-)?rabbitmq$/
- name: /^(primary-)?openstack-controller$/
role: self
- name: ironic-api
role: self
- name: memcached
role: self
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ironic/ironic-compute.pp
puppet_modules: /etc/puppet/modules
timeout: 3600