From b2e37caaeb90e5931cb1522d8d23e6258d506fdb Mon Sep 17 00:00:00 2001 From: Jerry Sun Date: Wed, 3 Feb 2021 09:26:47 -0500 Subject: [PATCH] Etcd parameters lost when changing kube-apiserver parameters Etcd parameters are getting lost when changing kube-apiserver parameters. This is due to no default values being present. The missing etcd parameters causes kube-apiserver to fail to start up. This commit makes the script for changing kube-apiserver parameters keep any existing etcd parameters in the previous config. Change-Id: I83eb5426ba72a36a5eed3ecbddcbbacdf38803c5 Closes-bug: 1914291 Signed-off-by: Jerry Sun --- .../platform/files/change_kube_apiserver_params.py | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/puppet-manifests/src/modules/platform/files/change_kube_apiserver_params.py b/puppet-manifests/src/modules/platform/files/change_kube_apiserver_params.py index 37541b57c..e3cff3535 100644 --- a/puppet-manifests/src/modules/platform/files/change_kube_apiserver_params.py +++ b/puppet-manifests/src/modules/platform/files/change_kube_apiserver_params.py @@ -82,33 +82,23 @@ else: if plugins in cluster_config['apiServer']['extraArgs']: del cluster_config['apiServer']['extraArgs'][plugins] +# etcd parameters are required to start up kube-apiserver +# do not remove any existing etcd parameters in the config map if args.etcd_cafile: cluster_config['etcd']['external']['caFile'] = \ args.etcd_cafile -else: - if 'caFile' in cluster_config['etcd']['external']: - del cluster_config['etcd']['external']['caFile'] if args.etcd_certfile: cluster_config['etcd']['external']['certFile'] = \ args.etcd_certfile -else: - if 'certFile' in cluster_config['etcd']['external']: - del cluster_config['etcd']['external']['certFile'] if args.etcd_keyfile: cluster_config['etcd']['external']['keyFile'] = \ args.etcd_keyfile -else: - if 'keyFile' in cluster_config['etcd']['external']: - del cluster_config['etcd']['external']['keyFile'] if args.etcd_servers: cluster_config['etcd']['external']['endpoints'] = \ args.etcd_servers.split(',') -else: - if 'endpoints' in cluster_config['etcd']['external']: - del cluster_config['etcd']['external']['endpoints'] cluster_config_string = yaml.dump(cluster_config, Dumper=yaml.RoundTripDumper, default_flow_style=False)