summaryrefslogtreecommitdiff
path: root/ot-tools-user.sh
blob: 9e93b98b8265dd368a14c7596d8f8c718096cfaf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# Some useful scripts to put in your ~/.bashrc in case you are using bash (assuming OT_PREFIX is '~/opentox-ruby')

# Load server config
otconfig() {
  source $HOME/.opentox/opentox-ui.sh
}

# Start the server
otstart() {
  if [ $# != 1 ]
  then
    echo "One argument required: [service_name] or 'all'"
    echo "usage: $0 [all|algorithm|compound|dataset|feature|model|task|validation|4store]"
    return 1
  fi 

  otconfig
  otkill $1
  DIR=`pwd`
  case "$1" in
    "algorithm") 
      cd $HOME/opentox-ruby/$1;
      nice bash -c "nohup unicorn -p 8081 >/dev/null 2>&1 &"; 
      ;;
    "compound") 
      echo "$1 not available yet."
      #cd $HOME/opentox-ruby/$1;
      #nice bash -c "nohup unicorn -p 8082 >/dev/null 2>&1 &"; 
      ;;
    "dataset")
      cd $HOME/opentox-ruby/$1;
      nice bash -c "nohup unicorn -p 8083 >/dev/null 2>&1 &"; 
      ;;
    "feature")
      cd $HOME/opentox-ruby/$1;
      nice bash -c "nohup unicorn -p 8084 >/dev/null 2>&1 &"; 
      ;;
    "model") 
      echo "$1 not available yet."
      #cd $HOME/opentox-ruby/$1;
      #nice bash -c "nohup unicorn -p 8085 >/dev/null 2>&1 &"; 
      ;;
    "task")
      cd $HOME/opentox-ruby/$1;
      nice bash -c "nohup unicorn -p 8086 >/dev/null 2>&1 &"; 
      ;;
    "validation") 
      echo "$1 not available yet."
      #cd $HOME/opentox-ruby/$1;
      #nice bash -c "nohup unicorn -p 8087 >/dev/null 2>&1 &"; 
      ;;
    "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;
      ;;
  esac
  cd $DIR
}

# Display log
alias otless='less $HOME/.opentox/log/development.log'

# Tail log
alias ottail='tail -f $HOME/.opentox/log/development.log'

# Kill the server
otkill() {
  if [ $# != 1 ]
  then
    echo "One argument required: [service_name] or 'all'"
    echo "usage: $0 [all|algorithm|compound|dataset|feature|model|task|validation|4store]"
    return 1
  fi 

  otconfig
  case "$1" in
    "algorithm") 
      for p in `ps x | grep 'unicorn' | grep 8081 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "compound") 
      #for p in `ps x | grep 'unicorn' | grep 8082 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "dataset")
      for p in `ps x | grep 'unicorn' | grep 8083 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "feature")
      for p in `ps x | grep 'unicorn' | grep 8084 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "model") 
      #for p in `ps x | grep 'unicorn' | grep 8085 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "task")
      for p in `ps x | grep 'unicorn' | grep 8086 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "validation") 
      echo "$1 not available yet."
      #for p in `ps x | grep 'unicorn' | grep 8087 | grep -v grep | awk '{print $1}'`; do kill -9 $p; done;
      ;;
    "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;
      ;;
  esac
}