vijos/jd4

config file not found

nature-li opened this issue · 6 comments

I installed the vijos using https://github.com/vijos/vj4-docker.git (I changed to vijos/vj4:debian as described here vijos/vj4#534 ). But I found a problem like this:
#########################################
[E 191106 20:40:50 daemon:57] config file not found
Traceback (most recent call last):
File "/venv/lib/python3.5/site-packages/jd4/daemon.py", line 47, in do_record
await self.do_submission()
File "/venv/lib/python3.5/site-packages/jd4/daemon.py", line 74, in do_submission
await self.judge(cases_file, package)
File "/venv/lib/python3.5/site-packages/jd4/daemon.py", line 96, in judge
cases = list(read_cases(cases_file))
File "/venv/lib/python3.5/site-packages/jd4/case.py", line 295, in read_cases
raise FormatError('config file not found')
jd4.error.FormatError: config file not found
#########################################

If a install it on AliYun centos7 machine, it works. But if I install it on the OXS OS Mojave system it gives me this error. I have a VM centos7 machine also running on this MAC. it also give me this error. What's the problem? if it's a bug?

Please tell us how do you start the container up

I started using this command:
docker-compose up -d

this is my ./data/judge/config.yaml:
server_url: http://web:8888/
uname: judge
password: 123456

Please also paste the configuration of judge service in docker-compose.yml

sorry, it's like this:
#####################################################
version: '3'
services:
web:
# build: .
image: vijos/vj4:debian
restart: always
command: vj4.server
env_file: .env
volumes:
- "./data/run:/var/run/vj4"
links:
- mongodb
- rabbitmq
ports: [ "8888:8888" ]
depends_on:
- rabbitmq
- mongodb

# Before uncomment these lines, you should have created necessary files
# like config.yaml for it.
# See README.md for instructions.
#-------------------------------------------------------------------------------
judge:
    restart: always
    privileged: true
    image: vijos/jd4
    volumes:
        - "./data/judge/config.yaml:/root/.config/jd4/config.yaml"
        - "./data/judge/cache:/root/.cache/jd4"
    links:
        - web
        # - web_backend # uncomment this only if you have this service

# You can uncomment this block to enable a internal only web service.
# Consider to use this if your main web service is listening to a unix socket.
# For example, you can set your judge connect to `http://web_backend:8787`.
#-------------------------------------------------------------------------------
#web_backend:
#    image: vijos/vj4
#    restart: always
#    command: vj4.server
#    env_file: .env
#    environment: # this will override env in `env_file`
#        VJ_LISTEN: "http://0.0.0.0:8787"
#    # ports: 
#    #     - "8787:8787"
#    links:
#        - rabbitmq
#        - mongodb
#    depends_on:
#        - rabbitmq
#        - mongodb

rabbitmq:
    restart: always
    image: rabbitmq:latest
    volumes:
        - "./data/rabbitmq:/var/lib/rabbitmq"

mongodb:
    restart: always
    image: mongo:latest
    volumes:
        - "./data/mongodb:/data/db"

I'm so sorry that I misunderstood your problem. This Error is raised when a wrong config file or test data zip is detected. Have you uploaded the correct test cases with a valid config file correspond to the problem you submitted?

I downloaded the example zip file and then uploaded it to server. After that I checked and unzip this file ./data/judge/cache/system/1000.zip. It's what I have uploaded before.