Skip to content

kumarneetesh24/prudge

 
 

Repository files navigation

Prudge

Build Status Code Climate Coverage Status Dependency Status

Prudge is an online programming contest judge system.

Required services

  • Memcached for caching
  • Postgresql as database
  • Redis for background processing
  • Sphinx for full text search
  • safeexec for testing code

Installin on Linux(Ubuntu/Debain)

  • apt-get install memcached
  • apt-get install postgresql92-server
  • apt-get install redis
  • apt-get install sphinxsearch

Installing on FreeBSD

  • cd /usr/ports/databases/memcached && make install clean
  • cd /usr/ports/databases/postgresql92-server && make install clean
  • cd /usr/ports/databases/redis && make install clean
  • cd /usr/ports/textproc/sphinxsearch && make install clean

Installing on OS X

  • brew install memcached
  • brew install postgresql
  • brew install redis
  • brew install sphinx

Ruby

Recommends installing ruby via rbenv. Current ruby for prudge is 1.8.7

Running

  • git clone git://github.com/ochko/prudge.git
  • cd prudge
  • bundle install
  • Create database and configure in config/database.yml
  • bundle exec rake db:schema:load
  • bundle exec rails server or bundle exec foreman start

Configuring safeexec

  • Initialize submodule: git submodule update --init
  • Make binary executable: cd judge/runner && make && mv safeexec ../sandbox/
  • Give setuid root permission to the binary: cd ../sandbox && sudo chown root safeexec && sudo chmod u+s safeexec

Configuring Resque

  • cp config/examples/resque.yml config/resque.yml
  • Start workers QUEUE=* bundle exec rake resque:work

Configuring Sphinx

  • cp config/examples/sphinx.yml config/sphinx.yml
  • See Sphinx docs for additional configuration.

Contributing

See Technical Debts or Open Issues.

  • After making changes add spec, and please be sure that all specs pass
  • Send me pull request. Then it could be merged ;)
  • If you found any problems please report on issues page. But don't post any security related issues there, send them privately.

About

Online judge for programming problems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 53.3%
  • HTML 20.2%
  • JavaScript 17.0%
  • CSS 8.5%
  • Other 1.0%