Put user data in the main stack
We create user data per instance, but two are global for all, and the
last one per role, so we can move it up the stack.
Change-Id: I1330e54744adef9be159edd8f01aefa3db85a480
(cherry picked from commit 862f52cce0
)
This commit is contained in:
parent
c4d820d669
commit
b7167b072c
|
@ -396,6 +396,16 @@ resources:
|
|||
- {get_attr: [{{role.name}}, known_hosts_hostnames]}
|
||||
{% endfor %}
|
||||
|
||||
# Creates the "heat-admin" user if configured via the environment
|
||||
# Should return a OS::Heat::MultipartMime reference via OS::stack_id
|
||||
NodeAdminUserData:
|
||||
type: OS::TripleO::NodeAdminUserData
|
||||
|
||||
# For optional operator additional userdata
|
||||
# Should return a OS::Heat::MultipartMime reference via OS::stack_id
|
||||
NodeUserData:
|
||||
type: OS::TripleO::NodeUserData
|
||||
|
||||
# Jinja loop for Role in roles_data.yaml
|
||||
{% for role in roles %}
|
||||
# Resources generated for {{role.name}} Role
|
||||
|
@ -556,6 +566,23 @@ resources:
|
|||
data:
|
||||
- {get_attr: [{{role.name}}, hostname_map]}
|
||||
|
||||
# Combine the NodeAdminUserData and NodeUserData mime archives
|
||||
{{role.name}}UserData:
|
||||
type: OS::Heat::MultipartMime
|
||||
properties:
|
||||
parts:
|
||||
- config: {get_resource: NodeAdminUserData}
|
||||
type: multipart
|
||||
- config: {get_resource: NodeUserData}
|
||||
type: multipart
|
||||
- config: {get_resource: {{role.name}}RoleUserData}
|
||||
type: multipart
|
||||
|
||||
# For optional operator role-specific userdata
|
||||
# Should return a OS::Heat::MultipartMime reference via OS::stack_id
|
||||
{{role.name}}RoleUserData:
|
||||
type: OS::TripleO::{{role.name}}::NodeUserData
|
||||
|
||||
{{role.name}}:
|
||||
type: OS::Heat::ResourceGroup
|
||||
depends_on: Networks
|
||||
|
@ -596,6 +623,7 @@ resources:
|
|||
map_merge:
|
||||
- {{role.RoleParametersDefault|default({})}}
|
||||
- get_param: {{role.name}}Parameters
|
||||
UserData: {get_resource: {{role.name}}UserData}
|
||||
{% endfor %}
|
||||
|
||||
{% for role in roles %}
|
||||
|
|
|
@ -287,6 +287,9 @@ parameters:
|
|||
constraints:
|
||||
- allowed_values: [delete, retain]
|
||||
|
||||
UserData:
|
||||
type: string
|
||||
|
||||
{% if role.uses_deprecated_params|default(false) %}
|
||||
parameter_groups:
|
||||
- label: deprecated
|
||||
|
@ -419,7 +422,7 @@ resources:
|
|||
- network: ctlplane
|
||||
subnet: {get_param: {{role.name}}ControlPlaneSubnet}
|
||||
user_data_format: SOFTWARE_CONFIG
|
||||
user_data: {get_resource: UserData}
|
||||
user_data: {get_param: UserData}
|
||||
name:
|
||||
yaql:
|
||||
expression: $.data.hostname_map.get($.data.hostname, $.data.hostname).toLower()
|
||||
|
@ -443,33 +446,6 @@ resources:
|
|||
- {get_param: [DeploymentSwiftDataMap,
|
||||
{get_param: Hostname}]}
|
||||
|
||||
# Combine the NodeAdminUserData and NodeUserData mime archives
|
||||
UserData:
|
||||
type: OS::Heat::MultipartMime
|
||||
properties:
|
||||
parts:
|
||||
- config: {get_resource: NodeAdminUserData}
|
||||
type: multipart
|
||||
- config: {get_resource: NodeUserData}
|
||||
type: multipart
|
||||
- config: {get_resource: RoleUserData}
|
||||
type: multipart
|
||||
|
||||
# Creates the "heat-admin" user if configured via the environment
|
||||
# Should return a OS::Heat::MultipartMime reference via OS::stack_id
|
||||
NodeAdminUserData:
|
||||
type: OS::TripleO::NodeAdminUserData
|
||||
|
||||
# For optional operator additional userdata
|
||||
# Should return a OS::Heat::MultipartMime reference via OS::stack_id
|
||||
NodeUserData:
|
||||
type: OS::TripleO::NodeUserData
|
||||
|
||||
# For optional operator role-specific userdata
|
||||
# Should return a OS::Heat::MultipartMime reference via OS::stack_id
|
||||
RoleUserData:
|
||||
type: OS::TripleO::{{role.name}}::NodeUserData
|
||||
|
||||
{%- for network in networks %}
|
||||
{%- if network.enabled|default(true) and network.name in role.networks|default([]) %}
|
||||
{{network.name}}Port:
|
||||
|
|
Loading…
Reference in New Issue