Make upgrade steps unconditional to fix broken dependencies

Change I5c8b0c4abfc0607f42fd3f2da9f5ef2702b1bbe1 introduced conditions
to optimize upgrade times and fix related bugs. Unfortunately the
conditional inclusion would have to be paired with support in depends_on
to work as we need. Currently we can hit this bug if the batch upgrade
steps are undefined for some role, but upgrade steps are definied:

The specified reference "ControllerUpgradeBatch_Step2" (in
ControllerUpgradeConfig_Step0) is incorrect.

To fix this we have to make the steps unconditional. This isn't fully
reverting the original change because that change also addressed
ordering issues.

Change-Id: I369591f4757c10142f5b455e64aa778e1a9a5611
Closes-Bug: #1689553
This commit is contained in:
Jiri Stransky 2017-05-09 15:48:54 +02:00
parent 4ea0307bd8
commit 345150c243
1 changed files with 0 additions and 19 deletions

View File

@ -32,21 +32,6 @@ parameters:
type: string
hidden: true
conditions:
# Conditions to disable any steps where the task list is empty
{%- for role in roles %}
{{role.name}}UpgradeBatchConfigEnabled:
not:
equals:
- {get_param: [role_data, {{role.name}}, upgrade_batch_tasks]}
- []
{{role.name}}UpgradeConfigEnabled:
not:
equals:
- {get_param: [role_data, {{role.name}}, upgrade_tasks]}
- []
{%- endfor %}
resources:
{% for role in roles if role.disable_upgrade_deployment|default(false) %}
@ -103,7 +88,6 @@ resources:
{%- for role in roles %}
{{role.name}}UpgradeBatchConfig_Step{{step}}:
type: OS::TripleO::UpgradeConfig
condition: {{role.name}}UpgradeBatchConfigEnabled
{%- if step > 0 %}
depends_on:
{%- for role_inside in enabled_roles %}
@ -129,7 +113,6 @@ resources:
{%- for role in enabled_roles %}
{{role.name}}UpgradeBatch_Step{{step}}:
type: OS::Heat::SoftwareDeploymentGroup
condition: {{role.name}}UpgradeBatchConfigEnabled
{%- if step > 0 %}
depends_on:
{%- for role_inside in enabled_roles %}
@ -192,7 +175,6 @@ resources:
{%- for role in roles %}
{{role.name}}UpgradeConfig_Step{{step}}:
type: OS::TripleO::UpgradeConfig
condition: {{role.name}}UpgradeConfigEnabled
# The UpgradeConfig resources could actually be created without
# serialization, but the event output is easier to follow if we
# do, and there should be minimal performance hit (creating the
@ -214,7 +196,6 @@ resources:
{%- for role in enabled_roles %}
{{role.name}}Upgrade_Step{{step}}:
type: OS::Heat::SoftwareDeploymentGroup
condition: {{role.name}}UpgradeConfigEnabled
depends_on:
{%- for role_inside in enabled_roles %}
{%- if step > 0 %}