blob: ededd1d67be0a673623be67a0be4e5e29e21a6fe [file] [log] [blame]
ibumarskovb5210062018-08-22 16:18:15 +04001{# Collection of common macroses shared across openstack services #}
2
Dennis Dmitriev4034db02018-08-26 21:50:13 +03003{%- macro MACRO_INSTALL_KEYSTONE(USE_ORCHESTRATE=true) %}
4 {%- if USE_ORCHESTRATE %}
5- description: |
Oleksii Butenkoe0fc5f22018-09-25 14:29:42 +03006 Execute salt orchestration state to configure all needed
ibumarskov330bc122018-08-23 13:02:04 +04007 prerequisites like creating SSH public key ant etc.
Dennis Dmitriev4034db02018-08-26 21:50:13 +03008 Workaround for PROD-22488, use for PROD-22535.
ibumarskov330bc122018-08-23 13:02:04 +04009 cmd: salt-run state.orchestrate keystone.orchestrate.deploy
10 node_name: {{ HOSTNAME_CFG01 }}
11 retry: {count: 1, delay: 5}
12 skip_fail: false
Dennis Dmitriev4034db02018-08-26 21:50:13 +030013 {%- endif %}
ibumarskov330bc122018-08-23 13:02:04 +040014
ibumarskovb5210062018-08-22 16:18:15 +040015- description: Install keystone service on primary node
16 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
17 -C 'I@keystone:server and *01*' state.sls keystone.server
18 node_name: {{ HOSTNAME_CFG01 }}
19 retry: {count: 2, delay: 15}
20 skip_fail: false
21
22- description: Install keystone service on other nodes
23 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
24 -C 'I@keystone:server' state.sls keystone.server
25 node_name: {{ HOSTNAME_CFG01 }}
26 retry: {count: 2, delay: 15}
27 skip_fail: false
28
29- description: Restart apache due to PROD-10477
30 cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*'
ibumarskov1b85e892018-08-30 11:54:47 +040031 cmd.run "service apache2 restart"
ibumarskovb5210062018-08-22 16:18:15 +040032 node_name: {{ HOSTNAME_CFG01 }}
33 retry: {count: 1, delay: 15}
34 skip_fail: false
35
36- description: Check apache status to PROD-10477
37 cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*'
ibumarskov1b85e892018-08-30 11:54:47 +040038 cmd.run "service apache2 status"
ibumarskovb5210062018-08-22 16:18:15 +040039 node_name: {{ HOSTNAME_CFG01 }}
40 retry: {count: 1, delay: 15}
41 skip_fail: false
42
Dennis Dmitriev4034db02018-08-26 21:50:13 +030043- description: Mount glusterfs.client volumes (resuires created 'keystone' system user)
44 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
45 -C 'I@keystone:server' state.sls glusterfs.client -b 1
46 node_name: {{ HOSTNAME_CFG01 }}
47 retry: {count: 1, delay: 5}
48 skip_fail: false
49
50- description: Update fernet keys for keystone server on the mounted glusterfs volume
51 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
52 -C 'I@keystone:server' state.sls keystone.server -b 1
53 node_name: {{ HOSTNAME_CFG01 }}
54 retry: {count: 1, delay: 5}
55 skip_fail: false
56
ibumarskovb5210062018-08-22 16:18:15 +040057- description: Populate keystone services/tenants/admins
58 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
59 -C 'I@keystone:client' state.sls keystone.client
60 node_name: {{ HOSTNAME_CFG01 }}
61 retry: {count: 2, delay: 5}
62 skip_fail: false
63
64- description: Check keystone service-list
65 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko8b49a762018-09-18 11:46:35 +030066 -C "I@keystone:server" cmd.run ". /root/keystonercv3;
67 openstack service list"
ibumarskovb5210062018-08-22 16:18:15 +040068 node_name: {{ HOSTNAME_CFG01 }}
69 retry: {count: 1, delay: 5}
70 skip_fail: false
71{%- endmacro %}
72
73{%- macro MACRO_INSTALL_GLANCE() %}
74- description: Install glance service on primary node
75 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
76 -C 'I@glance:server and *01*' state.sls glance.server
77 node_name: {{ HOSTNAME_CFG01 }}
78 retry: {count: 1, delay: 5}
79 skip_fail: false
80
81- description: Install glance service on other nodes
82 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
83 -C 'I@glance:server' state.sls glance.server
84 node_name: {{ HOSTNAME_CFG01 }}
85 retry: {count: 1, delay: 5}
86 skip_fail: false
87
Dennis Dmitriev4034db02018-08-26 21:50:13 +030088- description: Mount glusterfs.client volumes (resuires created 'glusterfs' system user)
ibumarskovb5210062018-08-22 16:18:15 +040089 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Dennis Dmitriev4034db02018-08-26 21:50:13 +030090 -C 'I@glance:server' state.sls glusterfs.client -b 1
ibumarskovb5210062018-08-22 16:18:15 +040091 node_name: {{ HOSTNAME_CFG01 }}
92 retry: {count: 1, delay: 5}
93 skip_fail: false
94
95- description: Check glance image-list
96 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko8b49a762018-09-18 11:46:35 +030097 -C "I@keystone:server" cmd.run ". /root/keystonercv3;
98 openstack image list"
ibumarskovb5210062018-08-22 16:18:15 +040099 node_name: {{ HOSTNAME_CFG01 }}
100 retry: {count: 1, delay: 5}
101 skip_fail: false
102{%- endmacro %}
103
104{%- macro MACRO_INSTALL_NOVA() %}
105- description: Install nova service on primary node
106 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
107 -C "I@nova:controller and *01*" state.sls nova.controller
108 node_name: {{ HOSTNAME_CFG01 }}
109 retry: {count: 1, delay: 5}
110 skip_fail: false
111
112- description: Install nova service on other nodes
113 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
114 -C "I@nova:controller" state.sls nova.controller
115 node_name: {{ HOSTNAME_CFG01 }}
116 retry: {count: 1, delay: 5}
117 skip_fail: false
118
119- description: Check nova service-list
120 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko8b49a762018-09-18 11:46:35 +0300121 -C "I@keystone:server" cmd.run ". /root/keystonercv3;
122 openstack compute service list"
ibumarskovb5210062018-08-22 16:18:15 +0400123 node_name: {{ HOSTNAME_CFG01 }}
124 retry: {count: 1, delay: 5}
125 skip_fail: false
126
127- description: Check nova list
128 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko8b49a762018-09-18 11:46:35 +0300129 -C "I@keystone:server" cmd.run ". /root/keystonercv3;
130 openstack server list"
ibumarskovb5210062018-08-22 16:18:15 +0400131 node_name: {{ HOSTNAME_CFG01 }}
132 retry: {count: 1, delay: 5}
133 skip_fail: false
134{%- endmacro %}
135
Dennis Dmitriev4034db02018-08-26 21:50:13 +0300136{%- macro MACRO_INSTALL_CINDER(INSTALL_VOLUME=false) %}
ibumarskovb5210062018-08-22 16:18:15 +0400137- description: Install cinder on primary node
138 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
139 -C "I@cinder:controller and *01*" state.sls cinder
140 node_name: {{ HOSTNAME_CFG01 }}
141 retry: {count: 1, delay: 5}
142 skip_fail: false
143
144- description: Install cinder on other nodes
145 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
146 -C "I@cinder:controller" state.sls cinder
147 node_name: {{ HOSTNAME_CFG01 }}
148 retry: {count: 1, delay: 5}
149 skip_fail: false
150
151- description: Check cinder list
152 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko8b49a762018-09-18 11:46:35 +0300153 -C "I@keystone:server" cmd.run ". /root/keystonercv3;
154 openstack volume list"
ibumarskovb5210062018-08-22 16:18:15 +0400155 node_name: {{ HOSTNAME_CFG01 }}
156 retry: {count: 1, delay: 5}
157 skip_fail: false
Dennis Dmitriev4034db02018-08-26 21:50:13 +0300158
159 {%- if INSTALL_VOLUME %}
160- description: Install cinder volume
161 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
162 -C 'I@cinder:volume' state.sls cinder
163 node_name: {{ HOSTNAME_CFG01 }}
164 retry: {count: 1, delay: 5}
165 skip_fail: false
166 {%- endif %}
167
ibumarskovb5210062018-08-22 16:18:15 +0400168{%- endmacro %}
169
Dennis Dmitriev4034db02018-08-26 21:50:13 +0300170{%- macro MACRO_INSTALL_NEUTRON(INSTALL_GATEWAY=true) %}
ibumarskovb5210062018-08-22 16:18:15 +0400171- description: Install neutron service on primary node
172 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
173 -C "I@neutron:server and *01*" state.sls neutron.server
174 node_name: {{ HOSTNAME_CFG01 }}
175 retry: {count: 1, delay: 5}
176 skip_fail: false
177
178- description: Install neutron service on other nodes
179 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
180 -C "I@neutron:server" state.sls neutron.server
181 node_name: {{ HOSTNAME_CFG01 }}
182 retry: {count: 1, delay: 5}
183 skip_fail: false
184
Dennis Dmitriev4034db02018-08-26 21:50:13 +0300185 {%- if INSTALL_GATEWAY %}
ibumarskovb5210062018-08-22 16:18:15 +0400186- description: Install neutron on gtw node
187 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
188 -C 'I@neutron:gateway' state.sls neutron
189 node_name: {{ HOSTNAME_CFG01 }}
190 retry: {count: 1, delay: 5}
191 skip_fail: false
192
193- description: Check neutron agent-list
194 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko16f86912018-09-20 11:47:00 +0300195 -C 'I@keystone:server' cmd.run '. /root/keystonercv3; neutron agent-list'
ibumarskovb5210062018-08-22 16:18:15 +0400196 node_name: {{ HOSTNAME_CFG01 }}
197 retry: {count: 1, delay: 5}
198 skip_fail: false
Dennis Dmitriev4034db02018-08-26 21:50:13 +0300199 {%- endif %}
200
ibumarskovb5210062018-08-22 16:18:15 +0400201{%- endmacro %}
202
203{%- macro MACRO_INSTALL_HEAT() %}
204- description: Install heat service on primary node
205 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
206 -C "I@heat:server and *01*" state.sls heat.server
207 node_name: {{ HOSTNAME_CFG01 }}
208 retry: {count: 1, delay: 5}
209 skip_fail: false
210
211- description: Install heat service on other nodes
212 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
213 -C "I@heat:server" state.sls heat.server
214 node_name: {{ HOSTNAME_CFG01 }}
215 retry: {count: 1, delay: 5}
216 skip_fail: false
217
218- description: Check heat service
219 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
Oleksii Butenko8b49a762018-09-18 11:46:35 +0300220 -C 'I@keystone:server' cmd.run '. /root/keystonercv3;
221 openstack orchestration resource type list'
ibumarskovb5210062018-08-22 16:18:15 +0400222 node_name: {{ HOSTNAME_CFG01 }}
223 retry: {count: 5, delay: 10}
224 skip_fail: false
225{%- endmacro %}
226
227{%- macro MACRO_INSTALL_HORIZON() %}
228- description: Deploy horizon dashboard
229 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
230 -C 'I@horizon:server' state.sls horizon
231 node_name: {{ HOSTNAME_CFG01 }}
232 retry: {count: 1, delay: 5}
233 skip_fail: true
234
235- description: Deploy nginx proxy
236 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
237 -C 'I@nginx:server' state.sls nginx
238 node_name: {{ HOSTNAME_CFG01 }}
239 retry: {count: 1, delay: 5}
240 skip_fail: true
241{%- endmacro %}
242
Oleksii Butenko81d8a7f2018-09-26 16:09:27 +0300243{%- macro MACRO_INSTALL_DESIGNATE(INSTALL_POWERDNS=false, INSTALL_BIND=false) %}
Oleksii Butenkoe0fc5f22018-09-25 14:29:42 +0300244 {%- if INSTALL_POWERDNS %}
245- description: Install powerdns
246 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
247 -C 'I@powerdns:server' state.sls powerdns.server
248 node_name: {{ HOSTNAME_CFG01 }}
249 retry: {count: 1, delay: 5}
250 skip_fail: false
251 {%- endif %}
252
Oleksii Butenko81d8a7f2018-09-26 16:09:27 +0300253 {%- if INSTALL_BIND %}
254- description: Install bind
255 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
256 -C 'I@bind:server' state.sls bind
257 node_name: {{ HOSTNAME_CFG01 }}
258 retry: {count: 1, delay: 5}
259 skip_fail: false
260 {%- endif %}
261
ibumarskovb5210062018-08-22 16:18:15 +0400262- description: Install designate on primary node
263 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
264 -C "I@designate:server and *01*" state.sls designate.server
265 node_name: {{ HOSTNAME_CFG01 }}
266 retry: {count: 5, delay: 10}
267 skip_fail: false
268
269- description: Install designate on other nodes
270 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
271 -C "I@designate:server" state.sls designate
272 node_name: {{ HOSTNAME_CFG01 }}
273 retry: {count: 5, delay: 10}
274 skip_fail: false
275{%- endmacro %}
276
ibumarskovb5210062018-08-22 16:18:15 +0400277{%- macro MACRO_INSTALL_BARBICAN() %}
278# TO DO
279{%- endmacro %}
280
281{%- macro MACRO_INSTALL_IRONIC() %}
282# TO DO
283{%- endmacro %}
284
285{%- macro MACRO_INSTALL_MANILA() %}
Oleksii Butenkof57d1ff2018-09-28 17:59:45 +0300286- description: Install manila-api on first node
287 cmd: |
288 salt -C 'I@manila:api and *01*' state.sls manila.api;
289 node_name: {{ HOSTNAME_CFG01 }}
290 retry: {count: 1, delay: 5}
291 skip_fail: false
292
Oleksii Butenkof57d1ff2018-09-28 17:59:45 +0300293- description: Install manila-scheduler
294 cmd: |
295 salt -C 'I@manila:scheduler' state.sls manila.scheduler;
296 node_name: {{ HOSTNAME_CFG01 }}
297 retry: {count: 1, delay: 5}
298 skip_fail: false
299
300- description: Install manila-share
301 cmd: |
302 salt -C 'I@manila:share' state.sls manila.share;
303 node_name: {{ HOSTNAME_CFG01 }}
304 retry: {count: 1, delay: 5}
305 skip_fail: false
306
Oleksii Butenkof57d1ff2018-09-28 17:59:45 +0300307- description: Check manila-services
308 cmd: |
309 salt 'ctl01*' cmd.run '. /root/keystonercv3; manila service-list'
310 node_name: {{ HOSTNAME_CFG01 }}
311 retry: {count: 3, delay: 15}
312 skip_fail: false
313
314- description: Create manila type
315 cmd: |
Oleksii Butenko40772422018-10-01 16:52:49 +0300316 salt -C "I@manila:client" state.sls manila.client
Oleksii Butenkof57d1ff2018-09-28 17:59:45 +0300317 node_name: {{ HOSTNAME_CFG01 }}
318 retry: {count: 1, delay: 5}
319 skip_fail: false
320
321- description: Create CIFS and NFS share and check it status
322 cmd: |
323 salt 'ctl01*' cmd.run '. /root/keystonercv3; manila create CIFS 1 --share-type=default';
324 salt 'ctl01*' cmd.run '. /root/keystonercv3; manila create NFS 1 --share-type=default';
325 sleep 5;
326 salt 'ctl01*' cmd.run '. /root/keystonercv3; manila list';
327 node_name: {{ HOSTNAME_CFG01 }}
328 retry: {count: 1, delay: 5}
329 skip_fail: false
ibumarskovb5210062018-08-22 16:18:15 +0400330{%- endmacro %}
331
332{%- macro MACRO_INSTALL_OCTAVIA_API() %}
Tatyana Leontovich931892e2018-10-18 14:27:12 +0300333- description: Install octavia api service on primary node
334 cmd: salt -C 'I@octavia:api:role:primary' state.sls octavia.api
335 node_name: {{ HOSTNAME_CFG01 }}
336 retry: {count: 1, delay: 5}
337 skip_fail: false
338
339- description: Install octavia api service
340 cmd: salt -C 'I@octavia:api' state.sls octavia.api
341 node_name: {{ HOSTNAME_CFG01 }}
342 retry: {count: 1, delay: 5}
343 skip_fail: false
344
345{%- endmacro %}
346
347{%- macro MACRO_INSTALL_OCTAVIA_MANAGER() %}
348- description: Update mine
349 cmd: salt -C 'I@neutron:client' mine.update && sleep 60
350 node_name: {{ HOSTNAME_CFG01 }}
351 retry: {count: 1, delay: 5}
352 skip_fail: false
353
354- description: Install octavia manager
355 cmd: salt -C 'I@octavia:manager' state.sls octavia.manager
356 node_name: {{ HOSTNAME_CFG01 }}
357 retry: {count: 1, delay: 5}
358 skip_fail: false
359
360- description: Execute octavia ca
361 cmd: salt -C 'I@octavia:manager' state.sls salt.minion.ca
362 node_name: {{ HOSTNAME_CFG01 }}
363 retry: {count: 1, delay: 5}
364 skip_fail: false
365
366- description: Execute octavia cert
367 cmd: salt -C 'I@octavia:manager' state.sls salt.minion.cert
368 node_name: {{ HOSTNAME_CFG01 }}
369 retry: {count: 1, delay: 5}
370 skip_fail: false
371
372- description: Execute octavia client
373 cmd: salt -C 'I@octavia:client' state.sls octavia.client
374 node_name: {{ HOSTNAME_CFG01 }}
375 retry: {count: 1, delay: 5}
376 skip_fail: false
377
ibumarskovb5210062018-08-22 16:18:15 +0400378{%- endmacro %}
379
380{%- macro MACRO_INSTALL_DOGTAG() %}
381# TO DO
382{%- endmacro %}
383
Oleksii Butenkode0c5ee2018-09-24 15:29:45 +0300384{%- macro MACRO_INSTALL_COMPUTE(CELL_MAPPING=false) %}
Oleksii Butenko20947f22018-08-29 15:48:21 +0300385# Install compute node
386- description: Apply formulas for compute node
387 cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' state.apply
388 node_name: {{ HOSTNAME_CFG01 }}
389 retry: {count: 1, delay: 5}
390 skip_fail: true
391
392- description: Re-apply(as in doc) formulas for compute node
393 cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' state.apply
394 node_name: {{ HOSTNAME_CFG01 }}
395 retry: {count: 1, delay: 5}
396 skip_fail: false
397
398- description: Check IP on computes
399 cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' cmd.run
400 'ip a'
401 node_name: {{ HOSTNAME_CFG01 }}
402 retry: {count: 10, delay: 30}
403 skip_fail: false
Oleksii Butenkode0c5ee2018-09-24 15:29:45 +0300404
405 {%- if CELL_MAPPING %}
406- description: Re-run nova for map cell mapping
407 cmd: salt --hard-crash --state-output=mixed --state-verbose=False
408 -C "I@nova:controller and *01*" state.sls nova.controller
409 node_name: {{ HOSTNAME_CFG01 }}
410 retry: {count: 1, delay: 5}
411 skip_fail: false
412 {%- endif %}
Oleksii Butenko48f9a7b2018-10-11 14:04:45 +0300413{%- endmacro %}
Oleksii Butenkode0c5ee2018-09-24 15:29:45 +0300414
Oleksii Butenko48f9a7b2018-10-11 14:04:45 +0300415{%- macro MACRO_INSTALL_REDIS() %}
416- description: Install redis service
417 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@redis:cluster:role:master' state.sls redis &&
418 salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@redis:server' state.sls redis
419 node_name: {{ HOSTNAME_CFG01 }}
420 retry: {count: 1, delay: 5}
421 skip_fail: false
422{%- endmacro %}
423
424{%- macro MACRO_INSTALL_GNOCCHI() %}
425- description: Install gnocchi server
426 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@gnocchi:server and *01*' state.sls gnocchi.server &&
427 salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@gnocchi:server' state.sls gnocchi.server
428 node_name: {{ HOSTNAME_CFG01 }}
429 retry: {count: 1, delay: 5}
430 skip_fail: false
431
432- description: Setup gnocchi client
433 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@gnocchi:client and *01*' state.sls gnocchi.client &&
434 salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@gnocchi:client' state.sls gnocchi.client
435 node_name: {{ HOSTNAME_CFG01 }}
436 retry: {count: 1, delay: 5}
437 skip_fail: false
438{%- endmacro %}
439
440{%- macro MACRO_INSTALL_PANKO() %}
441- description: Install panko server
442 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@panko:server and *01*' state.sls panko &&
443 salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@panko:server' state.sls panko
444 node_name: {{ HOSTNAME_CFG01 }}
445 retry: {count: 1, delay: 5}
446 skip_fail: false
447{%- endmacro %}
448
449{%- macro MACRO_INSTALL_CEILOMETER() %}
450- description: Install ceilometer server on first node
451 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@ceilometer:server and *01*' state.sls ceilometer
452 node_name: {{ HOSTNAME_CFG01 }}
453 retry: {count: 2, delay: 5}
454 skip_fail: false
455
456- description: Install ceilometer server on other nodes
457 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@ceilometer:server' state.sls ceilometer
458 node_name: {{ HOSTNAME_CFG01 }}
459 retry: {count: 2, delay: 5}
460 skip_fail: false
461{%- endmacro %}
462
463{%- macro MACRO_INSTALL_AODH() %}
464- description: Install aodh server
465 cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@aodh:server and *01*' state.sls aodh &&
466 salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@aodh:server' state.sls aodh
467 node_name: {{ HOSTNAME_CFG01 }}
468 retry: {count: 1, delay: 5}
469 skip_fail: false
Oleksii Butenko20947f22018-08-29 15:48:21 +0300470{%- endmacro %}
Oleksii Butenkoffc09222018-09-21 12:37:16 +0300471
472{%- macro OVERRIDE_POLICY() %}
473- description: Upload policy override
474 upload:
475 local_path: {{ config.salt_deploy.templates_dir }}{{ LAB_CONFIG_NAME }}/
476 local_filename: overrides-policy.yml
477 remote_path: /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/
478 node_name: {{ HOSTNAME_CFG01 }}
479
480- description: Create custom cluster control class
481 cmd: echo -e "classes:\n- cluster.{{ LAB_CONFIG_NAME }}.openstack.control_orig\n$(cat /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/overrides-policy.yml)" > /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/overrides-policy.yml
482 node_name: {{ HOSTNAME_CFG01 }}
483
484- description: Rename control classes
485 cmd: mv /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/control.yml /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/control_orig.yml &&
486 ln -s /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/overrides-policy.yml /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/control.yml &&
487 salt --hard-crash --state-output=mixed --state-verbose=False '*' saltutil.sync_all &&
488 salt --hard-crash --state-output=mixed --state-verbose=False '*' saltutil.refresh_pillar
489 node_name: {{ HOSTNAME_CFG01 }}
Oleksii Butenkoc07e4062018-10-29 12:04:42 +0200490{%- endmacro %}