Skip to content
This repository has been archived by the owner on Nov 8, 2020. It is now read-only.

Latest commit

 

History

History
105 lines (73 loc) · 2.41 KB

README.md

File metadata and controls

105 lines (73 loc) · 2.41 KB

Judge Daemon

中文文档

Introduction

HydroJudge is a judging daemon for programming contests like OI and ACM. HydroJudge supports custom judge, subtask and other many new features.

Help Center

Usage

Run packed executable file (suggested)

Step 1: Download the latest packed files at GithubActions
You should download one of the files below:

  • Judge_win_amd64.exe
  • Judge_linux_amd64
  • Judge_macos_amd64

Step 2: Create configuration file

#$HOME/.config/hydro/judge.yaml
hosts:
  localhost:
    server_url: e.g. https://vijos.org
    uname: Judge account username
    password: Judge account password

Step 3: Run!

chmod +x ./Judge
./Judge

Run with docker

Create config.yaml:

hosts:
  localhost:
    server_url: e.g. https://vijos.org
    uname: Judge account username
    password: Judge account password

Then use docker run --privileged -d -v /path/to/config.yaml:/config/config.yaml hydrooj/judge:default to start.
Replace /path/to/judge.yaml with your ABSOLUTE PATH!
Hint: there are 4 tags built for docker:

  • hydrooj/judge:alpine Smallest image based on AlpineLinux
  • hydrooj/judge:latest No compiler installed
  • hydrooj/judge:default Default compiler for vijos
  • hydrooj/judge:slim C C++ Pascal

Configuration

  • Change the config file path: --config=/path/to/config
  • Change the language file path: --langs=/path/to/langs
  • Change temp directory: --tmp=/path/to/tmp
  • Change cache directory: --cache=/path/to/cache
  • Change files directory: --files=/path/to/files
  • Change execution host: --execute=http://executionhost/

Development

Prerequisites:

  • Linux
  • NodeJS Version 10+

Use the following command to install nodejs requirements:

yarn

Put judge.yaml and langs.yaml in the configuration directory, usually in $HOME/.config/hydro/. judge.yaml includes the server address, user and password and langs.yaml includes the compiler options. Examples can be found under the examples directory.

Run the executor-server first,
And use the following command to run the daemon:

node judge/daemon.js

Testdata format

Testdata format

Copyright and License

Copyright (c) 2020 Hydro Dev Team. All rights reserved.

License: GPL-3.0-only