tripleo-heat-templates/puppet/services/panko-base.yaml

138 lines
5.0 KiB
YAML

heat_template_version: rocky
description: >
OpenStack Panko service configured with Puppet
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
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
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
PankoPassword:
description: The password for the panko services.
type: string
hidden: true
Debug:
default: false
description: Set to True to enable debugging on all services.
type: boolean
PankoDebug:
default: ''
description: Set to True to enable debugging Panko services.
type: string
constraints:
- allowed_values: [ '', 'true', 'True', 'TRUE', 'false', 'False', 'FALSE']
KeystoneRegion:
type: string
default: 'regionOne'
description: Keystone region for endpoint
EnablePankoExpirer:
type: boolean
default: true
description: Enable panko expirer to periodically delete events from db
PankoExpirerMinute:
type: string
description: >
Cron to delete events data from db - Minute
default: '1'
PankoExpirerHour:
type: string
description: >
Cron to delete events data from db - Hour
default: '0'
PankoExpirerMonthday:
type: string
description: >
Cron to delete events data from db - Month Day
default: '*'
PankoExpirerMonth:
type: string
description: >
Cron to delete events data from db - Month
default: '*'
PankoExpirerWeekday:
type: string
description: >
Cron to delete events from db - Week Day
default: '*'
conditions:
service_debug_unset: {equals : [{get_param: PankoDebug}, '']}
outputs:
role_data:
description: Role data for the Panko role.
value:
service_name: panko_base
config_settings:
enable_panko_expirer: {get_param: EnablePankoExpirer}
panko::db::database_connection:
make_url:
scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
username: panko
password: {get_param: PankoPassword}
host: {get_param: [EndpointMap, MysqlInternal, host]}
path: /panko
query:
read_default_file: /etc/my.cnf.d/tripleo.cnf
read_default_group: tripleo
panko::debug:
if:
- service_debug_unset
- {get_param: Debug }
- {get_param: PankoDebug }
panko::auth::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
panko::keystone::authtoken::project_name: 'service'
panko::keystone::authtoken::user_domain_name: 'Default'
panko::keystone::authtoken::project_domain_name: 'Default'
panko::keystone::authtoken::password: {get_param: PankoPassword}
panko::keystone::authtoken::www_authenticate_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
panko::keystone::authtoken::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
panko::keystone::authtoken::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
panko::auth::auth_password: {get_param: PankoPassword}
panko::auth::auth_region: {get_param: KeystoneRegion}
panko::auth::auth_tenant_name: 'service'
panko::expirer::minute: {get_param: PankoExpirerMinute}
panko::expirer::hour: {get_param: PankoExpirerHour}
panko::expirer::monthday: {get_param: PankoExpirerMonthday}
panko::expirer::month: {get_param: PankoExpirerMonth}
panko::expirer::weekday: {get_param: PankoExpirerWeekday}
service_config_settings:
keystone:
panko::keystone::auth::public_url: {get_param: [EndpointMap, PankoPublic, uri]}
panko::keystone::auth::internal_url: {get_param: [EndpointMap, PankoInternal, uri]}
panko::keystone::auth::admin_url: {get_param: [EndpointMap, PankoAdmin, uri]}
panko::keystone::auth::password: {get_param: PankoPassword}
panko::keystone::auth::region: {get_param: KeystoneRegion}
panko::keystone::auth::tenant: 'service'
mysql:
panko::db::mysql::user: panko
panko::db::mysql::password: {get_param: PankoPassword}
panko::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]}
panko::db::mysql::dbname: panko
panko::db::mysql::allowed_hosts:
- '%'
- "%{hiera('mysql_bind_host')}"