Change flat network name for nosdn fdio scenario
[apex-tripleo-heat-templates.git] / puppet / services / ceilometer-agent-compute.yaml
1 heat_template_version: pike
2
3 description: >
4   OpenStack Ceilometer Compute Agent 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   MonitoringSubscriptionCeilometerCompute:
34     default: 'overcloud-ceilometer-agent-compute'
35     type: string
36   InstanceDiscoveryMethod:
37     default: 'libvirt_metadata'
38     description: Method used to discover instances running on compute node
39     type: string
40     constraints:
41     - allowed_values: ['naive', 'libvirt_metadata', 'workload_partitioning']
42   RedisPassword:
43     description: The password for the redis service account.
44     type: string
45     hidden: true
46
47 resources:
48   CeilometerServiceBase:
49     type: ./ceilometer-base.yaml
50     properties:
51       ServiceData: {get_param: ServiceData}
52       ServiceNetMap: {get_param: ServiceNetMap}
53       DefaultPasswords: {get_param: DefaultPasswords}
54       EndpointMap: {get_param: EndpointMap}
55       RoleName: {get_param: RoleName}
56       RoleParameters: {get_param: RoleParameters}
57
58 outputs:
59   role_data:
60     description: Role data for the Ceilometer Compute Agent role.
61     value:
62       service_name: ceilometer_agent_compute
63       monitoring_subscription: {get_param: MonitoringSubscriptionCeilometerCompute}
64       config_settings:
65         map_merge:
66           - get_attr: [CeilometerServiceBase, role_data, config_settings]
67           - ceilometer::agent::compute::instance_discovery_method: {get_param: InstanceDiscoveryMethod}
68           - ceilometer_redis_password: {get_param: RedisPassword}
69             compute_namespace: true
70       service_config_settings:
71         get_attr: [CeilometerServiceBase, role_data, service_config_settings]
72       step_config: |
73         include ::tripleo::profile::base::ceilometer::agent::polling
74       upgrade_tasks:
75         - name: Check if ceilometer_agent_compute is deployed
76           command: systemctl is-enabled openstack-ceilometer-compute
77           tags: common
78           ignore_errors: True
79           register: ceilometer_agent_compute_enabled
80         - name: "PreUpgrade step0,validation: Check service openstack-ceilometer-compute is running"
81           shell: /usr/bin/systemctl show 'openstack-ceilometer-compute' --property ActiveState | grep '\bactive\b'
82           when: ceilometer_agent_compute_enabled.rc == 0
83           tags: step0,validation
84         - name: Stop ceilometer_agent_compute service
85           tags: step1
86           when: ceilometer_agent_compute_enabled.rc == 0
87           service: name=openstack-ceilometer-compute state=stopped