Commit Graph

3745 Commits

Author SHA1 Message Date
Sebastian Serth
b13a3b084d Use new available_images routes from DCP 2021-11-01 17:13:10 +01:00
Sebastian Serth
2551ea709b Remove 'previous' DockerContainerPool implementation 2021-11-01 17:13:09 +01:00
Sebastian Serth
9d833e37b3 Use Net::HTTP::Persistent for requests to Poseidon 2021-11-01 17:13:09 +01:00
Sebastian Serth
25b007dfda [Spec] Fix return value of image_tags for mocked DockerClient 2021-11-01 17:13:09 +01:00
Sebastian Serth
e8c686ce75 [Spec] Clean seed_secs with truncation 2021-11-01 17:13:09 +01:00
Sebastian Serth
c1cff29147 [Spec] Initialize environment for Docker testing 2021-11-01 17:13:08 +01:00
Sebastian Serth
953643f05e [Spec] Use strings for image names 2021-11-01 17:13:08 +01:00
Sebastian Serth
28c74bc9a5 Improve memoization of @strategy_class 2021-11-01 17:13:08 +01:00
Sebastian Serth
288c7693f7 Remove dump_docker method for admins 2021-11-01 17:13:08 +01:00
Sebastian Serth
af93603ba3 Use strategy release in admin dashboard 2021-11-01 17:13:08 +01:00
Sebastian Serth
ada438b230 Add release and pool_size methods to DCP 2021-11-01 17:13:07 +01:00
Sebastian Serth
6d1b388e3c Reorder methods in strategy classes 2021-11-01 17:13:07 +01:00
Sebastian Serth
f3b4be3006 Fix deprecation warning for raise_on_missing_translations 2021-11-01 17:13:07 +01:00
Sebastian Serth
e33af5760d Delegate initialization to Runner::Strategy 2021-11-01 17:13:07 +01:00
Sebastian Serth
2b98905acb Remove usage of DockerClient from execution_environments_controller.rb 2021-11-01 17:13:07 +01:00
Sebastian Serth
541afa92f3 Remove ws_client_protocol option
* The correct setting will be determined automatically
2021-11-01 17:13:06 +01:00
Sebastian Serth
0db6f20933 Move MemoryLimit to Execution Environment 2021-11-01 17:13:06 +01:00
Sebastian Serth
8a4bd84d04 Add note about using hostnames on IPv6 systems 2021-11-01 17:13:06 +01:00
Sebastian Serth
87c5302336 Switch logging to milliseconds and add more details
* By design, most logging happens in an `ensure` block. This ensures that no return value is modified unexpectedly.
2021-11-01 17:13:06 +01:00
Sebastian Serth
1dfee31079 Fix order-dependent execution_environments_controller_spec.rb 2021-11-01 17:13:05 +01:00
Sebastian Serth
9cc4394296 Allow editing an Execution Environment with active runner management 2021-11-01 17:13:05 +01:00
Sebastian Serth
d87e23b9a3 Add execute_command method to runner.rb
* This is now used by the score and test runs
* This also re-enables the interactive shell for execution environments
2021-11-01 17:13:05 +01:00
Sebastian Serth
02a2673bf2 Add hint for CPU limit 2021-11-01 17:13:05 +01:00
Sebastian Serth
7e2039ebc2 Fix bug that always showed the default value for CPU limit when editing the limit 2021-11-01 17:13:04 +01:00
Sebastian Serth
e272fcd19c Add more comments and error logging to connection.rb 2021-11-01 17:13:04 +01:00
Sebastian Serth
e95ad5e26c Add @!attribute comments to connection.rb 2021-11-01 17:13:04 +01:00
Sebastian Serth
2ad4eb7625 DCP: Escape command for RegEx 2021-11-01 17:13:04 +01:00
Sebastian Serth
68c8f1dbdf DCP: Set sticky bit for folder and secure delete 2021-11-01 17:13:04 +01:00
Sebastian Serth
04c896c7de DCP: Listen for Python exit handler 2021-11-01 17:13:03 +01:00
Sebastian Serth
c7ddbd676c Do not forward custom exit handlers to frontend 2021-11-01 17:13:03 +01:00
Sebastian Serth
50b62b5703 Move flush_buffers method in Runner::Connection 2021-11-01 17:13:03 +01:00
Sebastian Serth
696cd6a236 Poseidon: Clean workspace between executions 2021-11-01 17:13:03 +01:00
Sebastian Serth
a6a477e361 Move error handling to else branch in execute_command 2021-11-01 17:13:03 +01:00
Sebastian Serth
95f97bd66e Add documentation to code_ocean.yml 2021-11-01 17:13:02 +01:00
Sebastian Serth
a1db30c288 Clarify EnvironmentNotFound error handling 2021-11-01 17:13:02 +01:00
Sebastian Serth
c676785d55 Fix order-dependent runner_spec.rb 2021-11-01 17:13:02 +01:00
Sebastian Serth
06ef4430f5 Change exposed_ports to array 2021-11-01 17:13:02 +01:00
Sebastian Serth
064c55b711 Add new validator for all elements of an array 2021-11-01 17:13:02 +01:00
Sebastian Serth
90eeb3bb9c Move CodeOcean::FileNameValidator 2021-11-01 17:13:01 +01:00
Sebastian Serth
352e5f4329 Clarify strategy creation in runner.rb with comment 2021-11-01 17:13:01 +01:00
Sebastian Serth
7285978ea3 Re-add test method for SubmissionsController 2021-11-01 17:13:01 +01:00
Sebastian Serth
5f98456276 Extract run_test_file from submission.rb 2021-11-01 17:13:01 +01:00
Sebastian Serth
56a1d78793 Use correct embed_option to disable_score 2021-11-01 17:13:01 +01:00
Sebastian Serth
2377f8370c Clarify set_file and set_files in SubmissionsController 2021-11-01 17:13:00 +01:00
Sebastian Serth
21e0571838 Remove unnecessary post parameter from sync_all view 2021-11-01 17:13:00 +01:00
Sebastian Serth
345860c779 Adapt output buffering to Poseidon and DCP
* Refactor flushing of messages
* Introduce two separate buffers for stdout and stderr
2021-11-01 17:13:00 +01:00
Sebastian Serth
1891cdd69c Add check whether buffer is empty 2021-11-01 17:13:00 +01:00
Sebastian Serth
58e923abd8 Add custom websocket header to strategy class 2021-11-01 17:12:59 +01:00
Sebastian Serth
08f36a0a7a Destroy runner at management in case of errors 2021-11-01 17:12:59 +01:00
Sebastian Serth
7e7b7ebdfa Allow flushing the WebSocket connection
* This will prevent the current thread from crashing when a single newline character is received.
2021-11-01 17:12:59 +01:00