
This patch wires in ringbuilder.pp so that it is always asserted like the other manifests and it fixes the misaligned step sequencing in calling our overcloud controller manifests. Previously it was called as a separate software deployment outside of the hiera step sequence. This made things confusing in controller-post.yaml since the deployment names didn't align with the step hiera variables after step 3. Now that we call it just like the other modules it should make gradually moving this code to puppet-tripleo more straightforward as well. Change-Id: Ibd4f51f65da475bb20a6b08d7bda673f330a5464
137 lines
4.6 KiB
YAML
137 lines
4.6 KiB
YAML
heat_template_version: 2015-04-30
|
|
|
|
description: >
|
|
OpenStack controller 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
|
|
NodeConfigIdentifiers:
|
|
type: json
|
|
description: Value which changes if the node configuration may need to be re-applied
|
|
|
|
|
|
resources:
|
|
|
|
ControllerArtifactsConfig:
|
|
type: deploy-artifacts.yaml
|
|
|
|
ControllerArtifactsDeploy:
|
|
type: OS::Heat::StructuredDeployments
|
|
properties:
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerArtifactsConfig}
|
|
|
|
ControllerPrePuppet:
|
|
type: OS::TripleO::Tasks::ControllerPrePuppet
|
|
properties:
|
|
servers: {get_param: servers}
|
|
input_values:
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
ControllerPuppetConfig:
|
|
type: OS::TripleO::ControllerConfig
|
|
|
|
# Step through a series of Puppet runs using the same manifest.
|
|
# NOTE: To enable stepping through the deployments via heat hooks,
|
|
# you must observe the glob naming defined in overcloud-steps.yaml
|
|
# e.g all Deployment resources should have a *Deployment_StepN suffix
|
|
ControllerLoadBalancerDeployment_Step1:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: [ControllerPrePuppet, ControllerArtifactsDeploy]
|
|
properties:
|
|
name: ControllerLoadBalancerDeployment_Step1
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 1
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
actions: ['CREATE'] # no need for two passes on an UPDATE
|
|
|
|
ControllerServicesBaseDeployment_Step2:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: ControllerLoadBalancerDeployment_Step1
|
|
properties:
|
|
name: ControllerServicesBaseDeployment_Step2
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 2
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
actions: ['CREATE'] # no need for two passes on an UPDATE
|
|
|
|
ControllerOvercloudServicesDeployment_Step3:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: ControllerServicesBaseDeployment_Step2
|
|
properties:
|
|
name: ControllerOvercloudServicesDeployment_Step3
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 3
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
ControllerOvercloudServicesDeployment_Step4:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: ControllerOvercloudServicesDeployment_Step3
|
|
properties:
|
|
name: ControllerOvercloudServicesDeployment_Step4
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 4
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
ControllerOvercloudServicesDeployment_Step5:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: ControllerOvercloudServicesDeployment_Step4
|
|
properties:
|
|
name: ControllerOvercloudServicesDeployment_Step5
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 5
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
ControllerOvercloudServicesDeployment_Step6:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: ControllerOvercloudServicesDeployment_Step5
|
|
properties:
|
|
name: ControllerOvercloudServicesDeployment_Step6
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 6
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
ControllerOvercloudServicesDeployment_Step7:
|
|
type: OS::Heat::StructuredDeployments
|
|
depends_on: ControllerOvercloudServicesDeployment_Step6
|
|
properties:
|
|
name: ControllerOvercloudServicesDeployment_Step7
|
|
servers: {get_param: servers}
|
|
config: {get_resource: ControllerPuppetConfig}
|
|
input_values:
|
|
step: 7
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
ControllerPostPuppet:
|
|
type: OS::TripleO::Tasks::ControllerPostPuppet
|
|
depends_on: ControllerOvercloudServicesDeployment_Step7
|
|
properties:
|
|
servers: {get_param: servers}
|
|
input_values:
|
|
update_identifier: {get_param: NodeConfigIdentifiers}
|
|
|
|
# Note, this should come last, so use depends_on to ensure
|
|
# this is created after any other resources.
|
|
ExtraConfig:
|
|
depends_on: ControllerPostPuppet
|
|
type: OS::TripleO::NodeExtraConfigPost
|
|
properties:
|
|
servers: {get_param: servers}
|