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
This commit is contained in:
parent
fd04035471
commit
862f52cce0
|
@ -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
|
||||
|
@ -552,6 +562,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
|
||||
|
@ -590,6 +617,7 @@ resources:
|
|||
map_merge:
|
||||
- {{role.RoleParametersDefault|default({})}}
|
||||
- get_param: {{role.name}}Parameters
|
||||
UserData: {get_resource: {{role.name}}UserData}
|
||||
{% endfor %}
|
||||
|
||||
{% for role in roles %}
|
||||
|
|
|
@ -289,6 +289,9 @@ parameters:
|
|||
constraints:
|
||||
- allowed_values: [delete, retain]
|
||||
|
||||
UserData:
|
||||
type: string
|
||||
|
||||
{% if role.uses_deprecated_params|default(false) %}
|
||||
parameter_groups:
|
||||
- label: deprecated
|
||||
|
@ -424,7 +427,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()
|
||||
|
@ -448,33 +451,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