Bump the pacemaker service op_params to 200s for start and stop
[apex-tripleo-heat-templates.git] / puppet / controller-post.yaml
1 heat_template_version: 2015-04-30
2
3 description: >
4   OpenStack controller node post deployment for Puppet.
5
6 parameters:
7   ConfigDebug:
8     default: false
9     description: Whether to run config management (e.g. Puppet) in debug mode.
10     type: boolean
11   servers:
12     type: json
13   NodeConfigIdentifiers:
14      type: json
15      description: Value which changes if the node configuration may need to be re-applied
16
17
18 resources:
19
20   ControllerPrePuppet:
21     type: OS::TripleO::Tasks::ControllerPrePuppet
22     properties:
23       servers:  {get_param: servers}
24       input_values:
25         update_identifier: {get_param: NodeConfigIdentifiers}
26
27   ControllerPuppetConfig:
28     type: OS::TripleO::ControllerConfig
29
30   # Step through a series of Puppet runs using the same manifest.
31   # NOTE: To enable stepping through the deployments via heat hooks,
32   # you must observe the glob naming defined in overcloud-steps.yaml
33   # e.g all Deployment resources should have a *Deployment_StepN suffix
34   ControllerLoadBalancerDeployment_Step1:
35     type: OS::Heat::StructuredDeployments
36     depends_on: ControllerPrePuppet
37     properties:
38       servers:  {get_param: servers}
39       config: {get_resource: ControllerPuppetConfig}
40       input_values:
41         step: 1
42         update_identifier: {get_param: NodeConfigIdentifiers}
43       actions: ['CREATE'] # no need for two passes on an UPDATE
44
45   ControllerServicesBaseDeployment_Step2:
46     type: OS::Heat::StructuredDeployments
47     depends_on: ControllerLoadBalancerDeployment_Step1
48     properties:
49       servers:  {get_param: servers}
50       config: {get_resource: ControllerPuppetConfig}
51       input_values:
52         step: 2
53         update_identifier: {get_param: NodeConfigIdentifiers}
54       actions: ['CREATE'] # no need for two passes on an UPDATE
55
56   ControllerRingbuilderPuppetConfig:
57     type: OS::Heat::SoftwareConfig
58     properties:
59       group: puppet
60       options:
61         enable_debug: {get_param: ConfigDebug}
62         enable_hiera: True
63         enable_facter: False
64       inputs:
65       outputs:
66       - name: result
67       config:
68         get_file: manifests/ringbuilder.pp
69
70   ControllerRingbuilderDeployment_Step3:
71     type: OS::Heat::StructuredDeployments
72     depends_on: ControllerServicesBaseDeployment_Step2
73     properties:
74       servers:  {get_param: servers}
75       config: {get_resource: ControllerRingbuilderPuppetConfig}
76       input_values:
77         update_identifier: {get_param: NodeConfigIdentifiers}
78
79   ControllerOvercloudServicesDeployment_Step4:
80     type: OS::Heat::StructuredDeployments
81     depends_on: ControllerRingbuilderDeployment_Step3
82     properties:
83       servers:  {get_param: servers}
84       config: {get_resource: ControllerPuppetConfig}
85       input_values:
86         step: 3
87         update_identifier: {get_param: NodeConfigIdentifiers}
88
89   ControllerOvercloudServicesDeployment_Step5:
90     type: OS::Heat::StructuredDeployments
91     depends_on: ControllerOvercloudServicesDeployment_Step4
92     properties:
93       servers:  {get_param: servers}
94       config: {get_resource: ControllerPuppetConfig}
95       input_values:
96         step: 4
97         update_identifier: {get_param: NodeConfigIdentifiers}
98
99   ControllerOvercloudServicesDeployment_Step6:
100     type: OS::Heat::StructuredDeployments
101     depends_on: ControllerOvercloudServicesDeployment_Step5
102     properties:
103       servers:  {get_param: servers}
104       config: {get_resource: ControllerPuppetConfig}
105       input_values:
106         step: 5
107         update_identifier: {get_param: NodeConfigIdentifiers}
108
109   ControllerPostPuppet:
110     type: OS::TripleO::Tasks::ControllerPostPuppet
111     depends_on: ControllerOvercloudServicesDeployment_Step6
112     properties:
113       servers:  {get_param: servers}
114       input_values:
115         update_identifier: {get_param: NodeConfigIdentifiers}
116
117   # Note, this should come last, so use depends_on to ensure
118   # this is created after any other resources.
119   ExtraConfig:
120     depends_on: ControllerPostPuppet
121     type: OS::TripleO::NodeExtraConfigPost
122     properties:
123         servers: {get_param: servers}