1733d74392
There are two reasons the name property should always be set for deployment resources: - The name often shows up in logs, files and API calls, the default derived name is long and unhelpful - Sorting by name determines the merge order of os-apply-config, and the execution order of puppet/shell scripts (note this is different to resource dependency order) so leaving the default name results in an undetermined order which could lead to unpredictable deployment of configs This change simply sets the name to the resource name, but a future change should prepend each name with a run-parts style 2 digit prefix so that the order is explicitly stated. Documentation for extraconfig needs to clearly state what prefix is needed to override which merge/execution order. For existing overcloud stacks, heat currently replaces deployment resources when the name changes, so this change Depends-On: I95037191915ccd32b2efb72203b146897a4edbc9 Change-Id: Ic4bcd56aa65b981275c3d4214588bfc4de63b3b0
94 lines
3.6 KiB
YAML
94 lines
3.6 KiB
YAML
heat_template_version: 2015-04-30
|
|
|
|
description: Configure hieradata for Nuage configuration on the Compute
|
|
|
|
parameters:
|
|
server:
|
|
description: ID of the compute node to apply this config to
|
|
type: string
|
|
|
|
NuageActiveController:
|
|
description: IP address of the Active Virtualized Services Controller (VSC)
|
|
type: string
|
|
NuageStandbyController:
|
|
description: IP address of the Standby Virtualized Services Controller (VSC)
|
|
type: string
|
|
NuageMetadataPort:
|
|
description: TCP Port to listen for metadata server requests
|
|
type: string
|
|
default: '9697'
|
|
NuageNovaMetadataPort:
|
|
description: TCP Port used by Nova metadata server
|
|
type: string
|
|
default: '8775'
|
|
NuageMetadataProxySharedSecret:
|
|
description: Shared secret to sign the instance-id request
|
|
type: string
|
|
NuageNovaClientVersion:
|
|
description: Client Version Nova
|
|
type: string
|
|
default: '2'
|
|
NuageNovaOsUsername:
|
|
description: Nova username in keystone_authtoken
|
|
type: string
|
|
default: 'nova'
|
|
NuageMetadataAgentStartWithOvs:
|
|
description: Set to True if nuage-metadata-agent needs to be started with nuage-openvswitch-switch
|
|
type: string
|
|
default: 'True'
|
|
NuageNovaApiEndpoint:
|
|
description: One of publicURL, internalURL, adminURL in "keystone endpoint-list"
|
|
type: string
|
|
default: 'publicURL'
|
|
NuageNovaRegionName:
|
|
description: Region name in "keystone endpoint-list"
|
|
type: string
|
|
default: 'regionOne'
|
|
|
|
# Declaration of resources for the template.
|
|
resources:
|
|
NovaNuageConfig:
|
|
type: OS::Heat::StructuredConfig
|
|
properties:
|
|
group: os-apply-config
|
|
config:
|
|
hiera:
|
|
datafiles:
|
|
nova_nuage_data:
|
|
mapped_data:
|
|
nuage::vrs::active_controller: {get_input: ActiveController}
|
|
nuage::vrs::standby_controller: {get_input: StandbyController}
|
|
nuage::metadataagent::metadata_port: {get_input: MetadataPort}
|
|
nuage::metadataagent::nova_metadata_port: {get_input: NovaMetadataPort}
|
|
nuage::metadataagent::metadata_secret: {get_input: SharedSecret}
|
|
nuage::metadataagent::nova_client_version: {get_input: NovaClientVersion}
|
|
nuage::metadataagent::nova_os_username: {get_input: NovaOsUsername}
|
|
nuage::metadataagent::metadata_agent_start_with_ovs: {get_input: MetadataAgentStartWithOvs}
|
|
nuage::metadataagent::nova_api_endpoint_type: {get_input: NovaApiEndpointType}
|
|
nuage::metadataagent::nova_region_name: {get_input: NovaRegionName}
|
|
|
|
NovaNuageDeployment:
|
|
type: OS::Heat::StructuredDeployment
|
|
properties:
|
|
name: NovaNuageDeployment
|
|
config: {get_resource: NovaNuageConfig}
|
|
server: {get_param: server}
|
|
input_values:
|
|
ActiveController: {get_param: NuageActiveController}
|
|
StandbyController: {get_param: NuageStandbyController}
|
|
MetadataPort: {get_param: NuageMetadataPort}
|
|
NovaMetadataPort: {get_param: NuageNovaMetadataPort}
|
|
SharedSecret: {get_param: NuageMetadataProxySharedSecret}
|
|
NovaClientVersion: {get_param: NuageNovaClientVersion}
|
|
NovaOsUsername: {get_param: NuageNovaOsUsername}
|
|
MetadataAgentStartWithOvs: {get_param: NuageMetadataAgentStartWithOvs}
|
|
NovaApiEndpointType: {get_param: NuageNovaApiEndpoint}
|
|
NovaRegionName: {get_param: NuageNovaRegionName}
|
|
|
|
# Specify output parameters that will be available
|
|
# after the template is instantiated.
|
|
outputs:
|
|
deploy_stdout:
|
|
description: Deployment reference, used to trigger puppet apply on changes
|
|
value: {get_attr: [NovaNuageDeployment, deploy_stdout]}
|