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

r193:027e22738156 - - 1 file changed: 11 inserted, 0 deleted

@@ -63,108 +63,119
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
74 echo " Replace USERNAME, PASSWORD, and DATABASENAME accordingly."
74 echo " Replace USERNAME, PASSWORD, and DATABASENAME accordingly."
75 echo
75 echo
76 echo "Hit enter when ready..."
76 echo "Hit enter when ready..."
77 read dummy
77 read dummy
78 fi
78 fi
79
79
80 CAFE_PATH=`pwd`
80 CAFE_PATH=`pwd`
81
81
82 cd web
82 cd web
83
83
84 echo "Please provide grader database:"
84 echo "Please provide grader database:"
85 read database
85 read database
86
86
87 echo "Please provide grader username:"
87 echo "Please provide grader username:"
88 read username
88 read username
89
89
90 echo "Please provide $username password:"
90 echo "Please provide $username password:"
91 read password
91 read password
92
92
93 echo "development:" > config/database.yml
93 echo "development:" > config/database.yml
94 echo " adapter: mysql2" >> config/database.yml
94 echo " adapter: mysql2" >> config/database.yml
95 echo " encoding: utf8" >> config/database.yml
95 echo " encoding: utf8" >> config/database.yml
96 echo " reconnect: false" >> config/database.yml
96 echo " reconnect: false" >> config/database.yml
97 echo " database: $database" >> config/database.yml
97 echo " database: $database" >> config/database.yml
98 echo " pool: 5" >> config/database.yml
98 echo " pool: 5" >> config/database.yml
99 echo " username: $username" >> config/database.yml
99 echo " username: $username" >> config/database.yml
100 echo " password: $password" >> config/database.yml
100 echo " password: $password" >> config/database.yml
101 echo " host: localhost" >> config/database.yml
101 echo " host: localhost" >> config/database.yml
102 echo " socket: /var/run/mysqld/mysqld.sock" >> config/database.yml
102 echo " socket: /var/run/mysqld/mysqld.sock" >> config/database.yml
103 echo "" >> config/database.yml
103 echo "" >> config/database.yml
104 echo "production:" >> config/database.yml
104 echo "production:" >> config/database.yml
105 echo " adapter: mysql2" >> config/database.yml
105 echo " adapter: mysql2" >> config/database.yml
106 echo " encoding: utf8" >> config/database.yml
106 echo " encoding: utf8" >> config/database.yml
107 echo " reconnect: false" >> config/database.yml
107 echo " reconnect: false" >> config/database.yml
108 echo " database: $database" >> config/database.yml
108 echo " database: $database" >> config/database.yml
109 echo " pool: 5" >> config/database.yml
109 echo " pool: 5" >> config/database.yml
110 echo " username: $username" >> config/database.yml
110 echo " username: $username" >> config/database.yml
111 echo " password: $password" >> config/database.yml
111 echo " password: $password" >> config/database.yml
112 echo " host: localhost" >> config/database.yml
112 echo " host: localhost" >> config/database.yml
113 echo " socket: /var/run/mysqld/mysqld.sock" >> config/database.yml
113 echo " socket: /var/run/mysqld/mysqld.sock" >> config/database.yml
114
114
115 echo "Object.instance_eval{remove_const :GRADER_ROOT_DIR}" >> config/initializers/cafe_grader_config.rb
115 echo "Object.instance_eval{remove_const :GRADER_ROOT_DIR}" >> config/initializers/cafe_grader_config.rb
116 echo "Object.instance_eval{remove_const :GRADING_RESULT_DIR}" >> config/initializers/cafe_grader_config.rb
116 echo "Object.instance_eval{remove_const :GRADING_RESULT_DIR}" >> config/initializers/cafe_grader_config.rb
117 echo "GRADER_ROOT_DIR = '$CAFE_PATH/judge'" >> config/initializers/cafe_grader_config.rb
117 echo "GRADER_ROOT_DIR = '$CAFE_PATH/judge'" >> config/initializers/cafe_grader_config.rb
118 echo "GRADING_RESULT_DIR = '$CAFE_PATH/judge/result'" >> config/initializers/cafe_grader_config.rb
118 echo "GRADING_RESULT_DIR = '$CAFE_PATH/judge/result'" >> config/initializers/cafe_grader_config.rb
119
119
120 echo "Installing required gems"
120 echo "Installing required gems"
121 gem install bundler
121 gem install bundler
122 bundle install
122 bundle install
123
123
124 echo "Running rake tasks to initialize database"
124 echo "Running rake tasks to initialize database"
125
125
126 rake db:migrate
126 rake db:migrate
127 rake db:seed
127 rake db:seed
128
128
129 echo "Running rake tasks to precompile the assets"
129 echo "Running rake tasks to precompile the assets"
130
130
131 rake assets:precompile
131 rake assets:precompile
132
132
133 echo "Intalling web interface complete..."
133 echo "Intalling web interface complete..."
134 echo
134 echo
135 echo "Fetching grader"
135 echo "Fetching grader"
136
136
137 cd ..
137 cd ..
138
138
139 mkdir judge
139 mkdir judge
140 cd judge
140 cd judge
141 git clone -q git://github.com/jittat/cafe-grader-judge-scripts.git scripts
141 git clone -q git://github.com/jittat/cafe-grader-judge-scripts.git scripts
142 mkdir raw
142 mkdir raw
143 mkdir ev-exam
143 mkdir ev-exam
144 mkdir ev
144 mkdir ev
145 mkdir result
145 mkdir result
146 mkdir log
146 mkdir log
147
147
148 echo "Configuring grader"
148 echo "Configuring grader"
149
149
150 cp scripts/config/env_exam.rb.SAMPLE scripts/config/env_exam.rb
150 cp scripts/config/env_exam.rb.SAMPLE scripts/config/env_exam.rb
151 cp scripts/config/env_grading.rb.SAMPLE scripts/config/env_grading.rb
151 cp scripts/config/env_grading.rb.SAMPLE scripts/config/env_grading.rb
152
152
153 # create new environment.rb file
153 # create new environment.rb file
154 echo "RAILS_ROOT = '$CAFE_PATH/web'" > scripts/config/environment.rb
154 echo "RAILS_ROOT = '$CAFE_PATH/web'" > scripts/config/environment.rb
155 echo "GRADER_ROOT = '$CAFE_PATH/judge/scripts'" >> scripts/config/environment.rb
155 echo "GRADER_ROOT = '$CAFE_PATH/judge/scripts'" >> scripts/config/environment.rb
156 echo "require File.join(File.dirname(__FILE__),'../lib/boot')" >> scripts/config/environment.rb
156 echo "require File.join(File.dirname(__FILE__),'../lib/boot')" >> scripts/config/environment.rb
157 echo "require File.dirname(__FILE__) + \"/env_#{GRADER_ENV}.rb\"" >> scripts/config/environment.rb
157 echo "require File.dirname(__FILE__) + \"/env_#{GRADER_ENV}.rb\"" >> scripts/config/environment.rb
158
158
159 + # compiling box
160 + MACHINE_TYPE=`uname -m`
161 + if [ ${MACHINE_TYPE} == 'x86_64' ]; then
162 + gcc -std=c99 -o scripts/std-script/box scripts/std-script/box64-new.c
163 + # 64-bit stuff here
164 + else
165 + g++ -o scripts/std-script/box scripts/std-script/box.cc
166 + # 32-bit stuff here
167 + fi
168 +
169 +
159 cd ..
170 cd ..
160
171
161 echo "Now you are ready to run cafe grader...."
172 echo "Now you are ready to run cafe grader...."
162 echo
173 echo
163 echo "Try:"
174 echo "Try:"
164 echo
175 echo
165 echo " cd web"
176 echo " cd web"
166 echo " rails s"
177 echo " rails s"
167 echo
178 echo
168 echo "and access web at http://localhost:3000/"
179 echo "and access web at http://localhost:3000/"
169 echo "The root username is 'root', its password is 'ioionrails'."
180 echo "The root username is 'root', its password is 'ioionrails'."
170
181
You need to be logged in to leave comments. Login now