doc: modular sandbox configs

This commit is contained in:
Anton
2023-12-05 01:03:07 +05:00
parent 50dc6a71d1
commit 99cef70dab

View File

@@ -47,7 +47,7 @@ docker build --file images/python/Dockerfile --tag codapi/python:latest images/p
And register the image as a Codapi _box_ in `configs/boxes.json`:
```json
```js
{
// ...
"python": {
@@ -56,12 +56,10 @@ And register the image as a Codapi _box_ in `configs/boxes.json`:
}
```
Finally, let's configure what happens when the client executes the `run` command in the `python` sandbox. To do this, we edit `configs/commands.json`:
Finally, let's configure what happens when the client executes the `run` command in the `python` sandbox. To do this, we create `configs/commands/python.json`:
```json
```js
{
// ...
"python": {
"run": {
"engine": "docker",
"entry": "main.py",
@@ -73,19 +71,16 @@ Finally, let's configure what happens when the client executes the `run` command
]
}
}
}
```
This is essentially what it says:
> When the client executes the `run` command in the `python` sandbox, save their code to the `main.py` file, then run it in the `python` box (Docker container) using the `python main.py` shell command.
What if we want to add another command (say, `test`) to the same sandbox? Let's edit `configs/commands.json` again:
What if we want to add another command (say, `test`) to the same sandbox? Let's edit `configs/commands/python.json` again:
```json
```js
{
// ...
"python": {
"run": {
// ...
},
@@ -101,7 +96,6 @@ What if we want to add another command (say, `test`) to the same sandbox? Let's
]
}
}
}
```
Besides configuring a different shell command, here we increased the maximum output size to 8Kb, as tests tend to be quite chatty (you can see the default value in `configs/config.json`).