flatten the mistral service configurations

This change combines the previous puppet and docker files into a single
file that performs the docker service installation and configuration
for all mistral services.

With this patch the baremetal version of each mistral service has been removed.

Related-Blueprint: services-yaml-flattening

Change-Id: I3f2ac51c885548333299df2c92c1f8df154d241e
This commit is contained in:
Dan Prince 2018-12-28 09:24:03 -05:00
parent 560ec36685
commit cd354bc386
14 changed files with 151 additions and 373 deletions

View File

@ -3,10 +3,10 @@ resource_registry:
OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode.yaml
OS::TripleO::Services::SaharaApi: ../../deployment/sahara/sahara-api-container-puppet.yaml
OS::TripleO::Services::SaharaEngine: ../../deployment/sahara/sahara-engine-container-puppet.yaml
OS::TripleO::Services::MistralApi: ../../docker/services/mistral-api.yaml
OS::TripleO::Services::MistralEngine: ../../docker/services/mistral-engine.yaml
OS::TripleO::Services::MistralExecutor: ../../docker/services/mistral-executor.yaml
OS::TripleO::Services::MistralEventEngine: ../../docker/services/mistral-event-engine.yaml
OS::TripleO::Services::MistralApi: ../../deployment/mistral/mistral-api-container-puppet.yaml
OS::TripleO::Services::MistralEngine: ../../deployment/mistral/mistral-engine-container-puppet.yaml
OS::TripleO::Services::MistralExecutor: ../../deployment/mistral/mistral-executor-container-puppet.yaml
OS::TripleO::Services::MistralEventEngine: ../../deployment/mistral/mistral-event-engine-container-puppet.yaml
OS::TripleO::Services::OsloMessagingRpc: ../../docker/services/messaging/rpc-qdrouterd.yaml
OS::TripleO::Services::OsloMessagingNotify: ../../docker/services/pacemaker/notify-rabbitmq.yaml
OS::TripleO::Services::HAproxy: ../../docker/services/pacemaker/haproxy.yaml

View File

@ -8,10 +8,10 @@ resource_registry:
OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None
OS::TripleO::Services::SaharaApi: ../../deployment/sahara/sahara-api-container-puppet.yaml
OS::TripleO::Services::SaharaEngine: ../../deployment/sahara/sahara-engine-container-puppet.yaml
OS::TripleO::Services::MistralApi: ../../docker/services/mistral-api.yaml
OS::TripleO::Services::MistralEngine: ../../docker/services/mistral-engine.yaml
OS::TripleO::Services::MistralExecutor: ../../docker/services/mistral-executor.yaml
OS::TripleO::Services::MistralEventEngine: ../../docker/services/mistral-event-engine.yaml
OS::TripleO::Services::MistralApi: ../../deployment/mistral/mistral-api-container-puppet.yaml
OS::TripleO::Services::MistralEngine: ../../deployment/mistral/mistral-engine-container-puppet.yaml
OS::TripleO::Services::MistralExecutor: ../../deployment/mistral/mistral-executor-container-puppet.yaml
OS::TripleO::Services::MistralEventEngine: ../../deployment/mistral/mistral-event-engine-container-puppet.yaml
OS::TripleO::Services::OsloMessagingRpc: ../../docker/services/messaging/rpc-qdrouterd.yaml
OS::TripleO::Services::OsloMessagingNotify: ../../docker/services/pacemaker/notify-rabbitmq.yaml
OS::TripleO::Services::HAproxy: ../../docker/services/pacemaker/haproxy.yaml

View File

