
We added NodeConfigIdentifiers to trigger config to be re-applied on update, but then later added DeployIdentifier which forces config to *always* be applied on update, so we can simplify things by just referencing the DeployIdentifier directly. Change-Id: I79212def1936740825b714419dcb4952bc586a39
91 lines
2.5 KiB
YAML
91 lines
2.5 KiB
YAML
heat_template_version: 2015-04-30
|
|
description: 'OpenStack swift storage node post deployment for Puppet'
|
|
|
|
parameters:
|
|
ConfigDebug:
|
|
default: false
|
|
description: Whether to run config management (e.g. Puppet) in debug mode.
|
|
type: boolean
|
|
servers:
|
|
type: json
|
|
RoleData:
|
|
type: json
|
|
default: {}
|
|
DeployIdentifier:
|
|
type: string
|
|
description: Value which changes if the node configuration may need to be re-applied
|
|
|
|
resources:
|
|
|
|
StorageArtifactsConfig:
|
|
type: deploy-artifacts.yaml
|
|
|
|
StorageArtifactsDeploy:
|
|
type: OS::Heat::StructuredDeployments
|
|
properties:
|
|
servers: {get_param: servers}
|
|
config: {get_resource: StorageArtifactsConfig}
|
|
input_values:
|
|
update_identifier: {get_param: DeployIdentifier}
|
|
|
|
StoragePuppetConfig:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
group: puppet
|
|
options:
|
|
enable_debug: {get_param: ConfigDebug}
|
|
enable_hiera: True
|
|
enable_facter: False
|
|
inputs:
|
|
- name: step
|
|
outputs:
|
|
- name: result
|
|
config:
|
|
list_join:
|
|
- ''
|
|
- - get_file: manifests/overcloud_object.pp
|
|
- get_file: manifests/ringbuilder.pp
|
|
- {get_param: [RoleData, step_config]}
|
|
|
|
StorageRingbuilderDeployment_Step2:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: StorageArtifactsDeploy
|
|
properties:
|
|
name: StorageRingbuilderDeployment_Step2
|
|
servers: {get_param: servers}
|
|
config: {get_resource: StoragePuppetConfig}
|
|
input_values:
|
|
step: 2
|
|
update_identifier: {get_param: DeployIdentifier}
|
|
|
|
StorageRingbuilderDeployment_Step3:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: StorageRingbuilderDeployment_Step2
|
|
properties:
|
|
name: StorageRingbuilderDeployment_Step3
|
|
servers: {get_param: servers}
|
|
config: {get_resource: StoragePuppetConfig}
|
|
input_values:
|
|
step: 3
|
|
update_identifier: {get_param: DeployIdentifier}
|
|
|
|
StorageDeployment_Step4:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: StorageRingbuilderDeployment_Step3
|
|
properties:
|
|
name: StorageDeployment_Step4
|
|
servers: {get_param: servers}
|
|
config: {get_resource: StoragePuppetConfig}
|
|
input_values:
|
|
step: 4
|
|
update_identifier: {get_param: DeployIdentifier}
|
|
|
|
# Note, this should come last, so use depends_on to ensure
|
|
# this is created after any other resources.
|
|
ExtraConfig:
|
|
depends_on: StorageDeployment_Step4
|
|
type: OS::TripleO::NodeExtraConfigPost
|
|
properties:
|
|
servers: {get_param: servers}
|
|
|