feat: use conf.json

This commit is contained in:
张泊明518370910136 2024-09-19 17:07:29 -04:00
parent 4e5fab93e5
commit fc02680432
GPG Key ID: CA088E6D9284F870
2 changed files with 121 additions and 64 deletions

121
conf.json Normal file
View File

@ -0,0 +1,121 @@
{
"stages": [
{
"name": "compile",
"executor": {
"name": "sandbox",
"with": {
"default": {
"args": [
"g++",
"b.cc",
"-o",
"a"
],
"env": [
"PATH=/usr/bin:/bin"
],
"cpuLimit": 10000000000,
"memoryLimit": 104857600,
"procLimit": 50,
"copyInCwd": true,
"copyOut": [
"stdout",
"stderr"
],
"copyOutCached": [
"a"
],
"stdin": {
"content": ""
},
"stdout": {
"name": "stdout",
"max": 4096
},
"stderr": {
"name": "stderr",
"max": 4096
}
}
}
},
"parser": {
"name": "result-status"
}
},
{
"name": "run",
"executor": {
"name": "sandbox",
"with": {
"default": {
"args": [
"./a"
],
"env": [
"PATH=/usr/bin:/bin"
],
"cpuLimit": 1000000000,
"memoryLimit": 104857600,
"procLimit": 50,
"copyOut": [
"stdout",
"stderr"
],
"stdout": {
"name": "stdout",
"max": 4096
},
"stderr": {
"name": "stderr",
"max": 4096
},
"copyInCached": {
"a": "a"
}
},
"cases": [
{
"stdin": {
"src": "./cases/1.in"
}
},
{
"stdin": {
"src": "./cases/2.in"
}
}
]
}
},
"parser": {
"name": "diff",
"with": {
"cases": [
{
"outputs": [
{
"score": 100,
"fileName": "stdout",
"answerPath": "./cases/1.out",
"ignoreWhitespace": true
}
]
},
{
"outputs": [
{
"score": 100,
"fileName": "stdout",
"answerPath": "./cases/2.out",
"ignoreWhitespace": true
}
]
}
]
}
}
}
]
}

View File

@ -1,64 +0,0 @@
skipGitea = true
logLevel = 0
[[stages]]
name = "compile"
[stages.executor]
name = "sandbox"
[stages.executor.with.default]
args = ["g++", "b.cc", "-o", "a"]
env = ["PATH=/usr/bin:/bin"]
cpuLimit = 10_000_000_000
memoryLimit = 104_857_600
procLimit = 50
copyInCwd = true
copyOut = ["stdout", "stderr"]
copyOutCached = ["a"]
[stages.executor.with.default.stdin]
content = ""
[stages.executor.with.default.stdout]
name = "stdout"
max = 4_096
[stages.executor.with.default.stderr]
name = "stderr"
max = 4_096
[stages.parser]
name = "result-status"
[[stages]]
name = "run"
[stages.executor]
name = "sandbox"
[stages.executor.with.default]
args = ["./a"]
env = ["PATH=/usr/bin:/bin"]
cpuLimit = 1_000_000_000
memoryLimit = 104_857_600
procLimit = 50
copyOut = ["stdout", "stderr"]
[stages.executor.with.default.stdout]
name = "stdout"
max = 4_096
[stages.executor.with.default.stderr]
name = "stderr"
max = 4_096
[stages.executor.with.default.copyInCached]
a = "a"
[[stages.executor.with.cases]]
[stages.executor.with.cases.stdin]
src = "./cases/1.in"
[[stages.executor.with.cases]]
[stages.executor.with.cases.stdin]
src = "./cases/2.in"
[stages.parser]
name = "diff"
[[stages.parser.with.cases]]
[[stages.parser.with.cases.outputs]]
score = 100
fileName = "stdout"
answerPath = "./cases/1.out"
ignoreWhitespace = true
[[stages.parser.with.cases]]
[[stages.parser.with.cases.outputs]]
score = 100
fileName = "stdout"
answerPath = "./cases/2.out"
ignoreWhitespace = true