@ -40,17 +40,45 @@ parameters:
default: false
description: Remove package if the service is being disabled during upgrade
type: boolean
MistralWorkers:
default: 1
description: The number of workers for the mistral-api.
type: number
MistralApiPolicies:
description: |
A hash of policies to configure for Mistral API.
e.g. { mistral-context_is_admin: { key: context_is_admin, value: 'role:admin' } }
default: {}
type: json
EnableInternalTLS:
type: boolean
default: false
MistralExecutionInterval:
default: 600
description: This setting defines how frequently Mistral checks for cron
triggers that need execution. The default is 10 minutes and
reduces the load that is has on the system.
type: number
MistralCorsAllowedOrigin:
type: string
default: ''
description: Indicate whether this resource may be shared with the domain received in the request
"origin" header.
conditions:
mistral_workers_zero: {equals : [{get_param: MistralWorkers}, 0]}
cors_allowed_origin_unset: {equals : [{get_param: MistralCorsAllowedOrigin}, '']}
resources:
ContainersCommon:
type: ./containers-common.yaml
type: ../../docker/services/containers-common.yaml
MySQLClient:
type: ../../puppet/services/database/mysql-client.yaml
MistralApiBase:
type: ../../puppet/services/mistral-api.yaml
MistralBase:
type: ./mistral-base.yaml
properties:
EndpointMap: {get_param: EndpointMap}
ServiceData: {get_param: ServiceData}
@ -63,11 +91,51 @@ outputs:
role_data:
description: Role data for the Mistral API role.
value:
service_name: {get_attr: [MistralApiBase, role_data, service_name]}
service_name: mistral_api
config_settings:
map_merge:
- get_attr: [MistralApiBase, role_data, config_settings]
service_config_settings: {get_attr: [MistralApiBase, role_data, service_config_settings]}
- get_attr: [MistralBase, role_data, config_settings]
-
if:
- cors_allowed_origin_unset
- {}
- mistral::cors::allowed_origin: {get_param: MistralCorsAllowedOrigin}
- mistral::api::api_workers: {get_param: MistralWorkers}
mistral::api::bind_host:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, MistralApiNetwork]}
mistral::wsgi::apache::ssl: {get_param: EnableInternalTLS}
mistral::cors::allow_headers: 'Content-Type,Cache-Control,Content-Language,Expires,Last-Modified,Pragma,X-Auth-Token'
mistral::cors::expose_headers: 'Content-Type,Cache-Control,Content-Language,Expires,Last-Modified,Pragma'
mistral::policy::policies: {get_param: MistralApiPolicies}
mistral::cron_trigger::execution_interval: {get_param: MistralExecutionInterval}
mistral::api::allow_action_execution_deletion: true
tripleo::mistral_api::firewall_rules:
'133 mistral':
dport:
- 8989
- 13989
mistral::api::service_name: 'httpd'
mistral::wsgi::apache::bind_host:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, MistralApiNetwork]}
mistral::wsgi::apache::servername:
str_replace:
template:
"%{hiera('fqdn_$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, MistralApiNetwork]}
- if:
- mistral_workers_zero
- {}
- mistral::wsgi::apache::workers: {get_param: MistralWorkers}
service_config_settings: {get_attr: [MistralBase, role_data, service_config_settings]}
# BEGIN DOCKER SETTINGS
puppet_config:
config_volume: mistral
@ -75,7 +143,7 @@ outputs:
step_config:
list_join:
- "\n"
- - {get_attr: [MistralApiBase, role_data, step_config]}
- - include ::tripleo::profile::base::mistral::api
- {get_attr: [MySQLClient, role_data, step_config]}
config_image: {get_param: DockerMistralConfigImage}
kolla_config:

View File

@ -40,18 +40,42 @@ parameters:
default: false
description: Remove package if the service is being disabled during upgrade
type: boolean
MistralExecutionFieldSizeLimit:
default: 1024
description: The default maximum size in KB of large text fields of runtime
execution objects. Use -1 for no limit.
type: number
MistralEvaluationInterval:
default: 120
description: How often will the executions be evaluated
(in minutes). For example for value 120 the interval
will be 2 hours (every 2 hours).
type: number
MistralFinishedExecutionDuration:
default: 2880
description: Evaluate from which time remove executions in minutes.
For example when set to 60, remove all executions
that finished a 60 minutes ago or more.
Minimum value is 1.
Note that only final state execution will remove (SUCCESS/ERROR).
constraints:
- range: { min: 1 }
type: number
RpcPort:
default: 5672
description: The network port for messaging backend
type: number
resources:
ContainersCommon:
type: ./containers-common.yaml
type: ../../docker/services/containers-common.yaml
MySQLClient:
type: ../../puppet/services/database/mysql-client.yaml
MistralBase:
type: ../../puppet/services/mistral-engine.yaml
type: ./mistral-base.yaml
properties:
EndpointMap: {get_param: EndpointMap}
ServiceData: {get_param: ServiceData}
@ -64,10 +88,13 @@ outputs:
role_data:
description: Role data for the Mistral Engine role.
value:
service_name: {get_attr: [MistralBase, role_data, service_name]}
service_name: mistral_engine
config_settings:
map_merge:
- get_attr: [MistralBase, role_data, config_settings]
- mistral::engine::execution_field_size_limit_kb: {get_param: MistralExecutionFieldSizeLimit}
mistral::engine::evaluation_interval: {get_param: MistralEvaluationInterval}
mistral::engine::older_than: {get_param: MistralFinishedExecutionDuration}
service_config_settings: {get_attr: [MistralBase, role_data, service_config_settings]}
# BEGIN DOCKER SETTINGS
puppet_config:
@ -76,7 +103,7 @@ outputs:
step_config:
list_join:
- "\n"
- - {get_attr: [MistralBase, role_data, step_config]}
- - include ::tripleo::profile::base::mistral::engine
- {get_attr: [MySQLClient, role_data, step_config]}
config_image: {get_param: DockerMistralConfigImage}
kolla_config:
@ -106,7 +133,7 @@ outputs:
- yaql:
expression: str($.data.port)
data:
port: {get_attr: [MistralBase, role_data, config_settings, 'mistral::rabbit_port']}
port: {get_param: RpcPort}
volumes:
list_concat:
- {get_attr: [ContainersCommon, volumes]}

