Skip to content

Latest commit

 

History

History
129 lines (104 loc) · 5.28 KB

README.md

File metadata and controls

129 lines (104 loc) · 5.28 KB

codewars/runner

Issue tracker for CodeRunner used on Codewars and Qualified.

Reporting Issues

Please report any language related issues here.
For anything else about Codewars, please use codewars/codewars.com.

Feature Requests

Please open new issues using appropriate issue templates.

Code

CodeRunner itself is not open source, but it's roughly equivalent to the following:

$ WORKDIR=/workspace/
# Create a container
$ C=$(docker container create --rm -w $WORKDIR language-image cmd args)
# Copy files
$ files | preprocess | docker container cp - $C:$WORKDIR
# Run
$ docker container start --attach $C | postprocess
  • WORKDIR is not always /workspace/ and can be a subdirectory of it (planned to be standardized in the future)
  • preprocess is responsible for the file layout and any code modifications necessary for backwards compatibility (e.g., concatenation)
  • postprocess transforms the output when necessary (e.g., Codewars test output from JSON)

Images can be used with local files by changing the step to copy the files:

$ docker container cp ./files/. $C:$WORKDIR
#                            ^^
#                            copy contents and not itself

Container images are available on DockerHub under qualified.

Contributing

Contributions are welcomed!

For now, please look at the following places:

Feel free to open issues to ask us if you'd like to contribute in other ways.

Supported Languages

Stable

Beta

Requested

See issues with language request label.