336519b21d
Refactor CodeOcean::Config class
...
The new architecture memorizes settings (which we mostly did after reading the config so far) and also exposes the resulting file path as well as further settings.
This change is a prerequisite to define a dependency with Sprockets.
2024-05-21 21:56:31 +02:00
bcb6409126
Bump rubocop from 1.57.2 to 1.58.0 and fix offenses
...
Bumps [rubocop](https://github.com/rubocop/rubocop ) from 1.57.2 to 1.58.0.
- [Release notes](https://github.com/rubocop/rubocop/releases )
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop/rubocop/compare/v1.57.2...v1.58.0 )
---
updated-dependencies:
- dependency-name: rubocop
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-12-07 11:02:00 +01:00
99bd46af1a
Align project files with CodeHarbor
...
Since both projects are developed together and by the same team, we also want to have the same code structure and utility methods available in both projects. Therefore, this commit changes many files, but without a functional change.
2023-10-11 00:18:33 +02:00
f150c793d5
Add regression spec for message validation
2023-09-19 12:52:53 +02:00
ccbf41005b
Always clear runner strategy after each test case
...
Otherwise, we get different test results depending on the test order.
2023-06-23 22:20:04 +02:00
574e99eddd
Fix rubocop offenses - Requires Ruby 3.1+
2022-11-25 11:10:06 +01:00
58548555a5
Shell: Add file system browser to retrieve arbitrary files
2022-10-29 18:49:18 +02:00
fb9672c7a4
FileTree: Allow output as hash, convert to JSON separately
2022-10-29 18:49:18 +02:00
ad8743a7d0
FileTree: Show more distinct icons where possible
2022-10-29 18:49:18 +02:00
c75f52f2c8
Fix Rubocop offenses
2022-10-24 12:28:50 +02:00
a5da7d1f84
Remove outdated HTTP status codes
...
See https://github.com/openHPI/codeocean/pull/1349#pullrequestreview-1091652523
2022-10-05 13:11:43 +02:00
ba821bd18b
Change HTTP status codes for Poseidon in accordance with recent changes.
...
See https://github.com/openHPI/poseidon/pull/159
2022-10-05 13:11:43 +02:00
eb188dcd71
Add privilegedExecution flag to database and Poseidon Strategy
2022-09-24 22:32:41 +02:00
006c794f54
Fix rubocop offenses
2022-09-14 00:31:47 +02:00
d762f976a8
Add new CodeOcean::File#read method
...
* With a new method, we can simplify our code to handle differences between file.content and file.native_file.read
2022-08-19 22:42:55 +02:00
cb0f30768f
Change HTTP links to HTTPS
2022-08-17 01:29:27 +02:00
b98c37ae64
Rename v4 FontAwesome icons to match v5/v6 name
...
While FontAwesome provides aliases for all icons, we switch to the new names for consistency. See all changes at:
https://fontawesome.com/docs/web/setup/upgrade/upgrade-from-v4#icons-renamed-since-version-4
2022-08-09 14:17:32 +02:00
a9039a8019
Prevent false positive for raised error
2022-08-09 11:42:06 +02:00
56eab88f88
Gracefully handle the deletion of non-existing runners
2022-07-15 00:49:15 +02:00
d3f283c4e7
Update usage of RubyTree to avoid deprecated methods
2022-06-27 12:14:55 +02:00
8e403ff65a
Poseidon: Use relative path to remove workspace directory
...
See #1088
2022-06-10 18:13:11 +02:00
b613267add
Remove legacy DockerClient
2022-06-08 13:18:37 +02:00
d9f40531fb
Fix Rubocop offenses
2022-04-20 18:26:53 +02:00
b2656bd6b5
Fix rubocop offenses
2022-03-01 15:35:08 +01:00
ea85519163
Update bundle (with newest rubocop version) and fix offenses
2022-01-04 09:42:37 +01:00
86c6ad7ea3
Poseidon: Use absolute path to remove workspace directory
2021-11-17 17:44:09 +01:00
3608856397
Merge pull request #1079 from openHPI/sync_execution_environments
...
Sync execution environments
2021-11-09 18:44:35 +01:00
1dce6c59ab
Add note about default ACL for Docker mount dir
2021-11-08 22:39:10 +01:00
b179dadce6
Mock CodeOcean::Config for Poseidon strategy
2021-11-04 20:09:20 +01:00
ecf470bddd
Refactor sync_environment methods
...
* Add delete_environment method
* Change return value to allow raising an exception
2021-11-04 20:06:40 +01:00
7f47af99cb
Fix order-dependent specs
2021-11-04 19:15:33 +01:00
dcafbb9d46
DCP: Change HTTP verbs
2021-11-01 17:13:12 +01:00
01ec9343cf
Remove usage of DockerClient
2021-11-01 17:13:10 +01:00
2551ea709b
Remove 'previous' DockerContainerPool implementation
2021-11-01 17:13:09 +01:00
9d833e37b3
Use Net::HTTP::Persistent for requests to Poseidon
2021-11-01 17:13:09 +01:00
c1cff29147
[Spec] Initialize environment for Docker testing
2021-11-01 17:13:08 +01:00
68c8f1dbdf
DCP: Set sticky bit for folder and secure delete
2021-11-01 17:13:04 +01:00
696cd6a236
Poseidon: Clean workspace between executions
2021-11-01 17:13:03 +01:00
06ef4430f5
Change exposed_ports to array
2021-11-01 17:13:02 +01:00
601e1fab5c
Remove all occurrences of server-sent events
2021-11-01 17:12:57 +01:00
3fa6ba6c72
Use instance_double for Poseidon Strategy specs
2021-11-01 17:12:57 +01:00
ee1751debf
Fix rubocop offenses
2021-11-01 17:12:55 +01:00
30603cb7ab
Generalize method and constant names for runner management
2021-11-01 17:12:53 +01:00
c8e1a0bbcb
Fix tests for Runner#attach_to_execution
...
These tests were blocking because of the newly introduced
EventLoop. The messages sent to the EventLoop are now mocked
and the EventLoop isn't blocking anymore in the tests.
2021-11-01 17:12:53 +01:00
2dff81a510
Attach duration information to the exception object
2021-11-01 17:12:52 +01:00
cc412b73bc
Introduce more error types
2021-11-01 17:12:51 +01:00
db2d1e3164
Add tests for DockerContainerPool strategy
2021-11-01 17:12:51 +01:00
704407b9fc
Add strategy for DockerContainerPool
...
In order to provide an alternative to Poseidon, a strategy for the
DockerContainerPool is added that is used by the runner model.
Co-authored-by: Sebastian Serth <Sebastian.Serth@hpi.de >
2021-11-01 17:12:51 +01:00
1d3f0d7ad8
Handle Faraday errors
2021-11-01 17:12:50 +01:00
b48b45de9f
Refactor error classes
...
All runner errors are now in a single file. The not found error
has been splitted into an error for runner not found and for
environment not found.
2021-11-01 17:12:50 +01:00