summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-x4store-install2
-rwxr-xr-xconfig.sh22
-rwxr-xr-xinstall1
-rw-r--r--ot-tools-user.sh272
-rwxr-xr-xraptor2-install15
-rwxr-xr-xrasqal-install14
6 files changed, 232 insertions, 94 deletions
diff --git a/4store-install b/4store-install
index 75c7379..6c8ec39 100755
--- a/4store-install
+++ b/4store-install
@@ -25,7 +25,7 @@ cmd="make install" && run_cmd "$cmd" "Make Install"
# Config
echo "if echo \"\$LD_LIBRARY_PATH\" | grep -v \"$FST/lib\">/dev/null 2>&1; then export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH:$FST/lib\"; fi" >> "$FST_CONF"
-if ! cat "$OT_DEFAULT_CONFIG" | grep "four_store">/dev/null 2>&1; then echo "\$four_store = { :uri => 'http://localhost:8088', :user => '', :password => '' }" >> $OT_DEFAULT_CONFIG; fi
+if ! cat "$OT_DEFAULT_CONFIG" | grep "four_store">/dev/null 2>&1; then echo '\$four_store = { :uri => "http://localhost:8088", :user => "", :password => "" }' >> $OT_DEFAULT_CONFIG; fi
echo "$SELF configuration has been stored in '$FST_CONF'."
if ! grep "$FST_CONF" $OT_UI_CONF >/dev/null 2>&1; then
diff --git a/config.sh b/config.sh
index d688e5c..c0a09e5 100755
--- a/config.sh
+++ b/config.sh
@@ -16,24 +16,30 @@ OT_JAVA_HOME="/usr/lib/jvm/java-6-openjdk"
# 3) What versions to install
OB_NUM_VER="2.3.1"
+RAPTOR2_NUM_VER="2.0.8"
+RASQAL_NUM_VER="0.9.29"
RUBY_DWL="http://ftp.ruby-lang.org/pub/ruby/1.9"
-RAPTOR2_DWL="http://download.librdf.org/source/raptor2-2.0.8.tar.gz"
-RASQAL_DWL="http://download.librdf.org/source/rasqal-0.9.29.tar.gz"
# Done.
### Nothing to gain from changes below this line.
-JAVA_CONF="$HOME/.opentox/sh_java"
-FST_CONF="$HOME/.opentox/sh_4S"
-OB_CONF="$HOME/.opentox/sh_OB"
-R_CONF="$HOME/.opentox/sh_R"
-RAPTOR2_CONF="$HOME/.opentox/sh_RAPTOR2"
-RASQAL_CONF="$HOME/.opentox/sh_RASQAL"
+JAVA_CONF="$HOME/.opentox/java.sh"
+FST_CONF="$HOME/.opentox/4S.sh"
+OB_CONF="$HOME/.opentox/OB.sh"
+R_CONF="$HOME/.opentox/R.sh"
+RAPTOR2_CONF="$HOME/.opentox/RAPTOR2.sh"
+RASQAL_CONF="$HOME/.opentox/RASQAL.sh"
OT_UI_CONF="$HOME/.opentox/opentox-ui.sh"
+OT_TOOLS_CONF="$HOME/.opentox/ot-tools.sh"
OT_DEFAULT_CONFIG="$HOME/.opentox/config/default.rb"
OB_VER="openbabel-$OB_NUM_VER"
+RAPTOR2_VER="raptor2-$RAPTOR2_NUM_VER"
+RASQAL_VER="rasqal-$RASQAL_NUM_VER"
OB_DEST="$OT_PREFIX/$OB_VER"
OB_DEST_BINDINGS="$OT_PREFIX/openbabel-ruby-install"
+RAPTOR2_DWL="http://download.librdf.org/source/$RAPTOR2_VER.tar.gz"
+RASQAL_DWL="http://download.librdf.org/source/$RASQAL_VER.tar.gz"
+
diff --git a/install b/install
index fa95416..66dae4d 100755
--- a/install
+++ b/install
@@ -58,5 +58,6 @@ fi
[ -f $HOME/.opentox/config/ambit_descriptors.yaml ] || (cmd="cp ambit_descriptors.yaml $HOME/.opentox/config/" && run_cmd "$cmd" "Ambit keys file")
[ -f $HOME/.opentox/config/jl_keys.yaml ] || (cmd="cp jl_keys.yaml $HOME/.opentox/config/" && run_cmd "$cmd" "Joelib keys file")
+[ -f $OT_TOOLS_CONFIG ] || (cmd="cp ot-tools-user.sh $OT_TOOLS_CONFIG" && run_cmd "$cmd" "Install ot-tools.sh to CONFIG (~/.opentox/config)")
notify
diff --git a/ot-tools-user.sh b/ot-tools-user.sh
index bc4a7d0..ca3bdbd 100644
--- a/ot-tools-user.sh
+++ b/ot-tools-user.sh
@@ -5,6 +5,11 @@ otconfig() {
source $HOME/.opentox/opentox-ui.sh
}
+# Display log
+alias otless='less $HOME/.opentox/log/development.log'
+
+# Tail log
+alias ottail='tail -f $HOME/.opentox/log/development.log'
# Start unicorn
# @param1 [service_name]
@@ -28,58 +33,98 @@ otstart() {
otkill $1
DIR=`pwd`
case "$1" in
- "algorithm")
- start_unicorn $1 8081;;
- "compound")
- echo "$1 not available yet.";;
- #start_unicorn $1 8082;;
- "dataset")
- start_unicorn $1 8083;;
- "feature")
- start_unicorn $1 8084;;
- "model")
- echo "$1 not available yet.";;
- #start_unicorn $1 8085;;
- "task")
- start_unicorn $1 8086;;
- "validation")
- echo "$1 not available yet.";;
- #start_unicorn $1 8087;;
- "4store")
- nice bash -c "nohup $HOME/opentox-ruby/4S/bin/4s-backend opentox >/dev/null 2>&1 &";
- sleep 1;
- nice bash -c "nohup $HOME/opentox-ruby/4S/bin/4s-httpd -D -H localhost -p 8088 opentox >/dev/null 2>&1 &";
- sleep 1;
- if ! pgrep -u $USER 4s-backend>/dev/null 2>&1; then echo "Failed to start 4s-backend."; fi
- if ! pgrep -u $USER 4s-httpd>/dev/null 2>&1; then echo "Failed to start 4s-httpd."; fi
- ;;
- "all")
- otstart 4store;
- otstart algorithm;
- otstart dataset;
- otstart feature;
- otstart task;
- ;;
- *)
- echo "One argument required: [service_name] or 'all'";
- echo "usage: otstart [all|algorithm|compound|dataset|feature|model|task|validation|4store]";
- return 1;
- ;;
+ "algorithm") start_unicorn $1 8081;;
+ "compound") #start_unicorn $1 8082;;
+ echo "$1 not available yet.";;
+ "dataset") start_unicorn $1 8083;;
+ "feature") start_unicorn $1 8084;;
+ "model") #start_unicorn $1 8085;;
+ echo "$1 not available yet.";;
+ "task") start_unicorn $1 8086;;
+ "validation") #start_unicorn $1 8087;;
+ echo "$1 not available yet.";;
+ "4store") nice bash -c "nohup $HOME/opentox-ruby/4S/bin/4s-backend opentox >/dev/null 2>&1 &";
+ sleep 1;
+ nice bash -c "nohup $HOME/opentox-ruby/4S/bin/4s-httpd -D -H localhost -p 8088 opentox >/dev/null 2>&1 &";
+ sleep 1;
+ if ! pgrep -u $USER 4s-backend>/dev/null 2>&1; then echo "Failed to start 4s-backend."; fi
+ if ! pgrep -u $USER 4s-httpd>/dev/null 2>&1; then echo "Failed to start 4s-httpd."; fi;;
+ "all") otstart 4store;
+ otstart algorithm;
+ #otstart compound;
+ otstart dataset;
+ otstart feature;
+ #otstart model;
+ otstart task;;
+ #otstart validation;;
+ *) echo "One argument required: [service_name] or 'all'";
+ echo "usage: otstart [all|algorithm|compound|dataset|feature|model|task|validation|4store]";
+ return 1;;
esac
cd $DIR
}
-# Display log
-alias otless='less $HOME/.opentox/log/development.log'
+# reload unicorn
+# @param1 integer Port
+# @example reload_unicorn 8081
+reload_unicorn() {
+ for p in `ps x | grep 'unicorn master' | grep $1 | grep -v grep | awk '{print $1}'`; do
+ kill -12 $p
+ done
+ sleep 0.5
+ for p in `ps x | grep 'unicorn master (old)' | grep $1 | grep -v grep | awk '{print $1}'`; do
+ kill -28 $p
+ done
+ sleep 0.5
+ # ToDo: Check if new master is working properly.
+ for p in `ps x | grep 'unicorn master (old)' | grep $1 | grep -v grep | awk '{print $1}'`; do
+ kill -3 $p
+ done
+}
-# Tail log
-alias ottail='tail -f $HOME/.opentox/log/development.log'
+# Reload the server
+otreload() {
+ if [ $# != 1 ]
+ then
+ echo "One argument required: [service_name] or 'all'"
+ echo "usage: otreload [all|algorithm|compound|dataset|feature|model|task|validation|4store]"
+ return 1
+ fi
+
+ otconfig
+ case "$1" in
+ "algorithm") reload_unicorn 8081;;
+ "compound") #reload_unicorn 8082;;
+ echo "$1 not available yet.";;
+ "dataset") reload_unicorn 8083;;
+ "feature") reload_unicorn 8084;;
+ "model") #reload_unicorn 8085;;
+ echo "$1 not available yet.";;
+ "task") reload_unicorn 8086;;
+ "validation") #reload_unicorn 8087;;
+ echo "$1 not available yet.";;
+ "4store") #killall 4s-httpd >/dev/null 2>&1;
+ #killall 4s-backend >/dev/null 2>&1;;
+ echo "$1 reload not available yet.";;
+ "all") otreload algorithm;
+ #otreload compound;
+ otreload dataset;
+ otreload feature;
+ #otreload model;
+ otreload task;
+ #otrelaod validation;
+ otreload 4store;;
+ *) echo "One argument required: [service_name] or 'all'";
+ echo "usage: otreload [all|algorithm|compound|dataset|feature|model|task|validation|4store]";
+ return 1;;
+ esac
+}
# kill unicorn
# @param1 integer Port
# @example kill_unicorn 8081
kill_unicorn() {
- for p in `ps x | grep 'unicorn' | grep $1 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
+ for p in `ps x | grep 'unicorn' | grep $1 | grep -v grep | awk '{print $1}'`; do kill -3 $p; done;
}
# Kill the server
@@ -93,34 +138,121 @@ otkill() {
otconfig
case "$1" in
- "algorithm") kill_unicorn 8081;;
- "compound") #kill_unicorn 8082;;
- echo "$1 not available yet.";;
- "dataset") kill_unicorn 8083;;
- "feature") kill_unicorn 8084;;
- "model") #kill_unicorn 8085;;
- echo "$1 not available yet.";;
- "task") kill_unicorn 8086;;
+ "algorithm") kill_unicorn 8081;;
+ "compound") #kill_unicorn 8082;;
+ echo "$1 not available yet.";;
+ "dataset") kill_unicorn 8083;;
+ "feature") kill_unicorn 8084;;
+ "model") #kill_unicorn 8085;;
+ echo "$1 not available yet.";;
+ "task") kill_unicorn 8086;;
"validation") #kill_unicorn 8087;;
- echo "$1 not available yet.";;
- "4store")
- killall 4s-httpd >/dev/null 2>&1;
- killall 4s-backend >/dev/null 2>&1;
- ;;
- "all")
- otkill algorithm;
- #otkill compound;
- otkill dataset;
- otkill feature;
- #otkill model;
- otkill task;
- #otkill validation;
- otkill 4store;
- ;;
- *)
- echo "One argument required: [service_name] or 'all'";
- echo "usage: otkill [all|algorithm|compound|dataset|feature|model|task|validation|4store]";
- return 1;
- ;;
+ echo "$1 not available yet.";;
+ "4store") killall 4s-httpd >/dev/null 2>&1;
+ killall 4s-backend >/dev/null 2>&1;;
+ "all") otkill algorithm;
+ #otkill compound;
+ otkill dataset;
+ otkill feature;
+ #otkill model;
+ otkill task;
+ #otkill validation;
+ otkill 4store;;
+ *) echo "One argument required: [service_name] or 'all'";
+ echo "usage: otkill [all|algorithm|compound|dataset|feature|model|task|validation|4store]";
+ return 1;;
+ esac
+}
+
+# get service uri
+# sets $SERVICE_URI if found in config files
+# @param1 string [service_name]
+# @example get_service_uri algorithm
+get_service_uri() {
+ if [ $# != 1 ]
+ then
+ echo "One argument required: [service_name]"
+ echo "usage: get_service_uri [algorithm|compound|dataset|feature|model|task|validation|four_store]"
+ return 1
+ fi
+ SERVICE_URI=""
+
+ if [ -f $HOME/.opentox/config/$1.rb ]
+ then
+ SERVICE_URI=`cat $HOME/.opentox/config/$1.rb | grep $1 | grep "uri" | awk -F":uri => " '{print $2}' | awk -F" " '{print $1}' | awk -F"," '{print $1}' | sed "s/'//g" | sed 's/"//g'`
+ fi
+
+ if [ -f $HOME/.opentox/config/default.rb ]
+ then
+ [ -n "$SERVICE_URI" ] || SERVICE_URI=`cat $HOME/.opentox/config/default.rb | grep $1 | grep "uri" | awk -F":uri => " '{print $2}' | awk -F" " '{print $1}' | awk -F"," '{print $1}' | sed "s/'//g" | sed 's/"//g'`
+ fi
+
+ if [ -z "$SERVICE_URI" ]
+ then
+ echo "Cannot find service uri for $1 in config files."
+ return 1
+ else
+ return 0
+ fi
+}
+
+# check service
+# @param1 string [service_name]
+# @example check_service algorithm
+check_service() {
+ if [ $# != 1 ]
+ then
+ echo "One argument required: [service_name]"
+ echo "usage: get_service_uri [algorithm|compound|dataset|feature|model|task|validation|four_store]"
+ return 1
+ fi
+ get_service_uri $1
+ if [ $1 == "four_store" ]
+ then
+ SERVICE_URI="$SERVICE_URI""/status/"
+ fi
+ if [ -n "`curl -v $SERVICE_URI 2>&1 | grep '200 OK'`" ]
+ then
+ return 0
+ else
+ echo "$1 is not available at $SERVICE_URI."
+ return 1
+ fi
+}
+
+# Check the server
+otcheck() {
+ if [ $# != 1 ]
+ then
+ echo "One argument required: [service_name] or 'all'"
+ echo "usage: otcheck [all|algorithm|compound|dataset|feature|model|task|validation|4store]"
+ return 1
+ fi
+
+ otconfig
+ case "$1" in
+ "algorithm") check_service "algorithm";;
+ "compound") #check_service "compound";;
+ echo "$1 not available yet.";;
+ "dataset") check_service "dataset";;
+ "feature") check_service "feature";;
+ "model") #check_service "model";;
+ echo "$1 not available yet.";;
+ "task") check_service "task";;
+ "validation") #check_service "validation";;
+ echo "$1 not available yet.";;
+ "4store") check_service "four_store";;
+ #killall 4s-backend >/dev/null 2>&1;;
+ "all") otcheck "algorithm";
+ #otcheck "compound";
+ otcheck "dataset";
+ otcheck "feature";
+ #otcheck "model";
+ otcheck "task";
+ #otcheck "validation";
+ otcheck 4store;;
+ *) echo "One argument required: [service_name] or 'all'";
+ echo "usage: otcheck [all|algorithm|compound|dataset|feature|model|task|validation|4store]";
+ return 1;;
esac
}
diff --git a/raptor2-install b/raptor2-install
index e3718ba..ad44ed4 100755
--- a/raptor2-install
+++ b/raptor2-install
@@ -5,28 +5,27 @@ DIR=`pwd`
. ./utils.sh || (echo "Utils could not be loaded, check opentox-ui.sh." 1>&2 && exit 1)
SELF=$(basename $0 -install)
check_log $SELF
-check_utils "wget tar make"
+check_utils "wget tar make grep"
# Build
mkdir -p $OT_PREFIX/tmp
cd $OT_PREFIX/tmp/
cmd="$WGET $RAPTOR2_DWL" && run_cmd "$cmd" "Download"
export RAPTOR2_DIR=$OT_PREFIX/$SELF
-cmd="$TAR xvzf $SELF*.tar.gz" && run_cmd "$cmd" "Unpack"
-rm $SELF*.tar.gz
-cd $SELF*
+cmd="$TAR xvzf $RAPTOR2_VER.tar.gz" && run_cmd "$cmd" "Unpack"
+rm $RAPTOR2_VER.tar.gz
+cd $RAPTOR2_VER
cmd="./configure --prefix=$RAPTOR2_DIR" && run_cmd "$cmd" "Configure"
cmd="$MAKE" && run_cmd "$cmd" "Make"
cmd="$MAKE install" && run_cmd "$cmd" "Make Install"
# Config
-echo "if echo \"\$LD_LIBRARY_PATH\" | grep -v \"$RAPTOR2_DIR/lib\">/dev/null 2>&1; then export LD_LIBRARY_PATH=\"$RAPTOR2_DIR/lib:\$LD_LIBRARY_PATH\"; fi" >> "$RAPTOR2_CONF"
-echo "if echo \"\$PKG_CONFIG_PATH\" | grep -v \"$RAPTOR2_DIR/lib/pkgconfig\">/dev/null 2>&1; then export PKG_CONFIG_PATH=\"$RAPTOR2_DIR/lib/pkgconfig:\$PKG_CONFIG_PATH\"; fi" >> "$RAPTOR2_CONF"
+echo "if echo \"\$LD_LIBRARY_PATH\" | $GREP -v \"$RAPTOR2_DIR/lib\">/dev/null 2>&1; then export LD_LIBRARY_PATH=\"$RAPTOR2_DIR/lib:\$LD_LIBRARY_PATH\"; fi" >> "$RAPTOR2_CONF"
+echo "if echo \"\$PKG_CONFIG_PATH\" | $GREP -v \"$RAPTOR2_DIR/lib/pkgconfig\">/dev/null 2>&1; then export PKG_CONFIG_PATH=\"$RAPTOR2_DIR/lib/pkgconfig:\$PKG_CONFIG_PATH\"; fi" >> "$RAPTOR2_CONF"
echo "$SELF configuration has been stored in '$RAPTOR2_CONF'."
-if ! grep "$RAPTOR2_CONF" $OT_UI_CONF >/dev/null 2>&1; then
+if ! $GREP "$RAPTOR2_CONF" $OT_UI_CONF >/dev/null 2>&1; then
echo '. '$RAPTOR2_CONF >> $OT_UI_CONF
fi
-cd ..
export LD_LIBRARY_PATH=$RAPTOR2_DIR"/lib:"$LD_LIBRARY_PATH
export PATH=$RAPTOR2_DIR"/bin:"$PATH
export PKG_CONFIG_PATH=$RAPTOR2_DIR"/lib/pkgconfig:"$PKG_CONFIG_PATH
diff --git a/rasqal-install b/rasqal-install
index 93085c5..bc06450 100755
--- a/rasqal-install
+++ b/rasqal-install
@@ -5,25 +5,25 @@ DIR=`pwd`
. ./utils.sh || (echo "Utils could not be loaded, check opentox-ui.sh." 1>&2 && exit 1)
SELF=$(basename $0 -install)
check_log $SELF
-check_utils "wget tar make"
+check_utils "wget tar make grep"
# Build
mkdir -p $OT_PREFIX/tmp
cd $OT_PREFIX/tmp/
cmd="$WGET $RASQAL_DWL" && run_cmd "$cmd" "Download"
export RASQAL_DIR=$OT_PREFIX/$SELF
-cmd="$TAR xvzf $SELF*.tar.gz" && run_cmd "$cmd" "Unpack"
-rm $SELF*.tar.gz
-cd $SELF*
+cmd="$TAR xvzf $RASQAL_VER.tar.gz" && run_cmd "$cmd" "Unpack"
+rm $RASQAL_VER.tar.gz
+cd $RASQAL_VER
cmd="./configure --prefix=$RASQAL_DIR" && run_cmd "$cmd" "Configure"
cmd="$MAKE" && run_cmd "$cmd" "Make"
cmd="$MAKE install" && run_cmd "$cmd" "Make Install"
# Config
-echo "if echo \"\$LD_LIBRARY_PATH\" | grep -v \"$RASQAL_DIR/lib\">/dev/null 2>&1; then export LD_LIBRARY_PATH=\"$RASQAL_DIR/lib:\$LD_LIBRARY_PATH\"; fi" >> "$RASQAL_CONF"
-echo "if echo \"\$PKG_CONFIG_PATH\" | grep -v \"$RASQAL_DIR/lib/pkgconfig\">/dev/null 2>&1; then export PKG_CONFIG_PATH=\"$RASQAL_DIR/lib/pkgconfig:\$PKG_CONFIG_PATH\"; fi" >> "$RASQAL_CONF"
+echo "if echo \"\$LD_LIBRARY_PATH\" | $GREP -v \"$RASQAL_DIR/lib\">/dev/null 2>&1; then export LD_LIBRARY_PATH=\"$RASQAL_DIR/lib:\$LD_LIBRARY_PATH\"; fi" >> "$RASQAL_CONF"
+echo "if echo \"\$PKG_CONFIG_PATH\" | $GREP -v \"$RASQAL_DIR/lib/pkgconfig\">/dev/null 2>&1; then export PKG_CONFIG_PATH=\"$RASQAL_DIR/lib/pkgconfig:\$PKG_CONFIG_PATH\"; fi" >> "$RASQAL_CONF"
echo "$SELF configuration has been stored in '$RASQAL_CONF'."
-if ! grep "$RASQAL_CONF" $OT_UI_CONF >/dev/null 2>&1; then
+if ! $GREP "$RASQAL_CONF" $OT_UI_CONF >/dev/null 2>&1; then
echo '. '$RASQAL_CONF >> $OT_UI_CONF
fi