1acd97ead092008b17cf6b68133944a02d16823d
[bottlenecks.git] / utils / infra_setup / vm_dev_setup / common.sh
1 #!/bin/bash
2 ##############################################################################
3 # Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
4 #
5 # All rights reserved. This program and the accompanying materials
6 # are made available under the terms of the Apache License, Version 2.0
7 # which accompanies this distribution, and is available at
8 # http://www.apache.org/licenses/LICENSE-2.0
9 ##############################################################################
10
11 set -x
12
13 generate_ssh_key() {
14     uname -a
15     whoami
16     if [ ! -d ~/.ssh ]; then
17         mkdir ~/.ssh
18     fi
19
20     cat << EOF > ~/.ssh/id_rsa
21 -----BEGIN RSA PRIVATE KEY-----
22 MIIEowIBAAKCAQEAsJsfP/OlXNcqqqZTD5Jv8OsAdq+WJegozjfOSqOUszxKZ8rC
23 cDucoGzApUE28wlM7SKRXjvA+sXVpYT5oTBCSFrUYfg8dLMAfgcjK2hkz/dscSqN
24 rpFs2COnrtuS5iV/mtZZlT5nsEKvunT8yMIAmb8A/FFXuS/ndBD9q294p4kFaAc5
25 LFJoS9zeo6di4KbHH4tclxYIxXS6Q7AnBXDPkOsEFAtvqhgWGuUcanq3FsyEkm7w
26 LGMAu1HqZoxaXI91v1l9kHDggyJQM3lEbwvD2zncwrYHjIboR9uPfQXCFEszzKY8
27 76UYh6+Unhf86z3lvthItTHx4taqwQsUvCQarQIDAQABAoIBAHF4ea+hYFIyfVt/
28 2kZbFEl69KVNU++vJui4uncCe3xd9ICTqjJqWsxIk86aBDBLfX2vhC9DvU5i5k6f
29 DbUfSLcshOEdmdpxWJOhClvNi1iD5M0hRj8vePu2jPqwYcY1ubNGnfBiVETP1BC9
30 Md3bqH8gVgXITdDSkqfkctg/mwoo0gCvW7J+PWs8Nw5yYZlc9hfMpyNBqAexMX3H
31 znrCbqj7S/7IKxlQ1AuNRJnAMrz4pZoFPwcjNv5dHWGBuY3/d3V6oHtdphAyT5Vt
32 t5Hxrl/27wQcqrYm6G1/wp7q+6UfvQ7vsuBwaE62wjzodr1KP3KtzrjORz+OElrP
33 RHdhW4ECgYEA4PmP6kHLKYW5K6z9TTmQaocTIk7pN71RoxkIZ6eTP7raXhbUTb6o
34 fq3bEVjd6K9ZMiSjE/5z0ZHUzlKtjVkZFxQdCQhWzUuxj66zhQV657SUr5s/t+cR
35 H04BARya5q5tA799PsDeKz8TzkfkWXbXDL3tOxDgS3KZx3eY3Xu5ucUCgYEAyPX1
36 wwBB10pGmzyk4VItGkyH5SsDMA9aKh3tyHI25iuOg7x0VJ1TWXwPXjgtOvqOa9/C
37 aww9WuCCK2Hda560eF4iU0a4kua/6OnCSdW6ATn+pmld84LSIXfe4lT0JKst3ast
38 NpnCFT5/aeeJVrgr0od9GegjDkRVxz4OJmIDM8kCgYBUp/QsrUdav5QXSEgkyBV8
39 0Ik1rsX5kIbovaG5B4jUQWasYyDOhID48kjt9SfDyD/jK4AmJOjGIn8WiGwANVfI
40 pGvsmzO2mtYdABtTYeWGzR/qGJxYgl2iDwM3vODZDye8clEZzQ+M7HZyeAEIXTy8
41 8bcUM9yC54PQWEOwjD8uFQKBgCzIAnftur5K4uj83pEHSt2taCr9Jryy7xiriq08
42 JlesJRneCN5CIKy0JIiOZCXcZ5hKSHyqQZHaracVK84rk3OvJl8AR2kU2ncAgDcL
43 1WMolUJoAHOfF0w19gjhfXYeXx4iYvTj1of9YU8sNUKJz9oeLxZy0D0BpUu83FJZ
44 TPVhAoGBAMhFV9+VrZJSXaAw0NlZx2k2/Hq2lmUc30UZYXDW8k77qgF3EJHi3ZSl
45 PBjN5vmoGcf7d7xRjAIMjsNINPdtzHJCca16lsVRc20qG1RqMiCKcqveExqpMqn1
46 oV2vefV/XJtj43/jrlrGfCoI+RNVImsvp4dwKzr7YOI8Fcqf1e3G
47 -----END RSA PRIVATE KEY-----
48 EOF
49
50     cat << EOF > ~/.ssh/id_rsa.pub
51 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCwmx8/86Vc1yqqplMPkm/w6wB2r5Yl6CjON85Ko5SzPEpnysJwO5ygbMClQTbzCUztIpFeO8D6xdWlhPmhMEJIWtRh+Dx0swB+ByMraGTP92xxKo2ukWzYI6eu25LmJX+a1lmVPmewQq+6dPzIwgCZvwD8UVe5L+d0EP2rb3iniQVoBzksUmhL3N6jp2Lgpscfi1yXFgjFdLpDsCcFcM+Q6wQUC2+qGBYa5RxqercWzISSbvAsYwC7UepmjFpcj3W/WX2QcOCDIlAzeURvC8PbOdzCtgeMhuhH2499BcIUSzPMpjzvpRiHr5SeF/zrPeW+2Ei1MfHi1qrBCxS8JBqt bottlenecks@bottlenecks.opnfv.org
52 EOF
53     chmod 600 ~/.ssh/id_rsa
54
55     if [ ! -d /root/.ssh ]; then
56         mkdir /root/.ssh
57     fi
58
59     sudo cat << EOF > /root/.ssh/id_rsa
60 -----BEGIN RSA PRIVATE KEY-----
61 MIIEowIBAAKCAQEAsJsfP/OlXNcqqqZTD5Jv8OsAdq+WJegozjfOSqOUszxKZ8rC
62 cDucoGzApUE28wlM7SKRXjvA+sXVpYT5oTBCSFrUYfg8dLMAfgcjK2hkz/dscSqN
63 rpFs2COnrtuS5iV/mtZZlT5nsEKvunT8yMIAmb8A/FFXuS/ndBD9q294p4kFaAc5
64 LFJoS9zeo6di4KbHH4tclxYIxXS6Q7AnBXDPkOsEFAtvqhgWGuUcanq3FsyEkm7w
65 LGMAu1HqZoxaXI91v1l9kHDggyJQM3lEbwvD2zncwrYHjIboR9uPfQXCFEszzKY8
66 76UYh6+Unhf86z3lvthItTHx4taqwQsUvCQarQIDAQABAoIBAHF4ea+hYFIyfVt/
67 2kZbFEl69KVNU++vJui4uncCe3xd9ICTqjJqWsxIk86aBDBLfX2vhC9DvU5i5k6f
68 DbUfSLcshOEdmdpxWJOhClvNi1iD5M0hRj8vePu2jPqwYcY1ubNGnfBiVETP1BC9
69 Md3bqH8gVgXITdDSkqfkctg/mwoo0gCvW7J+PWs8Nw5yYZlc9hfMpyNBqAexMX3H
70 znrCbqj7S/7IKxlQ1AuNRJnAMrz4pZoFPwcjNv5dHWGBuY3/d3V6oHtdphAyT5Vt
71 t5Hxrl/27wQcqrYm6G1/wp7q+6UfvQ7vsuBwaE62wjzodr1KP3KtzrjORz+OElrP
72 RHdhW4ECgYEA4PmP6kHLKYW5K6z9TTmQaocTIk7pN71RoxkIZ6eTP7raXhbUTb6o
73 fq3bEVjd6K9ZMiSjE/5z0ZHUzlKtjVkZFxQdCQhWzUuxj66zhQV657SUr5s/t+cR
74 H04BARya5q5tA799PsDeKz8TzkfkWXbXDL3tOxDgS3KZx3eY3Xu5ucUCgYEAyPX1
75 wwBB10pGmzyk4VItGkyH5SsDMA9aKh3tyHI25iuOg7x0VJ1TWXwPXjgtOvqOa9/C
76 aww9WuCCK2Hda560eF4iU0a4kua/6OnCSdW6ATn+pmld84LSIXfe4lT0JKst3ast
77 NpnCFT5/aeeJVrgr0od9GegjDkRVxz4OJmIDM8kCgYBUp/QsrUdav5QXSEgkyBV8
78 0Ik1rsX5kIbovaG5B4jUQWasYyDOhID48kjt9SfDyD/jK4AmJOjGIn8WiGwANVfI
79 pGvsmzO2mtYdABtTYeWGzR/qGJxYgl2iDwM3vODZDye8clEZzQ+M7HZyeAEIXTy8
80 8bcUM9yC54PQWEOwjD8uFQKBgCzIAnftur5K4uj83pEHSt2taCr9Jryy7xiriq08
81 JlesJRneCN5CIKy0JIiOZCXcZ5hKSHyqQZHaracVK84rk3OvJl8AR2kU2ncAgDcL
82 1WMolUJoAHOfF0w19gjhfXYeXx4iYvTj1of9YU8sNUKJz9oeLxZy0D0BpUu83FJZ
83 TPVhAoGBAMhFV9+VrZJSXaAw0NlZx2k2/Hq2lmUc30UZYXDW8k77qgF3EJHi3ZSl
84 PBjN5vmoGcf7d7xRjAIMjsNINPdtzHJCca16lsVRc20qG1RqMiCKcqveExqpMqn1
85 oV2vefV/XJtj43/jrlrGfCoI+RNVImsvp4dwKzr7YOI8Fcqf1e3G
86 -----END RSA PRIVATE KEY-----
87 EOF
88
89     sudo cat << EOF > /root/.ssh/id_rsa.pub
90 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCwmx8/86Vc1yqqplMPkm/w6wB2r5Yl6CjON85Ko5SzPEpnysJwO5ygbMClQTbzCUztIpFeO8D6xdWlhPmhMEJIWtRh+Dx0swB+ByMraGTP92xxKo2ukWzYI6eu25LmJX+a1lmVPmewQq+6dPzIwgCZvwD8UVe5L+d0EP2rb3iniQVoBzksUmhL3N6jp2Lgpscfi1yXFgjFdLpDsCcFcM+Q6wQUC2+qGBYa5RxqercWzISSbvAsYwC7UepmjFpcj3W/WX2QcOCDIlAzeURvC8PbOdzCtgeMhuhH2499BcIUSzPMpjzvpRiHr5SeF/zrPeW+2Ei1MfHi1qrBCxS8JBqt bottlenecks@bottlenecks.opnfv.org
91 EOF
92     sudo chmod 600 /root/.ssh/id_rsa
93
94     sudo sed -ie 's/ssh-rsa/\n&/g' /root/.ssh/authorized_keys
95     sudo sed -ie '/echo/d' /root/.ssh/authorized_keys
96 }
97
98 configue_nameserver()
99 {
100     echo "Bottlenecks: configue nameserver"
101     sudo rm /etc/resolv.conf
102     sudo echo "nameserver 8.8.8.8" >> /etc/resolv.conf
103     sudo echo "nameserver 8.8.4.4" >> /etc/resolv.conf
104
105     ping -c 1 www.google.com
106 }
107
108 install_packages()
109 {
110     echo "Bottlenecks: install preinstall packages in VM"
111     sudo apt-get update
112
113     for i in $@; do
114         if ! apt --installed list 2>/dev/null |grep "\<$i\>"
115         then
116             sudo apt-get install -y --force-yes $i
117         fi
118     done
119 }
120
121 hosts_config()
122 {
123     echo "Bottlnecks: hosts config"
124     sudo echo "
125 $rubbos_benchmark rubbos-benchmark
126 $rubbos_client1 rubbos-client1
127 $rubbos_client2 rubbos-client2
128 $rubbos_client3 rubbos-client3
129 $rubbos_client4 rubbos-client4
130 $rubbos_control rubbos-control
131 $rubbos_httpd rubbos-httpd
132 $rubbos_mysql1 rubbos-mysql1
133 $rubbos_tomcat1 rubbos-tomcat1
134 " >> /etc/hosts
135 }
136
137 set +x
138