93f6141107
Because of bug in fuel-yaql there is no other way as using some hardcoded ps-similar constructions. Change-Id: Ifcbe44c77f2266753b2916bcf2a06a9d37ee87d5
364 lines
12 KiB
YAML
364 lines
12 KiB
YAML
- id: primary-murano-node
|
|
type: group
|
|
role: [primary-murano-node]
|
|
tasks: &common_tasks
|
|
- hiera
|
|
- setup_repositories
|
|
- fuel_pkgs
|
|
- globals
|
|
- tools
|
|
- logging
|
|
- hiera_default_route
|
|
- netconfig
|
|
- hosts
|
|
required_for: [deploy_end]
|
|
requires: [primary-controller]
|
|
parameters:
|
|
strategy:
|
|
type: one_by_one
|
|
|
|
- id: murano-node
|
|
type: group
|
|
role: [murano-node]
|
|
tasks: *common_tasks
|
|
required_for: [deploy_end]
|
|
requires: [primary-murano-node]
|
|
parameters:
|
|
strategy:
|
|
type: parallel
|
|
|
|
- id: hiera-murano-override
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller', 'primary-murano-node', 'murano-node']
|
|
required_for: [logging]
|
|
requires: [globals]
|
|
parameters:
|
|
puppet_manifest: manifests/murano_hiera_override.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 120
|
|
# reexecute_on is needed for scale-down operations
|
|
reexecute_on:
|
|
- deploy_changes
|
|
|
|
- id: pin-murano-plugin-repo
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller', 'primary-murano-node', 'murano-node' ]
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
changedAny($.get('detach-murano').metadata.plugin_version)
|
|
required_for: [hiera-murano-override]
|
|
requires: [globals]
|
|
parameters:
|
|
puppet_manifest: manifests/pin_murano_plugin_repo.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 120
|
|
|
|
- id: murano-keystone-endpoints
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
changedAny($.get('detach-murano'), $.network_metadata.vips,
|
|
$.get('region', 'RegionOne'), $.public_ssl, $.get('use_ssl'))
|
|
required_for: [murano-controller-end]
|
|
requires: [primary-keystone, keystone]
|
|
cross-depends:
|
|
- name: keystone
|
|
parameters:
|
|
puppet_manifest: manifests/murano_keystone.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 1800
|
|
|
|
- id: murano-database
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
changedAny($.network_metadata.nodes.values().where($.fqdn = new($.fqdn)),
|
|
$.get('detach-murano').metadata.plugin_version,
|
|
$.get('detach-murano').yaml_additional_config, $.mysql,
|
|
$.network_metadata.vips, $.get('database_vip'))
|
|
cross-depends:
|
|
- name: /(primary-)?database/
|
|
required_for: [murano-controller-end]
|
|
requires: [primary-database, database]
|
|
parameters:
|
|
puppet_manifest: manifests/murano_db.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 1800
|
|
|
|
- id: murano-dashboard
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller','controller']
|
|
required_for: [murano-controller-end]
|
|
requires: [horizon, glance]
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
changedAny($.get('detach-murano').murano_glance_artifacts,
|
|
$.get('detach-murano').murano_repo_url,
|
|
$.get('detach-murano').metadata.plugin_version, $.network_scheme,
|
|
$.horizon, $.get('memcached_addresses'),
|
|
$.get('memcache_roles'),
|
|
$.network_metadata.nodes.values().where(
|
|
('controller' in $.node_roles) or
|
|
('primary-controller' in $.node_roles)),
|
|
$.storage, $.neutron_advanced_configuration, $.public_ssl,
|
|
$.get('horizon_use_ssl'), $.get('external_lb'), $.get('use_ssl'),
|
|
$.nova_quota, $.debug, $.get('verbose'), $.get('apache_ports'))
|
|
parameters:
|
|
puppet_manifest: manifests/murano_dashboard.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 1800
|
|
|
|
- id: murano-controller-end
|
|
version: 2.1.0
|
|
type: skipped
|
|
groups: ['primary-controller','controller']
|
|
required_for: [deploy_end]
|
|
requires: []
|
|
|
|
- id: murano-update-openrc
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
changedAny($.get('detach-murano').murano_glance_artifacts,
|
|
$.get('detach-murano').murano_repo_url)
|
|
required_for: [murano-controller-end]
|
|
requires: [primary-keystone, keystone]
|
|
cross-depends:
|
|
- name: keystone
|
|
parameters:
|
|
puppet_manifest: manifests/update_openrc.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 120
|
|
|
|
- id: murano-haproxy
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller']
|
|
required_for: [murano-controller-end]
|
|
requires: [deploy_start, primary-cluster-haproxy, cluster-haproxy]
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
(changedAny($.get('detach-murano'),
|
|
$.public_ssl, $.get('use_ssl'), $.get('external_lb'),
|
|
$.network_metadata.nodes.values().where(
|
|
('murano-node' in $.node_roles) or
|
|
('primary-murano-node' in $.node_roles)),
|
|
$.network_metadata.vips) or
|
|
(not $.network_metadata.nodes.values().any(
|
|
('murano-node' in $.node_roles) or
|
|
('primary-murano-node' in $.node_roles)) and
|
|
changedAny($.network_metadata.nodes.values().where(
|
|
('controller' in $.node_roles) or
|
|
('primary-controller' in $.node_roles)))))
|
|
cross-depends:
|
|
- name: /(primary-)?cluster-haproxy/
|
|
role: self
|
|
parameters:
|
|
puppet_manifest: manifests/murano_haproxy.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 300
|
|
|
|
- id: murano-disable-old-services
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
$.network_metadata.nodes.values().any('primary-murano-node' in $.node_roles)
|
|
required_for: [murano-controller-end]
|
|
parameters:
|
|
puppet_manifest: manifests/murano_disable_old.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 900
|
|
|
|
- id: murano-logging
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller', 'primary-murano-node', 'murano-node']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
($.roles.any($.matches('(primary-)?murano-node')) or
|
|
not ($.murano.enabled or $.roles.any($.matches('(primary-)?murano-node'))))
|
|
required_for: [murano-services]
|
|
requires: [logging]
|
|
parameters:
|
|
puppet_manifest: manifests/murano_logging.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 1800
|
|
|
|
- id: murano-services
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller', 'primary-murano-node', 'murano-node']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
($.roles.any($.matches('(primary-)?murano-node')) or
|
|
not $.network_metadata.nodes.values().any(
|
|
('murano-node' in $.node_roles) or
|
|
('primary-murano-node' in $.node_roles))) and
|
|
changedAny($.get('detach-murano'), $.rabbit, $.ceilometer,
|
|
$.quantum_settings, $.network_metadata.vips, $.get('database_vip'),
|
|
$.get('region', 'RegionOne'), $.quantum, $.network_metadata,
|
|
$.get('syslog_log_facility_murano'), $.debug,
|
|
$.get('default_log_levels'), $.get('use_syslog'),
|
|
$.get('use_stderr'), $.get('rabbit_ha_queues'), $.get('amqp_port'),
|
|
$.get('amqp_hosts'), $.external_dns, $.public_ssl, $.get('use_ssl'),
|
|
$.get('kombu_compression'), $.get('keystone_endpoint'))
|
|
required_for: [deploy_end]
|
|
requires: [hosts]
|
|
cross-depends:
|
|
- name: murano-controller-end
|
|
parameters:
|
|
puppet_manifest: manifests/murano.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 3600
|
|
|
|
- id: murano-node-rabbitmq
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller', 'primary-murano-node', 'murano-node']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
($.roles.any($.matches('(primary-)?murano-node')) or
|
|
not $.network_metadata.nodes.values().any(
|
|
('murano-node' in $.node_roles) or
|
|
('primary-murano-node' in $.node_roles))) and
|
|
changedAny($.get('detach-murano'), $.rabbit)
|
|
required_for: [murano-services]
|
|
requires: [hosts]
|
|
parameters:
|
|
puppet_manifest: manifests/murano_rabbitmq.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 1800
|
|
|
|
- id: murano-node-cfapi
|
|
version: 2.1.0
|
|
type: puppet
|
|
groups: ['primary-controller', 'controller', 'primary-murano-node', 'murano-node']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('murano_cfapi', false) and
|
|
($.roles.any($.matches('(primary-)?murano-node')) or
|
|
not $.network_metadata.nodes.values().any(
|
|
('murano-node' in $.node_roles) or
|
|
('primary-murano-node' in $.node_roles))) and
|
|
changedAny($.public_ssl,
|
|
$.network_metadata.vips, $.get('use_ssl'), $.network_metadata)
|
|
required_for: [deploy_end]
|
|
requires: [murano-services]
|
|
parameters:
|
|
puppet_manifest: manifests/murano_cfapi.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 3600
|
|
|
|
# Murano ssl tasks
|
|
- id: murano-ssl-keys-saving
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: ['primary-murano-node', 'murano-node']
|
|
requires: [netconfig]
|
|
condition:
|
|
yaql_exp: >
|
|
(($.public_ssl.horizon or $.public_ssl.services) and
|
|
$.public_ssl.cert_source = 'user_uploaded' and
|
|
changed($.public_ssl.cert_data)) or
|
|
(changed($.get('use_ssl')) and len($.get('use_ssl', [])) > 0)
|
|
required_for: [deploy_end]
|
|
parameters:
|
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_keys_saving.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 120
|
|
|
|
- id: murano-ssl-add-trust-chain
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: ['primary-murano-node', 'murano-node']
|
|
requires: [murano-ssl-keys-saving]
|
|
condition:
|
|
yaql_exp: &public_ssl_enabled >
|
|
(changed($.public_ssl) and
|
|
($.public_ssl.horizon or $.public_ssl.services)) or
|
|
(changed($.get('use_ssl')) and (len($.get('use_ssl', [])) > 0))
|
|
required_for: [hosts]
|
|
parameters:
|
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_add_trust_chain.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 120
|
|
|
|
- id: murano-ssl-dns-setup
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: ['primary-murano-node', 'murano-node']
|
|
requires: [murano-ssl-add-trust-chain]
|
|
condition:
|
|
yaql_exp: *public_ssl_enabled
|
|
required_for: [hosts]
|
|
parameters:
|
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_dns_setup.pp
|
|
puppet_modules: /etc/puppet/modules
|
|
timeout: 120
|
|
#####
|
|
|
|
- id: import_murano_package
|
|
type: puppet
|
|
version: 2.1.0
|
|
groups: ['primary-murano-node', 'primary-controller']
|
|
condition:
|
|
yaql_exp: >
|
|
$.get('detach-murano', {}).get('metadata', {}).get('enabled', false) and
|
|
($.roles.any($.matches('primary-murano-node')) or
|
|
not $.network_metadata.nodes.values().any(
|
|
('primary-murano-node' in $.node_roles))) and
|
|
changedAny($.get('detach-murano').murano_glance_artifacts)
|
|
required_for: [post_deployment_end]
|
|
cross-depends:
|
|
- name: upload_cirros
|
|
parameters:
|
|
puppet_manifest: manifests/import_murano_package.pp
|
|
puppet_modules: modules:/etc/puppet/modules
|
|
timeout: 180
|
|
|
|
# skip base murano tasks
|
|
- id: murano
|
|
type: skipped
|
|
|
|
- id: murano-db
|
|
type: skipped
|
|
|
|
- id: murano-keystone
|
|
type: skipped
|
|
|
|
- id: murano-rabbitmq
|
|
type: skipped
|
|
|
|
- id: murano-cfapi
|
|
type: skipped
|
|
|
|
- id: murano-cfapi-keystone
|
|
type: skipped
|
|
|
|
- id: openstack-haproxy-murano
|
|
type: skipped
|
|
|
|
- id: upload_murano_package
|
|
type: skipped
|