Compare commits
11 Commits
c355abc4a7
...
0c0be54505
Author | SHA1 | Date |
---|---|---|
Thomas Hobson | 0c0be54505 | |
Thomas Hobson | 9d53703a66 | |
Thomas Hobson | 8dacccd060 | |
Thomas Hobson | e021dab847 | |
Jonxslays | 43a1242bbf | |
Omar Brikaa | e1a1be7e4c | |
Omar Brikaa | 07ec6b3f78 | |
Omar Brikaa | 5526071f00 | |
Omar Brikaa | 0e5d3b56a1 | |
Omar Brikaa | 0ea073f6d2 | |
Hydrazer | 91bd30f59e |
|
@ -35,6 +35,7 @@ expressWs(app);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
fss.chmodSync(path.join(config.data_directory, globals.data_directories.jobs), 0o711)
|
||||||
|
|
||||||
logger.info('Loading packages');
|
logger.info('Loading packages');
|
||||||
const pkgdir = path.join(
|
const pkgdir = path.join(
|
||||||
|
|
|
@ -344,6 +344,9 @@ class Job {
|
||||||
|
|
||||||
const proc_id_int = parse_int(proc_id);
|
const proc_id_int = parse_int(proc_id);
|
||||||
|
|
||||||
|
// Skip over any processes that aren't ours.
|
||||||
|
if(ruid != this.uid && euid != this.uid) return -1;
|
||||||
|
|
||||||
if (state == 'Z'){
|
if (state == 'Z'){
|
||||||
// Zombie process, just needs to be waited, regardless of the user id
|
// Zombie process, just needs to be waited, regardless of the user id
|
||||||
if(!to_wait.includes(proc_id_int))
|
if(!to_wait.includes(proc_id_int))
|
||||||
|
@ -353,8 +356,7 @@ class Job {
|
||||||
}
|
}
|
||||||
// We should kill in all other state (Sleep, Stopped & Running)
|
// We should kill in all other state (Sleep, Stopped & Running)
|
||||||
|
|
||||||
if (ruid == this.uid || euid == this.uid)
|
return proc_id_int;
|
||||||
return proc_id_int;
|
|
||||||
} catch {
|
} catch {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,11 +10,11 @@ services:
|
||||||
ports:
|
ports:
|
||||||
- 2000:2000
|
- 2000:2000
|
||||||
volumes:
|
volumes:
|
||||||
- ./data/piston:/piston
|
- ./data/piston/packages:/piston/packages
|
||||||
environment:
|
environment:
|
||||||
- PISTON_REPO_URL=http://repo:8000/index
|
- PISTON_REPO_URL=http://repo:8000/index
|
||||||
tmpfs:
|
tmpfs:
|
||||||
- /piston/jobs:exec
|
- /piston/jobs:exec,uid=1000,gid=1000,mode=711
|
||||||
|
|
||||||
repo: # Local testing of packages
|
repo: # Local testing of packages
|
||||||
build: repo
|
build: repo
|
||||||
|
|
|
@ -8,7 +8,7 @@ services:
|
||||||
ports:
|
ports:
|
||||||
- 2000:2000
|
- 2000:2000
|
||||||
volumes:
|
volumes:
|
||||||
- ./data/piston:/piston
|
- ./data/piston/packages:/piston/packages
|
||||||
tmpfs:
|
tmpfs:
|
||||||
- /piston/jobs:exec,uid=1000,gid=1000,mode=700
|
- /piston/jobs:exec,uid=1000,gid=1000,mode=711
|
||||||
- /tmp:exec
|
- /tmp:exec
|
||||||
|
|
|
@ -4,5 +4,5 @@ code_file=`pwd`/"$1"
|
||||||
shift
|
shift
|
||||||
|
|
||||||
cd $SMALLTALK_PATH
|
cd $SMALLTALK_PATH
|
||||||
$SMALLTALK_PATH/gst "$code_file" "$@"
|
$SMALLTALK_PATH/gst "$code_file" -a "$@"
|
||||||
|
|
||||||
|
|
9
piston
9
piston
|
@ -14,13 +14,6 @@ docker_compose(){
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
init_precommit() {
|
|
||||||
if [ $PISTON_ENV == "dev" ]; then
|
|
||||||
rm -f .git/hooks/pre-commit
|
|
||||||
ln -s "$PISTON_PATH/pre-commit" "$PISTON_PATH/.git/hooks/pre-commit"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
help)
|
help)
|
||||||
echo "=== Piston Management ==="
|
echo "=== Piston Management ==="
|
||||||
|
@ -66,14 +59,12 @@ case $1 in
|
||||||
|
|
||||||
restart) docker_compose restart ;;
|
restart) docker_compose restart ;;
|
||||||
start)
|
start)
|
||||||
init_precommit
|
|
||||||
docker_compose up -d
|
docker_compose up -d
|
||||||
;;
|
;;
|
||||||
stop) docker_compose down ;;
|
stop) docker_compose down ;;
|
||||||
bash) docker_compose exec api /bin/bash ;;
|
bash) docker_compose exec api /bin/bash ;;
|
||||||
|
|
||||||
rebuild)
|
rebuild)
|
||||||
init_precommit
|
|
||||||
docker_compose build && docker_compose up -d
|
docker_compose build && docker_compose up -d
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
|
|
@ -71,6 +71,7 @@ The following are approved and endorsed extensions/utilities to the core Piston
|
||||||
- [Pyston](https://github.com/ffaanngg/pyston), a Python wrapper for accessing the Piston API.
|
- [Pyston](https://github.com/ffaanngg/pyston), a Python wrapper for accessing the Piston API.
|
||||||
- [Go-Piston](https://github.com/milindmadhukar/go-piston), a Golang wrapper for accessing the Piston API.
|
- [Go-Piston](https://github.com/milindmadhukar/go-piston), a Golang wrapper for accessing the Piston API.
|
||||||
- [piston_rs](https://github.com/Jonxslays/piston_rs), a Rust wrapper for accessing the Piston API.
|
- [piston_rs](https://github.com/Jonxslays/piston_rs), a Rust wrapper for accessing the Piston API.
|
||||||
|
- [piston_rspy](https://github.com/Jonxslays/piston_rspy), Python bindings for accessing the Piston API via `piston_rs`.
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue