-heat_template_version: 2016-04-08
+heat_template_version: 2016-10-14
description: >
Utility stack to convert an array of services into a set of combined
description: |
List nested stack service templates.
type: comma_delimited_list
+ 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
- MysqlVirtualIPUri:
- default: ''
- type: string
- description: The URI virtual IP for the MySQL service.
+ DefaultPasswords:
+ default: {}
+ description: Mapping of service -> default password. Used to help
+ pass top level passwords managed by Heat into services.
+ type: json
resources:
resources: {get_param: Services}
concurrent: true
resource_properties:
+ ServiceNetMap: {get_param: ServiceNetMap}
EndpointMap: {get_param: EndpointMap}
- MysqlVirtualIPUri: {get_param: MysqlVirtualIPUri}
+ DefaultPasswords: {get_param: DefaultPasswords}
outputs:
- config_settings:
- description: Configuration settings.
- value: {map_merge: {get_attr: [ServiceChain, role_data, config_settings]}}
- step_config:
- description: Step configuration.
- value: {list_join: ["\n", {get_attr: [ServiceChain, role_data, step_config]}]}
+ role_data:
+ description: Combined Role data for this set of services.
+ value:
+ service_names:
+ # Filter any null/None service_names which may be present due to mapping
+ # of services to OS::Heat::None
+ yaql:
+ expression: list($.data.s_names.where($ != null))
+ data: {s_names: {get_attr: [ServiceChain, role_data, service_name]}}
+ monitoring_subscriptions:
+ yaql:
+ expression: list($.data.subscriptions.where($ != null))
+ data: {subscriptions: {get_attr: [ServiceChain, role_data, monitoring_subscription]}}
+ config_settings: {map_merge: {get_attr: [ServiceChain, role_data, config_settings]}}
+ global_config_settings:
+ map_merge:
+ yaql:
+ expression: list($.data.configs.where($ != null))
+ data: {configs: {get_attr: [ServiceChain, role_data, global_config_settings]}}
+ step_config: {list_join: ["\n", {get_attr: [ServiceChain, role_data, step_config]}]}