From f9eaf678410d20cf49af406b3aa5d00ec532fb41 Mon Sep 17 00:00:00 2001 From: Raj Reddy Date: Mon, 13 Jun 2016 10:21:44 -0700 Subject: [PATCH] Closes-Bug: #1591449 When we moved to use cqlsh from cassandra-cli, we didn't change the port. When we moved to use ContrailAnalyticsCql from ContrailAnalytics, we didn't take care in drop_analytics_keyspace. And the ip used is control_ip and not mgmt_ip. Change-Id: Idc058a750dc34cf1930a3a3c53d7acf49f48ed36 (cherry picked from commit 5d8e1200cef01363324ef2a0741c4228fdcb9053) --- fabfile/tasks/services.py | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/fabfile/tasks/services.py b/fabfile/tasks/services.py index ac569571d..afb81ad66 100644 --- a/fabfile/tasks/services.py +++ b/fabfile/tasks/services.py @@ -6,6 +6,7 @@ get_esxi_contrail_vms from fabric.contrib.files import exists from fabfile.utils.host import hstr_to_ip +from fabfile.utils.host import get_control_host_string @task @roles('cfgm') @@ -429,12 +430,24 @@ def reboot_nova_instance(): @task def drop_analytics_keyspace_node(*args): for host_string in args: - with settings(host_string=host_string): - CASSANDRA_CMD = 'cqlsh %s 9160 -f ' % hstr_to_ip(host_string) + with settings(host_string=host_string, warn_only=True): + CASSANDRA_CMD = 'cqlsh %s -f ' % hstr_to_ip(get_control_host_string(host_string)) print "Dropping analytics keyspace.. this may take a while.." - sudo("echo 'drop keyspace \"ContrailAnalytics\";' > /tmp/cassandra_commands_file") + + sudo("echo 'describe keyspace \"ContrailAnalytics\";' > /tmp/cassandra_commands_file") + if sudo(CASSANDRA_CMD + '/tmp/cassandra_commands_file').succeeded: + sudo("echo 'drop keyspace \"ContrailAnalytics\";' > /tmp/cassandra_commands_file") + if not sudo(CASSANDRA_CMD + '/tmp/cassandra_commands_file').succeeded: + print "WARN: Drop keyspace ContrailAnalytics failed.." + else: + print "INFO: keyspace ContrailAnalytics is dropped.." + print "INFO: if snapshots are created, manual deletion may be required to free up disk.." + sudo("echo 'drop keyspace \"ContrailAnalyticsCql\";' > /tmp/cassandra_commands_file") if not sudo(CASSANDRA_CMD + '/tmp/cassandra_commands_file').succeeded: - print "WARN: Drop analytics keyspace failed.." + print "WARN: Drop keyspace ContrailAnalyticsCql failed.." + else: + print "INFO: keyspace ContrailAnalyticsCql is dropped.." + print "INFO: if snapshots are created, manual deletion may be required to free up disk.." @task @roles('build')