555 Commits

Author SHA1 Message Date
0dd931fba1 Add runner management health check for /ping
Even though we can check the health of the runner management, we would like to ensure an external health check validates the availability of all required services.
2023-03-13 22:54:14 +01:00
e9cf79085a Refactor listing files to be independent of exiting runners
Previously, we were always fetching files, even if not required (e.g., for score runs). Now, we reduce the number of file listings and use a dedicated callback.
2023-02-16 10:50:01 +01:00
a558a6df3b Shorten message name for sentry hub cloning 2023-02-16 10:47:58 +01:00
91c2e14fe8 Fix error handling during Runner::Connection close
Closes CODEOCEAN-HQ
2023-02-16 10:47:28 +01:00
4a8653040c Use deep merge for Runner::Connection headers 2023-02-12 14:08:54 +01:00
b1372e880c Enable Sentry instrumentation for WebSocket connection 2023-02-12 13:51:10 +01:00
5d02251cbb Replace BooleanPresenceValidator with InclusionValidator
The `BooleanPresenceValidator` is causing issues with Ruby 3.2+ YJIT irregularly.

Fixes CODEOCEAN-GQ, fixes CODEOCEAN-GR
2023-01-08 14:10:14 +01:00
922ba5df4e Fix rubocop offenses 2023-01-02 10:06:00 +01:00
b80d372c53 Prevent errors with unavailable linter translations
Not all testing frameworks provide a translation for Linter (or linter support at all). For these, we don't want to call the non-existing method but rather return the same messages as before.
2022-12-23 13:05:39 +01:00
fb9ab4cd61 DCP: Allow unused keyword arguments for Rubocop 2022-12-19 17:09:59 +01:00
82bb0dd5d1 Return default for retrieve_files
Fixes CODEOCEAN-G7
2022-12-19 16:10:38 +01:00
66921d92bb Fix assets:precompile to be idempotent again
Each execution regenerates the manifest, so that we also need to rewrite the hashes.
2022-12-06 20:21:58 +01:00
7debe371b3 Actually write changed manifest to disk 2022-12-06 19:43:15 +01:00
cfb5fac5b2 Prevent adding duplicate lines for source maps 2022-12-06 19:43:05 +01:00
de0c1d368c Add source map for sprockets 2022-12-06 15:26:50 +01:00
4ecaee9d6c Prevent reloading of SRI helpers in development
Otherwise, each code reload would re-add the SRI helpers and thus break the inclusion of asset tags.
2022-12-05 18:20:47 +01:00
574e99eddd Fix rubocop offenses - Requires Ruby 3.1+ 2022-11-25 11:10:06 +01:00
61c4d5a894 Provide default for retrieve_files method
Fixes CODEOCEAN-F4
2022-11-17 20:47:33 +01:00
d50e6d30e9 List Files: Catch more Runner::Errors 2022-11-14 13:51:04 +01:00
1592d42d1a Junit5: Recognize opentest4j AssertionFailedError 2022-11-11 23:34:17 +01:00
2753e4ef5b Always catch StandardError in Threads and release connection 2022-11-11 22:50:27 +01:00
9ea94ed4fc Explicitly copy folders before adding files
This allows to protect copied files while additionally allowing learners to add new files in copied subdirectories
2022-10-29 18:50:27 +02:00
9e7b3b7b58 Update keyword arguments for #retrieve_files 2022-10-29 18:49:18 +02:00
58548555a5 Shell: Add file system browser to retrieve arbitrary files 2022-10-29 18:49:18 +02:00
60078701f5 Editor: Allow file retrieval after code run 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
cb94bc3de6 Strategy: Allow privileged_execution: keyword even if not used 2022-10-05 19:19:12 +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
f53c6cb3ee Shell: Add toggle to execute command as root 2022-10-04 16:06:58 +02:00
eb188dcd71 Add privilegedExecution flag to database and Poseidon Strategy 2022-09-24 22:32:41 +02:00
bbb791471b Remove AWS study 2022-09-21 18:57:12 +02:00
9e08f3a6a8 Enable Subresource Integrity 2022-09-06 11:21:37 +02:00
6927b57170 Update Study Group Dashboard and Statistics 2022-08-20 00:05:02 +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
145c4aa8d5 Refactor various ruby files
* Insights based on brakeman report
2022-08-18 15:25:04 +02:00
6dd64b2a74 Remove outdated URL polyfill 2022-08-13 00:37:21 +02:00
be9cbedadf Fix invalid method call to I18n.t() with Ruby 3.1 2022-08-12 17:11:30 +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
d93e71dc28 Rename v5 FontAwesome icons to match 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/whats-changed#icons-renamed-in-version-6
2022-08-09 14:17:32 +02:00
727f85841d Bump i18n-js from 3.9.2 to 4.0.0
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.9.2 to 4.0.0.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.9.2...v4.0.0)

---
updated-dependencies:
- dependency-name: i18n-js
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-09 10:11:36 +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
57795b1cfc Fix JUnit 4 for ArrayComparisonFailure 2022-05-17 10:02:56 -04:00
7e5e4110c4 Fix JUnit 5 for ArrayComparisonFailure 2022-05-14 19:02:12 -04:00
5ecba6ef70 Persist TestrunMessages and store timestamp
So far, the Testrun messages are in addition to the Tesstrun.output column
2022-04-29 01:00:51 +02:00