Compare commits
3 Commits
01bc13d115
...
902ad71578
Author | SHA1 | Date |
---|---|---|
Brian Seymour | 902ad71578 | |
Brian Seymour | 7aa52bb0c5 | |
Brian Seymour | b31deaddbc |
|
@ -64,7 +64,7 @@ jobs:
|
|||
path: data/config.yaml
|
||||
contents: |
|
||||
log_level: DEBUG
|
||||
bind_address: 0.0.0.0:6969
|
||||
bind_address: 0.0.0.0:2000
|
||||
data_directory: /piston
|
||||
runner_uid_min: 1100
|
||||
runner_uid_max: 1500
|
||||
|
@ -91,7 +91,7 @@ jobs:
|
|||
docker run -v $(pwd)'/repo:/piston/repo' -v $(pwd)'/packages:/piston/packages' -d --name piston_fs_repo docker.pkg.github.com/engineer-man/piston/repo-builder --no-build
|
||||
docker run --network container:piston_fs_repo -v $(pwd)'/data:/piston' -d --name api docker.pkg.github.com/engineer-man/piston/api
|
||||
echo Waiting for API to start..
|
||||
docker run --network container:api appropriate/curl -s --retry 10 --retry-connrefused http://localhost:6969/runtimes
|
||||
docker run --network container:api appropriate/curl -s --retry 10 --retry-connrefused http://localhost:2000/runtimes
|
||||
|
||||
echo Waiting for Index to start..
|
||||
docker run --network container:piston_fs_repo appropriate/curl -s --retry 10 --retry-connrefused http://localhost:8000/index
|
||||
|
@ -100,7 +100,7 @@ jobs:
|
|||
sed -i 's/piston_fs_repo/localhost/g' repo/index
|
||||
|
||||
echo Listing Packages
|
||||
PACKAGES_JSON=$(docker run --network container:api appropriate/curl -s http://localhost:6969/packages)
|
||||
PACKAGES_JSON=$(docker run --network container:api appropriate/curl -s http://localhost:2000/packages)
|
||||
echo $PACKAGES_JSON
|
||||
|
||||
echo Getting CLI ready
|
||||
|
@ -114,7 +114,7 @@ jobs:
|
|||
PKG_VERSION=$(awk -F- '{ print $2 }' <<< $package)
|
||||
|
||||
echo "Installing..."
|
||||
docker run --network container:api appropriate/curl -sXPOST http://localhost:6969/packages/$PKG_PATH
|
||||
docker run --network container:api appropriate/curl -sXPOST http://localhost:2000/packages/$PKG_PATH
|
||||
|
||||
TEST_SCRIPTS=packages/$PKG_PATH/test.*
|
||||
echo "Tests: $TEST_SCRIPTS"
|
||||
|
|
|
@ -1,20 +1,26 @@
|
|||
FROM node:15.8.0-buster-slim
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN dpkg-reconfigure -p critical dash
|
||||
RUN for i in $(seq 1001 1500); do \
|
||||
groupadd -g $i runner$i && \
|
||||
useradd -M runner$i -g $i -u $i ; \
|
||||
done
|
||||
RUN apt-get update && \
|
||||
apt-get install -y libxml2 gnupg tar coreutils util-linux libc6-dev binutils build-essential locales libpcre3-dev libevent-dev libgmp3-dev libncurses6 libncurses5 libedit-dev && \
|
||||
apt-get install -y libxml2 gnupg tar coreutils util-linux libc6-dev \
|
||||
binutils build-essential locales libpcre3-dev libevent-dev libgmp3-dev \
|
||||
libncurses6 libncurses5 libedit-dev && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen
|
||||
|
||||
ENV NODE_ENV=production
|
||||
|
||||
WORKDIR /piston_api
|
||||
COPY ["package.json", "yarn.lock", "./"]
|
||||
RUN yarn
|
||||
COPY ./src ./src
|
||||
|
||||
CMD [ "node", "src", "-m", "-c", "/piston/config.yaml"]
|
||||
EXPOSE 6969/tcp
|
||||
EXPOSE 2000/tcp
|
||||
|
|
|
@ -45,7 +45,7 @@ const options = [
|
|||
{
|
||||
key: 'bind_address',
|
||||
desc: 'Address to bind REST API on\nThank @Bones for the number',
|
||||
default: '0.0.0.0:6969',
|
||||
default: '0.0.0.0:2000',
|
||||
validators: []
|
||||
},
|
||||
{
|
||||
|
|
|
@ -92,7 +92,6 @@ const app = express();
|
|||
return {
|
||||
language: rt.language,
|
||||
version: rt.version.raw,
|
||||
author: rt.author,
|
||||
aliases: rt.aliases
|
||||
};
|
||||
});
|
||||
|
|
|
@ -14,12 +14,11 @@ class Runtime {
|
|||
fss.read_file_sync(path.join(package_dir, 'pkg-info.json'))
|
||||
);
|
||||
|
||||
const { language, version, author, build_platform, aliases } = info;
|
||||
const { language, version, build_platform, aliases } = info;
|
||||
|
||||
this.pkgdir = package_dir;
|
||||
this.language = language;
|
||||
this.version = semver.parse(version);
|
||||
this.author = author;
|
||||
this.aliases = aliases;
|
||||
|
||||
if (build_platform !== globals.platform) {
|
||||
|
|
|
@ -13,7 +13,7 @@ const axios_instance = function(argv){
|
|||
require('yargs')(process.argv.slice(2))
|
||||
.option('piston-url', {
|
||||
alias: ['u'],
|
||||
default: 'http://127.0.0.1:6969',
|
||||
default: 'http://127.0.0.1:2000',
|
||||
desc: 'Piston API URL',
|
||||
string: true
|
||||
})
|
||||
|
|
|
@ -1,13 +1,12 @@
|
|||
{
|
||||
"name": "piston-cli",
|
||||
"version": "1.0.0",
|
||||
"description": "Piston Execution Engine CLI tools",
|
||||
"main": "index.js",
|
||||
"author": "Thomas Hobson <thomas@hexf.me>",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"axios": "^0.21.1",
|
||||
"chalk": "^4.1.0",
|
||||
"yargs": "^16.2.0"
|
||||
}
|
||||
"name": "piston-cli",
|
||||
"version": "1.0.0",
|
||||
"description": "Piston Execution Engine CLI tools",
|
||||
"main": "index.js",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"axios": "^0.21.1",
|
||||
"chalk": "^4.1.0",
|
||||
"yargs": "^16.2.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
version: '3.8'
|
||||
|
||||
services:
|
||||
piston_api:
|
||||
build: api
|
||||
privileged: true
|
||||
restart: always
|
||||
ports:
|
||||
- 6969:6969
|
||||
volumes:
|
||||
- ./data/piston:/piston
|
||||
tmpfs:
|
||||
- /piston/jobs:exec
|
||||
piston_api:
|
||||
build: api
|
||||
privileged: true
|
||||
restart: always
|
||||
ports:
|
||||
- 2000:2000
|
||||
volumes:
|
||||
- ./data/piston:/piston
|
||||
tmpfs:
|
||||
- /piston/jobs:exec
|
||||
|
||||
piston_fs_repo: # Local testing of packages
|
||||
build: repo
|
||||
command: ['dart-2.12.1'] # Only build dart
|
||||
volumes:
|
||||
- .:/piston
|
||||
piston_fs_repo: # Local testing of packages
|
||||
build: repo
|
||||
command: ['dart-2.12.1'] # Only build dart
|
||||
volumes:
|
||||
- .:/piston
|
||||
|
|
|
@ -16,7 +16,7 @@ See [deno/1.7.5/](deno/1.7.5/) or any other directory for examples.
|
|||
|
||||
3. Create a file named `build.sh`, adding a shebang for bash `#!/bin/bash` on the first line.
|
||||
In this file put any steps to compile the specified langauge.
|
||||
This script should download sources, compile sources and output binaries. They should be dumped into the current working directory, removing any files which aren't required in the process.
|
||||
This script should download sources, compile sources and output binaries. They should be dumped into the current working directory, removing any files which aren't required in the process.
|
||||
|
||||
4. Create a file named `run`, containing bash script to run the interpreter.
|
||||
The first argument given to this script (`$1`) is the name of the main file, with the remaining ones as program arguments.
|
||||
|
@ -27,7 +27,7 @@ The first argument is always the main file, followed the names of the other file
|
|||
|
||||
6. Create a file named `environment`, containing `export` statements which edit the environment variables accordingly. The `$PWD` variable should be used, and is set inside the package directory when running on the target system.
|
||||
|
||||
7. Create a test script starting with test, with the file extension of the language. This script should simply output the phrase `OK`. For example, for mono we would create `test.cs` with the content:
|
||||
7. Create a test script starting with test, with the file extension of the language. This script should simply output the phrase `OK`. For example, for mono we would create `test.cs` with the content:
|
||||
```cs
|
||||
using System;
|
||||
|
||||
|
@ -40,13 +40,12 @@ public class Test
|
|||
}
|
||||
```
|
||||
|
||||
8. Create a `metadata.json` file which contains metadata about the language and interpreter. This simply contains the language name, as in the folder name, the version as in the folder name, the author's name and email address, aliases that can be used to call this package, and finally a dependencies map.
|
||||
8. Create a `metadata.json` file which contains metadata about the language and interpreter. This simply contains the language name, as in the folder name, the version as in the folder name, aliases that can be used to call this package, and finally a dependencies map.
|
||||
The dependencies map contains the keys as language names, and the values as semver selectors for packages.
|
||||
```json
|
||||
{
|
||||
"language": "deno",
|
||||
"version": "1.7.5",
|
||||
"author": "Thomas Hobson <thomas@hexf.me>",
|
||||
"dependencies": {},
|
||||
"aliases": ["deno-ts", "deno-js"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "bash",
|
||||
"version": "5.1.0",
|
||||
"aliases": ["sh"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "bash",
|
||||
"version": "5.1.0",
|
||||
"aliases": ["sh"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "brainfuck",
|
||||
"version": "2.7.3",
|
||||
"aliases": ["bf"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "brainfuck",
|
||||
"version": "2.7.3",
|
||||
"aliases": ["bf"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "clojure",
|
||||
"version": "1.10.3",
|
||||
"aliases": ["clojure","clj"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "clojure",
|
||||
"version": "1.10.3",
|
||||
"aliases": ["clojure", "clj"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "coffeescript",
|
||||
"version": "2.5.1",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["coffeescript", "coffee"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "cow",
|
||||
"version": "1.0.0",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["cow"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "crystal",
|
||||
"version": "0.36.1",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["crystal", "cr"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "dart",
|
||||
"version": "2.12.1",
|
||||
"aliases": [],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "dart",
|
||||
"version": "2.12.1",
|
||||
"aliases": []
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "dash",
|
||||
"version": "0.5.11",
|
||||
"aliases": ["dash"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "dash",
|
||||
"version": "0.5.11",
|
||||
"aliases": ["dash"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "deno",
|
||||
"version": "1.7.5",
|
||||
"author": "Thomas Hobson <thomas@hexf.me>",
|
||||
"aliases": ["deno-ts", "deno-js"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "dotnet",
|
||||
"version": "5.0.201",
|
||||
"aliases": ["cs", "csharp"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "dotnet",
|
||||
"version": "5.0.201",
|
||||
"aliases": ["cs", "csharp"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "elixir",
|
||||
"version": "1.11.3",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["elixir", "exs"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "emacs",
|
||||
"version": "27.1.0",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["emacs", "el", "elisp"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "erlang",
|
||||
"version": "23.0.0",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["erlang", "erl", "escript"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "gawk",
|
||||
"version": "5.1.0",
|
||||
"aliases": ["awk"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "gawk",
|
||||
"version": "5.1.0",
|
||||
"aliases": ["awk"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "gcc",
|
||||
"version": "10.2.0",
|
||||
"aliases": ["c","g++","c++","cpp","gdc","d"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "gcc",
|
||||
"version": "10.2.0",
|
||||
"aliases": ["c", "g++", "c++", "cpp", "gdc", "d"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "go",
|
||||
"version": "1.16.2",
|
||||
"author": "Victor Frazao <luiz_victor_frazao@hotmail.com>",
|
||||
"aliases": ["go", "golang"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "haskell",
|
||||
"version": "9.0.1",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["haskell", "hs"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,7 +9,6 @@ fi
|
|||
|
||||
NAME=$1
|
||||
VERSION=$2
|
||||
AUTHOR="$(git config user.name) <$(git config user.email)>"
|
||||
SOURCE=$3
|
||||
|
||||
DIR=$NAME/$VERSION
|
||||
|
@ -26,7 +25,7 @@ build_instructions(){
|
|||
echo "curl \"$SOURCE\" -o $NAME.tar.gz"
|
||||
echo
|
||||
echo "tar xzf $NAME.tar.gz --strip-components=1"
|
||||
echo
|
||||
echo
|
||||
|
||||
echo "# === autoconf based ==="
|
||||
echo './configure --prefix "$PREFIX"'
|
||||
|
@ -58,7 +57,7 @@ echo "$NAME-$VERSION \"\$@\"" >> run
|
|||
|
||||
echo "# Put instructions to compile source code, remove this file if the language does not require this stage" >> compile
|
||||
|
||||
jq '.language = "'$NAME'" | .version = "'$VERSION'" | .aliases = [] | .author = "'"$AUTHOR"'"' <<< "{}" > metadata.json
|
||||
jq '.language = "'$NAME'" | .version = "'$VERSION'" | .aliases = []' <<< "{}" > metadata.json
|
||||
|
||||
cd - > /dev/null
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "java",
|
||||
"version": "15.0.2",
|
||||
"aliases": [],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "java",
|
||||
"version": "15.0.2",
|
||||
"aliases": []
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "jelly",
|
||||
"version": "0.1.31",
|
||||
"author": "Thomas Hobson <thomas@hexf.me>",
|
||||
"aliases": []
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "julia",
|
||||
"version": "1.5.4",
|
||||
"aliases": ["jl"],
|
||||
"author": "Victor Frazao <luiz_victor_frazao@hotmail.com>"
|
||||
"language": "julia",
|
||||
"version": "1.5.4",
|
||||
"aliases": ["jl"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "kotlin",
|
||||
"version": "1.4.31",
|
||||
"aliases": ["kt"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "kotlin",
|
||||
"version": "1.4.31",
|
||||
"aliases": ["kt"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "lisp",
|
||||
"version": "2.1.2",
|
||||
"aliases": ["lisp","cl","sbcl","commonlisp"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "lisp",
|
||||
"version": "2.1.2",
|
||||
"aliases": ["lisp", "cl", "sbcl", "commonlisp"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "lolcode",
|
||||
"version": "0.11.2",
|
||||
"author": "Shivansh-007 <Shivansh-007@users.noreply.github.com>",
|
||||
"aliases": ["lol", "lci"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "lua",
|
||||
"version": "5.4.2",
|
||||
"author": "Shivansh-007 <Shivansh-007@users.noreply.github.com>",
|
||||
"aliases": ["lua"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "mono",
|
||||
"version": "6.12.0",
|
||||
"author": "Thomas Hobson <thomas@hexf.me>",
|
||||
"aliases": ["csharp", "cs"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "nasm",
|
||||
"version": "2.15.5",
|
||||
"aliases": ["nasm64"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "nasm",
|
||||
"version": "2.15.5",
|
||||
"aliases": ["nasm64"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "nim",
|
||||
"version": "1.4.4",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["nim"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "node",
|
||||
"version": "15.10.0",
|
||||
"author": "Martin Kos <martinkos007@gmail.com>",
|
||||
"aliases": ["node-javascript", "node-js", "javascript", "js"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "osabie",
|
||||
"version": "1.0.1",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["osabie", "05AB1E", "usable"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "paradoc",
|
||||
"version": "0.6.0",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["paradoc"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "pascal",
|
||||
"version": "3.2.0",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["pascal", "freepascal", "pp", "pas"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "perl",
|
||||
"version": "5.26.1",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["perl", "pl"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "php",
|
||||
"version": "8.0.2",
|
||||
"author": "Martin Kos <martinkos007@gmail.com>",
|
||||
"aliases": ["php8","html"]
|
||||
}
|
||||
"aliases": ["php8", "html"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "prolog",
|
||||
"version": "8.2.4",
|
||||
"aliases": ["prolog","plg"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "prolog",
|
||||
"version": "8.2.4",
|
||||
"aliases": ["prolog", "plg"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "pure",
|
||||
"version": "0.68.0",
|
||||
"author": "Shivansh-007 <shivansh-007@outlook.com>",
|
||||
"aliases": []
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "python",
|
||||
"version": "2.7.18",
|
||||
"author": "Shivansh-007 <Shivansh-007@users.noreply.github.com>",
|
||||
"aliases": ["py", "python2"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "python",
|
||||
"version": "3.5.10",
|
||||
"author": "Shivansh-007 <Shivansh-007@users.noreply.github.com>",
|
||||
"aliases": ["py", "python3"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "python",
|
||||
"version": "3.9.1",
|
||||
"author": "Thomas Hobson <thomas@hexf.me>",
|
||||
"aliases": ["py", "python3"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "rockstar",
|
||||
"version": "1.0.0",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["rockstar", "rock"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "ruby",
|
||||
"version": "2.5.1",
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>",
|
||||
"aliases": ["ruby", "rb"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "rust",
|
||||
"version": "1.50.0",
|
||||
"aliases": ["rs"],
|
||||
"author": "Victor Frazao <luiz_victor_frazao@hotmail.com>"
|
||||
"language": "rust",
|
||||
"version": "1.50.0",
|
||||
"aliases": ["rs"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "scala",
|
||||
"version": "3.0.0",
|
||||
"aliases": ["scala","sc"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "scala",
|
||||
"version": "3.0.0",
|
||||
"aliases": ["scala", "sc"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "swift",
|
||||
"version": "5.3.3",
|
||||
"aliases": ["swift"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "swift",
|
||||
"version": "5.3.3",
|
||||
"aliases": ["swift"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "typescript",
|
||||
"version": "4.2.3",
|
||||
"aliases": ["ts","node-ts","tsc"],
|
||||
"author": "Thomas Hobson <git@hexf.me>"
|
||||
"language": "typescript",
|
||||
"version": "4.2.3",
|
||||
"aliases": ["ts", "node-ts", "tsc"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "vlang",
|
||||
"version": "0.1.13",
|
||||
"author": "Shivansh-007 <shivansh-007@outlook.com>",
|
||||
"aliases": ["v"]
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"language": "zig",
|
||||
"version": "0.7.1",
|
||||
"aliases": ["zig"],
|
||||
"author": "Dan Vargas <danvargas46@gmail.com>"
|
||||
"language": "zig",
|
||||
"version": "0.7.1",
|
||||
"aliases": ["zig"]
|
||||
}
|
||||
|
|
10
readme.md
10
readme.md
|
@ -121,7 +121,7 @@ cd cli && yarn && cd -
|
|||
echo "$GITHUB_TOKEN" | docker login https://docker.pkg.github.com -u "$GITHUB_USERNAME" --password-stdin
|
||||
# Change out the $GITHUB_TOKEN and $GITHUB_USERNAME with appropritate values
|
||||
|
||||
docker run -v $PWD:'/piston' --tmpfs /piston/jobs -dit -p 6969:6969 --privileged --name piston_api docker.pkg.github.com/engineer-man/piston/api:latest
|
||||
docker run -v $PWD:'/piston' --tmpfs /piston/jobs -dit -p 2000:2000 --privileged --name piston_api docker.pkg.github.com/engineer-man/piston/api:latest
|
||||
```
|
||||
|
||||
<br>
|
||||
|
@ -149,17 +149,17 @@ cli/index.js run python 3.9.1 test.py
|
|||
If you are operating on a remote machine, add the `-u` flag like so:
|
||||
|
||||
```sh
|
||||
cli/index.js -u http://piston.server:6969 ppman list
|
||||
cli/index.js -u http://piston.server:2000 ppman list
|
||||
```
|
||||
|
||||
### API
|
||||
|
||||
The container exposes an API on port 6969 by default.
|
||||
The container exposes an API on port 2000 by default.
|
||||
This is used by the CLI to carry out running jobs and package managment.
|
||||
|
||||
#### Runtimes Endpoint
|
||||
`GET /runtimes`
|
||||
This endpoint will return the supported languages along with the current version, author and aliases. To execute
|
||||
This endpoint will return the supported languages along with the current version and aliases. To execute
|
||||
code for a particular language using the `/jobs` endpoint, either the name or one of the aliases must
|
||||
be provided, along with the version.
|
||||
Multiple versions of the same language may be present at the same time, and may be selected when running a job.
|
||||
|
@ -171,7 +171,6 @@ Content-Type: application/json
|
|||
{
|
||||
"language": "bash",
|
||||
"version": "5.1.0",
|
||||
"author": "Thomas Hobson <git@hexf.me>",
|
||||
"aliases": [
|
||||
"sh"
|
||||
]
|
||||
|
@ -179,7 +178,6 @@ Content-Type: application/json
|
|||
{
|
||||
"language": "brainfuck",
|
||||
"version": "2.7.3",
|
||||
"author": "Thomas Hobson <git@hexf.me>",
|
||||
"aliases": [
|
||||
"bf"
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue