Update stack creation status check
[bottlenecks.git] / utils / infra_setup / vm_dev_setup / setup_env.sh
1 #!/bin/bash
2
3 set -ex
4
5 bottlenecks_prepare_env()
6 {
7     echo "Bottlenecks: install preinstall packages in VM"
8     sudo apt-get update
9
10     for i in $PreInstall_Packages; do
11         if ! apt --installed list 2>/dev/null |grep "\<$i\>"
12         then
13             sudo apt-get install  -y --force-yes  $i
14         fi
15     done
16 }
17
18 bottlenecks_download_repo()
19 {
20     echo "Bottlenecks: download bottlenecks repo"
21
22     if [ -d $BOTTELENECKS_REPO_DIR/.git ]; then
23         cd $BOTTLENECKS_REPO_DIR
24         git pull origin master
25         cd -
26     else
27         rm -rf $BOTTLENECKS_REPO_DIR
28         git clone $BOTTLENECKS_REPO $BOTTLENECKS_REPO_DIR
29     fi
30 }
31
32 bottlenecks_config_hosts_ip()
33 {
34     sed -i -e "s/REPLACE_CONTROL_HOST/$rubbos_control/g" \
35            -e "s/REPLACE_HTTPD_HOST/$rubbos_httpd/g" \
36            -e "s/REPLACE_MYSQL1_HOST/$rubbos_mysql1/g" \
37            -e "s/REPLACE_TOMCAT1_HOST/$rubbos_tomcat1/g" \
38            -e "s/REPLACE_CLIENT1_HOST/$rubbos_client1/g" \
39            -e "s/REPLACE_CLIENT2_HOST/$rubbos_client2/g" \
40            -e "s/REPLACE_CLIENT3_HOST/$rubbos_client3/g" \
41            -e "s/REPLACE_CLIENT4_HOST/$rubbos_client4/g" \
42            -e "s/REPLACE_BENCHMARK_HOST/$rubbos_benchmark/g" \
43            $BOTTELENECKS_REPO_DIR/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh
44 }
45
46 bottlenecks_download_packages()
47 {
48     echo "Bottlenecks: download rubbos dependent packages from artifacts"
49
50     curl --connect-timeout 10 -o /tmp/app_tools.tar.gz $RUBBOS_APP_TOOLS_URL 2>/dev/null
51     tar zxvf /tmp/app_tools.tar.gz -C $RUBBOS_DIR
52     rm -rf /tmp/app_tools.tar.gz
53     curl --connect-timeout 10 -o /tmp/rubbosMulini6.tar.gz $RUBBOS_MULINI6_URL 2>/dev/null
54     tar zxvf /tmp/rubbosMulini6.tar.gz -C $RUBBOS_MULINI6_DIR
55     rm -rf /tmp/rubbosMulini6.tar.gz
56 }
57
58 bottlenecks_rubbos_install_exe()
59 {
60     echo "Bottlenecks: install and run rubbos"
61
62     cd $RUBBOS_RUN_DIR
63     ./run.sh
64     cd $RUBBOS_EXE_DIR
65     ./CONTROL_rubbos_exec.sh
66 }
67
68 main()
69 {
70     PreInstall_Packages="git gcc gettext g++ libaio1 libaio-dev make"
71     SCRIPT_DIR=`cd ${BASH_SOURCE[0]%/*};pwd`
72
73     source $SCRIPT_DIR/package.conf
74     source $SCRIPT_DIR/hosts.conf
75
76     bottlenecks_prepare_env
77     bottlenecks_download_repo
78     bottlenecks_download_packages
79     bottlenecks_rubbos_install_exe
80 }
81
82 main
83 set +ex