Default bootstrap_server_id
When blacklisting all servers from the primary role, the yaql expression to get the bootstrap_server_id value fails as it tries to index the list at the 0'th element. In this case, default the bootstrap_server_id value to a constant string which won't match any actual server id's. Change-Id: Ibb26245156675f64709bab075875ce4b498b4db6 Closes-Bug: #1785665
This commit is contained in:
parent
5789a9694a
commit
d4d15d0407
@ -269,7 +269,11 @@ resources:
|
||||
properties:
|
||||
value:
|
||||
yaql:
|
||||
expression: $.data.items().orderBy($[0]).first()[1]
|
||||
# Use a constant string of "bootstrap_server_id" when there are no
|
||||
# servers in the primary role, such as in the case when all
|
||||
# Controllers are blacklisted. No server id's will match the string
|
||||
# which is what we want when all are blacklisted.
|
||||
expression: switch($.data = {} => "no_bootstrap_server", $.data != {} => $.data.items().orderBy($[0]).first()[1])
|
||||
data: {get_param: [servers, {{primary_role_name}}]}
|
||||
|
||||
# Artifacts config and HostPrepConfig is done on all roles, not only
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
fixes:
|
||||
- Previously, when blacklisting all servers of the primary role, the stack
|
||||
would fail since the bootstrap server id was empty. The value is now
|
||||
defaulted in case all primary role servers are blacklisted.
|
Loading…
Reference in New Issue
Block a user