Commit Graph

32 Commits

Author SHA1 Message Date
3afcdeaba8 Execute commands in runner via WebSocket
This enables executing commands in runners and forwarding input and
output between the runner and the websocket to the client.

Co-authored-by: Maximilian Paß <maximilian.pass@student.hpi.uni-potsdam.de>
2021-05-31 12:32:51 +02:00
619cd40fb6 Refactor EntityStore interface to multiple interfaces of specific type 2021-05-27 09:56:07 +00:00
17c9839fac Refactor runners and websocket tests 2021-05-19 14:52:03 +02:00
fe2ec4df35 Incorporate review comments 2021-05-19 14:52:03 +02:00
83ea552cf7 Refactor interfaces to use a runner manager and an environment manager.
See https://gitlab.hpi.de/codeocean/codemoon/poseidon/-/issues/44.
2021-05-19 14:52:03 +02:00
5a5ab8f02b Implement merge request review comments 2021-05-12 09:01:25 +02:00
ed735f284f Add tests for websocket connection
Co-authored-by: Konrad Hanff <konrad.hanff@student.hpi.uni-potsdam.de>
2021-05-12 09:01:25 +02:00
465577fea6 Add basic websocket structure and request upgrader 2021-05-12 09:01:25 +02:00
94f02fad02 Add tests for LoadAvailableRunners method 2021-05-11 14:26:05 +02:00
035d1eb795 Remove error handling for fetching runner from /execute 2021-05-10 16:28:35 +02:00
ba51956ec3 Add destroy runner route 2021-05-10 16:28:35 +02:00
e45cd92557 Fix bad import rebase artifacts 2021-05-10 12:59:18 +00:00
0dc4d28c1b Add e2e tests in ci stage 2021-05-07 12:54:15 +02:00
77f84ccf56 Fix execute response 2021-05-06 10:30:27 +02:00
52b80583b5 Implement review suggestions
Improve logging, constants for routes, RWMutex for ExerciseRunners,
use url.URL for websocket url building
2021-05-06 09:38:00 +02:00
07cdf17eb4 Move execution request map to runners 2021-05-06 08:03:48 +02:00
612bc55bdd Add tests for runners execute route
Co-authored-by: Tobias Kantusch <tobias.kantusch@student.hpi.uni-potsdam.de>
2021-05-06 08:03:48 +02:00
6a00ea3165 Implement runners execute route
Co-authored-by: Tobias Kantusch <tobias.kantusch@student.hpi.uni-potsdam.de>
2021-05-06 08:03:48 +02:00
e230ea854c Properly reset global state in auth tests 2021-05-05 13:56:42 +02:00
971074613e Add tests for authenticated router 2021-05-04 15:22:36 +02:00
456ad4333d Make health route unauthenticated 2021-05-04 15:11:37 +02:00
5891a8c48b Use authentication middleware 2021-05-04 15:10:43 +02:00
99ee8c6dfb Add authentication middleware 2021-05-04 15:08:06 +02:00
c092199693 Add basic nomad integration and runner provider 2021-05-04 13:08:04 +02:00
5182873137 Add structured logging 2021-04-30 08:25:40 +02:00
e14e9c9229 Remove unnessary early header write 2021-04-28 08:49:20 +00:00
ad9aa6fd6d Split up the NewRouter function to ease the creation of versioned routers 2021-04-27 10:05:30 +02:00
40aff301d8 Add function to write json to http response writer 2021-04-27 09:47:08 +02:00
712d0e6420 Cleanup code
This changes variable names that were abbreviations, uses more constants
from the net/http package and improves the json decoding / encoding.
2021-04-27 08:57:31 +02:00
38434cef27 Add tests for health route 2021-04-26 14:20:01 +02:00
f8e864efdd Add health route 2021-04-26 12:46:38 +02:00
38ecc02a79 Add api package serving our api routes using gorilla/mux 2021-04-26 12:46:38 +02:00