9fcf165f44b286edf35827d5a8f985faa9be7e43
[sdc.git] /
1 #!/bin/bash
2
3 CASSANDRA_USER=<%= @cassandra_usr %>
4 CASSANDRA_PASS=<%= @cassandra_pwd %>
5 CASSANDRA_IP=<%= @cassandra_ip %>
6
7 pass_changed=99
8 retry_num=1
9 is_up=0
10 while [ $is_up -eq 0 -a $retry_num -le 100 ]; do
11    echo "exit" | cqlsh -u cassandra -p cassandra $CASSANDRA_IP  > /dev/null 2>&1
12    res1=$?
13    echo "exit" | cqlsh -u cassandra -p $CASSANDRA_PASS $CASSANDRA_IP  > /dev/null 2>&1
14    res2=$?
15
16    if [ $res1 -eq 0 -o $res2 -eq 0 ]; then
17       echo "`date` --- cqlsh is enabled to connect."
18       is_up=1
19       [ $res1 -eq 0 ] && pass_changed=0
20       [ $res2 -eq 0 ] && pass_changed=1
21    else
22       echo "`date` --- cqlsh is NOT enabled to connect yet. sleep 5"
23       sleep 5
24    fi
25    let "retry_num++"
26 done
27
28
29 echo "pass_changed=[$pass_changed]"
30 case $pass_changed in
31    0)
32         cassandra_user_exist=`echo "list users;" | cqlsh -u cassandra -p cassandra $CASSANDRA_IP  |grep -c $CASSANDRA_USER`
33         if [ $cassandra_user_exist -eq 1 ] ; then
34                 echo "cassandra user $CASSANDRA_USER already exist"
35                                 echo "alter user $CASSANDRA_USER with password '$CASSANDRA_PASS' nosuperuser;" | cqlsh -u cassandra -p cassandra $CASSANDRA_IP 
36         else
37                 echo "Going to create $CASSANDRA_USER"
38                 echo "create user $CASSANDRA_USER with password '$CASSANDRA_PASS' nosuperuser;" | cqlsh -u cassandra -p cassandra $CASSANDRA_IP 
39         fi
40         echo "Modify cassandra password"
41         echo "ALTER USER cassandra WITH PASSWORD '$CASSANDRA_PASS';" | cqlsh -u cassandra -p cassandra $CASSANDRA_IP 
42    ;;
43    1)
44         cassandra_user_exist=`echo "list users;" | cqlsh -u cassandra -p $CASSANDRA_PASS $CASSANDRA_IP  |grep -c $CASSANDRA_USER`
45         if [ $cassandra_user_exist -eq 1 ] ; then
46                 echo "cassandra user $CASSANDRA_USER already exist"
47                                 echo "alter user $CASSANDRA_USER with password '$CASSANDRA_PASS' nosuperuser;" | cqlsh -u cassandra -p $CASSANDRA_PASS $CASSANDRA_IP 
48         else
49                 echo "Going to create $CASSANDRA_USER"
50                 echo "create user $CASSANDRA_USER with password '$CASSANDRA_PASS' nosuperuser;" | cqlsh -u cassandra -p $CASSANDRA_PASS $CASSANDRA_IP 
51         fi
52     ;;
53     *)
54        echo "pass_changed doen't have value"
55     ;;
56 esac
57