View File

@ -40,18 +40,21 @@ parameters:
default: false
description: Remove package if the service is being disabled during upgrade
type: boolean
RpcPort:
default: 5672
description: The network port for messaging backend
type: number
resources:
ContainersCommon:
type: ./containers-common.yaml
type: ../../docker/services/containers-common.yaml
MySQLClient:
type: ../../puppet/services/database/mysql-client.yaml
MistralBase:
type: ../../puppet/services/mistral-event-engine.yaml
type: ./mistral-base.yaml
properties:
EndpointMap: {get_param: EndpointMap}
ServiceData: {get_param: ServiceData}
@ -64,10 +67,9 @@ outputs:
role_data:
description: Role data for the Mistral Event Engine role.
value:
service_name: {get_attr: [MistralBase, role_data, service_name]}
service_name: mistral_event_engine
config_settings:
map_merge:
- get_attr: [MistralBase, role_data, config_settings]
get_attr: [MistralBase, role_data, config_settings]
service_config_settings: {get_attr: [MistralBase, role_data, service_config_settings]}
# BEGIN DOCKER SETTINGS
puppet_config:
@ -76,7 +78,7 @@ outputs:
step_config:
list_join:
- "\n"
- - get_attr: [MistralBase, role_data, step_config]
- - include ::tripleo::profile::base::mistral::event_engine
- get_attr: [MySQLClient, role_data, step_config]
config_image: {get_param: DockerMistralConfigImage}
kolla_config:
@ -106,7 +108,7 @@ outputs:
- yaql:
expression: str($.data.port)
data:
port: {get_attr: [MistralBase, role_data, config_settings, 'mistral::rabbit_port']}
port: {get_param: RpcPort}
volumes:
list_concat:
- {get_attr: [ContainersCommon, volumes]}

View File

@ -62,6 +62,14 @@ parameters:
description: CLI tool used to manage containers.
constraints:
- allowed_values: ['docker', 'podman']
MistralDockerGroup:
default: false
description: Add the mistral user to the docker group to allow actions to perform docker operations.
type: boolean
RpcPort:
default: 5672
description: The network port for messaging backend
type: number
conditions:
undercloud_config_file_path_unset: {equals : [{get_param: UndercloudConfigFilePath}, '']}
@ -70,13 +78,13 @@ conditions:
resources:
ContainersCommon:
type: ./containers-common.yaml
type: ../../docker/services/containers-common.yaml
MySQLClient:
type: ../../puppet/services/database/mysql-client.yaml
MistralBase:
type: ../../puppet/services/mistral-executor.yaml
type: ./mistral-base.yaml
properties:
EndpointMap: {get_param: EndpointMap}
ServiceData: {get_param: ServiceData}
@ -89,7 +97,7 @@ outputs:
role_data:
description: Role data for the Mistral Executor role.
value:
service_name: {get_attr: [MistralBase, role_data, service_name]}
service_name: mistral_executor
config_settings:
map_merge:
- get_attr: [MistralBase, role_data, config_settings]
@ -99,6 +107,7 @@ outputs:
# The hiera param is set to the same value as the bind mound location
# of the file inside the container.
- tripleo_undercloud_conf_file: '/var/lib/mistral/undercloud.conf'
tripleo::profile::base::mistral::executor::docker_group: {get_param: MistralDockerGroup}
service_config_settings: {get_attr: [MistralBase, role_data, service_config_settings]}
# BEGIN DOCKER SETTINGS
puppet_config:
@ -107,7 +116,7 @@ outputs:
step_config:
list_join:
- "\n"
- - {get_attr: [MistralBase, role_data, step_config]}
- - include ::tripleo::profile::base::mistral::executor
- {get_attr: [MySQLClient, role_data, step_config]}
config_image: {get_param: DockerMistralConfigImage}
volumes:
@ -148,7 +157,7 @@ outputs:
- yaql:
expression: str($.data.port)
data:
port: {get_attr: [MistralBase, role_data, config_settings, 'mistral::rabbit_port']}
port: {get_param: RpcPort}
volumes:
list_concat:
- {get_attr: [ContainersCommon, volumes]}

