mirror of
https://github.com/engineer-man/piston.git
synced 2025-06-08 03:06:26 +02:00
new docs, better executors, better expansion for languages
This commit is contained in:
parent
7bc9b5b63a
commit
3233db5c1f
24 changed files with 131 additions and 59 deletions
16
lxc/execute
16
lxc/execute
|
@ -66,9 +66,6 @@ case "$lang" in
|
|||
"c#" | "csharp" | "cs")
|
||||
bin=csharp
|
||||
;;
|
||||
"r")
|
||||
bin=r
|
||||
;;
|
||||
"php")
|
||||
bin=php
|
||||
;;
|
||||
|
@ -81,9 +78,6 @@ case "$lang" in
|
|||
"swift")
|
||||
bin=swift
|
||||
;;
|
||||
"brainfuck" | "bf")
|
||||
bin=brainfuck
|
||||
;;
|
||||
"rust")
|
||||
bin=rust
|
||||
;;
|
||||
|
@ -100,14 +94,12 @@ esac
|
|||
|
||||
# runner
|
||||
timeout -s KILL 10 \
|
||||
lxc-attach -n piston -- \
|
||||
/bin/bash -c "\
|
||||
PATH=/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin \
|
||||
bash /exec/$bin $newinc $epoch 2>&1 | head -c 65536"
|
||||
lxc-attach --clear-env -n piston -- \
|
||||
/bin/bash -l -c "bash /exec/$bin $newinc $epoch 2>&1 | head -c 65536"
|
||||
|
||||
# process janitor
|
||||
lxc-attach -n piston -- \
|
||||
/bin/bash -c "\
|
||||
lxc-attach --clear-env -n piston -- \
|
||||
/bin/bash -l -c "\
|
||||
for i in {1..100}; do pkill -u runner$newinc --signal SIGKILL; done ;\
|
||||
find /tmp -user runner$newinc -exec /bin/rm -rf {} \;\
|
||||
" > /dev/null 2>&1 &
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 bash code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 bash code.code"
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; timeout -s KILL 3 bf code.code"
|
|
@ -1,3 +1,3 @@
|
|||
cd /tmp/$2
|
||||
timeout -s KILL 10 gcc -std=c11 -o binary -x c code.code
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
cd /tmp/$2
|
||||
timeout -s KILL 10 g++ -std=c++17 -o binary -x c++ code.code
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
cd /tmp/$2
|
||||
timeout -s KILL 10 mcs $(echo code.code | sed 's/\///') -nowarn:0219 -out:binary
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 mono binary"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 mono binary"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
cd /tmp/$2
|
||||
cp code.code interim.go
|
||||
file="interim.go"
|
||||
GOROOT=/usr/lib/go timeout -s KILL 10 go build $file
|
||||
timeout -s KILL 10 go build $file
|
||||
file=${file%%.*}
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./$file"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./$file"
|
||||
|
|
|
@ -3,4 +3,4 @@ cp code.code interim.java
|
|||
name=$(cat interim.java | grep -Eo 'public\s+class\s+([A-Za-z0-9]+)' | sed -n 's/ */ /gp' | cut -d' ' -f3)
|
||||
mv interim.java $name.java
|
||||
timeout -s KILL 10 javac $name.java
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 java $name"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 java $name"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
cd /tmp/$2
|
||||
timeout -s KILL 10 nasm -f elf64 -o binary.o code.code
|
||||
timeout -s KILL 10 ld binary.o -o binary
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 nodejs code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 node code.code"
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 php code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 php code.code"
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 python2 code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 python code.code"
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 python3.6 code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 python3.6 code.code"
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 Rscript code.code"
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ruby code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ruby code.code"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
cd /tmp/$2
|
||||
timeout -s KILL 10 rustc -o binary code.code
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 ./binary"
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd /tmp/$2
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 swift code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 swift code.code"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
cd /tmp/$2
|
||||
mv code.code interim.ts
|
||||
timeout -s KILL 10 /usr/local/bin/tsc interim.ts
|
||||
timeout -s KILL 10 tsc interim.ts
|
||||
rm interim.ts
|
||||
mv interim.js code.code
|
||||
runuser -l runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 nodejs code.code"
|
||||
runuser runner$1 -c "cd /tmp/$2 ; cat args.args | xargs -d '\n' timeout -s KILL 3 node code.code"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
lxc-attach -n piston
|
||||
lxc-attach --clear-env -n piston
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue