From 59ccfb17ba2c86af6bad4eb61e2604523ec65b68 Mon Sep 17 00:00:00 2001 From: Duc Truong Date: Tue, 17 Nov 2020 19:46:11 +0000 Subject: [PATCH] Fix config and metadata in cluster update The config or metadata in cluster update should only be sent if the values is not None. Sending empty dictionary will override any existing config or metadata setting. Change-Id: Id23e743d1db30a0549d06081e87249a0dbd326a2 --- senlinclient/v1/cluster.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/senlinclient/v1/cluster.py b/senlinclient/v1/cluster.py index 867a6cda..8fe8039e 100644 --- a/senlinclient/v1/cluster.py +++ b/senlinclient/v1/cluster.py @@ -304,11 +304,16 @@ class UpdateCluster(command.ShowOne): parsed_args.profile_only, strict=True, ), - 'metadata': senlin_utils.format_parameters(parsed_args.metadata), - 'config': senlin_utils.format_parameters(parsed_args.config), 'timeout': parsed_args.timeout, } + if parsed_args.config is not None: + attrs['config'] = senlin_utils.format_parameters( + parsed_args.config) + if parsed_args.metadata is not None: + attrs['metadata'] = senlin_utils.format_parameters( + parsed_args.metadata) + senlin_client.update_cluster(cluster, **attrs) return _show_cluster(senlin_client, cluster.id)