Carlos Camacho 44ef2a3ec1 Change template names to rocky
The new master branch should point now to rocky.

So, HOT templates should specify that they might contain features
for rocky release [1]

Also, this submission updates the yaml validation to use only latest
heat_version alias. There are cases in which we will need to set
the version for specific templates i.e. mixed versions, so there
is added a variable to assign specific templates to specific heat_version
aliases, avoiding the introductions of error by bulk replacing the
the old version in new releases.

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#rocky
Change-Id: Ib17526d9cc453516d99d4659ee5fa51a5aa7fb4b
2018-05-09 08:28:42 +02:00

118 lines
3.9 KiB
YAML

heat_template_version: rocky
description: Sensu base service
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
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
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
MonitoringRabbitCluster:
description: RabbitMQ cluster configuration Sensu has to connect to.
type: json
default: []
MonitoringRabbitHost:
description: RabbitMQ host Sensu has to connect to.
type: string
default: ''
MonitoringRabbitPort:
default: 5672
description: Set RabbitMQ subscriber port, change this if using SSL.
type: number
MonitoringRabbitUseSSL:
default: false
description: >
RabbitMQ client subscriber parameter to specify an SSL connection
to the RabbitMQ host. Set MonitoringRabbitUseSSL to true without
specifying a private key or cert chain to use SSL transport,
but not cert auth.
type: boolean
MonitoringRabbitSSLPrivateKey:
default: ''
description: Private key to be used by Sensu to connect to RabbitMQ host.
type: string
MonitoringRabbitSSLCertChain:
default: ''
description: >
Private SSL cert chain to be used by Sensu to connect to RabbitMQ host.
type: string
MonitoringRabbitPassword:
description: The RabbitMQ password used for monitoring purposes.
type: string
hidden: true
default: sensu
MonitoringRabbitUserName:
description: The RabbitMQ username used for monitoring purposes.
type: string
default: sensu
MonitoringRabbitVhost:
description: The RabbitMQ vhost used for monitoring purposes.
type: string
default: '/sensu'
SensuRedactVariables:
description: Variables from Sensu configuration, which have to be redacted.
type: comma_delimited_list
default:
- password
- passwd
- pass
- api_key
- api_token
- access_key
- secret_key
- private_key
- secret
conditions:
not_cluster_connection:
equals: [{get_param: MonitoringRabbitCluster}, []]
outputs:
role_data:
description: Role data for the Sensu role.
value:
service_name: sensu_base
config_settings:
map_merge:
- sensu::enterprise: false
sensu::enterprise_dashboard: false
sensu::install_repo: false
sensu::manage_user: false
sensu::redact: {get_param: SensuRedactVariables}
sensu::sensu_plugin_provider: 'yum'
sensu::sensu_plugin_name: 'rubygem-sensu-plugin'
sensu::version: 'present'
- if:
- not_cluster_connection
- sensu::rabbitmq_host: {get_param: MonitoringRabbitHost}
sensu::rabbitmq_port: {get_param: MonitoringRabbitPort}
sensu::rabbitmq_user: {get_param: MonitoringRabbitUserName}
sensu::rabbitmq_password: {get_param: MonitoringRabbitPassword}
sensu::rabbitmq_vhost: {get_param: MonitoringRabbitVhost}
sensu::rabbitmq_ssl: {get_param: MonitoringRabbitUseSSL}
sensu::rabbitmq_ssl_private_key: {get_param: MonitoringRabbitSSLPrivateKey}
sensu::rabbitmq_ssl_cert_chain: {get_param: MonitoringRabbitSSLCertChain}
- sensu::rabbitmq_cluster: {get_param: MonitoringRabbitCluster}