961ff3b0962fc203e1edf650a2429aa6502f724b
[apex-tripleo-heat-templates.git] / puppet / services / monitoring / sensu-base.yaml
1 heat_template_version: ocata
2
3 description: Sensu base service
4
5 parameters:
6   ServiceNetMap:
7     default: {}
8     description: Mapping of service_name -> network name. Typically set
9                  via parameter_defaults in the resource registry.  This
10                  mapping overrides those in ServiceNetMapDefaults.
11     type: json
12   EndpointMap:
13     default: {}
14     description: Mapping of service endpoint -> protocol. Typically set
15                  via parameter_defaults in the resource registry.
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   MonitoringRabbitHost:
29     description: RabbitMQ host Sensu has to connect to.
30     type: string
31     default: ''
32   MonitoringRabbitPort:
33     default: 5672
34     description: Set RabbitMQ subscriber port, change this if using SSL.
35     type: number
36   MonitoringRabbitUseSSL:
37     default: false
38     description: >
39         RabbitMQ client subscriber parameter to specify an SSL connection
40         to the RabbitMQ host. Set MonitoringRabbitUseSSL to true without
41         specifying a private key or cert chain to use SSL transport,
42         but not cert auth.
43     type: string
44   MonitoringRabbitSSLPrivateKey:
45     default: ''
46     description: Private key to be used by Sensu to connect to RabbitMQ host.
47     type: string
48   MonitoringRabbitSSLCertChain:
49     default: ''
50     description: >
51       Private SSL cert chain to be used by Sensu to connect to RabbitMQ host.
52     type: string
53   MonitoringRabbitPassword:
54     description: The RabbitMQ password used for monitoring purposes.
55     type: string
56     hidden: true
57   MonitoringRabbitUserName:
58     description: The RabbitMQ username used for monitoring purposes.
59     type: string
60     default: sensu
61   MonitoringRabbitVhost:
62     description: The RabbitMQ vhost used for monitoring purposes.
63     type: string
64     default: '/sensu'
65   SensuRedactVariables:
66     description: Variables from Sensu configuration, which have to be redacted.
67     type: comma_delimited_list
68     default:
69       - password
70       - passwd
71       - pass
72       - api_key
73       - api_token
74       - access_key
75       - secret_key
76       - private_key
77       - secret
78
79 outputs:
80   role_data:
81     description: Role data for the Sensu role.
82     value:
83       service_name: sensu_base
84       config_settings:
85         sensu::enterprise: false
86         sensu::enterprise_dashboard: false
87         sensu::install_repo: false
88         sensu::manage_user: false
89         sensu::rabbitmq_host: {get_param: MonitoringRabbitHost}
90         sensu::rabbitmq_password: {get_param: MonitoringRabbitPassword}
91         sensu::rabbitmq_port: {get_param: MonitoringRabbitPort}
92         sensu::rabbitmq_ssl: {get_param: MonitoringRabbitUseSSL}
93         sensu::rabbitmq_ssl_private_key: {get_param: MonitoringRabbitSSLPrivateKey}
94         sensu::rabbitmq_ssl_cert_chain: {get_param: MonitoringRabbitSSLCertChain}
95         sensu::rabbitmq_user: {get_param: MonitoringRabbitUserName}
96         sensu::rabbitmq_vhost: {get_param: MonitoringRabbitVhost}
97         sensu::redact: {get_param: SensuRedactVariables}
98         sensu::sensu_plugin_provider: 'yum'
99         sensu::sensu_plugin_name: 'rubygem-sensu-plugin'
100         sensu::version: 'present'