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

r821:7ceba92b053f - - 4 files changed: 10 inserted, 6 deleted

@@ -1,52 +1,52
1 1 source 'https://rubygems.org'
2 2 git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3 3
4 - ruby '3.0.2'
4 + ruby '3.1.0'
5 5
6 6 #rails
7 7 gem 'rails', '~>7.0'
8 8
9 9 # The original asset pipeline for Rails [https://github.com/rails/sprockets-rails]
10 10 gem "sprockets-rails"
11 11
12 12 gem 'activerecord-session_store'
13 13 gem 'puma'
14 14
15 15 # Reduces boot times through caching; required in config/boot.rb
16 16 gem 'bootsnap', require: false
17 17
18 18 # Bundle edge Rails instead:
19 19 # gem 'rails', :git => 'git://github.com/rails/rails.git'
20 20
21 21 #---------------- database ---------------------
22 22 #the database
23 23 gem 'mysql2'
24 24 #for testing
25 25 gem 'sqlite3'
26 26 gem 'rails-controller-testing'
27 27 #for dumping database into yaml
28 28 gem 'yaml_db'
29 29
30 30
31 31 #------------- assset pipeline -----------------
32 32 # Gems used only for assets and not required
33 33 # in production environments by default.
34 34 #sass-rails is depricated
35 35 #gem 'sass-rails'
36 36 gem 'sassc-rails'
37 37 gem 'coffee-rails'
38 38
39 39 # See https://github.com/sstephenson/execjs#readme for more supported runtimes
40 40 # gem 'therubyracer', :platforms => :ruby
41 41
42 42 gem 'uglifier'
43 43
44 44 gem 'haml'
45 45 gem 'haml-rails'
46 46
47 47 # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
48 48 #gem 'turbolinks', '~> 5'
49 49 # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
50 50 gem 'jbuilder'
51 51
52 52
@@ -133,97 +133,97
133 133 globalid (1.0.0)
134 134 activesupport (>= 5.0)
135 135 haml (5.2.2)
136 136 temple (>= 0.8.0)
137 137 tilt
138 138 haml-rails (2.0.1)
139 139 actionpack (>= 5.1)
140 140 activesupport (>= 5.1)
141 141 haml (>= 4.0.6, < 6.0)
142 142 html2haml (>= 1.0.1)
143 143 railties (>= 5.1)
144 144 html2haml (2.2.0)
145 145 erubis (~> 2.7.0)
146 146 haml (>= 4.0, < 6)
147 147 nokogiri (>= 1.6.0)
148 148 ruby_parser (~> 3.5)
149 149 i18n (1.8.11)
150 150 concurrent-ruby (~> 1.0)
151 151 in_place_editing (1.2.0)
152 152 io-console (0.5.11)
153 153 io-wait (0.2.1)
154 154 irb (1.4.1)
155 155 reline (>= 0.3.0)
156 156 jbuilder (2.11.5)
157 157 actionview (>= 5.0.0)
158 158 activesupport (>= 5.0.0)
159 159 jquery-countdown-rails (2.0.2)
160 160 jquery-rails (4.4.0)
161 161 rails-dom-testing (>= 1, < 3)
162 162 railties (>= 4.2.0)
163 163 thor (>= 0.14, < 2.0)
164 164 jquery-tablesorter (1.27.2)
165 165 railties (>= 3.2)
166 166 jquery-ui-rails (6.0.1)
167 167 railties (>= 3.2.16)
168 168 listen (3.0.8)
169 169 rb-fsevent (~> 0.9, >= 0.9.4)
170 170 rb-inotify (~> 0.9, >= 0.9.7)
171 171 loofah (2.13.0)
172 172 crass (~> 1.0.2)
173 173 nokogiri (>= 1.5.9)
174 174 mail (2.7.1)
175 175 mini_mime (>= 0.1.1)
176 176 marcel (1.0.2)
177 177 matrix (0.4.2)
178 178 method_source (1.0.0)
179 179 mini_mime (1.1.2)
180 180 minitest (5.15.0)
181 - minitest-reporters (1.4.3)
181 + minitest-reporters (1.5.0)
182 182 ansi
183 183 builder
184 184 minitest (>= 5.0)
185 185 ruby-progressbar
186 186 momentjs-rails (2.29.1.1)
187 187 railties (>= 3.1)
188 188 msgpack (1.4.2)
189 189 multi_json (1.15.0)
190 190 mysql2 (0.5.3)
191 191 net-imap (0.2.3)
192 192 digest
193 193 net-protocol
194 194 strscan
195 195 net-pop (0.1.1)
196 196 digest
197 197 net-protocol
198 198 timeout
199 199 net-protocol (0.1.2)
200 200 io-wait
201 201 timeout
202 202 net-smtp (0.3.1)
203 203 digest
204 204 net-protocol
205 205 timeout
206 206 nio4r (2.5.8)
207 207 nokogiri (1.13.1-x86_64-linux)
208 208 racc (~> 1.4)
209 209 public_suffix (4.0.6)
210 210 puma (5.5.2)
211 211 nio4r (~> 2.0)
212 212 racc (1.6.0)
213 213 rack (2.2.3)
214 214 rack-test (1.1.0)
215 215 rack (>= 1.0, < 3)
216 216 rails (7.0.1)
217 217 actioncable (= 7.0.1)
218 218 actionmailbox (= 7.0.1)
219 219 actionmailer (= 7.0.1)
220 220 actionpack (= 7.0.1)
221 221 actiontext (= 7.0.1)
222 222 actionview (= 7.0.1)
223 223 activejob (= 7.0.1)
224 224 activemodel (= 7.0.1)
225 225 activerecord (= 7.0.1)
226 226 activestorage (= 7.0.1)
227 227 activesupport (= 7.0.1)
228 228 bundler (>= 1.15.0)
229 229 railties (= 7.0.1)
@@ -322,52 +322,52
322 322 DEPENDENCIES
323 323 ace-rails-ap
324 324 activerecord-session_store
325 325 autoprefixer-rails
326 326 best_in_place!
327 327 bootsnap
328 328 bootstrap-sass (~> 3.4.1)
329 329 bootstrap-switch-rails
330 330 bootstrap-toggle-rails
331 331 bootstrap3-datetimepicker-rails (~> 4.17.47)
332 332 capybara
333 333 coffee-rails
334 334 debug
335 335 dynamic_form
336 336 fuzzy-string-match
337 337 haml
338 338 haml-rails
339 339 in_place_editing
340 340 jbuilder
341 341 jquery-countdown-rails
342 342 jquery-rails
343 343 jquery-tablesorter
344 344 jquery-ui-rails
345 345 listen (>= 3.0.5, < 3.2)
346 346 mail
347 347 minitest-reporters
348 348 momentjs-rails (>= 2.9.0)
349 349 mysql2
350 350 puma
351 351 rails (~> 7.0)
352 352 rails-controller-testing
353 353 rails_bootstrap_sortable
354 354 rdiscount
355 355 rouge
356 356 sassc-rails
357 357 select2-rails
358 358 selenium-webdriver
359 359 simple_form
360 360 spring
361 361 spring-watcher-listen (~> 2.0.0)
362 362 sprockets-rails
363 363 sqlite3
364 364 uglifier
365 365 web-console (>= 3.3.0)
366 366 webdrivers
367 367 yaml_db
368 368
369 369 RUBY VERSION
370 - ruby 3.0.2p107
370 + ruby 3.1.0p0
371 371
372 372 BUNDLED WITH
373 373 2.3.5
@@ -1,98 +1,102
1 1 == Installation
2 2
3 3 Installing cafe-grader can be done in the following steps.
4 4
5 5 1. Set up database. We need MySQL 5 database name, username and password.
6 6 2. Install RVM. cafe-grader runs on Ruby on Rails and the best way to install it is to use RVM.
7 7 3. Install necessary package for the system
8 8 4. Install cafe-grader from github
9 9 5. Deploy cafe-grader on apache with Phusion Passenger
10 10
11 11 Very important!!! All commands should be run from a normal user.
12 12
13 13 The detail of each step are provided as follows.
14 14
15 15 === 1. Install MySQL 5
16 16
17 17 Install MySQL server for the server.
18 18
19 19 cafe@grader:~$ sudo apt install mysql-server
20 20
21 21 Next, we will connect to mysql as root and set up the database. You can choose your DATABASENAME, USERNAME and PASSWORD as you wish.
22 22
23 23 cafe@grader:~$ sudo mysql -u root
24 24
25 25 mysql> create database DATABASENAME;
26 26 Query OK, 1 row affected (0.00 sec)
27 27
28 28 mysql> grant all privileges on DATABASENAME.* to USERNAME@localhost identified by 'PASSWORD';
29 29 Query OK, 0 rows affected, 1 warning (0.00 sec)
30 30
31 31 mysql> flush privileges;
32 32 Query OK, 0 rows affected (0.00 sec)
33 33
34 34 === 2. Install RVM
35 35
36 36 Since Ubuntu has dedicated package for RVM we will use that. Just follow instruction given in https://github.com/rvm/ubuntu_rvm. For your convenience, the step are reproduced here.
37 37
38 38 First, we install necessary package for installing RVM.
39 39
40 40 cafe@grader:~$ sudo apt install software-properties-common
41 41
42 42 Second, we add the custom PPA, update the system and install RVM.
43 43
44 44 cafe@grader:~$ sudo apt-add-repository -y ppa:rael-gc/rvm
45 45 cafe@grader:~$ sudo apt-get update
46 46 cafe@grader:~$ sudo apt-get install rvm
47 47
48 - This is very important. You have to logout and login again since RVM change a lots of system.
48 + We also need to add our user to the rvm group
49 +
50 + sudo usermod -a -G rvm $USER
49 51
50 - If you are using GUI version of Ubuntu, be sure to have Gnome Terminal (or any other terminal you are using) perform login every time. This can be done by mark the check box "Run command as a login shell" in Gnome terminal or by adding --login to bash.
52 + This is very important.
53 + 1. You have to reboot since RVM change a lots of system.
54 + 2. If you are using GUI version of Ubuntu, be sure to have Gnome Terminal (or any other terminal you are using) perform login every time. This can be done by mark the check box "Run command as a login shell" in Gnome terminal or by adding --login to bash.
51 55
52 56 === 3. Install necessary package
53 57
54 58 cafe@grader:~$ sudo apt install libmysqlclient-dev default-jdk unzip nodejs php-cli apache2 dirmngr gnupg apache2-dev
55 59
56 60 === 4. Install cafe-grader
57 61
58 62 First, ensure that RVM is installed correctly.
59 63
60 64 cafe@grader:~$ rvm
61 65
62 66 If you get a result similar to this.
63 67
64 68 Command 'rvm' not found, but there are 21 similar ones.
65 69
66 70 It is very likely that you have not re-login or you are using bash without --login. Please do so and re-read the installation of RVM on Ubuntu https://github.com/rvm/ubuntu_rvm again.
67 71
68 72 Next, we will let the install script do the work of installing cafe-grader. Please prepare the DATABASENAME, USERNAME and PASSWORD as the script will ask for that. Make sure that you run the script from the home directory of the user.
69 73
70 74 cafe@grader:~$ wget https://github.com/cafe-grader-team/cafe-grader-judge-scripts/raw/master/installer/install.sh
71 75 cafe@grader:~$ . ./install.sh
72 76
73 77 After installation is finished, grader is ready to run in development mode via WEBrick. We will try that by the following command which will start a grader accessible via http://localhost:3000/. You can try logging in to the system and verify that it is actually work.
74 78
75 79 cafe@grader:~/cafe_grader/web$ rails s
76 80
77 81 If Everything is OK, stop the WEBrick by Ctrl-C.
78 82
79 83 We are almost done. The last step is to set up apache and Phusion so that cafe-grader is served by apache.
80 84
81 85 === 5. Deploy cafe-grader on Phusion passenger via apache
82 86
83 87 This will install a Passenger mod for apache. You can start by visiting https://www.phusionpassenger.com/library/walkthroughs/deploy/ruby/ownserver/apache/oss/install_passenger_main.html and fllow through the guide. We have reproduce the step here for Ubuntu 18.04. For other version, please select the appropriate one on the previous link.
84 88
85 89 The deploy is divided into two parts: Installing Passenger and deploying the app.
86 90
87 91 ==== 5.1. Installing Passenger as a mod for apache via PPA and enable it.
88 92
89 93 cafe@grader:~$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7
90 94 cafe@grader:~$ sudo apt-get install -y apt-transport-https ca-certificates
91 95 cafe@grader:~$ sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger bionic main > /etc/apt/sources.list.d/passenger.list'
92 96 cafe@grader:~$ sudo apt-get update
93 97 cafe@grader:~$ sudo apt-get install -y libapache2-mod-passenger
94 98 cafe@grader:~$ sudo a2enmod passenger
95 99
96 100
97 101 cafe@grader:~$ sudo apache2ctl restart
98 102
You need to be logged in to leave comments. Login now