View File

@ -12,9 +12,9 @@ resource_registry:
OS::TripleO::Services::HeatEngine: ../deployment/heat/heat-engine-container-puppet.yaml
OS::TripleO::Services::Keystone: ../deployment/keystone/keystone-container.yaml
OS::TripleO::Services::Memcached: ../deployment/memcached/memcached-container-puppet.yaml
OS::TripleO::Services::MistralApi: ../docker/services/mistral-api.yaml
OS::TripleO::Services::MistralEngine: ../docker/services/mistral-engine.yaml
OS::TripleO::Services::MistralExecutor: ../docker/services/mistral-executor.yaml
OS::TripleO::Services::MistralApi: ../deployment/mistral/mistral-api-container-puppet.yaml
OS::TripleO::Services::MistralEngine: ../deployment/mistral/mistral-engine-container-puppet.yaml
OS::TripleO::Services::MistralExecutor: ../deployment/mistral/mistral-executor-container-puppet.yaml
OS::TripleO::Services::MySQL: ../docker/services/database/mysql.yaml
OS::TripleO::Services::NeutronApi: ../docker/services/neutron-api.yaml
OS::TripleO::Services::NeutronCorePlugin: ../docker/services/neutron-plugin-ml2.yaml

View File

@ -1,5 +1,5 @@
resource_registry:
OS::TripleO::Services::MistralEngine: ../../puppet/services/mistral-engine.yaml
OS::TripleO::Services::MistralApi: ../../puppet/services/mistral-api.yaml
OS::TripleO::Services::MistralExecutor: ../../puppet/services/mistral-executor.yaml
OS::TripleO::Services::MistralEventEngine: ../../puppet/services/mistral-event-engine.yaml
OS::TripleO::Services::MistralEngine: ../../deployment/mistral/mistral-engine-container-puppet.yaml
OS::TripleO::Services::MistralApi: ../../deployment/mistral/mistral-api-container-puppet.yaml
OS::TripleO::Services::MistralExecutor: ../../deployment/mistral/mistral-executor-container-puppet.yaml
OS::TripleO::Services::MistralEventEngine: ../../deployment/mistral/mistral-event-engine-container-puppet.yaml

View File

@ -1,5 +1,5 @@
resource_registry:
OS::TripleO::Services::MistralEngine: ../../docker/services/mistral-engine.yaml
OS::TripleO::Services::MistralApi: ../../docker/services/mistral-api.yaml
OS::TripleO::Services::MistralExecutor: ../../docker/services/mistral-executor.yaml
OS::TripleO::Services::MistralEventEngine: ../../docker/services/mistral-event-engine.yaml
OS::TripleO::Services::MistralEngine: ../../deployment/mistral/mistral-engine-container-puppet.yaml
OS::TripleO::Services::MistralApi: ../../deployment/mistral/mistral-api-container-puppet.yaml
OS::TripleO::Services::MistralExecutor: ../../deployment/mistral/mistral-executor-container-puppet.yaml
OS::TripleO::Services::MistralEventEngine: ../../deployment/mistral/mistral-event-engine-container-puppet.yaml

View File

