0c8fa9ccfa
Add context to log statements.
2023-04-11 20:45:30 +01:00
038d71ff51
Nomad: Handle Container re-allocation
2023-03-31 14:42:55 +02:00
e0db1bafe8
Fix multiple user Runner use
...
A before unknown Nomad reload adds already known runner again to the idle runner - even if they are already in use.
2023-03-31 14:42:55 +02:00
7dadc5dfe9
Refactor Nomad Command Generation.
...
- Abstracting from the exec form while generating.
- Removal of single quotes (usage of only double-quotes).
- Bash-nesting using escaping of special characters.
2023-03-14 23:42:19 +01:00
4550a4589e
Dangerous Context Enrichment
...
by passing the Sentry Context down our abstraction stack.
This included changes in the complex context management of managing a Command Execution.
2023-02-03 10:29:18 +00:00
a9581ac1d9
Performance for ListFileSystem
2023-02-03 10:29:18 +00:00
f2c205a8ed
Add additional performance spans
2023-02-03 10:29:18 +00:00
a78ee22e67
Reduce time racetrack of delete and listFileSystem route.
2023-01-02 11:23:02 +01:00
0c6c48c3cf
#190 Add unit tests for runner recovery.
2022-11-26 13:33:44 +00:00
8950ab3776
Add single quotes for inner command.
...
Change to bash as interpreter.
Forbid single quotes for user commands.
2022-11-04 15:15:43 +01:00
b3eee17846
Support protected directories
...
by setting the sticky bit to all explicitly requested directories.
2022-10-29 19:11:05 +02:00
5e5e13806e
Monitor file download.
2022-10-26 01:33:26 +02:00
160df3d9e6
Add retry-mechanism for sample, mark-as-used and return
...
of Nomad runners.
2022-10-24 22:12:09 +01:00
b9c923da8a
Remove unused and deprecated Storer interface.
2022-10-24 22:12:09 +01:00
7119f3e012
Fix not canceling monitoring events for removed environments
...
and runners.
2022-10-24 13:15:14 +02:00
3509109b6f
Fix Ls2JsonWriter
...
by allowing more spaces in the ls response.
by sending the error response of the list file system route only when no content has been written.
2022-10-05 12:11:47 +01:00
195f88177e
Add Content-Length and Content-Disposition Header
...
for GetFileContent route.
2022-10-05 12:11:47 +01:00
0c70ad3b24
Enable unprivileged retrieve of file listing and content.
2022-10-05 12:11:47 +01:00
3469d0ce77
Specify http not found exit code
...
by replacing it with StatusGone (410) for a missing runner and StatusFailedDependency (424) for missing or not accessible files.
2022-10-05 12:11:47 +01:00
fc77f11d4d
Enquote file path for shell execution.
...
Also, fix json of 500 response.
2022-10-05 12:11:47 +01:00
152b77afe5
Add listing of runners file system.
2022-10-05 12:11:47 +01:00
f2b25566dd
#136 Copy files back from Nomad runner.
2022-10-05 12:11:47 +01:00
1a5a49d7c8
Explicitly switch user for code execution.
...
Co-authored-by: Maximilian Pass <maximilian.pass@student.hpi.uni-potsdam.de >
2022-09-24 23:09:23 +02:00
549d147870
Fix missing environment id for monitoring data.
2022-08-31 08:49:07 +02:00
1eef26cc83
Add environment id to periodical monitoring events.
2022-08-20 09:17:43 +02:00
5590c50e14
#110 Add periodical monitoring events.
2022-08-19 20:48:46 +02:00
9677253b35
Change Influx field name for the startup duration
...
due to a currently not resolvable type mismatch.
2022-08-10 20:46:17 +02:00
89e15c5c2f
Fix startup time format
...
Before it was a string. To use it efficiently we want it to be a number - in this case in nanoseconds.
2022-08-05 21:16:58 +02:00
b287aa335d
Monitor environment id also for deletions.
2022-08-05 21:16:58 +02:00
c6e65c14bb
Monitor Nomad allocation startup duration.
2022-07-31 19:42:35 +02:00
18daa1152c
Save the environment id for runner monitoring.
2022-07-31 19:42:35 +02:00
49c7a2d405
Save the runner and environment id for executions monitoring.
2022-07-31 19:42:35 +02:00
498e8f5ff5
#110 Refactor influxdb monitoring
...
to use it as singleton.
This enables the possibility to monitor processes that are independent of an incoming request.
2022-07-01 15:29:31 +02:00
34040162c2
#89 Generalise the three Storage interfaces and structs into one generic storage manager.
2022-06-29 16:21:19 +02:00
eecacc08bf
#42 Allow deletion of ./*
2022-06-10 18:21:06 +02:00
59ca63268b
Add CODEOCEAN environment variable.
2022-06-10 18:10:28 +02:00
903ad415c6
Set and unset aws environment variables
...
in order to provide the CodeOcean context for some scripts and hide AWS credentials from the users.
2022-06-10 18:10:28 +02:00
795c83f7b2
Fix deleting non existent environments
...
that is an error caused by throwing a panic when an environment is not found and a nonexistent runner manager at the end of the chain is asked for it.
2022-06-07 15:54:48 +02:00
430b1748f5
Allow the CR character as part of a newline.
...
Since CodeOcean may send the `\r\n` newline.
2022-04-18 22:29:05 +02:00
eabe3a1b27
Add the Environment ID to the influxdb data.
...
Also move the interface of an execution environment into its own file, execution_environment.go.
2022-04-18 13:17:49 +02:00
b7a20e3114
Introduce method "Environment" to the Runners interface.
...
This way we can relate to which environment a runner belongs.
2022-04-18 13:17:49 +02:00
3570f18202
Apply suggestions from code review
...
Co-authored-by: Sebastian Serth <MrSerth@users.noreply.github.com >
2022-04-09 16:35:53 +02:00
136f596dc2
Add aws environments to the statistics
...
but only with the field usedRunners.
2022-04-09 16:35:53 +02:00
2cf890ab91
Implement review comments
2022-02-28 14:54:40 +01:00
df68461264
Sanitize user input in logs.
2022-02-28 14:54:40 +01:00
4ffbb712ed
Parametrize e2e tests to also check AWS environments.
...
- Fix destroy runner after timeout.
- Add file deletion
2022-02-28 14:54:40 +01:00
d603a8ebb0
Refactor static AWS functions
...
from a magic number in the code to a configurable list in configuration.yaml
2022-02-28 14:54:40 +01:00
f6d9a6ddbb
Add unit tests
2022-02-28 14:54:40 +01:00
6123d20525
Implement core functionality of AWS integration
2022-02-28 14:54:40 +01:00
dd41e0d5c4
Generate structures for an AWS environment and runner
2022-02-28 14:54:40 +01:00