From 89654d0477a25592fafbc438aacce12988dc23c1 Mon Sep 17 00:00:00 2001 From: "J. Eric Ivancich" Date: Tue, 21 Apr 2020 15:28:58 +0000 Subject: [PATCH] qa/rgw: allow the rgw teuthology task to capture/set dns names A teuthology workunit might want to use the rgw task, setting the rgw-dns-name and/or rgw-dns-s3website-name configuration options to the fully-qualified domain name. Existing code implies that setting these configuration options to the empty string will do that. However the current logic does not support that given it has Python conditionals that treat the empty string as false. This fixes that. Now the following teuthology tasks YAML will work as expected: tasks: - rgw: client.0: dns-name: '' dns-s3website-name: '' Signed-off-by: J. Eric Ivancich --- qa/tasks/rgw.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/qa/tasks/rgw.py b/qa/tasks/rgw.py index 70bc9f88cfa..75004c87a45 100644 --- a/qa/tasks/rgw.py +++ b/qa/tasks/rgw.py @@ -104,9 +104,9 @@ def start_rgw(ctx, config, clients): ]) - if client_config.get('dns-name'): + if client_config.get('dns-name') is not None: rgw_cmd.extend(['--rgw-dns-name', endpoint.dns_name]) - if client_config.get('dns-s3website-name'): + if client_config.get('dns-s3website-name') is not None: rgw_cmd.extend(['--rgw-dns-s3website-name', endpoint.website_dns_name]) @@ -223,9 +223,8 @@ def assign_endpoints(ctx, config, default_cert): dns_name += remote.hostname website_dns_name = client_config.get('dns-s3website-name') - if website_dns_name: - if len(website_dns_name) == 0 or website_dns_name.endswith('.'): - website_dns_name += remote.hostname + if website_dns_name is not None and (len(website_dns_name) == 0 or website_dns_name.endswith('.')): + website_dns_name += remote.hostname role_endpoints[role] = RGWEndpoint(remote.hostname, port, ssl_certificate, dns_name, website_dns_name) -- 2.39.5