Description:
Merge pull request #4 from sarunint/master Update ruby version to 2.1.2
Commit status:
[Not Reviewed]
References:
merge default
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r198:3568b88e10db - - 1 file changed: 4 inserted, 4 deleted

@@ -1,154 +1,154
1 1 #!/bin/sh
2 2
3 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 2.1.2 under rvm"
6 6
7 7 echo "Installing required apts"
8 8
9 9 sudo apt-get update
10 10 sudo apt-get install mysql-server mysql-client \
11 11 g++ gcc apache2 libmysqlclient15-dev build-essential \
12 12 git-core openssl libreadline6 libreadline6-dev \
13 13 zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev \
14 14 sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev \
15 15 ncurses-dev automake libtool bison subversion \
16 16 pkg-config curl nodejs unzip
17 17
18 18 echo "Installing RVM"
19 19 curl -k -L https://get.rvm.io | bash -s stable
20 20 ~/.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
25 - rvm use 1.9.2
24 + rvm install 2.1.2
25 + rvm use 2.1.2
26 26
27 27 echo "Fetching Cafe Grader from Git repositories"
28 28
29 29 echo "Fetching web interface"
30 30
31 31 mkdir cafe_grader
32 32 cd cafe_grader
33 33 git clone -q git://github.com/jittat/cafe-grader-web.git web
34 34
35 35 echo "Configuring rails app"
36 36
37 37 cp web/config/application.rb.SAMPLE web/config/application.rb
38 38 cp web/config/initializers/cafe_grader_config.rb.SAMPLE web/config/initializers/cafe_grader_config.rb
39 39
40 40 echo "At this point we will need MySQL user and database."
41 41 echo "Have you created MySQL user and database for Cafe grader? (Y/N) "
42 42 read ch
43 43
44 44 if [ "$ch" = "n" -o "$ch" = "N" ]
45 45 then
46 46 echo "Please open another terminal and create the user and database for Cafe grader."
47 47 echo "Don't forget to grant access to that database for the user."
48 48 echo "Please have username, password, and database name ready before continue."
49 49 echo
50 50 echo "The following are instructions:"
51 51 echo "1. Run mysql:"
52 52 echo
53 53 echo " mysql -u root -p"
54 54 echo
55 55 echo " if you have just installed mysql, the root password is the one that you have just entered"
56 56 echo "2. Create a new database, a new user, and grant access to grader database:"
57 57 echo
58 58 echo " create user 'USERNAME'@'localhost' identified by 'PASSWORD';"
59 59 echo " create database \`DATABASENEME\`;"
60 60 echo " grant all on \`DATABASENAME\`.* to 'USERNAME'@'localhost';"
61 61 echo
62 62 echo " Replace USERNAME, PASSWORD, and DATABASENAME accordingly."
63 63 echo
64 64 echo "Hit enter when ready..."
65 65 read dummy
66 66 fi
67 67
68 68 CAFE_PATH=`pwd`
69 69
70 70 cd web
71 71
72 72 echo "Please provide grader database:"
73 73 read database
74 74
75 75 echo "Please provide grader username:"
76 76 read username
77 77
78 78 echo "Please provide $username password:"
79 79 read password
80 80
81 81 echo "development:" > config/database.yml
82 82 echo " adapter: mysql2" >> config/database.yml
83 83 echo " encoding: utf8" >> config/database.yml
84 84 echo " reconnect: false" >> config/database.yml
85 85 echo " database: $database" >> config/database.yml
86 86 echo " pool: 5" >> config/database.yml
87 87 echo " username: $username" >> config/database.yml
88 88 echo " password: $password" >> config/database.yml
89 89 echo " host: localhost" >> config/database.yml
90 90 echo " socket: /var/run/mysqld/mysqld.sock" >> config/database.yml
91 91 echo "" >> config/database.yml
92 92 echo "production:" >> config/database.yml
93 93 echo " adapter: mysql2" >> config/database.yml
94 94 echo " encoding: utf8" >> config/database.yml
95 95 echo " reconnect: false" >> config/database.yml
96 96 echo " database: $database" >> config/database.yml
97 97 echo " pool: 5" >> config/database.yml
98 98 echo " username: $username" >> config/database.yml
99 99 echo " password: $password" >> config/database.yml
100 100 echo " host: localhost" >> config/database.yml
101 101 echo " socket: /var/run/mysqld/mysqld.sock" >> config/database.yml
102 102
103 103 echo "Object.instance_eval{remove_const :GRADER_ROOT_DIR}" >> config/initializers/cafe_grader_config.rb
104 104 echo "Object.instance_eval{remove_const :GRADING_RESULT_DIR}" >> config/initializers/cafe_grader_config.rb
105 105 echo "GRADER_ROOT_DIR = '$CAFE_PATH/judge'" >> config/initializers/cafe_grader_config.rb
106 106 echo "GRADING_RESULT_DIR = '$CAFE_PATH/judge/result'" >> config/initializers/cafe_grader_config.rb
107 107
108 108 echo "Installing required gems"
109 109 gem install bundler
110 110 bundle install
111 111
112 112 echo "Running rake tasks to initialize database"
113 113
114 114 rake db:migrate
115 115 rake db:seed
116 116
117 117 echo "Intalling web interface complete..."
118 118 echo
119 119 echo "Fetching grader"
120 120
121 121 cd ..
122 122
123 123 mkdir judge
124 124 cd judge
125 125 git clone -q git://github.com/jittat/cafe-grader-judge-scripts.git scripts
126 126 mkdir raw
127 127 mkdir ev-exam
128 128 mkdir ev
129 129 mkdir result
130 130 mkdir log
131 131
132 132 echo "Configuring grader"
133 133
134 134 cp scripts/config/env_exam.rb.SAMPLE scripts/config/env_exam.rb
135 135 cp scripts/config/env_grading.rb.SAMPLE scripts/config/env_grading.rb
136 136
137 137 # create new environment.rb file
138 138 echo "RAILS_ROOT = '$CAFE_PATH/web'" > scripts/config/environment.rb
139 139 echo "GRADER_ROOT = '$CAFE_PATH/judge/scripts'" >> scripts/config/environment.rb
140 140 echo "require File.join(File.dirname(__FILE__),'../lib/boot')" >> scripts/config/environment.rb
141 141 echo "require File.dirname(__FILE__) + \"/env_#{GRADER_ENV}.rb\"" >> scripts/config/environment.rb
142 142
143 143 cd ..
144 144
145 145 echo "Now you are ready to run cafe grader...."
146 146 echo
147 147 echo "Try:"
148 148 echo
149 149 echo " cd web"
150 150 echo " rails s"
151 151 echo
152 152 echo "and access web at http://localhost:3000/"
153 153 echo "The root username is 'root', its password is 'ioionrails'."
154 154
You need to be logged in to leave comments. Login now