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
14c4e61660
Fix up gocritic issues
2020-06-10 12:34:04 +01:00
217e579cec
Fix InnerMain test for rove commands
2020-06-09 18:35:36 +01:00
339163e06d
Fix command line arg order
2020-06-09 18:32:44 +01:00
aae668fb57
Fix instabilities caused by random rocks
2020-06-09 00:16:49 +01:00
520f78b5c3
Stop spawning rovers outside the chunks or warping into other rovers
2020-06-09 00:07:25 +01:00
43588c0e4b
Fix world spawning and radar
...
Also expand test coverage a little to ensure it's correct
2020-06-08 23:32:52 +01:00
b0e076ac1a
Refactor radar to return a full set of the tiles within rover range
2020-06-08 18:14:24 +01:00
35806576f9
Add a bunch of TODOs
2020-06-07 23:17:56 +01:00
43648926ca
Large refactor to properly implement radar
...
/radar now returns a set of non-empty tile blips
2020-06-07 22:30:03 +01:00
8586bdabd7
Fix duplicate saving on quit
...
Slight refactor to split server stop and close functions
Quit function explicitly sends SIGTERM
SIGTERM doesn't trigger an os.Exit
Bonus: Properly save the world on spawning the rover
2020-06-07 18:06:34 +01:00
b344c4549c
Fix output for rove move command
2020-06-06 18:44:50 +01:00
2b87c2b4c0
Add version to ./rove
2020-06-06 18:44:40 +01:00
50cc8b5dbf
Minor cleanups
2020-06-06 18:44:24 +01:00
dc957f7fc1
Up the server rick to every 5 minutes
2020-06-06 18:23:27 +01:00
b9dd1f60bc
Print the struct names for the rover
2020-06-06 17:20:56 +01:00
e804cdf12b
Install wamerican for /usr/share/dict/words
2020-06-06 17:16:33 +01:00
5e1f9b0d31
Refactor rover attributes to add a name
2020-06-06 16:52:30 +01:00
db38ad6091
Add tick information to server status
2020-06-06 16:37:57 +01:00
c30339143b
Fix ./rove tests
2020-06-06 16:28:28 +01:00
ca00a64112
Change command arg to move arg for ./rove
2020-06-06 16:26:28 +01:00
c6fbf1341a
Allow the server tick to be customised
2020-06-06 16:01:49 +01:00
e3ce87e964
Simplify duplicate command types
2020-06-06 12:45:45 +01:00
97d3583384
Update rove-server main with tests
2020-06-06 12:13:54 +01:00
1d2087e2b9
Fix test instabilities by refactoring to make address dynamic and readable
2020-06-06 11:52:12 +01:00
bc366583a4
Move server tests to the server command
2020-06-06 10:57:37 +01:00
3bfbe38837
De-integration the cmd/rove tests as well and massively simplify the tests output
2020-06-06 00:47:48 +01:00
e242fcc4f7
Fix issue with command returning true when no rover was spawned
2020-06-06 00:18:41 +01:00
9c0dde616b
Refactor to implement integration testing for rove
2020-06-06 00:04:30 +01:00
6bc52a130d
Print the list of rovers from the radar response
2020-06-05 23:18:07 +01:00
cade908ed2
Refactor APIs to take an /{accountid}/ prefix
2020-06-05 23:08:59 +01:00
9ae1f50f46
Rename /commands to /command
...
Make it a verb not a GET fetch
2020-06-05 22:34:32 +01:00
9d57f48f98
Add /rover command to get rover info
2020-06-05 22:23:01 +01:00
832f206a53
Store the host in the config file
2020-06-05 21:48:57 +01:00
d3dd1130a2
Very minor cleanups and error addition
2020-06-05 21:29:55 +01:00
62d3ed3a56
Add missing Dockerfile
2020-06-05 21:29:40 +01:00
88087e0338
Implement most rove commands
...
Need to finish up /commands
Need to pretify output of others
2020-06-05 19:08:36 +01:00
0620b9ce99
Add empty "rove" executable
2020-06-05 18:26:11 +01:00
5a2d35aca8
Reorganise a little to move the server into it's own directory
2020-06-05 17:15:25 +01:00
179dd3f984
Implement saving and loading for account data, currently a basic json file
2020-05-31 19:15:57 +01:00
93decc027b
Refactor into server object to handle registered accounts
2020-05-31 11:18:26 +01:00
eccb726f74
Add the concept of a player and the /register endpoint
2020-05-31 00:08:50 +01:00
8a17fcf59f
Be a good citizen and set the header in the reply
2020-05-30 23:25:40 +01:00
b462ceb104
Add logging to the status request
2020-05-30 23:18:05 +01:00
5d250edb6b
Update comments
2020-05-30 23:17:59 +01:00