Description:
merge new install script
Commit status:
[Not Reviewed]
References:
merge default
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r191:f621f33bb3a8 - - 1 file changed: 5 inserted, 5 deleted

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