aboutsummaryrefslogtreecommitdiffstats
path: root/overcloud.j2.yaml
diff options
context:
space:
mode:
authorSteven Hardy <shardy@redhat.com>2016-09-08 12:14:09 +0100
committerEmilien Macchi <emilien@redhat.com>2016-09-16 00:24:44 +0000
commitb738e9ca7839772065f3db3ea29b057a7152eed5 (patch)
tree5d7d23590963a77bb10cef9ae76e8f1f55574728 /overcloud.j2.yaml
parent3a8d20a63dccc61c958e09a7fcbbaab6690551b4 (diff)
Convert AllNodesExtraConfig to support composable roles
This adjusts the interface to OS::TripleO::AllNodesExtraConfig so it supports custom/composable/optional roles. Note this does break backwards compatibility, and I can't see any way to avoid that. I've converted the in-tree templates, and we'll have to document carefully and or provide a script (or automated conversion via mistral perhaps?) to allow folks to easily adjust any out of tree templates to the new format. Basically you just have to: 1. Remove all the *_servers parameters, replace with one "servers" json parameter 2. Replace references to e.g "controller_servers" with "servers, Controller" which does a path-based lookup into the json map provided by overcloud.yaml Change-Id: I5eebf853646b2f6300d6b542fcd4f43e82d3b413 Partially-Implements: blueprint custom-roles
Diffstat (limited to 'overcloud.j2.yaml')
-rw-r--r--overcloud.j2.yaml16
1 files changed, 6 insertions, 10 deletions
diff --git a/overcloud.j2.yaml b/overcloud.j2.yaml
index 5c0d9148..067f1517 100644
--- a/overcloud.j2.yaml
+++ b/overcloud.j2.yaml
@@ -442,17 +442,13 @@ resources:
type: OS::TripleO::AllNodesExtraConfig
depends_on:
- UpdateWorkflow
- - ComputeAllNodesValidationDeployment
- - BlockStorageAllNodesValidationDeployment
- - ObjectStorageAllNodesValidationDeployment
- - CephStorageAllNodesValidationDeployment
- - ControllerAllNodesValidationDeployment
+{% for role in roles %}
+ - {{role.name}}AllNodesValidationDeployment
+{% endfor %}
properties:
- controller_servers: {get_attr: [Controller, attributes, nova_server_resource]}
- compute_servers: {get_attr: [Compute, attributes, nova_server_resource]}
- blockstorage_servers: {get_attr: [BlockStorage, attributes, nova_server_resource]}
- objectstorage_servers: {get_attr: [ObjectStorage, attributes, nova_server_resource]}
- cephstorage_servers: {get_attr: [CephStorage, attributes, nova_server_resource]}
+{% for role in roles %}
+ servers: {get_attr: [{{role.name}}, attributes, nova_server_resource]}
+{% endfor %}
# Post deployment steps for all roles
AllNodesDeploySteps: