1 heat_template_version: ocata
2 description: 'Upgrade for Pacemaker deployments'
9 description: input values for the software deployments
11 UpgradeLevelNovaCompute:
13 description: Nova Compute upgrade level
17 description: Can be auto,yes,no and influences if the major upgrade should do or detect an automatic mysql upgrade
19 - allowed_values: ['auto', 'yes', 'no']
21 KeepSaharaServicesOnUpgrade:
24 description: Whether to keep Sahara services when upgrading controller nodes from mitaka to newton
28 # TODO(jistr): for Mitaka->Newton upgrades and further we can use
29 # map_merge with input_values instead of feeding params into scripts
30 # via str_replace on bash snippets
32 ControllerPacemakerUpgradeConfig_Step1:
33 type: OS::Heat::SoftwareConfig
42 upgrade_level_nova_compute='UPGRADE_LEVEL_NOVA_COMPUTE'
44 UPGRADE_LEVEL_NOVA_COMPUTE: {get_param: UpgradeLevelNovaCompute}
48 mariadb_do_major_upgrade='MYSQL_MAJOR_UPGRADE'
50 MYSQL_MAJOR_UPGRADE: {get_param: MySqlMajorUpgrade}
51 - get_file: pacemaker_common_functions.sh
52 - get_file: major_upgrade_check.sh
53 - get_file: major_upgrade_pacemaker_migrations.sh
54 - get_file: major_upgrade_controller_pacemaker_1.sh
56 ControllerPacemakerUpgradeDeployment_Step1:
57 type: OS::Heat::SoftwareDeploymentGroup
59 servers: {get_param: [servers, Controller]}
60 config: {get_resource: ControllerPacemakerUpgradeConfig_Step1}
61 input_values: {get_param: input_values}
63 ControllerPacemakerUpgradeConfig_Step2:
64 type: OS::Heat::SoftwareConfig
73 upgrade_level_nova_compute='UPGRADE_LEVEL_NOVA_COMPUTE'
75 UPGRADE_LEVEL_NOVA_COMPUTE: {get_param: UpgradeLevelNovaCompute}
79 mariadb_do_major_upgrade='MYSQL_MAJOR_UPGRADE'
81 MYSQL_MAJOR_UPGRADE: {get_param: MySqlMajorUpgrade}
82 - get_file: pacemaker_common_functions.sh
83 - get_file: major_upgrade_check.sh
84 - get_file: major_upgrade_pacemaker_migrations.sh
85 - get_file: major_upgrade_controller_pacemaker_2.sh
87 ControllerPacemakerUpgradeDeployment_Step2:
88 type: OS::Heat::SoftwareDeploymentGroup
89 depends_on: ControllerPacemakerUpgradeDeployment_Step1
91 servers: {get_param: [servers, Controller]}
92 config: {get_resource: ControllerPacemakerUpgradeConfig_Step2}
93 input_values: {get_param: input_values}
95 ControllerPacemakerUpgradeConfig_Step3:
96 type: OS::Heat::SoftwareConfig
102 - - get_file: pacemaker_common_functions.sh
103 - get_file: major_upgrade_pacemaker_migrations.sh
104 - get_file: major_upgrade_controller_pacemaker_3.sh
106 ControllerPacemakerUpgradeDeployment_Step3:
107 type: OS::Heat::SoftwareDeploymentGroup
108 depends_on: ControllerPacemakerUpgradeDeployment_Step2
110 servers: {get_param: [servers, Controller]}
111 config: {get_resource: ControllerPacemakerUpgradeConfig_Step3}
112 input_values: {get_param: input_values}
114 ControllerPacemakerUpgradeConfig_Step4:
115 type: OS::Heat::SoftwareConfig
121 - - get_file: pacemaker_common_functions.sh
122 - get_file: major_upgrade_pacemaker_migrations.sh
123 - get_file: major_upgrade_controller_pacemaker_4.sh
125 ControllerPacemakerUpgradeDeployment_Step4:
126 type: OS::Heat::SoftwareDeploymentGroup
127 depends_on: ControllerPacemakerUpgradeDeployment_Step3
129 servers: {get_param: [servers, Controller]}
130 config: {get_resource: ControllerPacemakerUpgradeConfig_Step4}
131 input_values: {get_param: input_values}
133 ControllerPacemakerUpgradeConfig_Step5:
134 type: OS::Heat::SoftwareConfig
140 - - get_file: pacemaker_common_functions.sh
141 - get_file: major_upgrade_pacemaker_migrations.sh
142 - get_file: major_upgrade_controller_pacemaker_5.sh
144 ControllerPacemakerUpgradeDeployment_Step5:
145 type: OS::Heat::SoftwareDeploymentGroup
146 depends_on: ControllerPacemakerUpgradeDeployment_Step4
148 servers: {get_param: [servers, Controller]}
149 config: {get_resource: ControllerPacemakerUpgradeConfig_Step5}
150 input_values: {get_param: input_values}
152 ControllerPacemakerUpgradeConfig_Step6:
153 type: OS::Heat::SoftwareConfig
162 keep_sahara_services_on_upgrade='KEEP_SAHARA_SERVICES_ON_UPGRADE'
164 KEEP_SAHARA_SERVICES_ON_UPGRADE: {get_param: KeepSaharaServicesOnUpgrade}
165 - get_file: pacemaker_common_functions.sh
166 - get_file: major_upgrade_pacemaker_migrations.sh
167 - get_file: major_upgrade_controller_pacemaker_6.sh
169 ControllerPacemakerUpgradeDeployment_Step6:
170 type: OS::Heat::SoftwareDeploymentGroup
171 depends_on: ControllerPacemakerUpgradeDeployment_Step5
173 servers: {get_param: [servers, Controller]}
174 config: {get_resource: ControllerPacemakerUpgradeConfig_Step6}
175 input_values: {get_param: input_values}