Description:
Update install.sh
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r265:5e861fcfb30f - - 1 file changed: 13 inserted, 5 deleted

@@ -1,70 +1,78
1 #!/bin/sh
1 #!/bin/sh
2
2
3 + #installation script for cafe-grader, for ubuntu 16.04
4 +
3 echo "This script will install and configure Cafe grader."
5 echo "This script will install and configure Cafe grader."
4
6
5 - RUBY_VERSION=2.1.2
7 + RUBY_VERSION=2.3.4
6 echo "This will install Ruby $RUBY_VERSION under RVM"
8 echo "This will install Ruby $RUBY_VERSION under RVM"
7
9
8 echo "Installing required apts"
10 echo "Installing required apts"
9
11
12 + sudo apt-get install software-properties-common
13 + sudo apt-add-repository -y ppa:rael-gc/rvm
10 sudo apt-get update
14 sudo apt-get update
11 - sudo apt-get install mysql-server mysql-client \
15 + sudo apt-get install rvm mysql-server mysql-client \
12 g++ gcc apache2 libmysqlclient20 build-essential \
16 g++ gcc apache2 libmysqlclient20 build-essential \
13 git-core openssl libreadline6 libreadline6-dev \
17 git-core openssl libreadline6 libreadline6-dev \
14 zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev \
18 zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev \
15 sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev \
19 sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev \
16 ncurses-dev automake libtool bison subversion \
20 ncurses-dev automake libtool bison subversion \
17 pkg-config curl nodejs unzip pyflakes ruby default-jdk \
21 pkg-config curl nodejs unzip pyflakes ruby default-jdk \
18 libmysqld-dev mercurial python-setuptools python-dev python3-numpy
22 libmysqld-dev mercurial python-setuptools python-dev python3-numpy
19
23
20 - echo "Installing RVM"
24 + #--- edited --
21 - curl -k -L https://get.rvm.io | bash -s stable
25 + #--- we now use rvm from ubuntu package ---
22 - source ~/.rvm/scripts/rvm
26 + #echo "Installing RVM"
27 + #curl -k -L https://get.rvm.io | bash -s stable
28 + #source ~/.rvm/scripts/rvm
29 +
30 + source /etc/profile.d/rvm.sh
23
31
24 echo "Installing Ruby $RUBY_VERSION in RVM"
32 echo "Installing Ruby $RUBY_VERSION in RVM"
25
33
26 rvm install $RUBY_VERSION
34 rvm install $RUBY_VERSION
27 rvm use $RUBY_VERSION
35 rvm use $RUBY_VERSION
28
36
29 echo "Fetching Cafe Grader from Git repositories"
37 echo "Fetching Cafe Grader from Git repositories"
30
38
31 echo "Fetching web interface"
39 echo "Fetching web interface"
32
40
33 mkdir cafe_grader
41 mkdir cafe_grader
34 cd cafe_grader
42 cd cafe_grader
35 git clone -q git://github.com/cafe-grader-team/cafe-grader-web.git web
43 git clone -q git://github.com/cafe-grader-team/cafe-grader-web.git web
36
44
37 echo "Configuring rails app"
45 echo "Configuring rails app"
38
46
39 cp web/config/application.rb.SAMPLE web/config/application.rb
47 cp web/config/application.rb.SAMPLE web/config/application.rb
40 cp web/config/initializers/cafe_grader_config.rb.SAMPLE web/config/initializers/cafe_grader_config.rb
48 cp web/config/initializers/cafe_grader_config.rb.SAMPLE web/config/initializers/cafe_grader_config.rb
41
49
42 #replace UTC in application.rb with the system timezone
50 #replace UTC in application.rb with the system timezone
43 timezone='UTC'
51 timezone='UTC'
44 if [ -f '/etc/timezone' ]; then
52 if [ -f '/etc/timezone' ]; then
45 timezone=\"`cat /etc/timezone`\"
53 timezone=\"`cat /etc/timezone`\"
46 else
54 else
47 if [ -f '/etc/sysconfig/clock' ]; then
55 if [ -f '/etc/sysconfig/clock' ]; then
48 timezone=`grep -e '^TIMEZONE' /etc/sysconfig/clock | grep -o -e '\".*\"'`
56 timezone=`grep -e '^TIMEZONE' /etc/sysconfig/clock | grep -o -e '\".*\"'`
49 fi
57 fi
50 fi
58 fi
51 replace="s!'UTC'!$timezone!g"
59 replace="s!'UTC'!$timezone!g"
52 sed -i $replace web/config/application.rb
60 sed -i $replace web/config/application.rb
53
61
54 echo "At this point we will need MySQL user and database."
62 echo "At this point we will need MySQL user and database."
55 echo "Have you created MySQL user and database for Cafe grader? (Y/N) "
63 echo "Have you created MySQL user and database for Cafe grader? (Y/N) "
56 read ch
64 read ch
57
65
58 if [ "$ch" = "n" -o "$ch" = "N" ]
66 if [ "$ch" = "n" -o "$ch" = "N" ]
59 then
67 then
60 echo "Please open another terminal and create the user and database for Cafe grader."
68 echo "Please open another terminal and create the user and database for Cafe grader."
61 echo "Don't forget to grant access to that database for the user."
69 echo "Don't forget to grant access to that database for the user."
62 echo "Please have username, password, and database name ready before continue."
70 echo "Please have username, password, and database name ready before continue."
63 echo
71 echo
64 echo "The following are instructions:"
72 echo "The following are instructions:"
65 echo "1. Run mysql:"
73 echo "1. Run mysql:"
66 echo
74 echo
67 echo " mysql -u root -p"
75 echo " mysql -u root -p"
68 echo
76 echo
69 echo " if you have just installed mysql, the root password is the one that you have just entered"
77 echo " if you have just installed mysql, the root password is the one that you have just entered"
70 echo "2. Create a new database, a new user, and grant access to grader database:"
78 echo "2. Create a new database, a new user, and grant access to grader database:"
You need to be logged in to leave comments. Login now