Compare commits

...

4 Commits

Author SHA1 Message Date
RVG|lory 0080beeb97
Merge 4581f3e966 into 1d55a41a2d 2025-02-12 08:29:24 -05:00
Omar Brikaa 1d55a41a2d
Explicitly provide env vars instead of inheriting them from parent (#703) 2025-02-08 20:46:46 +02:00
Omar Brikaa 6ef0cdf7b4
Provide HOME in sandbox (#702) 2025-02-08 15:10:50 +02:00
LoryPelli 4581f3e966 updated both node and typescript version 2024-07-04 17:18:35 +02:00
13 changed files with 57 additions and 14 deletions

View File

@ -156,7 +156,11 @@ class Job {
'-s',
'-c',
'/box/submission',
'-e',
'-E',
'HOME=/tmp',
...this.runtime.env_vars.flat_map(v => ['-E', v]),
'-E',
`PISTON_LANGUAGE=${this.runtime.language}`,
`--dir=${this.runtime.pkgdir}`,
`--dir=/etc:noexec`,
`--processes=${this.runtime.max_process_count}`,
@ -175,10 +179,6 @@ class Job {
...args,
],
{
env: {
...this.runtime.env_vars,
PISTON_LANGUAGE: this.runtime.language,
},
stdio: 'pipe',
}
);

View File

@ -178,15 +178,7 @@ class Runtime {
const env_file = path.join(this.pkgdir, '.env');
const env_content = fss.read_file_sync(env_file).toString();
this._env_vars = {};
env_content
.trim()
.split('\n')
.map(line => line.split('=', 2))
.forEach(([key, val]) => {
this._env_vars[key.trim()] = val.trim();
});
this._env_vars = env_content.trim().split('\n');
}
return this._env_vars;

4
packages/node/22.4.0/build.sh vendored Normal file
View File

@ -0,0 +1,4 @@
#!/bin/bash
curl "https://nodejs.org/dist/v22.4.0/node-v22.4.0-linux-x64.tar.xz" -o node.tar.xz
tar xf node.tar.xz --strip-components=1
rm node.tar.xz

1
packages/node/22.4.0/environment vendored Normal file
View File

@ -0,0 +1 @@
export PATH=$PWD/bin:$PATH

10
packages/node/22.4.0/metadata.json vendored Normal file
View File

@ -0,0 +1,10 @@
{
"language": "node",
"version": "22.4.0",
"provides": [
{
"language": "javascript",
"aliases": ["node-javascript", "node-js", "javascript", "js"]
}
]
}

3
packages/node/22.4.0/run vendored Normal file
View File

@ -0,0 +1,3 @@
#!/bin/bash
node "$@"

1
packages/node/22.4.0/test.js vendored Normal file
View File

@ -0,0 +1 @@
console.log('OK');

7
packages/typescript/5.5.3/build.sh vendored Normal file
View File

@ -0,0 +1,7 @@
#!/usr/bin/env bash
source ../../node/22.4.0/build.sh
source ./environment
bin/npm install -g typescript@5.5.3

7
packages/typescript/5.5.3/compile vendored Normal file
View File

@ -0,0 +1,7 @@
#!/usr/bin/env bash
# Put instructions to compile source code, remove this file if the language does not require this stage
rename 's/$/\.ts/' "$@" # Add .ts extension
tsc *.ts

4
packages/typescript/5.5.3/environment vendored Normal file
View File

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# Put 'export' statements here for environment variables
export PATH=$PWD/bin:$PATH

View File

@ -0,0 +1,5 @@
{
"language": "typescript",
"version": "5.5.3",
"aliases": ["ts", "node-ts", "tsc", "typescript5", "ts5"]
}

8
packages/typescript/5.5.3/run vendored Normal file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env bash
# Put instructions to run the runtime
CODE=$1.js
shift
node $CODE "$@"

1
packages/typescript/5.5.3/test.ts vendored Normal file
View File

@ -0,0 +1 @@
console.log('OK');