diff options
author | Paul J. Davis <paul.joseph.davis@gmail.com> | 2011-10-13 15:28:00 -0700 |
---|---|---|
committer | Paul J. Davis <paul.joseph.davis@gmail.com> | 2011-10-13 15:28:00 -0700 |
commit | 2063aca3d4246773a59c24ba768ddb1e712356f8 (patch) | |
tree | fecfa8b4d3c70e5fa1eed27ec24ef4b79efbd1a5 /rel | |
parent | 41e7cb7666a8645b9eb5898ac4027ca6df0d1107 (diff) | |
parent | d367c4bec22ad20807901c4b9c53b4fe4cd0fa59 (diff) |
Merge pull request #72 from cloudant/12730-add-remsh-script
Add a remsh script for each node
BugzId: 12730
Diffstat (limited to 'rel')
-rwxr-xr-x | rel/overlay/bin/remsh | 39 | ||||
-rw-r--r-- | rel/overlay/etc/vm.args | 13 | ||||
-rw-r--r-- | rel/reltool.config | 1 |
3 files changed, 49 insertions, 4 deletions
diff --git a/rel/overlay/bin/remsh b/rel/overlay/bin/remsh new file mode 100755 index 00000000..39955ae8 --- /dev/null +++ b/rel/overlay/bin/remsh @@ -0,0 +1,39 @@ +#!/bin/bash + +# Licensed under the Apache License, Version 2.0 (the "License"); you may not +# use this file except in compliance with the License. You may obtain a copy of +# the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations under +# the License. + +NAME="remsh$$" +REM_NODE="{{node_name}}" +NAME_TYPE=${REM_NODE% *} +REM_NODE=${REM_NODE#* } +HOST=`echo "$REM_NODE" | grep -o "@.*" | sed 's/@//'` + +if test -n $HOST; then + NAME="$NAME_TYPE $NAME@$HOST" +else + NAME="$NAME_TYPE $NAME" +fi + +ERTS_BIN_DIR=$(cd ${0%/*} && pwd) +ROOTDIR=${ERTS_BIN_DIR%/*} + +START_ERL=`cat $ROOTDIR/releases/start_erl.data` +ERTS_VSN=${START_ERL% *} +APP_VSN=${START_ERL#* } +START_CLEAN="${ROOTDIR}/releases/${APP_VSN}/start_clean" + +BINDIR=$ROOTDIR/erts-$ERTS_VSN/bin + +COOKIE="{{cookie}}" + +exec $BINDIR/erl $NAME -remsh $REM_NODE $COOKIE -hidden -boot $START_CLEAN diff --git a/rel/overlay/etc/vm.args b/rel/overlay/etc/vm.args index bb143502..03e5af27 100644 --- a/rel/overlay/etc/vm.args +++ b/rel/overlay/etc/vm.args @@ -4,10 +4,15 @@ # with the -name flag. {{node_name}} -# All nodes must share the same magic cookie for distributed Erlang to work. -# Comment out this line if you synchronized the cookies by other means (using -# the ~/.erlang.cookie file, for example). --setcookie monster +# If you passed a value for the cookie to ./configure it will be set here. +# Otherwise it will default to using ~/.erlang.cookie which will be generated +# automatically if it doesn't exist. +# +# Note that you need to make sure that the cookie value used is synchronized +# across all nodes in the cluster. This means that if you don't set the +# cookie by hand you need to manually sync ~/.erlang.cookie across all nodes +# in the cluster. +{{cookie}} # Tell SASL not to log progress reports -sasl errlog_type error diff --git a/rel/reltool.config b/rel/reltool.config index d8403865..ccca5aed 100644 --- a/rel/reltool.config +++ b/rel/reltool.config @@ -57,6 +57,7 @@ {copy, "overlay/share"}, {copy, "../couchjs/build/couchjs", "bin/couchjs"}, {copy, "../couchjs/build/main.js", "share/couchjs/main.js"}, + {template, "overlay/bin/remsh", "bin/remsh"}, {template, "overlay/etc/default.ini", "etc/default.ini"}, {template, "overlay/etc/vm.args", "etc/vm.args"} ]}. |