tripleo-heat-templates/puppet/services/nova-conductor.yaml

99 lines
3.0 KiB
YAML

heat_template_version: queens
description: >
OpenStack Nova Conductor service configured with Puppet
parameters:
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. This
mapping overrides those in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
NovaWorkers:
default: 0
description: Number of workers for Nova services.
type: number
NovaConductorLoggingSource:
type: json
default:
tag: openstack.nova.conductor
path: /var/log/nova/nova-conductor.log
MonitoringSubscriptionNovaConductor:
default: 'overcloud-nova-conductor'
type: string
UpgradeLevelNovaCompute:
type: string
description: Nova Compute upgrade level
default: ''
conditions:
nova_workers_zero: {equals : [{get_param: NovaWorkers}, 0]}
resources:
NovaBase:
type: ./nova-base.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the Nova Conductor service.
value:
service_name: nova_conductor
monitoring_subscription: {get_param: MonitoringSubscriptionNovaConductor}
config_settings:
map_merge:
- get_attr: [NovaBase, role_data, config_settings]
-
if:
- nova_workers_zero
- {}
- nova::conductor::workers: {get_param: NovaWorkers}
service_config_settings:
fluentd:
tripleo_fluentd_groups_nova_conductor:
- nova
tripleo_fluentd_sources_nova_conductor:
- {get_param: NovaConductorLoggingSource}
step_config: |
include tripleo::profile::base::nova::conductor
upgrade_tasks:
- name: Stop nova_conductor service
when: step|int == 1
service: name=openstack-nova-conductor state=stopped
# If not already set by puppet (e.g a pre-ocata version), set the
# upgrade_level for compute to "auto"
- name: Set compute upgrade level to auto
when: step|int == 1
ini_file:
str_replace:
template: "dest=/etc/nova/nova.conf section=upgrade_levels option=compute value=LEVEL"
params:
LEVEL: {get_param: UpgradeLevelNovaCompute}