Repository navigation
v1.0.0
Features:
- Isolated environment for running user submitted code
- Compiling, executing and testing user submitted code
- Valgrind analysis
- API to communicate with our service
- Customizable options in the api on how the code should run. Examples: custom time limits, custom tests, whether to run the tests or not
- Blacklisting functions: functions that are not allowed to be used in the code
- Whitelisted functions: only functions that can be used in the code
- Resource limiting: amount of memory program can use, network access, time limits
- Timing how long each step such as : compilations, execution took
- Parsing the output to return a line by line analysis on the code
- Parsing the valgrind output to be more readable by the user
- Decoupling the API and computation allowing us to scale each part independently depending on the request load and load type
- Autoscaling of resources based on the workload
- Return a list of tests that failed
- Automatic recovery in case any components fail
- Clean up after each job is completed
- Logging