5
5
# Identify the script name
6
6
SCRIPT=" riak-admin"
7
7
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 ' ' `
9
32
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 ' ' `
12
33
NODE={{node}}
13
34
HOST=${NODE#*@ }
14
35
15
- BOOT_FILE=" {{runner_base_dir}} /releases/{{rel_vsn }}/start_clean"
36
+ BOOT_FILE=" ${PLATFORM_BASE_DIR} /releases/{{release_version }}/start_clean"
16
37
17
38
usage () {
18
39
echo " Usage: $SCRIPT { cluster | join | leave | backup | restore | test | "
@@ -804,7 +825,7 @@ case "$1" in
804
825
echo " Lists the services available on the node. See also: wait-for-service"
805
826
exit 1
806
827
fi
807
- $RPC_HOPterms riak_core_node_watcher services ' '
828
+ $RPCt_HOP riak_core_node_watcher services ' '
808
829
;;
809
830
810
831
wait[_-]for[_-]service)
@@ -818,7 +839,7 @@ case "$1" in
818
839
while (true); do
819
840
# Make sure riak_core_node_watcher is up and running locally before trying to query it
820
841
# 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'." `
822
843
if [ " $NODEWATCHER " = " undefined" ]; then
823
844
echo " $SVC is not up: node watcher is not running"
824
845
continue
@@ -827,9 +848,9 @@ case "$1" in
827
848
# Get the list of services that are available on the requested node
828
849
# If no node is specified, get the list of services from the local node
829
850
if [ " X$TARGETNODE " = " X" ]; then
830
- SERVICES=` $RPC_HOPterms riak_core_node_watcher services ' ' `
851
+ SERVICES=` $RPCt_HOP riak_core_node_watcher services ' ' `
831
852
else
832
- SERVICES=` $RPC_HOPterms riak_core_node_watcher services " '${TARGETNODE} '." `
853
+ SERVICES=` $RPCt_HOP riak_core_node_watcher services " '${TARGETNODE} '." `
833
854
fi
834
855
echo " $SERVICES " | grep " [[,]$SVC [],]" > /dev/null 2>&1
835
856
if [ " X$? " = " X0" ]; then
@@ -870,7 +891,7 @@ case "$1" in
870
891
OLDNODE=$1
871
892
NEWNODE=$2
872
893
$ERTS_PATH /erl -noshell \
873
- -pa {{runner_patch_dir }} \
894
+ -pa {{platform_patch_dir }} \
874
895
-boot $BOOT_FILE \
875
896
$CONFIG_ARGS \
876
897
-eval " riak_kv_console:$ACTION (['$OLDNODE ', '$NEWNODE '])" \
@@ -891,7 +912,7 @@ case "$1" in
891
912
FILENAME=$3
892
913
893
914
$ERTS_PATH /erl -noshell -name riak_kv_backup@$HOST -setcookie $COOKIE \
894
- -pa {{runner_patch_dir }} \
915
+ -pa {{platform_patch_dir }} \
895
916
-boot $BOOT_FILE \
896
917
-eval " riak_kv_backup:$ACTION ('$NODE ', \" $FILENAME \" )" -s init stop
897
918
;;
@@ -911,20 +932,20 @@ case "$1" in
911
932
TYPE=$4
912
933
913
934
$ERTS_PATH /erl -noshell -name riak_kv_backup@$HOST -setcookie $COOKIE \
914
- -pa {{runner_patch_dir }} \
935
+ -pa {{platform_patch_dir }} \
915
936
-boot $BOOT_FILE \
916
937
-eval " riak_kv_backup:$ACTION ('$NODE ', \" $FILENAME \" , \" $TYPE \" )" -s init stop
917
938
;;
918
939
919
- test)
940
+ ' test' )
920
941
# Make sure the local node IS running
921
942
922
943
shift
923
944
924
945
# Parse out the node name to pass to the client
925
946
926
947
$ERTS_PATH /erl -noshell -name riak_test@$HOST -setcookie $COOKIE \
927
- -pa {{runner_patch_dir }} \
948
+ -pa {{platform_patch_dir }} \
928
949
-boot $BOOT_FILE \
929
950
-eval " case catch(riak:client_test(\" $NODE \" )) of \
930
951
ok -> init:stop(); \
@@ -959,7 +980,7 @@ case "$1" in
959
980
RAND=$(( $(($$ % 1000 )) + 1))
960
981
# Using np_etop instead of riak_etop to follow node_package convention
961
982
$ERTS_PATH /erl -noshell -noinput \
962
- -pa {{runner_base_dir }} \
983
+ -pa {{platform_patch_dir }} \
963
984
-boot $BOOT_FILE \
964
985
-hidden -name np_etop$RAND @$HOST -setcookie $COOKIE \
965
986
-s etop -s erlang halt -output text \
0 commit comments