tripleo-heat-templates/deployment/ironic/ironic-base-puppet.yaml
Takashi Kajinami fffdcf0f30 Use absolute name to include puppet classes
Current puppet modules uses only absolute name to include classes,
so replace relative name by absolute name in template files so that
template description can be consistent with puppet implementation.

Change-Id: I7a704d113289d61ed05f7a31d65caf2908a7994a
2020-04-11 08:13:23 +09:00

115 lines
3.6 KiB
YAML

heat_template_version: rocky
description: >
OpenStack Ironic services 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
Debug:
default: false
description: Set to True to enable debugging on all services.
type: boolean
IronicDebug:
default: ''
description: Set to True to enable debugging Ironic services.
type: string
constraints:
- allowed_values: [ '', 'true', 'True', 'TRUE', 'false', 'False', 'FALSE']
EnableSQLAlchemyCollectd:
type: boolean
description: >
Set to true to enable the SQLAlchemy-collectd server plugin
default: false
IronicDefaultResourceClass:
default: ''
description: Default resource class to use for new nodes.
type: string
IronicPassword:
description: The password for the Ironic service and db account, used by the Ironic services
type: string
hidden: true
IronicRpcTransport:
description: The remote procedure call transport between conductor and
API processes, such as a messaging broker or JSON RPC.
default: ''
type: string
constraints:
- allowed_values: [ '', 'oslo', 'json-rpc']
conditions:
service_debug_unset: {equals : [{get_param: IronicDebug}, '']}
default_rsc_unset: {equals : [{get_param: IronicDefaultResourceClass}, '']}
rpc_transport_unset: {equals : [{get_param: IronicRpcTransport}, '']}
enable_sqlalchemy_collectd: {equals : [{get_param: EnableSQLAlchemyCollectd}, true]}
outputs:
role_data:
description: Role data for the Ironic role.
value:
service_name: ironic_base
config_settings:
map_merge:
-
ironic::database_connection:
make_url:
scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
username: ironic
password: {get_param: IronicPassword}
host: {get_param: [EndpointMap, MysqlInternal, host]}
path: /ironic
query:
if:
- enable_sqlalchemy_collectd
-
read_default_file: /etc/my.cnf.d/tripleo.cnf
read_default_group: tripleo
plugin: collectd
collectd_program_name: ironic
collectd_host: localhost
-
read_default_file: /etc/my.cnf.d/tripleo.cnf
read_default_group: tripleo
ironic::logging::debug:
if:
- service_debug_unset
- {get_param: Debug }
- {get_param: IronicDebug }
-
if:
- default_rsc_unset
- {}
- ironic::default_resource_class: {get_param: IronicDefaultResourceClass}
-
if:
- rpc_transport_unset
- {}
- ironic::rpc_transport: {get_param: IronicRpcTransport}
step_config: |
include tripleo::profile::base::ironic