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+ RPC_HOP=" ${PLATFORM_BASE_DIR} /bin/riak rpc"
11+ RPCt_HOP=" ${PLATFORM_BASE_DIR} /bin/riak rpcterms"
12+
13+ PLATFORM_ETC_DIR={{platform_etc_dir}}
14+ if [ " $PLATFORM_ETC_DIR " = " ${PLATFORM_ETC_DIR#/ } " ]; then
15+ PLATFORM_ETC_DIR=$PLATFORM_BASE_DIR /$PLATFORM_ETC_DIR
16+ fi
17+
18+ PLATFORM_PATCH_DIR={{platform_patch_dir}}
19+ if [ " $PLATFORM_PATCH_DIR " = " ${PLATFORM_PATCH_DIR#/ } " ]; then
20+ PLATFORM_PATCH_DIR=$PLATFORM_BASE_DIR /$PLATFORM_PATCH_DIR
21+ fi
22+
23+ ERTS_VER=$( cd ${PLATFORM_BASE_DIR} && ls -d erts-* )
24+ ERTS_PATH=" ${PLATFORM_BASE_DIR} /$ERTS_VER /bin"
25+ COOKIE=` egrep ' ^[ \t]*distributed_cookie[ \t]*=[ \t]*' $PLATFORM_ETC_DIR /riak.conf 2> /dev/null | cut -d = -f 2 | tr -d ' ' `
926
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 ' ' `
1227NODE={{node}}
1328HOST=${NODE#*@ }
1429
15- BOOT_FILE=" {{runner_base_dir}} /releases/{{rel_vsn }}/start_clean"
30+ BOOT_FILE=" ${PLATFORM_BASE_DIR} /releases/{{release_version }}/start_clean"
1631
1732usage () {
1833 echo " Usage: $SCRIPT { cluster | join | leave | backup | restore | test | "
@@ -804,7 +819,7 @@ case "$1" in
804819 echo " Lists the services available on the node. See also: wait-for-service"
805820 exit 1
806821 fi
807- $RPC_HOPterms riak_core_node_watcher services ' '
822+ $RPCt_HOP riak_core_node_watcher services ' '
808823 ;;
809824
810825 wait[_-]for[_-]service)
@@ -818,7 +833,7 @@ case "$1" in
818833 while (true); do
819834 # Make sure riak_core_node_watcher is up and running locally before trying to query it
820835 # to avoid ugly (but harmless) error messages
821- NODEWATCHER=` $RPC_HOPterms erlang whereis " 'riak_core_node_watcher'." `
836+ NODEWATCHER=` $RPCt_HOP erlang whereis " 'riak_core_node_watcher'." `
822837 if [ " $NODEWATCHER " = " undefined" ]; then
823838 echo " $SVC is not up: node watcher is not running"
824839 continue
@@ -827,9 +842,9 @@ case "$1" in
827842 # Get the list of services that are available on the requested node
828843 # If no node is specified, get the list of services from the local node
829844 if [ " X$TARGETNODE " = " X" ]; then
830- SERVICES=` $RPC_HOPterms riak_core_node_watcher services ' ' `
845+ SERVICES=` $RPCt_HOP riak_core_node_watcher services ' ' `
831846 else
832- SERVICES=` $RPC_HOPterms riak_core_node_watcher services " '${TARGETNODE} '." `
847+ SERVICES=` $RPCt_HOP riak_core_node_watcher services " '${TARGETNODE} '." `
833848 fi
834849 echo " $SERVICES " | grep " [[,]$SVC [],]" > /dev/null 2>&1
835850 if [ " X$? " = " X0" ]; then
@@ -870,7 +885,7 @@ case "$1" in
870885 OLDNODE=$1
871886 NEWNODE=$2
872887 $ERTS_PATH /erl -noshell \
873- -pa {{runner_patch_dir }} \
888+ -pa {{platform_patch_dir }} \
874889 -boot $BOOT_FILE \
875890 $CONFIG_ARGS \
876891 -eval " riak_kv_console:$ACTION (['$OLDNODE ', '$NEWNODE '])" \
@@ -891,7 +906,7 @@ case "$1" in
891906 FILENAME=$3
892907
893908 $ERTS_PATH /erl -noshell -name riak_kv_backup@$HOST -setcookie $COOKIE \
894- -pa {{runner_patch_dir }} \
909+ -pa {{platform_patch_dir }} \
895910 -boot $BOOT_FILE \
896911 -eval " riak_kv_backup:$ACTION ('$NODE ', \" $FILENAME \" )" -s init stop
897912 ;;
@@ -911,20 +926,20 @@ case "$1" in
911926 TYPE=$4
912927
913928 $ERTS_PATH /erl -noshell -name riak_kv_backup@$HOST -setcookie $COOKIE \
914- -pa {{runner_patch_dir }} \
929+ -pa {{platform_patch_dir }} \
915930 -boot $BOOT_FILE \
916931 -eval " riak_kv_backup:$ACTION ('$NODE ', \" $FILENAME \" , \" $TYPE \" )" -s init stop
917932 ;;
918933
919- test)
934+ ' test' )
920935 # Make sure the local node IS running
921936
922937 shift
923938
924939 # Parse out the node name to pass to the client
925940
926941 $ERTS_PATH /erl -noshell -name riak_test@$HOST -setcookie $COOKIE \
927- -pa {{runner_patch_dir }} \
942+ -pa {{platform_patch_dir }} \
928943 -boot $BOOT_FILE \
929944 -eval " case catch(riak:client_test(\" $NODE \" )) of \
930945 ok -> init:stop(); \
@@ -959,7 +974,7 @@ case "$1" in
959974 RAND=$(( $(($$ % 1000 )) + 1))
960975 # Using np_etop instead of riak_etop to follow node_package convention
961976 $ERTS_PATH /erl -noshell -noinput \
962- -pa {{runner_base_dir }} \
977+ -pa {{platform_patch_dir }} \
963978 -boot $BOOT_FILE \
964979 -hidden -name np_etop$RAND @$HOST -setcookie $COOKIE \
965980 -s etop -s erlang halt -output text \
0 commit comments