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