Commit graph

142 commits

Author SHA1 Message Date
Ilion Beyst
09c543eee3 create all required directories on startup 2022-07-17 17:07:53 +02:00
Ilion Beyst
c16b068f8b cleanup: remove old configuration code 2022-07-17 15:10:17 +02:00
Ilion Beyst
dad19548d1 read GlobalConfig from configuration.toml 2022-07-16 21:57:12 +02:00
Ilion Beyst
0cf7b5299d integrate registry with GlobalConfig 2022-07-16 21:47:34 +02:00
Ilion Beyst
d13d131130 move storage paths to GlobalConfig 2022-07-16 21:22:03 +02:00
Ilion Beyst
ec5c91d37b change runnerconfig to globalconfig 2022-07-14 21:50:42 +02:00
Ilion Beyst
00459f9e3d create a configuration to hold docker registry url 2022-07-14 20:53:08 +02:00
Ilion Beyst
668409e76d refactor: unify match save and spawn 2022-07-13 19:36:07 +02:00
Ilion Beyst
e69bd14f1d refactor: delay BotSpec construction in RunMatch 2022-07-12 20:54:00 +02:00
Ilion Beyst
0b9a9f0eaa tying it together: execute docker bots 2022-07-11 20:43:10 +02:00
Ilion Beyst
ec1d50f655 refactor: pass on both Bot and BotVersion to MatchPlayer 2022-07-09 20:01:05 +02:00
Ilion Beyst
7eb02a2efc create a new bot verison on docker push 2022-07-08 20:40:20 +02:00
Ilion Beyst
0f14dee499 refactor: rename save_code_bundle to save_code_string 2022-07-07 19:13:55 +02:00
Ilion Beyst
6ec792e3bd NewBotVersion 2022-07-07 18:57:46 +02:00
Ilion Beyst
d7b7585dd7 rename code_bundle to bot_version 2022-07-06 22:41:27 +02:00
Ilion Beyst
b3df5c6f8c migrate code_bundles to bot_versions 2022-07-05 20:34:20 +02:00
Ilion Beyst
8a47b948eb migrate code_bundles to bot_versions 2022-07-05 20:33:39 +02:00
Ilion Beyst
ea05674b44 remove obsolete create match route 2022-07-04 22:33:35 +02:00
Ilion Beyst
268e080ec1 Merge branch 'bot-api' into next 2022-07-04 20:16:42 +02:00
Ilion Beyst
bbed877554 cleanup and comments 2022-07-04 20:11:29 +02:00
Ilion Beyst
7b88bb0502 use file metadata for returning data ranges and lengths 2022-07-01 20:45:26 +02:00
Ilion Beyst
419029738d verify blob digest on upload 2022-07-03 20:59:51 +02:00
Ilion Beyst
4d1c0a3289 make sure that all pushed data is actually written 2022-06-30 20:28:37 +02:00
Ilion Beyst
d7e4a1fd5c implement admin login 2022-06-27 21:20:05 +02:00
Ilion Beyst
f6fca3818a don't allow accessing non-existing repositories 2022-06-24 19:32:22 +02:00
Ilion Beyst
381ce040fd add auth to all registry routes 2022-06-21 22:45:59 +02:00
Ilion Beyst
059cd4fa0e implement basic auth checking 2022-06-20 22:14:15 +02:00
Ilion Beyst
951cb29311 upgrade to axum 0.5 2022-06-20 22:01:26 +02:00
Ilion Beyst
a2a8a41689 rename route handler methods 2022-06-20 20:27:51 +02:00
Ilion Beyst
478094abcf basic docker login PoC 2022-06-19 22:34:01 +02:00
Ilion Beyst
2cde7ec673 support docker pull 2022-06-18 12:42:03 +02:00
Ilion Beyst
b90b3d3635 store blobs in sha256 directory 2022-06-17 19:01:40 +02:00
Ilion Beyst
dde0bc820e accept docker push 2022-06-12 21:03:41 +02:00
Ilion Beyst
7a3b801f58 use RunMatch in bot_api service 2022-06-11 17:50:44 +02:00
Ilion Beyst
a376698073 update RunMatch helper to allow for remote bots 2022-06-10 21:49:32 +02:00
Ilion Beyst
5ee66c9c9b allow match_player code_bundle_id to be null 2022-06-10 21:09:33 +02:00
Ilion Beyst
d1977b95c8 consistently use player_key and player_id 2022-06-09 20:57:45 +02:00
Ilion Beyst
1b2472fbfc implement grpc match creation PoC 2022-06-08 22:37:38 +02:00
Ilion Beyst
ff061f2a7a timeout when player never connects 2022-06-07 19:12:49 +02:00
Ilion Beyst
69421d7b25 bot api: handle timeouts and disconnects 2022-06-06 20:23:01 +02:00
Ilion Beyst
2f915af919 send player_id through request metadata 2022-06-06 14:25:56 +02:00
Ilion Beyst
d0faec7d1f implement PlayerRouter 2022-06-06 13:08:43 +02:00
Ilion Beyst
90ecb13a17 baby steps towards a working bot api 2022-06-05 21:22:38 +02:00
Ilion Beyst
9087daa205 ranker: implement weight and bias 2022-06-04 17:03:50 +02:00
Ilion Beyst
f899fba8ad implement MLE ranker 2022-06-04 15:08:45 +02:00
Ilion Beyst
af5cd69f7b set up gprc server 2022-05-31 21:08:56 +02:00
Ilion Beyst
ef19e3a9e7 significantly lower max_update to obtain a stable ranking 2022-05-30 21:03:09 +02:00
Ilion Beyst
6e1167ee9e save match winner in database 2022-05-29 11:41:52 +02:00
Ilion Beyst
fadcda8503 fix order of arguments in ranker 2022-05-28 11:22:00 +02:00
Ilion Beyst
06ac7a370c implement simple elo rating 2022-05-27 21:57:44 +02:00
Ilion Beyst
30de8107b4 implement leaderboard endpoint 2022-05-17 21:13:29 +02:00
Ilion Beyst
a7d56ba0f5 add ratings table 2022-05-09 19:41:33 +02:00
Ilion Beyst
7b142554d8 move match running logic to separate module 2022-04-28 21:31:49 +02:00
Ilion Beyst
e7da88c6a5 restructure server entrypoint for ranker 2022-04-27 20:43:12 +02:00
Ilion Beyst
0027fef74e validate bot names 2022-04-15 19:03:58 +02:00
Ilion Beyst
cc7014b04b add validation to user registration 2022-04-09 10:04:12 +02:00
Ilion Beyst
1692eeb592 require login for uploading bots 2022-03-24 20:07:03 +01:00
Ilion Beyst
fd52e266c6 apply clippy suggestions 2022-03-13 15:20:03 +01:00
Ilion Beyst
f7655005ff typo: maches -> matches 2022-03-12 09:04:12 +01:00
Ilion Beyst
63695c299c add information about match players to match API object 2022-03-11 00:41:18 +01:00
Ilion Beyst
523de3ba06 save match players in database 2022-03-10 23:35:42 +01:00
Ilion Beyst
148178a344 return descriptive errors when saving bots 2022-03-06 16:53:02 +01:00
Ilion Beyst
b70328227e allow selecting opponent in demo 2022-03-03 21:12:18 +01:00
Ilion Beyst
0f7c3c3102 don't allow overwriting bots for now 2022-03-01 20:23:31 +01:00
Ilion Beyst
5265e19507 bot upload PoC 2022-02-28 22:44:06 +01:00
Ilion Beyst
da3d7ed02d create code bundle indices 2022-02-27 22:58:11 +01:00
Ilion Beyst
edb3ead976 retrieve opponent from bots database 2022-02-27 22:57:06 +01:00
Ilion Beyst
da71643176 seed simplebot on server startup 2022-02-27 21:47:29 +01:00
Ilion Beyst
22a8f3d619 save all uploaded code bundles in database 2022-02-27 20:35:22 +01:00
Ilion Beyst
6ef6a872fe make bot owner nullable 2022-02-27 14:51:32 +01:00
Ilion Beyst
e96578db48 remove old Rocket artifacts 2022-02-24 21:13:07 +01:00
Ilion Beyst
9c90e79575 implement basic configuration 2022-02-20 23:06:05 +01:00
Ilion Beyst
4dc77e1626 add MatchState to ApiMatch 2022-02-16 18:40:32 +01:00
Ilion Beyst
ebd01757e8 play matches async 2022-02-15 19:54:29 +01:00
Ilion Beyst
c7f4da07c1 separate match data api from match log api 2022-02-12 23:52:45 +01:00
Ilion Beyst
fc10359997 store demo matches in database 2022-02-08 20:13:24 +01:00
Ilion Beyst
bfbcc173f8 allow retrieving match log for submitted bot 2022-01-27 19:22:48 +01:00
Ilion Beyst
4a7229b175 correct submitted bot path 2022-01-27 19:12:18 +01:00
Ilion Beyst
294c75823d add endpoint for standalone upload of bot code 2022-01-26 20:54:19 +01:00
Ilion Beyst
a79b338e90 run all bots in python docker for now 2022-01-23 13:23:23 +01:00
Ilion Beyst
9ccea2ea17 return user from login call 2022-01-04 23:24:31 +01:00
Ilion Beyst
32131da678 add schema.patch to allow unused imports in schema file 2022-01-03 23:44:01 +01:00
Ilion Beyst
5b10d5e98e add match_state to matches 2022-01-03 23:36:19 +01:00
Ilion Beyst
69331eb08a serve match logs 2022-01-02 17:56:52 +01:00
Ilion Beyst
85dcf3ba2f store matches in database 2022-01-02 16:14:03 +01:00
Ilion Beyst
bdb77f97d6 minimal port of start_match logic 2022-01-01 16:32:55 +01:00
Ilion Beyst
e145947d05 match form stubs 2022-01-01 11:26:49 +01:00
Ilion Beyst
3e902bb56e list uploaded code bundles on bot page 2021-12-31 11:24:25 +01:00
Ilion Beyst
0f27ca80fb prototype code upload 2021-12-30 23:41:47 +01:00
Ilion Beyst
f5e8b4093a prototype bots pages 2021-12-30 23:40:37 +01:00
Ilion Beyst
c6ca7cf2d1 nest api routes under /api 2021-12-30 16:38:02 +01:00
Ilion Beyst
3edf5d60f5 rename to planetwars-server 2021-12-30 11:45:59 +01:00