Commit Graph

3693 Commits

Author SHA1 Message Date
9d833e37b3 Use Net::HTTP::Persistent for requests to Poseidon 2021-11-01 17:13:09 +01:00
25b007dfda [Spec] Fix return value of image_tags for mocked DockerClient 2021-11-01 17:13:09 +01:00
e8c686ce75 [Spec] Clean seed_secs with truncation 2021-11-01 17:13:09 +01:00
c1cff29147 [Spec] Initialize environment for Docker testing 2021-11-01 17:13:08 +01:00
953643f05e [Spec] Use strings for image names 2021-11-01 17:13:08 +01:00
28c74bc9a5 Improve memoization of @strategy_class 2021-11-01 17:13:08 +01:00
288c7693f7 Remove dump_docker method for admins 2021-11-01 17:13:08 +01:00
af93603ba3 Use strategy release in admin dashboard 2021-11-01 17:13:08 +01:00
ada438b230 Add release and pool_size methods to DCP 2021-11-01 17:13:07 +01:00
6d1b388e3c Reorder methods in strategy classes 2021-11-01 17:13:07 +01:00
f3b4be3006 Fix deprecation warning for raise_on_missing_translations 2021-11-01 17:13:07 +01:00
e33af5760d Delegate initialization to Runner::Strategy 2021-11-01 17:13:07 +01:00
2b98905acb Remove usage of DockerClient from execution_environments_controller.rb 2021-11-01 17:13:07 +01:00
541afa92f3 Remove ws_client_protocol option
* The correct setting will be determined automatically
2021-11-01 17:13:06 +01:00
0db6f20933 Move MemoryLimit to Execution Environment 2021-11-01 17:13:06 +01:00
8a4bd84d04 Add note about using hostnames on IPv6 systems 2021-11-01 17:13:06 +01:00
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
1dfee31079 Fix order-dependent execution_environments_controller_spec.rb 2021-11-01 17:13:05 +01:00
9cc4394296 Allow editing an Execution Environment with active runner management 2021-11-01 17:13:05 +01:00
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
02a2673bf2 Add hint for CPU limit 2021-11-01 17:13:05 +01:00
7e2039ebc2 Fix bug that always showed the default value for CPU limit when editing the limit 2021-11-01 17:13:04 +01:00
e272fcd19c Add more comments and error logging to connection.rb 2021-11-01 17:13:04 +01:00
e95ad5e26c Add @!attribute comments to connection.rb 2021-11-01 17:13:04 +01:00
2ad4eb7625 DCP: Escape command for RegEx 2021-11-01 17:13:04 +01:00
68c8f1dbdf DCP: Set sticky bit for folder and secure delete 2021-11-01 17:13:04 +01:00
04c896c7de DCP: Listen for Python exit handler 2021-11-01 17:13:03 +01:00
c7ddbd676c Do not forward custom exit handlers to frontend 2021-11-01 17:13:03 +01:00
50b62b5703 Move flush_buffers method in Runner::Connection 2021-11-01 17:13:03 +01:00
696cd6a236 Poseidon: Clean workspace between executions 2021-11-01 17:13:03 +01:00
a6a477e361 Move error handling to else branch in execute_command 2021-11-01 17:13:03 +01:00
95f97bd66e Add documentation to code_ocean.yml 2021-11-01 17:13:02 +01:00
a1db30c288 Clarify EnvironmentNotFound error handling 2021-11-01 17:13:02 +01:00
c676785d55 Fix order-dependent runner_spec.rb 2021-11-01 17:13:02 +01:00
06ef4430f5 Change exposed_ports to array 2021-11-01 17:13:02 +01:00
064c55b711 Add new validator for all elements of an array 2021-11-01 17:13:02 +01:00
90eeb3bb9c Move CodeOcean::FileNameValidator 2021-11-01 17:13:01 +01:00
352e5f4329 Clarify strategy creation in runner.rb with comment 2021-11-01 17:13:01 +01:00
7285978ea3 Re-add test method for SubmissionsController 2021-11-01 17:13:01 +01:00
5f98456276 Extract run_test_file from submission.rb 2021-11-01 17:13:01 +01:00
56a1d78793 Use correct embed_option to disable_score 2021-11-01 17:13:01 +01:00
2377f8370c Clarify set_file and set_files in SubmissionsController 2021-11-01 17:13:00 +01:00
21e0571838 Remove unnecessary post parameter from sync_all view 2021-11-01 17:13:00 +01:00
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
1891cdd69c Add check whether buffer is empty 2021-11-01 17:13:00 +01:00
58e923abd8 Add custom websocket header to strategy class 2021-11-01 17:12:59 +01:00
08f36a0a7a Destroy runner at management in case of errors 2021-11-01 17:12:59 +01:00
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
788f6dba20 Specify TLS certificate for Faye::WebSocket::Client 2021-11-01 17:12:59 +01:00
f4c806fe43 Forward JSON from runner to client if possible 2021-11-01 17:12:59 +01:00