Commit graph

42 commits

Author SHA1 Message Date
f78efd1223 Add SailPosition to the rover and implement toggle command
This also converts the commands to use the proto type for simplicity
2020-07-21 23:44:06 +01:00
6c75f07aff Remove move and recharge commands in favor of toggle command for the sails 2020-07-21 22:57:43 +01:00
737534f739 Move roveapi into the proto dir 2020-07-10 19:01:41 +01:00
b534ac0516 Rename generated rove package to roveapi and the game package to rove 2020-07-10 18:09:51 +01:00
96a137ad2f Simplify - remove duplicate command types in favor of a better defined Command type in proto 2020-07-10 00:12:54 +01:00
b032fdbfe2 Fix missing broadcast message in status reply 2020-07-09 22:52:58 +01:00
30ca488890 Use string for the timestamp, proto uses this under the hood anyway
https://github.com/grpc-ecosystem/grpc-gateway/issues/438
2020-07-09 19:38:23 +01:00
b748846c55 Use a unix timestamp rather than a timestamppb 2020-07-09 19:29:04 +01:00
55c85d2a22 Add logs to the rover status output 2020-07-09 19:01:09 +01:00
d9e97ea468 Add some additional logging to requests and world resizes 2020-07-07 22:47:34 +01:00
92222127a6 Add basic account security
This adds a secret token associated with each account

	The token must then be sent with follow-up requests to ensure they get accepted

	This is _very_ basic security, and without TLS is completely vulnerable to MITM attacks, as well as brute force guessing (though it'd take a while to guess the a correct UUID)
2020-07-07 22:20:23 +01:00
3ba7652c74 Add current tick information to the server-status 2020-07-07 18:40:38 +01:00
75910efbe5 Apply all golangci-lint fixes 2020-07-06 18:04:10 +01:00
233a6b3281 Add incoming and queued commands to status output 2020-07-05 13:16:08 +01:00
ea4b7de4ac Rename "commands" to "command" 2020-07-05 12:55:01 +01:00
28639b4cac Fix up a comment and the help text 2020-07-04 23:11:22 +01:00
894359142b Rename "rover" to "status" 2020-07-04 23:11:12 +01:00
f8e594cb39 Rename "status" command to "server-status" 2020-07-04 23:05:08 +01:00
143fba505e Add Charge and Max Charge attributes to the rover 2020-07-04 12:26:42 +01:00
b066277ddf Add MaximumIntegrity to the rover 2020-07-04 12:26:42 +01:00
2eaed1447d Add rover inventory capacity and test 2020-07-04 12:26:42 +01:00
062f9cfec8 Split Atlas chunks into tiles and objects 2020-07-03 17:00:04 +01:00
b5707ab71c Fix all go vet issues 2020-07-01 00:01:20 +01:00
abcebcebb6 Simplify - remove rove-accountant
This was a fun little gRPC experiment but it's simply not needed
2020-06-30 23:34:49 +01:00
7957454ec1 Add rover integrity
Rovers are damaged by bumping into solid objects
2020-06-27 01:18:18 +01:00
1ed1c60de0 Simplify - remove RoverAttributes and rover UUIDs 2020-06-27 00:32:27 +01:00
e6a25a5310 Add the rover inventory to the "rover" response 2020-06-26 23:44:52 +01:00
d08a15e201 De-scope - Remove unused rover capacity 2020-06-26 23:39:07 +01:00
2f6465987d More de-scope - remove duration on move command
This isn't even needed, as commands can just be queued up
2020-06-26 22:26:27 +01:00
db3c2c2c2e De-scope, remove rover speed 2020-06-26 18:48:07 +01:00
7ee340e976 Move Rover position into main class 2020-06-26 18:22:37 +01:00
187a0a6165 Finish HTTP tests and adjust APIs to allow them to pass 2020-06-13 13:18:22 +01:00
a4a04a15fb Remove empty proto i/o structs in favor of placeholders 2020-06-13 11:57:27 +01:00
7ababb79f6 Migrate to gRPC rather than REST with swagger
Will also be adding in a RESTful endpoint to the server as well so it can consume both types
2020-06-12 22:51:18 +01:00
6cfc9444f3 Simplify the APIs to return http status codes 2020-06-12 19:05:26 +01:00
2f5863b17a Use log instead of fmt for logging
Also fix up a few errors to lower case
2020-06-11 19:04:53 +01:00
14424c16ca Refactor testing into docker file
This means a decent scale refactor but ends with our testing being much simpler

	Key changes:
		* single Dockerfile for all services
		* tests moved into docker up so don't need to be run locally
		* configurations moved to environment
2020-06-11 18:16:11 +01:00
99da6c5d67 Move accountant to it's own deployment using gRCP 2020-06-11 13:24:42 +01:00
8f25f55658 Refactor accounts to store a data map rather than just a rover ID 2020-06-10 22:48:45 +01:00
7749854eb7 Remove account IDs in favor of just account names
These were a "security" feature but pre-emptive and just add complications when we can implement secrets later
2020-06-10 18:57:43 +01:00
b3b369f608 Remove /spawn POST endpoint
This was increasing complexity for no added benefit

	/register now performs the spawn in 4 lines of code
2020-06-10 18:48:56 +01:00
6fb7ee598d Move server package out into rove-server 2020-06-10 18:20:05 +01:00
Renamed from pkg/server/routes.go (Browse further)