@ -1,135 +0,0 @@
heat_template_version: rocky
description: >
Openstack Mistral API 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
MistralWorkers:
default: 1
description: The number of workers for the mistral-api.
type: number
MistralApiPolicies:
description: |
A hash of policies to configure for Mistral API.
e.g. { mistral-context_is_admin: { key: context_is_admin, value: 'role:admin' } }
default: {}
type: json
EnableInternalTLS:
type: boolean
default: false
MistralExecutionInterval:
default: 600
description: This setting defines how frequently Mistral checks for cron
triggers that need execution. The default is 10 minutes and
reduces the load that is has on the system.
type: number
MistralCorsAllowedOrigin:
type: string
default: ''
description: Indicate whether this resource may be shared with the domain received in the request
"origin" header.
conditions:
mistral_workers_zero: {equals : [{get_param: MistralWorkers}, 0]}
cors_allowed_origin_unset: {equals : [{get_param: MistralCorsAllowedOrigin}, '']}
resources:
ApacheServiceBase:
type: ./apache.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
EnableInternalTLS: {get_param: EnableInternalTLS}
MistralBase:
type: ./mistral-base.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the Mistral API role.
value:
service_name: mistral_api
config_settings:
map_merge:
- get_attr: [MistralBase, role_data, config_settings]
-
if:
- cors_allowed_origin_unset
- {}
- mistral::cors::allowed_origin: {get_param: MistralCorsAllowedOrigin}
- mistral::api::api_workers: {get_param: MistralWorkers}
mistral::api::bind_host:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, MistralApiNetwork]}
mistral::wsgi::apache::ssl: {get_param: EnableInternalTLS}
mistral::cors::allow_headers: 'Content-Type,Cache-Control,Content-Language,Expires,Last-Modified,Pragma,X-Auth-Token'
mistral::cors::expose_headers: 'Content-Type,Cache-Control,Content-Language,Expires,Last-Modified,Pragma'
mistral::policy::policies: {get_param: MistralApiPolicies}
mistral::cron_trigger::execution_interval: {get_param: MistralExecutionInterval}
mistral::cors::allow_headers: 'Content-Type,Cache-Control,Content-Language,Expires,Last-Modified,Pragma,X-Auth-Token'
mistral::cors::expose_headers: 'Content-Type,Cache-Control,Content-Language,Expires,Last-Modified,Pragma'
mistral::api::allow_action_execution_deletion: true
tripleo::mistral_api::firewall_rules:
'133 mistral':
dport:
- 8989
- 13989
mistral::api::service_name: 'httpd'
mistral::wsgi::apache::bind_host:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, MistralApiNetwork]}
mistral::wsgi::apache::servername:
str_replace:
template:
"%{hiera('fqdn_$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, MistralApiNetwork]}
- if:
- mistral_workers_zero
- {}
- mistral::wsgi::apache::workers: {get_param: MistralWorkers}
service_config_settings:
get_attr: [MistralBase, role_data, service_config_settings]
step_config: |
include ::tripleo::profile::base::mistral::api
upgrade_tasks: []

View File

@ -1,79 +0,0 @@
heat_template_version: rocky
description: >
Openstack Mistral Engine 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
MistralExecutionFieldSizeLimit:
default: 1024
description: The default maximum size in KB of large text fields of runtime
execution objects. Use -1 for no limit.
type: number
MistralEvaluationInterval:
default: 120
description: How often will the executions be evaluated
(in minutes). For example for value 120 the interval
will be 2 hours (every 2 hours).
type: number
MistralFinishedExecutionDuration:
default: 2880
description: Evaluate from which time remove executions in minutes.
For example when set to 60, remove all executions
that finished a 60 minutes ago or more.
Minimum value is 1.
Note that only final state execution will remove (SUCCESS/ERROR).
constraints:
- range: { min: 1 }
type: number
resources:
MistralBase:
type: ./mistral-base.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the Mistral Engine role.
value:
service_name: mistral_engine
config_settings:
map_merge:
- get_attr: [MistralBase, role_data, config_settings]
- mistral::engine::execution_field_size_limit_kb: {get_param: MistralExecutionFieldSizeLimit}
mistral::engine::evaluation_interval: {get_param: MistralEvaluationInterval}
mistral::engine::older_than: {get_param: MistralFinishedExecutionDuration}
step_config: |
include ::tripleo::profile::base::mistral::engine
upgrade_tasks: []

View File

@ -1,54 +0,0 @@
heat_template_version: rocky
description: >
Openstack Mistral Event Engine 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
resources:
MistralBase:
type: ./mistral-base.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the Mistral Event Engine role.
value:
service_name: mistral_event_engine
config_settings:
get_attr: [MistralBase, role_data, config_settings]
step_config: |
include ::tripleo::profile::base::mistral::event_engine
upgrade_tasks: []

View File

@ -1,60 +0,0 @@
heat_template_version: rocky
description: >
Openstack Mistral API 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
MistralDockerGroup:
default: false
description: Add the mistral user to the docker group to allow actions to perform docker operations.
type: boolean
resources:
MistralBase:
type: ./mistral-base.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the Mistral Executor role.
value:
service_name: mistral_executor
config_settings:
map_merge:
- get_attr: [MistralBase, role_data, config_settings]
- tripleo::profile::base::mistral::executor::docker_group: {get_param: MistralDockerGroup}
step_config: |
include ::tripleo::profile::base::mistral::executor
upgrade_tasks: []