aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--puppet/major_upgrade_steps.j2.yaml7
-rw-r--r--roles_data.yaml6
-rwxr-xr-xtools/yaml-validate.py4
3 files changed, 14 insertions, 3 deletions
diff --git a/puppet/major_upgrade_steps.j2.yaml b/puppet/major_upgrade_steps.j2.yaml
index 9430a704..433b03a0 100644
--- a/puppet/major_upgrade_steps.j2.yaml
+++ b/puppet/major_upgrade_steps.j2.yaml
@@ -31,19 +31,23 @@ resources:
{% if step > 0 %}
depends_on:
{% for dep in roles %}
+ {% if not dep.disable_upgrade_deployment|default(false) %}
- {{dep.name}}Upgrade_Step{{step -1}}
+ {% endif %}
{% endfor %}
{% endif %}
properties:
UpgradeStepConfig: {get_param: [role_data, {{role.name}}, upgrade_tasks]}
step: {{step}}
-
+ {% if not role.disable_upgrade_deployment|default(false) %}
{{role.name}}Upgrade_Step{{step}}:
type: OS::Heat::StructuredDeploymentGroup
{% if step > 0 %}
depends_on:
{% for dep in roles %}
+ {% if not dep.disable_upgrade_deployment|default(false) %}
- {{dep.name}}Upgrade_Step{{step -1}}
+ {% endif %}
{% endfor %}
{% endif %}
properties:
@@ -53,6 +57,7 @@ resources:
input_values:
role: {{role.name}}
update_identifier: {get_param: UpdateIdentifier}
+ {% endif %}
{% endfor %}
{% endfor %}
diff --git a/roles_data.yaml b/roles_data.yaml
index 561500c8..39cb56f9 100644
--- a/roles_data.yaml
+++ b/roles_data.yaml
@@ -17,6 +17,9 @@
# disable_constraints: (boolean) optional, whether to disable Nova and Glance
# constraints for each role specified in the templates.
#
+# disable_upgrade_deployment: (boolean) optional, whether to run the composable upgrade
+# steps for all services that are deployed on the particular role.
+#
# ServicesDefault: (list) optional default list of services to be deployed
# on the role, defaults to an empty list. Sets the default for the
# {{role.name}}Services parameter in overcloud.yaml
@@ -109,6 +112,7 @@
- name: Compute
CountDefault: 1
HostnameFormatDefault: '%stackname%-novacompute-%index%'
+ disable_upgrade_deployment: True
ServicesDefault:
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CephClient
@@ -145,6 +149,7 @@
- OS::TripleO::Services::FluentdClient
- name: ObjectStorage
+ disable_upgrade_deployment: True
ServicesDefault:
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::Kernel
@@ -159,6 +164,7 @@
- OS::TripleO::Services::FluentdClient
- name: CephStorage
+ disable_upgrade_deployment: True
ServicesDefault:
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CephOSD
diff --git a/tools/yaml-validate.py b/tools/yaml-validate.py
index 63e3ce51..19e40d19 100755
--- a/tools/yaml-validate.py
+++ b/tools/yaml-validate.py
@@ -196,8 +196,8 @@ if base_endpoint_map and \
matches = validate_endpoint_map(base_endpoint_map,
env_endpoint_map['map'])
if not matches:
- print("ERROR: %s doesn't match base endpoint map" %
- env_endpoint_map['file'])
+ print("ERROR: %s needs to be updated to match changes in base "
+ "endpoint map" % env_endpoint_map['file'])
failed_files.append(env_endpoint_map['file'])
exit_val |= 1
else: