Change flat network name for nosdn fdio scenario
[apex-tripleo-heat-templates.git] / puppet / services / nova-conductor.yaml
1 heat_template_version: pike
2
3 description: >
4   OpenStack Nova Conductor service configured with Puppet
5
6 parameters:
7   ServiceData:
8     default: {}
9     description: Dictionary packing service data
10     type: json
11   ServiceNetMap:
12     default: {}
13     description: Mapping of service_name -> network name. Typically set
14                  via parameter_defaults in the resource registry.  This
15                  mapping overrides those in ServiceNetMapDefaults.
16     type: json
17   DefaultPasswords:
18     default: {}
19     type: json
20   RoleName:
21     default: ''
22     description: Role name on which the service is applied
23     type: string
24   RoleParameters:
25     default: {}
26     description: Parameters specific to the role
27     type: json
28   EndpointMap:
29     default: {}
30     description: Mapping of service endpoint -> protocol. Typically set
31                  via parameter_defaults in the resource registry.
32     type: json
33   NovaWorkers:
34     default: 0
35     description: Number of workers for Nova services.
36     type: number
37   MonitoringSubscriptionNovaConductor:
38     default: 'overcloud-nova-conductor'
39     type: string
40   NovaSchedulerLoggingSource:
41     type: json
42     default:
43       tag: openstack.nova.scheduler
44       path: /var/log/nova/nova-scheduler.log
45   UpgradeLevelNovaCompute:
46     type: string
47     description: Nova Compute upgrade level
48     default: ''
49
50 conditions:
51   nova_workers_zero: {equals : [{get_param: NovaWorkers}, 0]}
52
53 resources:
54   NovaBase:
55     type: ./nova-base.yaml
56     properties:
57       ServiceData: {get_param: ServiceData}
58       ServiceNetMap: {get_param: ServiceNetMap}
59       DefaultPasswords: {get_param: DefaultPasswords}
60       EndpointMap: {get_param: EndpointMap}
61       RoleName: {get_param: RoleName}
62       RoleParameters: {get_param: RoleParameters}
63
64 outputs:
65   role_data:
66     description: Role data for the Nova Conductor service.
67     value:
68       service_name: nova_conductor
69       monitoring_subscription: {get_param: MonitoringSubscriptionNovaConductor}
70       logging_source: {get_param: NovaSchedulerLoggingSource}
71       logging_groups:
72         - nova
73       config_settings:
74         map_merge:
75         - get_attr: [NovaBase, role_data, config_settings]
76         -
77           if:
78           - nova_workers_zero
79           - {}
80           - nova::conductor::workers: {get_param: NovaWorkers}
81       step_config: |
82         include tripleo::profile::base::nova::conductor
83       upgrade_tasks:
84         - name: Stop nova_conductor service
85           tags: step1
86           service: name=openstack-nova-conductor state=stopped
87         # If not already set by puppet (e.g a pre-ocata version), set the
88         # upgrade_level for compute to "auto"
89         - name: Set compute upgrade level to auto
90           tags: step1
91           ini_file:
92             str_replace:
93               template: "dest=/etc/nova/nova.conf section=upgrade_levels option=compute value=LEVEL"
94               params:
95                 LEVEL: {get_param: UpgradeLevelNovaCompute}