55# Identify the script name
66SCRIPT=" riak-admin"
77
8- RPC_HOP=" {{platform_bin_dir}}/riak rpc"
8+ PLATFORM_BASE_DIR={{platform_base_dir}}
9+ PLATFORM_BASE_DIR=${PLATFORM_BASE_DIR:- $(cd $(dirname " $0 " )/ .. && pwd -P)}
10+
11+ PLATFORM_BIN_DIR={{platform_bin_dir}}
12+ if [ " $PLATFORM_BIN_DIR " = " ${PLATFORM_BIN_DIR#/ } " ]; then
13+ PLATFORM_BIN_DIR=$PLATFORM_BASE_DIR /$PLATFORM_BIN_DIR
14+ fi
15+
16+ RPC_HOP=" ${PLATFORM_BIN_DIR} /riak rpc"
17+ RPCt_HOP=" ${PLATFORM_BIN_DIR} /riak rpcterms"
18+
19+ PLATFORM_ETC_DIR={{platform_etc_dir}}
20+ if [ " $PLATFORM_ETC_DIR " = " ${PLATFORM_ETC_DIR#/ } " ]; then
21+ PLATFORM_ETC_DIR=$PLATFORM_BASE_DIR /$PLATFORM_ETC_DIR
22+ fi
23+
24+ PLATFORM_PATCH_DIR={{platform_patch_dir}}
25+ if [ " $PLATFORM_PATCH_DIR " = " ${PLATFORM_PATCH_DIR#/ } " ]; then
26+ PLATFORM_PATCH_DIR=$PLATFORM_BASE_DIR /$PLATFORM_PATCH_DIR
27+ fi
28+
29+ ERTS_VER=$( cd ${PLATFORM_BASE_DIR} && ls -d erts-* )
30+ ERTS_PATH=" ${PLATFORM_BASE_DIR} /$ERTS_VER /bin"
31+ COOKIE=` egrep ' ^[ \t]*distributed_cookie[ \t]*=[ \t]*' $PLATFORM_ETC_DIR /riak.conf 2> /dev/null | cut -d = -f 2 | tr -d ' ' `
932
10- ERTS_PATH=" {{runner_base_dir}}/` (cd {{runner_base_dir}} && ls -d erts-* )` /bin"
11- COOKIE=` egrep ' ^[ \t]*distributed_cookie[ \t]*=[ \t]*' {{platform_etc_dir}}/riak.conf 2> /dev/null | cut -d = -f 2 | tr -d ' ' `
1233NODE={{node}}
1334HOST=${NODE#*@ }
1435
15- BOOT_FILE=" {{runner_base_dir}} /releases/{{rel_vsn }}/start_clean"
36+ BOOT_FILE=" ${PLATFORM_BASE_DIR} /releases/{{release_version }}/start_clean"
1637
1738usage () {
1839 echo " Usage: $SCRIPT { cluster | join | leave | backup | restore | test | "
@@ -804,7 +825,7 @@ case "$1" in
804825 echo " Lists the services available on the node. See also: wait-for-service"
805826 exit 1
806827 fi
807- $RPC_HOPterms riak_core_node_watcher services ' '
828+ $RPCt_HOP riak_core_node_watcher services ' '
808829 ;;
809830
810831 wait[_-]for[_-]service)
@@ -818,7 +839,7 @@ case "$1" in
818839 while (true); do
819840 # Make sure riak_core_node_watcher is up and running locally before trying to query it
820841 # to avoid ugly (but harmless) error messages
821- NODEWATCHER=` $RPC_HOPterms erlang whereis " 'riak_core_node_watcher'." `
842+ NODEWATCHER=` $RPCt_HOP erlang whereis " 'riak_core_node_watcher'." `
822843 if [ " $NODEWATCHER " = " undefined" ]; then
823844 echo " $SVC is not up: node watcher is not running"
824845 continue
@@ -827,9 +848,9 @@ case "$1" in
827848 # Get the list of services that are available on the requested node
828849 # If no node is specified, get the list of services from the local node
829850 if [ " X$TARGETNODE " = " X" ]; then
830- SERVICES=` $RPC_HOPterms riak_core_node_watcher services ' ' `
851+ SERVICES=` $RPCt_HOP riak_core_node_watcher services ' ' `
831852 else
832- SERVICES=` $RPC_HOPterms riak_core_node_watcher services " '${TARGETNODE} '." `
853+ SERVICES=` $RPCt_HOP riak_core_node_watcher services " '${TARGETNODE} '." `
833854 fi
834855 echo " $SERVICES " | grep " [[,]$SVC [],]" > /dev/null 2>&1
835856 if [ " X$? " = " X0" ]; then
@@ -870,7 +891,7 @@ case "$1" in
870891 OLDNODE=$1
871892 NEWNODE=$2
872893 $ERTS_PATH /erl -noshell \
873- -pa {{runner_patch_dir }} \
894+ -pa {{platform_patch_dir }} \
874895 -boot $BOOT_FILE \
875896 $CONFIG_ARGS \
876897 -eval " riak_kv_console:$ACTION (['$OLDNODE ', '$NEWNODE '])" \
@@ -891,7 +912,7 @@ case "$1" in
891912 FILENAME=$3
892913
893914 $ERTS_PATH /erl -noshell -name riak_kv_backup@$HOST -setcookie $COOKIE \
894- -pa {{runner_patch_dir }} \
915+ -pa {{platform_patch_dir }} \
895916 -boot $BOOT_FILE \
896917 -eval " riak_kv_backup:$ACTION ('$NODE ', \" $FILENAME \" )" -s init stop
897918 ;;
@@ -911,20 +932,20 @@ case "$1" in
911932 TYPE=$4
912933
913934 $ERTS_PATH /erl -noshell -name riak_kv_backup@$HOST -setcookie $COOKIE \
914- -pa {{runner_patch_dir }} \
935+ -pa {{platform_patch_dir }} \
915936 -boot $BOOT_FILE \
916937 -eval " riak_kv_backup:$ACTION ('$NODE ', \" $FILENAME \" , \" $TYPE \" )" -s init stop
917938 ;;
918939
919- test)
940+ ' test' )
920941 # Make sure the local node IS running
921942
922943 shift
923944
924945 # Parse out the node name to pass to the client
925946
926947 $ERTS_PATH /erl -noshell -name riak_test@$HOST -setcookie $COOKIE \
927- -pa {{runner_patch_dir }} \
948+ -pa {{platform_patch_dir }} \
928949 -boot $BOOT_FILE \
929950 -eval " case catch(riak:client_test(\" $NODE \" )) of \
930951 ok -> init:stop(); \
@@ -959,7 +980,7 @@ case "$1" in
959980 RAND=$(( $(($$ % 1000 )) + 1))
960981 # Using np_etop instead of riak_etop to follow node_package convention
961982 $ERTS_PATH /erl -noshell -noinput \
962- -pa {{runner_base_dir }} \
983+ -pa {{platform_patch_dir }} \
963984 -boot $BOOT_FILE \
964985 -hidden -name np_etop$RAND @$HOST -setcookie $COOKIE \
965986 -s etop -s erlang halt -output text \
0 commit comments