Merge "Add default for DeployIdentifier in nested templates"
[apex-tripleo-heat-templates.git] / puppet / cinder-storage-post.yaml
1 heat_template_version: 2015-04-30
2 description: 'OpenStack cinder storage post deployment for Puppet'
3
4 parameters:
5   ConfigDebug:
6     default: false
7     description: Whether to run config management (e.g. Puppet) in debug mode.
8     type: boolean
9   servers:
10     type: json
11   DeployIdentifier:
12      type: string
13      default: ''
14      description: Value which changes if the node configuration may need to be re-applied
15   RoleData:
16     type: json
17     default: {}
18
19 resources:
20
21   VolumeArtifactsConfig:
22     type: deploy-artifacts.yaml
23
24   VolumeArtifactsDeploy:
25     type: OS::Heat::StructuredDeployments
26     properties:
27       servers:  {get_param: servers}
28       config: {get_resource: VolumeArtifactsConfig}
29       input_values:
30         update_identifier: {get_param: DeployIdentifier}
31
32   VolumePuppetConfig:
33     type: OS::Heat::SoftwareConfig
34     depends_on: VolumeArtifactsDeploy
35     properties:
36       group: puppet
37       options:
38         enable_debug: {get_param: ConfigDebug}
39         enable_hiera: True
40         enable_facter: False
41         modulepath: /etc/puppet/modules:/opt/stack/puppet-modules:/usr/share/openstack-puppet/modules
42       inputs:
43       - name: step
44       outputs:
45       - name: result
46       config:
47         list_join:
48         - ''
49         - - get_file: manifests/overcloud_volume.pp
50           - {get_param: [RoleData, step_config]}
51
52   VolumeDeployment_Step2:
53     type: OS::Heat::StructuredDeployments
54     depends_on: VolumeArtifactsDeploy
55     properties:
56       name: VolumeDeployment_Step2
57       servers:  {get_param: servers}
58       config: {get_resource: VolumePuppetConfig}
59       input_values:
60         step: 2
61         update_identifier: {get_param: DeployIdentifier}
62
63   VolumeDeployment_Step3:
64     type: OS::Heat::StructuredDeployments
65     depends_on: VolumeDeployment_Step2
66     properties:
67       name: VolumeDeployment_Step3
68       servers:  {get_param: servers}
69       config: {get_resource: VolumePuppetConfig}
70       input_values:
71         step: 3
72         update_identifier: {get_param: DeployIdentifier}
73
74   VolumeDeployment_Step4:
75     type: OS::Heat::StructuredDeployments
76     depends_on: VolumeDeployment_Step3
77     properties:
78       name: VolumeDeployment_Step4
79       servers:  {get_param: servers}
80       config: {get_resource: VolumePuppetConfig}
81       input_values:
82         step: 4
83         update_identifier: {get_param: DeployIdentifier}
84
85   # Note, this should come last, so use depends_on to ensure
86   # this is created after any other resources.
87   ExtraConfig:
88     depends_on: VolumeDeployment_Step4
89     type: OS::TripleO::NodeExtraConfigPost
90     properties:
91         servers: {get_param: servers}